Первая страница
Наша команда
Контакты
О нас

    Головна сторінка



“Інформаційні управляючі системи та технології” 080402 “Інформаційні технології проектування” Одеса 2010

“Інформаційні управляючі системи та технології” 080402 “Інформаційні технології проектування” Одеса 2010




Сторінка13/24
Дата конвертації10.03.2017
Розмір1.41 Mb.
1   ...   9   10   11   12   13   14   15   16   ...   24

4. 2 Види планування


Розрізняють планування довнотермінове (long-term scheduling), cередньотермінове (medium-term scheduling) і короткотермінове (short-term schediling).

4. 2. 1 Довготермінове планування


Засоби довготермінового планування визначають, яку з програм треба у пам’ять завантажити для виконання. Таке планування також називають статичним, оскільки воно не залежить від поточного стану системи. Воно відігравало важливу роль у пакетних системах, коли заздалегідь відомо, які процеси повинні бути виконані і можна скласти розклад виконання задач. В інтерактивних системах (наприклад, у системах з розподілом часу) завантаження процесів у пам’ять здійснюють переважно користувачі, і це плануванню не підлягає; тому в них зазвичай використовують спрощену стратегію довготермінового планування.
Страте́гія - (дав.-гр. στρατηγία, страта тегів - ранг вищого керівника військовими підрозділами які мають марку, тег, прапор, знак та пов'язуеться з талантом управління стратега полководця вищоі страти) - мистецтво керівництва суспільною боротьбою, загальний для очільника і деталізований в процесі управління план певної діяльності з ведення цієї боротьби, який є незмінним в своїй основі охоплює тривалий період, та направлений на досягнення головної, складної цілі.
Система дає можливість створювати процеси і потоки до досягнення деякої максисально можливої межі, після чого подальші спроби створити новий процес або потік спричинятимуть помилку. Така стратегія грунтується і на психології користувачів, які, почуваючи себе некомфортно в перевантаженій системі, можуть переривати роботу з нею, що призводить до зниження навантаження.
Психоло́гія (від грецького ψυχή (psyché) - душа, дух; λόγος (logos) - вчення, наука) - наука, що вивчає психічні явища (мислення, почуття, волю) та поведінку людини, пояснення яких знаходимо в цих явищах.

4. 2. 2 Середньотермінове планування


Засоби середньотермінового планування керують переходом потоків із призупиненого стану в стан готовності й назад. Відразу ж зазаначимо, що керуючі блоки готових до виконання потоків організуються у пам’яті в структуру, яку називають чергою готових потоків (ready queue).

Перехід потоку в призупинений стан можуть викликати такі фактори:



  • очікування операції введення-виведення;

  • очікування закінчення виконання іншого потоку (приєднання);

  • блокування потоку через необхідність його синхронізації з іншими потоками.

Зазвичай, для коректної організації такого очікування, крім черги готових потоків, реалізують додатковий набір черг. Кожна така черга пов’язана з ресурсом, який може викликати очікування потоку (наприклад, із пристроєм введення-виведення); ці черги ще називають чергами планування (schediling queues) або чергами очікування (wait queues). Середньотерміновий плануваг\льник керує всіма цими чергами, переміщаючи потоки між ними та чергою готових потоків. На рис. 4.2 зображена структура черг планування.

4. 2. 3 Короткотермінове планування


Короткотермінове планування , або планування процесора (CPU scheduling), є найважливішим видом планування. Воно дає змогу відповісти на два базових запитання:

  • Коли перервати виконання потоку?

  • Якому з потоків з числа готових до виконання потрібно передати процесор у цей момент?

Короткотерміновий планувальник – це підсистема ОС, яка в разі нелбхідності перериває активний потік і вибирає з черги готових потоків той, що має виконуватися. До його продуктивності ставлять найвищі вимого, бо він отримує керування дуже часто. Виділяють також диспетчер (dispetcher), який безпосередньо предає керування вибраному потокові (перемикає контекст).

Формат черги готових потоків залежить від реалізації короткотермінового планування. Така черга може бути організована за принципом FIFO, бути чергою із приоритетами, деревом або невпорядкованим зв’язаним списком.

TCB4 TCB2

Черга готових


потоків

Пристрій 1

Пристрій 2 TCB5 TCB1

Пристрій 3

Рисунок 4. 2 Організація черг готових потоків і планування

Усі стратегії й алгоритми планування, які ми будемо розглядати далі, належать до короткотермінового планування.


4. 3 Стратегії планування. Витісняльна і невитісняльна багатозадачність


Перед тим, як розглянути основні стратегії планування, перелічимо варіанти передачі керування від одного потоку до іншого:

  • після того, як потік перейшов у стан очікування (напрклад, під час введення-виведення або приєднання);

  • після закінчення виконання потоку;

  • явно (потік сам віддає процесор іншим потокам на час, поки він не зайнятий корисною роботою);

  • за перериванням (наприклад, переривання від таймера дає змогоу перервати потік, що виконується довше, ніж йому дозволено).

Останній варіант відрізняється від інших тим, що потік не може контролювати, коли настане час передачі керування, за це відповідає планувальник операційної системи. Залежно від такого варіанта передачі керування розрізняють дві основні стратегії планування потоків – витісняльну і невитісняльну багатозадачність.

При витісняльній багатозадачності (preemptive multitasking) потоки, що що логічно мають виконуватись, можуть бути тимчасово перервані планувальникомОС без їхньої участі для передачі керування іншим потокам. Переривання виконання потоку і передача керування іншому потокові найчастіше здійснюється в обробнику переривання від системного таймера. Така стратегія реалізована в усіх сучасних ОС.

При невитісняльній багатозадачності (non=preemptive multitasking) потоки можуть виконуватися упродовж необмеженого часу й не можуть бути перервані ОС. Для невитісняльної багатозадачності передача керування за останнім варіантом не реалізована, і потоки самі повинні віддавати керування ОС для передачі іншим потокам або, принаймні, переходити у стан очікування. Якщо якийсь поток забуде або не зможе це зробити, наприклад, займе процесор нескінченим циклом, інші потоки не зможуть продовжквати свою роботу. Таку стратегію було реалізовано у ОС Nowell Net Ware.

Природно, що реалізація невитісняльної багатозадачності в загальному випадку робить систему досить нестабільною (будь-яке некоректно написане застосування користувача може спричинити “завісання” всієї системи). Практика показує, що невитісняльна багатозадачність у системах із застосуваннями користувача не може бути реалізована. Таку стратегію, проте, можна використати в системах, де всі застосування виконуються в режимі ядра і фактично єсистемними драйверами. Для розробки таких застосувань необхідна висока кваліфікація програмістів, вимоги до надійності застосувань можна порівняти з вимогами до самої ОС. При цьоиу простота реалізації та відсутність зовнішніх переривань потоків від планувальника ОС може підвищити продуктивність системи для обмеженого кола задач (наприклад, у випадку ОС Net Ware це було використання системи як файлового серверу).

Театральна лабораторія «ВідСутність» - зразковий художній колектив заснований в 2010 році за ініціативи Юрія Паскара в місті Рівне. Діє на базі Рівненського міського Палацу дітей та молоді.


1   ...   9   10   11   12   13   14   15   16   ...   24



  • 4. 2. 2 Середньотермінове планування
  • 4. 2. 3 Короткотермінове планування
  • 4. 3 Стратегії планування. Витісняльна і невитісняльна багатозадачність