Для чого кожна задача одержує свій дескриптор

Системи програмування. утиліти

3. Для чого кожна задача одержує свій дескриптор. Які поля, як правило, містяться в дескрипторі процесу (завдання). Що таке контекст завдання.

1. Дескриптор ОС реального часу

В ОС реального часу кількість процесів фіксується, тому корисно визначити кількість дескрипторів процесів. Кожен дескриптор процесів постійно розташовується в оперативній пам'яті, з метою прискорити роботу диспетчера задач, для більш ефективної обробки даних. У системах реального часу доцільно мати постійні дескриптори задач, повністю або завжди існуючі в системі, незалежно від того, надходять на них вимоги чи ні. кожна конкретна задача володіє деякою власною областю оперативної пам'яті, незалежно від того виповнюється завдання чи ні. Це так зв. ОЗУ резидентні завдання. Ця область може використовуватися для зберігання даних отриманих завданням раніше. Дані можуть зберігається в ній тоді, коли завдання знаходиться в стані очікування або бездіяльності.

1. Активний і пасивний процеси.

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

Термін завдання (процес) можна вживати тільки до процесів користувачів і до системних обробляють процесам. Однак це справедливо не для всіх ОС. В Unix системах виконання виконуючих програмних модулів теж має статус системних процесів.

Процес може знаходиться в активному і пасивно стані. В активному стані процес може брати участь в конкуренції за використання ресурсів обчислювальної системи. У пасивному стані він тільки відомий системі, але в конкуренції не бере.

У свою чергу активний процес може бути в одному з наступних станів:

1 Стан виконання: все витребувані процесом ресурси виділені. У цьому стані може знаходиться тільки один процес.

2 готовності до виконання: ресурси можуть бути надані цьому процесу, тоді він перейде в стан виконання.

3 блокувати або очікування: витребувані ресурси не можуть бути надані або не завершена операція введення / виводу.

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

2. Привілейовані і непривілейованих програмні модулі.

3. Пояснити поняття ресурсу. Назвати види і типи ресурсів.

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

Ресурси можуть бути розділяються, коли кілька процесів можуть використовувати їх одночасно (в один і той же момент часу) або паралельно (протягом деякого часу процеси використовують ресурс поперемінно) і неподільні.

Для чого кожна задача одержує свій дескриптор

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

Основні види ресурсів.

1) Процесорний час

2) Пам'ять. Оперативна пам'ять може бути розділена одночасним способом, в цьому сл-е в пам'яті може розташовуватися одночасно декілька процесів, або цілком, або поточні фрагменти; і поперемінно - в різні моменти часу вона може надаватися для різних обчислювальних процесів. У кожен конкретний момент часу процесор при виконанні обчислень звертається знову до обмеженого числа осередків оперативної пам'яті. З цієї точки зору корисно розділяти пам'ять для якомога більшої кількості йдуть паралельно процесів. З іншого боку, як правило, чим більше оперативної пам'яті може бути вільно для конкретного поточного процесу, тим краще умови його виконання. Тому проблема ефективного поділу оперативної пам'яті між паралельно виконуваними процесами є однією з найактуальніших. Це явище називають також балансуванням завантаження.

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

3) Програмні модулі. Системні програмні ресурси. Можуть бути розділені між виконуються процесами. Програмні модулі можуть бути однократно виконуваними (виконуються правильно тільки один раз, і є неподільними ресурсами, більш того їх взагалі можна не розглядати як ресурс системи. Такі модулі використовуються, як правило, при завантаженні системи.) І багаторазово виконуваними. Багаторазово виконуються програмні модулі можуть бути непривілейованих, привілейовані і реєнтерабельним.

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

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

Реєнтерабельним програмні модулі (reenter able) допускають повторне багаторазове переривання свого виконання і повторний їх запуск при зверненні з інших завдань. Для чого такі програмні модулі повинні бути створені таким чином, щоб було забезпечено збереження проміжних обчислень для перериваються обчислень і повернення до них, коли обчислювальний процес повертається до перерваної раніше точці.

Це може бути реалізовано двома способами за допомогою статичних методів визначення пам'яті і динамічних методів. Основний, часто використовуваний метод - метод динамічної пам'яті. (Рисунок намалюй) 1) Привілейований модуль, який замовляє в системній області пам'яті блок осередків для зберігання поточних проміжних даних. 2) Основне тіло реєнтерабельним програмного модуля, яке може бути перервано працює в непривілейованому режимі. 3) Привілейований модуль звільняє в системній області пам'яті блок пам'яті, використовуваної для зберігання проміжних даних. Системна область пам'яті використовується динамічним чином для буферизованного введення / виведення і реєнтерабельним обробки.

При статичному виділенні пам'яті заздалегідь фіксується число обчислювальних процесів, для яких резервується область пам'яті в якій будуть розташовуватися змінні реєнтерабельним програмних модулів. Найчастіше в якості таких процесів виділяють процеси введення / виведення. в цьому випадку говорять про реєнтерабельним драйвери (реєнтерабельним драйвер може управляти паралельно декількома однотипними пристроями).

Повторновходімие (re-entrance) програмні модулі. Під цим терміном програмні модулі, які теж допускають своє багаторазове використання, але на відміну від реєнтерабельним їх не можна переривати. Повторновходімие модулі складаються з привілейованих секцій. Повторне звернення до них можливо тільки після завершення якої-небудь з таких секцій. Після виконання черговий привілейованої секції управління може бути передано супервізору і якщо він надасть можливість виконуватися іншому процесу, то можливо повторне входження в розглянутий модуль. У повторновходімих програмних модулях чітко визначені всі допустимі точки входу. У реальному житті повторновходімие модулі зустрічаються частіше, ніж реєнтерабельним.

Інформаційні ресурси можуть існувати як у вигляді змінних, що знаходяться в оперативно пам'яті, так і у вигляді файлів. Якщо процеси можуть використовувати інформаційні ресурси тільки для читання, то такі інформаційні ресурси можна розділяти. Якщо ж процеси можуть змінювати інформаційні ресурси, то необхідно якимось чином організовувати роботу з такими даними.

1. Інтерфейсні оболонки.

2. Поняття многопоточности.

3. Скільки і яких типів дескрипторів завдань може бути в системі? Від чого повинно залежати це число?

1. Обчислювальний ресурс.

2. Обслуговування переривань.

3. Що таке привілейований програмний модуль. Чому не можна створити мультипрограмне ОС, в якій би не було привілейованих програмних модулів?

1. Системи програмування. Крос-системи.

2. Поняття ресурсу. Види унд типи оних.

3. Процес. Завдання.

1. Дескриптор процесу.

Описувачі завдань як правило розташовуються в оперативній пам'яті з метою прискорити роботу супервізора, який організовує завдання в черзі як в списку і відображає зміни стану процесу переміщенням відповідного описателя з одного списку в інший. Для кожного стану ОС веде соотв. список завдань, які знаходяться в цьому стані. Єдиним винятком є ​​стан виконання для однопроцессорной системи. Для опису стану очікування може бути не один список, а стільки, скільки різних видів ресурсів може виділити стан очікування. Наприклад стан очікування завершення операції введення / виводу може бути стільки скільки пристроїв введення / виводу є в системі. У деяких ОС кількість описателей визначено жорстко і заздалегідь

2. Зовнішні та внутрішні переривання.

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

1. мультипрограмному і однопрограмний режими роботи обчислювальної системи.

Дж. Фон Нейман розробив архітектуру принцип архітектури сучасних комп'ютерних систем. Всі пристрої комп'ютера працюють під управлінням центрального процесора. Тому здійснював і виконував і операції введення / виводу. З введенням до складу спеціальних контролерів дозволило організувати ...

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

Для чого кожна задача одержує свій дескриптор
При мультипрограмування підвищується пропускна здатність системи, але окремий процес ніколи не зможе бути виконаний швидше, ніж би він був виконаний при однопрограмні режимі.

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

Не всі ОС мають 2 режими роботи. Режими роботи бувають привілейованими (режим супервізора), призначеними для користувача, режим емуляції.

Ресурс може бути виданий задачі за її запитом якщо:

1 Ресурс вільний і в системі немає запитів від завдань більш високого пріоритету до цього ресурсу.

2 Поточний запит і раніше полуучений запити допускають спільне використання ресурсу.

3 Ресурс використовується завданням нижчого пріоритету і може бути тимчасово відібраний.

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

2. Програмні переривання. Розподіл переривань по рівнях пріоритету.

3. Що таке привілейований програмний модуль. Чому не можна створити мультипрограмне ОС, в якій би не було привілейованих програмних модулів?

1. Основні ф-ції ОС.

1. Операційні середовища. Емулятори. Віртуальні машини.

2. Програми. Системні програмні модулі.

3. Для чого кожна задача має свій дескриптор.

1. Ресурси обчислювальної системи. Схема виділення ресурсів.

2. Обробка переривань за участю супервизоров ОС.

Для чого кожна задача одержує свій дескриптор
Для чого кожна задача одержує свій дескриптор
Для чого кожна задача одержує свій дескриптор
Для чого кожна задача одержує свій дескриптор
Для чого кожна задача одержує свій дескриптор

заявити, що всі його ресурси доступні для всіх користувачів групи. Така схема може бути багаторівневою (групи діляться на підгрупи і т.д.) з відповідним розподілом прав і можливостей. Зараз з'являються операційні системи, в яких права доступу можуть визначатися не тільки такий ієрархічною структурою, а й можуть бути більш складними, т. Е. Права доступу можна додавати, порушуючи.

вміння грамотно користуватися джерелом інформації, оцінка достовірності інформації і знання. Завдання: студент повинен мати уявлення про основні поняття представленої теми: програмному забезпечення ПК, операційній системі, вміти узагальнювати вивчений матеріал, робити висновки. 1.3 виховна: o формувати потребу в інформаційній культурі o виховання дбайливого ставлення не тільки.

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

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