
- •Системне програмне забезпечення Конспект лекцій з дисципліни „Системне програмне забезпечення”
- •2 Концептуальні основи ос.....................................................................................16
- •2.4 Концепція віртуалізації....................................................................................28
- •2.5 Концепція переривань.....................................................................................30
- •5 Операційна система unix....................................................................................57
- •1 Операційні системи та середовища
- •Основні означення та терміни
- •Сучасні системи програмування
- •Віртуальний адресний простір
- •Операційні системи для персональних комп’ютерів
- •1.5 Принципи побудови ос
- •1.5.1 Модульність
- •1.5.2 Функціональна вибірковість
- •1.5.3 Генерованость ос
- •1.5.4 Функціональна надлишковість
- •1.5.5 Незалежність програм від зовнішніх пристроїв
- •1.5.7 Відкритість та нарощуваність ос
- •1.5.9 Забезпечення безпеки обчислень
- •1.5.10 Принципи проектування ос
- •2 Концептуальні основи ос
- •2.1 Процеси
- •2.1.1 Означення процесу та граф його існування
- •2.1.2 Класифікування процесів
- •2.2 Ресурс
- •2.2.1 Означення ресурсу
- •2.2.2 Властивості та класифікування ресурсів
- •2.3 Система керування процесами
- •2.3.1 Дворівнева система керування процесами
- •2.3.2 Дисципліни розподілу процесів
- •2.4 Концепція віртуалізації
- •2.5 Концепція переривань
- •3 Захищений режим 32-розрядних процесорів
- •3.1 Основні поняття захищеного режиму
- •3.2 Сегментний механізм віртуалізації пам’яті
- •3.3 Сторінковий механізм віртуалізації пам’яті
- •4 Архітектура операційних системWindows
- •4.1 Архітектура ос Windows 98se
- •4.1.1 Драйвери пристроїв
- •4.1.2 Диспетчер віртуальних машин
- •4.1.3 Встановлювані файлові системи
- •4.1.4 Диспетчер конфігурування
- •4.1.5 Диспетчер драйверів wdm
- •4.1.6 Ядро Windows 98se
- •4.1.8 Оболонка ос
- •4.1.9 Стандартні програми Windows 98se та додатки
- •4.2 Мережна підтримка ос Windows 98se
- •4.2.1 Взаємодія відкритих систем
- •4.2.2 Мережна архітектура Windows 98se
- •4.3 Апаратна підтримка захисту ос
- •4.4 Особливості розподілу оперативної пам’яті в ос Windows nt
- •4.5 Архітектура Windows 2000
- •5 Операційна система unix
- •5.1 Загальна характеристика ос сімейства unix
- •5.2 Архітектура операційної системи unix
- •5.3 Функціонування ос unix
- •5.3.1 Ядро системи
- •5.3.2 Файлова підсистема
- •5.3.3 Підсистема керування процесами та пам’яттю
- •5.3.4 Підсистема введення/виведення
- •5.3.5 Користувачі ос unix
- •5.4 Поняття процесу в ос unix
- •5.4.1 Компоненти процесу
- •5.4.2 Ідентифікатор процесу
- •5.4.2.1 Ідентифікатор батьківського процесу
- •5.4.2.2 Ідентифікатор користувача та групи
- •5.4.3 Стани процесу в unix
- •5.4.4 Керування процесами
- •5.5 Права доступу ос unix
- •5.5.1 Поняття прав доступу користувача
- •5.5.2 Основні біти доступу
- •5.5.3 Додаткові біти доступу
- •5.5.4 Сполучення бітів доступу
- •5.6 Мережні можливості ос unix
- •Список рекомендованої літератури:
5 Операційна система unix
5.1 Загальна характеристика ос сімейства unix
Операційна система UNIX є об’єднанням багатьох операційних систем, які мають різні назви й особливості, але однакову архітектуру, користувацький інтерфейс та середовище програмування. Головні ідеї ОС UNIX виникли 1965 року під час розробляння багатозадачної багатокористувацької ОС розподілу часу в Bell Telephone Laboratories разом з Масачусетським інститутом технології. Авторами ОС UNIX є Кен Томпсон та Деніс Рітчі, які 1971 року запропонували цю операційну систему для роботи в патентному відділі Bell Labs. Перші версії UNIX було написано на асемблері, але потім ядро ОС було переписано повністю мовою С, що сприяло популярності системи [6].
Основні версії системи: BSD, FreeBSD, SystemV Release (SVR4, SVR6), вільно розповсюджувану версію UNIX під назвою LINUX – розроблено в університеті Гельсинки Лінусом Горвальдсом. Усі ОС сімейства підтримують стандарт POSIX (переносимий інтерфейс операційної системи для обчислювального середовища), незалежний від апаратної платформи. Багато програмістів, котрі працюють в мережі, зробили власний внесок в удосконалення UNIX. Система легко розширюється, є зрозумілою для користувачів та надійною. Основні риси UNIX, які визначають її “живучість”, є такі:
Незважаючи на те, що, за оцінками одного з її творців Деніса Рітчі, система, написана мовою С, мала на 20...40 % більший розмір, а продуктивність була на 20 % нижча за аналогічну, написаної мовою асемблера, саме написання системного коду мовою високого рівня С зробило її простішою для розуміння, змінювання та перенесення на інші платформи.
UNIX — багатозадачна багатокористувацька система з широким спектром послуг. Один потужний сервер може обслуговувати запити численної кількості користувачів. UNIX-система може виконувати різноманітні функції: працювати як обчислювальний сервер, який обслуговує сотні користувачів; як сервер бази даних; як сервер мережі, що він підтримує найважливіші сервіси мережі (telnet, ftp, електронну пошту, службу імен DNS тощо), або навіть як мережний маршрутизатор.
Наявність стандартів. Незважаючи на різноманітність версій UNIX, підгрунтям всього сімейства є принципово однакові архітектура й низка стандартних інтерфейсів. Досвідчений адміністратор не надто напружуючись здатен обслуговувати іншу версію системи; для користувачів перехід на іншу версію може статся непомітним.
Простий, але потужний модульний користувацький інтерфейс. Маючи у своєму розпорядженні набір утиліт, кожна з яких розв’язує вузьке спеціалізоване завдання, можна конструювати з них складні комплекси.
Використання єдиної, легко обслуговуваної ієрархічної файлової системи. Файлова система — це не лише доступ до даних, які зберігаються на диску. Через уніфікований інтерфейс файлової системи здійснюється доступ до терміналів, принтерів, магнітних стрічок, мережі й навіть до пам’яті.
Велика кількість додатків, у тому числі вільно поширюваних, розпочинаючи від найпростіших текстових редакторів і завершуючи потужними системами керування базами даних.