logo
Компютерні мережі лекції

Ядро ос unix

Як і в будь-якій іншій багатокористувацькій операційній системі, що забезпечує захист користувачів один від одного і захист системних даних від будь-якого непривілейованого користувача, в ОС UNIX є захищене ядро, яке управляє ресурсами комп'ютера і надає користувачам базовий набір послуг.

До основних функцій ядра ОС UNIX прийнято відносити наступні.

  1. Ініціалізація системи – функція запуску і розкручування. Ядро системи забезпечує засіб розкручування (bootstrap), який забезпечує завантаження повного ядра в пам'ять комп'ютера і запускає ядро.

  2. Управління процесами і нитками – функція створення, завершення і відстежування існуючих процесів і ниток (процесів, що виконуються на загальній віртуальній пам'яті). Оскільки ОС UNIX є мультипроцесорною операційною системою, ядро забезпечує розділення між запущеними процесами часу процесора (або процесорів в мультипроцесорних системах) і інших ресурсів комп'ютера для створення зовнішнього відчуття того, що процеси реально виконуються в паралель.

  3. Управління пам'яттю – функція відображення практично необмеженої віртуальної пам'яті процесів у фізичну оперативну пам'ять комп'ютера, яка має обмежені розміри. Відповідний компонент ядра забезпечує використання одних і тих же областей оперативної пам'яті, що розділяється, декількома процесами з використанням зовнішньої пам'яті.

  4. Управління файлами – функція, що реалізовує абстракцію файлової системи, ієрархії каталогів і файлів. Файлові системи ОС UNIX підтримують декілька типів файлів. Деякі файли можуть містити дані у форматі ASCII, інші відповідатимуть зовнішнім пристроям. У файловій системі зберігаються об'єктні файли, виконувані файли і так далі Файли зазвичай зберігаються на пристроях зовнішньої пам'яті; доступ до них забезпечується засобами ядра. В світі UNIX існує декілька типів організації файлових систем. Сучасні варіанти ОС UNIX одночасно підтримують більшість типів файлових систем.

  5. Комунікаційні засоби - функція, що забезпечує можливості обміну даними між процесами, що виконуються усередині одного комп'ютера (IPC - Inter-Process Communications), між процесами, що виконуються в різних вузлах локальної або глобальної мережі передачі даних, а також між процесами і драйверами зовнішніх пристроїв.

  6. Програмний інтерфейс – функція, що забезпечує доступ до можливостей ядра з боку призначених для користувача процесів на основі механізму системних викликів, оформлених у вигляді бібліотеки функцій.