Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Тәжірибелік жұмыс № 1






Тақ ырыбы: ОЖ-дегі параллельді процесстердің синхронизациясын орындау.

Тә жірибелік жұ мыстың мақ саты – ОЖ-де параллельді процесстердің синхронизация ә дістерімен танысып оларды зерттеу.

· “Читатели – Писатели”алгоритмі

· Хоар мониторлары

· Дейкстрдың семафорлық примитивтері

· Деккер алгоритмдері

· Тредтер

· “Почтовые ящики”алгоритмдері

 

 

1. «Параллельді процесстердің синхронизациясын орныдау» бағ дарламалар кешенінің жазбалауы

Берілген бағ дарламалар кешені ө зара байланысатын есептеу процесстерінің синхронизация механизмін зерттеуге арналғ ан. Жұ мысты бастаудың алдында келесі шарттарды орындау керек, ө йткені бә р бағ дарламалық орта ретінде Microsoft C# бағ дарламасымен қ олданамыз. Бұ ндау бағ дарламаны таң дау кездейсоқ емес, ө йткені Microsoft C# - кә зіргі кездегі осындай біздің бағ дарламағ а ұ қ сас бағ дарламаларды жазуғ а арналғ ан қ уатты жабдық.

Сонымен, SyncManager.exe файлын іске қ осу ү шін Microsoft.NET Framework 1.1 қ осымшасын орнық тыру керек, ол Microsoft C# ортасында “шең берлермен” жұ мыс істеуге мү мкіндік береді, сонымен қ атар компьютерде Internet Explorer- дың болуын талап етеді. Microsoft.NET Framework 1.1 жә не Internet Explorer қ осымшалары бағ дарламалар пакетіне қ осылады.

Барлық қ ажетті қ осымшалар орнық тырылғ аннан кейін, бағ дарламамен жұ ымс істеуге кірісуге болады. SyncManager.exe файлын іске қ осамыз жіне экранда 1.1.суреттегі терезені кө реміз.

Сур. 1.1

Интерфейс – қ арапайым терезе, бағ дарламаның атынан жә не ағ ындағ ы версиясынан, жә не тө рт қ алташасы бар панелінен тұ рады.

Жұ мыс терезесі екі панелден тұ рады:

Process – процесстің аты;

ID – процесстің идентификациялық номері.

Терезенің тө менгі жағ ында синхронизация орындау ә дісі жазылады. Егер ә діс берә лмеген болса, онда сә йкес ескерту шығ арылады.

Басқ ару панелі тө рт қ алташадан тұ рады:

Вид;

Процесс;

Метод;

Справка;

“Вид” қ алташасын шерткенде “Лог” мә зірі шығ ады, оны белгілеп біз 1.2. суреттегі жағ дайғ а тап боламыз.

сур. 1.2.

Біз кө ргендей, “История работы процессов” деген жаң а терезе пайда болды, бұ л терезе берілген уақ ыттағ ы процесстің ағ ындағ ы қ алпын бейнелеп отырады. Берілген терезеде ағ ындағ ы кү н, ай, жыл, ағ ындағ ы уақ ыт, ID процессінің аты, жә не, ә рекеттер – процесс айналысып отырғ ан ә рекет, кө рсетіледі. Жұ мысытың ең басында бұ л терезеде бос болады. Егер де жұ мыс процессінде жә не “История работы процессов” терезесінің толғ ан кезінде, оның бір долын белгілеп “Del” басуғ а болады, сонда бұ л терезе тазарады. Бә рақ егер “Обновить” бассақ, бағ дарламаның бү кіл қ олданылу бойындағ ы барлық тарихы шығ ады. Яғ ни, егер біз терезедегі болғ ан барлығ ын жойып тастасақ жә не содан кейін бағ дарламамен бір жұ мыс орныдасақ, жә не тағ ыда “История работы процессов” терезесіндегіні жойып тастасақ, “Обновить” басқ аннан кейін барлық тарихы шығ ады, жә не қ ай ретте болды сондай ретімен шығ ады.

“Процесс”- ті шерткенде басында бір пункттен туратын “Добавить Ins” мә зір шығ ады – бұ л пунктті шерткенде жаң а пункт пайда болады немесе процесс қ осылады. Ins – басқ а пункттерде қ олданушығ а ың ғ айлы болу ү шын тұ рғ ан ыстық пернесі. Кем дегенде бір процесс қ ұ рғ аннан кейін, “Процесс” басқ анда, толық барлық мү мкіндіктері бар мә зір шығ ады. Бірақ процесстерді қ ұ ру жә не олармен жұ мыс істеу бір шарт бойынша ғ ана болады, синхронизация ә дісі таң далғ ан болу керек, ә йтпесе “Добавить Ins” шерткенде бағ дарлама келесі қ ателікті кө рсетеді (сур.1.3 кө рің із).

сур. 1.3.

Синхронизация ә дісі “Метод” қ алташасында орындалады, оны шерткенде алты ә дісі бар мә зір пайда болады. Ә дісті берген кезде ә дістің аты жұ мыс терезесінің тө менгі жағ ында кө рсетіледі.

Сонымен, мысалы “Читатели – Писатели Ctrl+D1” пункті таң далғ ан болсын. Қ олданылатын синхронизация ә дісі “Читатели – Писатели”, ал Ctrl+D1 – ыстық перенелер. Шын мә нінде, бір де бір процесс қ ұ растырылмағ ан кезде “Процесс” келесі тү рге ие болады (сур. 1.4.).

сур. 1.4.

Мә зірде тек бір пункт қ олжетімді, ол - “Добавить Ins”, ал жұ мыс терезесінің тө менгі жағ ында біз таң дағ ан ә діс кө рсетілген, берілген жағ дайда “Читатели – Писатели” ә дісі(сур. 1.5.).

сур. 1.5.

Егер “Добавить Ins” шертіп бір процесс қ ұ рсақ, онда “Процесс” қ алташасын шерткенде мә зір оданда толығ ырақ болады (сур. 1.6.).

сур. 1.6.

 

“Добавить Ins” пунктіне туғ ыда мә зір пункттері қ осылды:

 

“Удалить Del” - Таң далғ ан процессті немесе процесстерді жояды;

“Удалить всё Ctrl+A” - жұ мыс терезесіндегі барлық процсстерді жояды;

“Запустить Ctrl+S” - таң далғ ан процесстердің жұ мысын іске ең гізеді;


 

“ОстановитьCtrl+D” - таң далғ ан процесстердің жұ мысын тоқ татады.

 

 

Рис. 1.7.

 

Қ алташа синхронизацияның алты ә дістерінен тұ рады:

“Читатели – Писатели Ctrl+D1”;

“Мониторы Хоара Ctrl+D2”;

“Семафорные примитивы Дейкстры Ctrl+D3”;

“Алгоритм Деккера Ctrl+D4”;

“Треды Ctrl+D5”;

“Почтовые ящики Ctrl+D6”.

Сә йкес пунктті шертіп синхронизацияның кез-келген тү рін таң дауғ а болады. “Почтовые ящики Ctrl+D6” ә дісі таң далғ ан болса, мә зірдің тағ ыда екі пункті пайда болады:

“Настройка”;

“Состояние ящика” (сур. 1.8.).

сур. 1.8.

“Настройка” пунктінде пошта жә шігі деген сияқ ты маң ызды параметрлерді орнық тыруғ а болады:

 

“Максимальное количество сообщений в буфере” – максимум 100;

“Максимальная длина сообщений в символах” – максимум 100;

“Время жизни посланного сообщения в секундах” – максимум 100.

 

 

Керектіні орнық тырғ аннан кейін “Принять” батырмасын шерту керек.

 

“Состояние ящика” пунктінде келесі параметрлерді кө ріп шығ уғ а болады:

“Текущее количество писем” – жә шіктегі хаттар саны;

“Всего отправлено” – жіберілген хаттар саны.

Деректерді жаң арту ү шін “Обновить” батырмасын басу керек (сур. 1.9.).

сур. 1.9.

 

 

“Справка” мә зірінң ғ ішіне “О программе” пункті кіреді, бұ л пунттің ішінде бағ дарлама тұ ралы жә не оның авторы туралы мә ліметтер жазылғ ан (сур. 1.10.).

сур. 1.10.

Қ ұ руғ а болатын процесстердің максималды саны -50, ә р процесстің орындалуының максималды уақ ыты – 60 секунд.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.