Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Компютерні мережі лекції.doc
Скачиваний:
30
Добавлен:
28.08.2019
Размер:
2.15 Mб
Скачать

Тема 6.Сімейство ос unix

Операційна система UNIX з самого свого виникнення була за своєю суттю мережевою операційною системою. З появою багаторівневих мережевих протоколів TCP/IP компанія AT&T реалізувала механізм потоків (Streams), що забезпечує гнучкі і модульні можливості для реалізації драйверів пристроїв і комунікаційних протоколів. Streams є зв'язаним набором засобів загального призначення, що включає системні виклики і підпрограми, а також ресурси ядра. В сукупності ці засоби забезпечують стандартний інтерфейс символьного вступ/виводу усередині ядра, а також між ядром і відповідними драйверами пристроїв, надаючи гнучкі і розвинені можливості розробки і реалізації комунікаційних сервісів.

Велика частина комунікаційних коштів ОС UNIX ґрунтується на використанні протоколів стека TCP/IP. У UNIX System V Release 4 протокол TCP/IP реалізований як набір потокових модулів плюс додатковий компонент TLI (Transport Level Interface - Інтерфейс транспортного рівня). TLI є інтерфейсом між прикладною програмою і транспортним механізмом. Додаток, що користується інтерфейсом TLI, дістає можливість використовувати TCP/IP.

Проста форма організації потокового інтерфейсу показана на малюнку

Рис. 7.31. Проста форма потокового інтерфейсу

Одним з достоїнств ОС UNIX є те, що система базується на невеликому числі інтуїтивно ясних понять.

З самого початку ОС UNIX замишлялася як інтерактивна система. Іншими словами, операційна система UNIX призначена для термінальної роботи. Щоб почати працювати, людина повинна "увійти" до системи, ввівши з вільного терміналу своє облікове ім'я (account name) і, можливо, пароль (password). Людина, зареєстрована в облікових файлах системи і, отже, що має облікове ім'я, називається зареєстрованим користувачем системи. Реєстрацію нових користувачів зазвичай виконує адміністратор системи. Користувач не може змінити своє облікове ім'я, але може встановити і/або змінити свій пароль.

Програми

ОС UNIX одночасно є операційним середовищем використання існуючих прикладних програм і середовищем розробки нових застосувань. Нові програми можуть писатися на різних мовах (Фортран, Паскаль, Модула, Ада та ін.). Проте стандартною мовою програмування в середовищі ОС UNIX є мова Сі (який останнім часом все більше замінюється на Си++). Це пояснюється тим, що, по-перше, сама система UNIX написана на мові Сі, а, по-друге, мова Сі є одним з найякісніше стандартизованих мов.

Ядро ос unix

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

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

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

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

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

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

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

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