Қазақстан респудликасы білім және ғылым министрлігі



Pdf көрінісі
бет55/82
Дата06.01.2022
өлшемі11,68 Mb.
#15553
1   ...   51   52   53   54   55   56   57   58   ...   82
Бақылау сұрақтары.
1. Синхронизация дегеніміз не?
2. Семафорлар дегеніміз не?
3. Мониторлар  қай кезде қолданылады.
4. Блоктар мен кедергі  дегеніміз не?


Глоссарий.
Параллельді  компьютер –  есепті  сандық  түрде  шешіп,  үйлесімді 
шешуге қабілетті процессорлардың жиынтығы.
Параллельді  программа
–  бұл  әр  процесс  өзінің  меншікті 
процессорында жүріп қана қоймай, параллель орындалатын программа.
Жұмыстың  қысқаша  мазмұны:
Екі  процес  берілсін:  Produser  (өндіруші)  және  Consumer(тұтынушы). 
Produser  процессі  а[n]  бүтін  сандардың  локальді  массивінен  тұрсын. 
Consumer –  b[n]  болсын.  а  массиві  иннициялизацияланған  болсын.  Мақсат: 
оның мазмұнын b массивіне көшіру. 
 buf      айнымалысы  – өзараәсер  ету  буфері  болып  табылатын  жеке 
бөлінетін  бүтін айнымалылар.
Produser  (өндіруші)  және  Consumer(тұтынушы)  процесстері    buf
айнымалысына  кезекпен  кезек  ене  алады.    Produser  а  массивінің  бірінші 
элементін   buf –ке салып,  сонан соң Consumer оны алады, сонан соң Produser
buf    буферіне  а  массивінің    келесі  элементін  салады,  және  т.с.с.    р  және  с  
бөлінетін  айнымалылыар  айнымалылар  санының  санағышы  болсын. 
Олардың  бастапқы  мәні  =0.  Сонда  Produser  (өндіруші)  және
Consumer(тұтынушы)  процесстерінің    синхронизацилану  шарты  төменгі 
түрде жазылады:
РС: c<=p<=c+1
с және р айнымалыларының мәні 1 ден артық мәнге  айырмашылығы 
болмайды.  Осы екі процесстің коды төменде берілген:
int  buf, p=0, c=0;
process Procedur
{
Int a[n];
While (p{
buf =a[p];
p=p+1;
}
}
Process  Consumer
{
Int b[n];
While (c{ c); >
b[c]=buf;
c=c+1;


}
}
Әдебиеттер
1. А.  Ж.  Акжалова.  Параллельные  вычисления.  Учебное  пособие.  –
Алматы: Издательство ТОО «Print S»,- 2004
2. Грегори  Р.  Эндрюс.  Основы  многопоточного,  параллельного  и 
распределенного  программирования.  Пер.  с  англ.-М.:  Издательский 
дом «Вильямс», 2003.
3. Воеводин Вл. Параллельная обработка данных. Санкт-Петербург, 2002.
4. Немнюгин  С.А.,  Стесик  О.Л.  Параллельное  программирование  для 
высокопроизводительных 
многопроцессорных 
систем. 
Санкт-
Петербург, 2002.


Достарыңызбен бөлісу:
1   ...   51   52   53   54   55   56   57   58   ...   82




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет