Онлайн робочі станції OnWorks Linux та Windows

логотип

Безкоштовний онлайн-хостинг для робочих станцій

<Попередній | зміст | Наступна>

3.1.3. Управління процесами


Процес – це запущений екземпляр програми, якому потрібна пам’ять для зберігання як самої програми, так і її робочих даних. Ядро відповідає за створення та відстеження процесів. Коли програма запускається, ядро ​​спочатку виділяє частину пам’яті, завантажує в неї виконуваний код з файлової системи, а потім запускає код. Він зберігає інформацію про цей процес, найпомітнішим з яких є ідентифікаційний номер, відомий як ідентифікатор процесу (PID).

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


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

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

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

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


Ядро дозволяє запускати кілька незалежних екземплярів однієї програми, але кожному дозволено доступ лише до власних часових фрагментів і пам'яті. Таким чином, їхні дані залишаються незалежними.

Найпопулярніші хмарні обчислення ОС на OnWorks: