Відмінності між версіями «Контекст і дескриптор процесу. Перемикання процесів»
Рядок 13: | Рядок 13: | ||
інформацію такого роду, використовувану ОС для планування процесів, називають | інформацію такого роду, використовувану ОС для планування процесів, називають | ||
'''дескриптором процесу'''. | '''дескриптором процесу'''. | ||
+ | |||
+ | Дескриптор процесу в порівнянні з контекстом містить більш оперативну інформацію, що | ||
+ | повинна бути легко доступна підсистемі планування процесів. Контекст процесу містить менш актуальну інформацію і використовується операційною системою тільки після того, як прийнято | ||
+ | рішення про поновлення перерваного процесу. | ||
+ | |||
+ | Черги процесів являють собою дескриптори окремих процесів, об'єднані в списки. Таким чином, | ||
+ | кожен дескриптор, крім всього іншого, містить принаймні один покажчик на інший дескриптор, | ||
+ | що сусідить з ним у черзі. Така організація черг дозволяє легко їх переупорядковувати, включати | ||
+ | і виключати процеси, переводити процеси з одного стану в інше. | ||
+ | |||
+ | Програмний код тільки тоді почне виконуватися, коли для нього операційною системою буде | ||
+ | створений процес. ''Створити процес — це значить'': | ||
+ | |||
+ | <ul> | ||
+ | <li>створити інформаційні структури, що описують даний процес, тобто його дескриптор і | ||
+ | контекст; | ||
+ | <li>уключити дескриптор нового процесу в чергу готових процесів; | ||
+ | <li>завантажити кодовий сегмент процесу в оперативну чи пам'ять в область свопинга. | ||
+ | </ul> |
Версія за 19:28, 28 квітня 2011
Контекст і дескриптор процесу
Протягом існування процесу його виконання може бути багаторазово перерване і продовжено. Для того, щоб відновити виконання процесу, необхідно відновити стан його операційного середовища. Стан операційного середовища відображається станом регістрів і програмного лічильника, режимом роботи процесора, покажчиками на відкриті файли, інформацією про незавершені операції виводу-вводу-виводу, кодами помилок виконуваних даним процесом системних викликів і т.д. Ця інформація називається контекстом процесу.
Крім цього, операційній системі для реалізації планування процесів потрібно додаткова інформація: ідентифікатор процесу, стан процесу, дані про ступінь привілейованості процесу, місце перебування кодового сегмента й інша інформація. У деяких ОС (наприклад, в ОС UNIX) інформацію такого роду, використовувану ОС для планування процесів, називають дескриптором процесу.
Дескриптор процесу в порівнянні з контекстом містить більш оперативну інформацію, що повинна бути легко доступна підсистемі планування процесів. Контекст процесу містить менш актуальну інформацію і використовується операційною системою тільки після того, як прийнято рішення про поновлення перерваного процесу.
Черги процесів являють собою дескриптори окремих процесів, об'єднані в списки. Таким чином, кожен дескриптор, крім всього іншого, містить принаймні один покажчик на інший дескриптор, що сусідить з ним у черзі. Така організація черг дозволяє легко їх переупорядковувати, включати і виключати процеси, переводити процеси з одного стану в інше.
Програмний код тільки тоді почне виконуватися, коли для нього операційною системою буде створений процес. Створити процес — це значить:
- створити інформаційні структури, що описують даний процес, тобто його дескриптор і контекст;
- уключити дескриптор нового процесу в чергу готових процесів;
- завантажити кодовий сегмент процесу в оперативну чи пам'ять в область свопинга.