Здавалка
Главная | Обратная связь

Складові елементи процесів і потоків



· захищений адресний простір;

· дані, спільні для всього процесу (ці дані можуть спільно використовувати всі його потоки);

· інформація про використання ресурсів (відкриті файли, мережні з’єднання тощо);

· інформація про потоки процесу.

Потік містить такі елементи:

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

· стек потоку (ділянка пам’яті, де перебувають локальні змінні потоку й адреси повернення функцій, що викликані у його коді).

· Інформація, що зберігається у структурах даних процесу

Процес містить таку інформацію:

· командний рядок запуску виконуваного процесом застосування;

· інформація про відведений процесу адресний простір, включно зі стеком;

· посилання на поточний робочий каталог і кореневий каталог процесу (останній служить для обмеження доступу процесу до файлової структури);

· таблиця відкритих процесом файлів;

· так зване оточення процесу, тобто перелік заданих для даного процесу змінних з їх поточними значеннями;

· атрибути, що визначають права і привілеї процесу

· таблиця обробників сигналів;

· вказівка на батьківський процес;

· призначена для користувача маска або маска доступу — вказівка на те, які права треба видалити при створенні нового файлу або каталогу із стандартного набору прав, присвоєних файлу (каталогу).

· перелік потоків процесу (якщо операційна система підтримує багатопотоковість)

Для розуміння наступної інформації нам потрібно дізнатись, що таке потік ядра. Потік ядра – це послідовність виконання команд в адресному просторі ядра. Потоками ядра управляє ОС,перемикання ними можливе тільки у привілейованому режимі.

Для потоку дозволені такі стани:

· створення (new) - потік перебуває у процесі створення;

· виконання(running) - інструкції потоку виконує процесор (у конкретний момент часу на одному процесорі тільки один потік може бути в такому стані);

· очікування (waiting) - потік очікує деякої події(наприклад, завершення операції введення-виведення), такий стан називають також заблокованим, а потік-припиненим;

· готовність(ready) - потік очікує,що планувальник перемкне процесор на нього,при цьому він має всі необхідні ресурси,крім процесорного часу;

· завершення (terminated) - потік завершив виконання (якщо при цьому його ресурси не були вилучені з системи, він переходить у додатковий стан-стан зомбі).

В одно процесорній системі у стані виконання може знаходитися тільки один процес,а в стані очікування чи готовності-кілька процесів. Життєвий цикл процесу починається зі стану «готовий»,коли процес готовий до виконання. При активізації процес переходить у стан «виконуваний» і знаходиться в ньому доти,поки сам він звільнить процесор,перейшовши в стан очікування якої-небудь події, або буде насильно «витиснутий» із процесора,наприклад,внаслідок вичерпання відведеного даному процесу кванта процесорного часу. В останньому випадку процес повертається в стан «готовий». У цей же стан процес переходить зі стану очікування,після того як очікувана подія відбудеться.







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.