..


Спонсоред Линкс

Истовремено програмирање у Ц ПОСИКС

Чланак који је написао Марк Фрисон
Страна 1 од 5

Сви модерни оперативни системи потребне године да буде модел са више процеса управљања, додељујући време извршавања и меморијски простор различитих програма ради истовремено. У последњих неколико година, углавном због свеприсутности мрежне комуникације, овај концепт је проширен на појединачне софтвер, делећи исти процес више токова контроле тих тема. Овај нови приступ доноси огромне промене у структури софтвера, како у теорији иу пракси, као и увек дешава, модуларност и изражајношћу су плаћени у смислу повећане софтверске сложености.

Програмски језици најновију, Јава, сви нуде АПИ матерњи за креирање и управљање теме; система базираних на виртуелним машинама, као што су Јава и Ц # имају програмер ниво апстракције у складу по овом питању и све друге морају да се ослањају на примитивни оперативног система, често излажући проблеми преносивост кода. У том контексту, библиотеке су део ПОСИКС Тхреадс (Птхреадс) да омогући програмерима Ц и минималну гаранцију преносивости између различитих система.

Предуслови

Овај чланак има за циљ да било ко жели да се приближи тему конкурентних програма на ниском нивоу језика. У овој презентацији претпоставља да читалац већ стекао основно знање Ц језика неће бити третиране као основне теме, као што су, на пример, управљање меморијом и врсте података.

ПОСИКС нити библиотеке

Тако лако погодили из имена, ПОСИКС нити библиотеке су део сета ПОСИКС (Портабле Оператинг Систем Интерфаце [за Уник]). Наводећи дефиниција "птхреад [...] наводи сет интерфејса (функција, заглавље датотеке) код навојног процесу програмирања на једном [...] може да садржи више тема, од којих су извршења испиту [...] исто учешће глобалне меморије (подаци и гомилу сегментима), али његов Свака тема има своју стек ". Овај одломак описује управо оно што је укључен у више програма у ПОСИКС теме:

  • више контрола токова (теме) у један процес;
  • дељење меморије који садржи код (сегмент података) и динамичке меморије (гомилу сегмента);
  • приватне стек.
Шта не јасно је статус докумената, посебно оних као што је упутство показивач основне и стека показивач, па смо навести да сви записи су строго приватна сваком конац и сачувана / повратити када ток контроле помера од између тема (нит пребацивање).

Користите ПОСИКС стандард пружа висок ниво интеграције у свим ПОСИКС компатибилан система као што су, на пример, ГНУ / Линукс, Мац ОСКС, БСД и чак Виндовс (са неким додацима). У овом чланку ћемо се односе на употребу ГЦЦ-под ГНУ / Линукс, наравно, сви разлози су пренети на било коју другу ПОСИКС налик окружењу.

Први (погрешан) пример

Птхреад.х библиотека пружа све што је потребно за програмирање у више тема, а не да само списак примитивни које ћемо представити практичан пример с времена на време кроз дискусију њихове разлике.

Дакле, размотрите следеће проблеме: програм мора прочитати са банковног трансфера неколико фајлова бербе и / или депозит се на налог, онда се ови фајлови ће имати следећи облик:






 +120







 -550







 +896







 +5541







 -85







 ...



Да бисте убрзали различите теме "благајник" свако ради на један фајл и ажурирају истовремено купца налог, обавља све операције у излазни статус налога.

У истој категорији ...
Е-учење
АСП (Адванцед) АСП (Адванцед)
Цео курс за креирање динамичких веб сајтова. Од 39 €.
Нарезивање ЦД-ова и ДВД-(Ебоок) Нарезивање ЦД-ова и ДВД-(Ебоок)
Водич за нарезивање ЦД-ова и ДВД-ова са фрееваре програмима. Само 25 €.
Висуал Басиц 6 (курс) Висуал Басиц 6 (курс)
Направите Апликације десктоп са ВБ6. Од 39 €.
Спонсоред Линкс