Page 53 - 4784
P. 53

дозволяючи  окремому  процесу  монопольно  використовувати
                            системні ресурсі.
                                Процеси  в  операційній  системі  UNIX  відіграють  визначальну
                            роль.  Від  оптимального  налаштування  підсистеми  керування
                            процесами  і  кількості  одночасно  виконуваних  процесів  залежить
                            використання ресурсів процесора, що, у свою чергу, безпосередньо
                            впливає  на  продуктивність  системи  загалом.  Ядро  операційної
                            системи  надає  задачам  базовий  набір  сервісів,  зумовлений
                            інтерфейсом системних викликів. До них належать основні операції
                            з  файлами,  керування  процесами  і  пам’яттю,  підтримка
                            міжпроцесорної взаємодії.
                                Операційна  система  UNIX  є  багатозадачною.  Це  означає,  що
                            одночасно може виконуватись кілька процесів. Виконання процесу
                            має  йти  чітко  за  набором  інструкцій,  який  ніколи  не  передає
                            керування  набору  інструкцій  іншого  процесу.  Процес  зчитує  і
                            записує інформацію у розділ даних і у стек, але дані і стеки інших
                            процесів  йому  недоступні.  Водночас  процеси  мають  можливість
                            обмінюватися  один  з  одним  даними  за  допомогою  системи
                            міжпроцесорної  взаємодії.  Для  цього  в  UNIX  існує  набір  засобів
                            взаємодії між процесами, таких як сигнали (signals), канали (pipes),
                            розподілена  пам’ять  (shared  memory),  семафори  (semaphores),
                            повідомлення (messages) і файли.
                                В операційній системі UNIX розрізняються три типи процесів:
                            системні, демони і прикладні.
                                Системні  процеси  є  частиною  ядра  і  завжди  виконуються  в
                            оперативній  пам’яті.  Вони  не  мають  відповідних  їм  програм  у
                            вигляді  виконуваних  файлів  і  запускаються  особливим  чином  при
                            ініціалізації  ядра  системи.  Декілька  виконуваних  інструкцій  і  дані
                            цих  процесів  містяться  в  ядрі  системи.  Вони  можуть  викликати
                            функції  й  звертатися  до  даних,  недоступних  для  інших  процесів.
                            Системними  процесами  є  shed  (диспетчер  свопінгу),  vhand
                            (диспетчер  заміщення  сторінок),  bdfflush  (диспетчер  буферного
                            кеша) і kmadaemon (диспетчер пам’яті ядра). До системних процесів
                            слід віднести ink, що є прародичем всіх інших процесів у UNIX.
                                Демон  —  це  неінтерактивний  процес,  який  запускається
                            завантаженням у пам’ять відповідних програм (виконуваних файлів)
                            і  виконується  у  фоновому  режимі.  Зазвичай  демони  запускаються



                                                           51
   48   49   50   51   52   53   54   55   56   57   58