Реферат Курсовая Конспект
Ресурси процесу - раздел Образование, Лекція 4 5 Створення процесу При Виконанні Призначених На Процес Задач Часто Приходиться Записувати Дані ...
|
При виконанні призначених на процес задач часто приходиться записувати дані у файл, відправляти їх на принтер або відображати отримані результати на екран. Процесу можуть знадобитися дані, що вводяться користувачем з клавіатури або які містяться у файлі. Окрім того, процеси у якості ресурсу можуть використовувати інші процеси, наприклад, підпрограми. Підпрограми, файли, семафори, мьютекси, клавіатура та екран дисплеїв – все це приклади ресурсів, які може запросити процес. Під ресурсом розуміємо все, що використовує процес в довільний заданий час в якості джерела даних, засобів обробки, обчислень або відображення інформації.
Щоб процес отримав доступ до ресурсів, він спочатку повинен зробити запит, звернувшись з ним до операційної системи. Якщо ресурс вільний, операційна система дозволяє процесу його використати. Після використання ресурсу процес звільняє його, щоб він був доступним для інших процесів. Якщо ресурс недоступний, запит відхиляється, і процес повинен почекати його звільнення. Як тільки ресурс стане доступним, процес активується. Такий основний підхід до розподілення ресурсів між процесами. На рис. 3 подано граф розподілу ресурсів, за яким можемо зрозуміти, які процеси утримують ресурси, а які їх очікують. Так, процес В робить запит на ресурс 2, який утримується процесом С.
Процес С робить запит на ресурс 3,який утримується процесом D.
Якщо задовольняється відразу декілька запитів на отримання доступу до ресурсу, даний ресурс є використовується спільно, або поділяється (дана ситуація також відображена на рис. 3). Процес А поділяє ресурс R1 з процесом D. Ресурси, які поділяються, можуть позволяти паралельний доступ відразу декількох процесів або дозволяти доступ тільки одному процесу на протязі обмеженого проміжку часу, після чого аналогічним доступом зможе скористатися інший процес. Прикладом такого типу ресурсів які поділяються може бути процесор. Спочатку процесор призначається одному процесу на протязі короткого інтервалу часу, а потім процесор ²отримує² інший процес. Якщо задовольняється тільки один запит на отримання доступу до ресурсу, і це відбувається після того, як ресурс звільнить інший процес, такий ресурс є не використовується спільно, а про процес говорять, що він має монопольний доступ (exclusive access) до ресурсу. В багатопроцесорному середовищі важливо знати, який доступ можемо організувати до ресурсу, який поділяється: паралельний або послідовний (передаючи естафету почергово від ресурсу до ресурсу). Це дозволить уникнути ²капканів², які властиві паралелізму.
Одні ресурси можуть змінюватися або модифікуватися процесами, а інші – ні. Поведінка ресурсів які поділяються і можуть бути модифіковані і не модифіковані визначається типом ресурсів.
Граф розподілу ресурсів
Графи розподілу ресурсів – це напрямлені графи, які показують, як розподіляються ресурси в системі. Такий граф складається з множини вершин V та множини ребер Е. Множина вершин ділиться на дві категорії:
P = { P1, P2, . . ., Pn }
R = { R1, R2, . . ., Rn }
Множина Р – це множина всіх процесів, R – це множина всіх ресурсів в системі. Ребро, напрямлене від процесу до ресурсу, називаємо ребром запиту, а ребро, напрямлене від ресурсу до процесу, називаємо ребром призначення. Напрямлені ребра позначаються наступним чином:
Pi ® Rj Ребро запиту: процес Pi запитує екземпляр типу ресурс Rj
Rj ® Pi Ребро призначення: екземпляр типу ресурсу Rj виділено процесу Pi
Кожен процес у графі розподілу ресурсів відображене колом, а кожен ресурс – прямокутник. Оскільки може бути багато екземплярів одного типу ресурсу, то кожен з них є крапкою в середині прямокутника. Ребро запиту вказує на периметр прямокутника ресурсу, а ребро призначення бере початок з крапки і доходить до кола процесу.
Граф розподілу ресурсів, подано на рис. 3, показує наступне.
Множина P, R і E
P = { Pа, Pb, Pc, Pd }
R = { R1, R2, R3 }
E = { R1 ® Pа, R1 ® Pd, Pb ® R2, R2 ® Pc, Pc ® R3, R3 ® R3 }
5.1. Типи ресурсів
Існує три основних типи ресурсів: апаратні, інформаційні та програмні. Апаратні ресурси є фізичними пристроями, підключеними до комп’ютера (наприклад: процесори, основна пам'ять і всі пристрої вводу-виводу, включаючи принтер, жорсткий диск, накопичувачі на магнітній стрічці, дисковод з zip-архівом, монітори, клавіатура, звукові, мережеві і графічні карти, а також модеми). Всі ці пристрої можуть спільно використовувати декілька процесів.
Деякі апаратні ресурси призупиняються (перериваються), щоб дозволити доступ до них різних процесів. Наприклад, призупинення процесора дозволяє різним процесам виконуватися почергово. Оперативний запам’ятовуючий пристрій, або ОЗП (RAM), - це ще один приклад ресурсу, який поділяється засобами призупинення. Коли процес не виконується, деякі сторінкові блоки, які він не займає, можуть бути вивантажені на допоміжні запам’ятовуючі пристрої, а на їх місце завантажені дані, які належать іншому процесу. В довільний момент часу весь діапазон пам’яті може бути зайнятим сторінковими блоками тільки одного процесу. Прикладом ресурсу який поділяється, але ресурсу, який не призупиняється, це наприклад принтер. При сумісному використанні принтера завдання, які посилають на друк процеси, зберігаються в черзі. Кожне завдання друкується до закінчення, і тільки потім починається виконання наступного завдання. Принтер не призупиняється ні одним завданням, що чекає, якщо не відміняється біжуче завдання.
Інформаційні ресурси – до них зараховуємо дані (наприклад, об’єкти), системні дані (наприклад, змінні середовища, файли і дескриптори) а також глобально визначені змінні, як семафори і мьютекси, - є ресурсами, які поділяються, і які можуть бути модифіковані процесом. Звичайні файли і файли, пов’язані з фізичними пристроями (наприклад, принтер), можуть відкриватися з врахуванням обмежуючого доступу зі сторони процесів. Іншими словами, процеси можуть володіти правом доступу тільки до читання, або тільки для запису, або для читання та запису. Дочірній процес успадковує ресурси батьківського процесу і права доступу до них, існуючі на момент створення процесу-нащадка. Дочірній процес може перемістити файловий вказівник, закрити, модифікувати або перезаписати зміст файлу, відкритого батьком. Доступ до файлів і пам’яті, які використовуються спільно з дозволом запису, повинно бути синхронізовано. Для синхронізації доступу до ресурсів даних, що поділяються, можемо використати такі засоби, як семафори і мьютекси.
Бібліотеки, що поділяються можуть бути прикладом програмних ресурсів. Бібліотеки, що поділяються є колекцією функцій для процесів. Процеси можуть також спільно використовувати додатки, програми та утиліти. В цьому випадку в пам’яті знаходиться тільки одна копія програмного коду, наприклад, додатку. При цьому повинні існувати окремі копії даних, по одній для кожного користувача (процесу). До незмінного програмного коду (який повторно використовується - реентерабельний) можуть отримати доступ декілька процесів одночасно.
5.2. POSIX-функції для встановлення обмежень доступу до ресурсів
В бібліотеці POSIX визначені функції, які обмежують можливості процесу по використанню визначених ресурсів. Так, операційна система встановлює обмеження на можливості процесу по використанню системних ресурсів, а власне:
· розмір стеку процесу;
· розмір створюваного файлу і файлу ядра;
· об’єм часу ЦП, виділеного процесу (розмір кванту часу);
· об’єм пам’яті, що використовується процесом;
· кількість дескрипторів відкритих файлів.
Операційна система встановлює жорсткі обмеження на використання ресурсів процесом. Процес може встановити або змінити м’які обмеження ресурсів, але це значення не може перейти жорстку межу, встановлену операційною системою. Процес може понизити свою жорстку межу, але його значення не повинне перейти м’якої межі. Операція по зниженню процесом своєї жорсткої межі є незворотною . ЇЇ можуть підвищити тільки процеси, які мають спеціальні привілеї.
– Конец работы –
Эта тема принадлежит разделу:
Синопсис... pstree a c h frac Hpid l n p u G frac U... pid frac user...
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Ресурси процесу
Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:
Твитнуть |
Новости и инфо для студентов