- •Призначення та основні функції операційної системи.
- •Моделі операційних систем.
- •Класифікація операційних систем.
- •Виникнення та розвиток Unix - подібних систем.
- •Принципи структуризації побудови ос.
- •Підходи до архітектурної ос.
- •Основні функціональні підсистеми сучасних ос.
- •Підсистема управління оперативною пам'яттю
- •Підсистема управління задачами (процесами)
- •Апаратна підтримка функціонування ос.
- •Призначення та принципи роботи основних функціональних підсистем.
- •Інтерфейс системних викликів, статичні та динамічні бібліотеки.
- •Процес. Дескриптор процесу. Створення та завершення процесів.
- •Порядок запуску програм засобами базового інтерфейсу управління процесами.
- •Основні можливості та функції базового інтерфейсу управління процесами.
- •Ідентифікатор процесу. Основні атрибути процесу. Оперування атрибутами процесу.
- •Організація взаємодії між батьківським та дочірніми процесами.
- •Створення та завершення процесів. Поняття про дескриптор процесу.
- •Отримання ідентифікаторів процесів. Стани процесу.
- •Загальний порядок та фізичний зміст створення нового процесу.
- •Поняття процесу з позиції концепції багатопотокового виконання.
- •Поняття про життєвий цикл процесу.
- •Основні можливості та функції базового інтерфейсу управління сигналами. Диспозиція сигналу процесу.
- •Загальний порядок генерування та доставки сигналів процесу. Типи та властивості сигналів.
- •Основні можливості та функції базового інтерфейсу управління потоками.
- •Порядок створення та завершення потоків.
- •Принципи застосування базового інтерфейсу введення/виведення. Порядок роботи з файлом.
- •Основні можливості та функції стандартної бібліотеки введення/виведення.
- •Принципи застосування стандартної бібліотеки введення/виведення. Порядок роботи з файлом.
- •Поняття файлу. Типи файлів. Дані та метадані файлу.
- •Особливості застосування базового інтерфейсу та стандартної бібліотеки введення/виведення.
- •Загальні концепції синхронізації задач.
- •Сутність проблеми змагань між задачами. Умови виникнення змагань. Критичний код, критичний ресурс.
- •Загальні відомості про інтерфейси користувача ос.
- •Графічний інтерфейс
- •Порівняння графічного інтерфейсу та інтерфейсу командного рядка.
- •Приклади графічних середовищ користувача. Організація текстового сеансу роботи користувача.
- •Загальний порядок завантаження ос. Ланцюгове завантаження.
- •Досистемний етап завантаження.
- •Системний етап завантаження. Реалізація системного етапу завантаження Linux.
- •Процес init. Файли /etc/inittab, /etc/rc.D/rc.Sysinit.
- •Сценарії ініціалізації ос. Приклади системних демонів.
- •Компіляція та компоновка. Основні прийоми розробки початкових текстів, компіляції і компоновки програм. Статична компоновка. Динамічне зв’язування.
- •Створення та підключення бібліотек. Види бібліотек. Управління вибором способу підключення бібліотек, наявних у двох варіантах.
- •Види бібліотек та порядок створення бібліотек.
- •Поняття файлу та файлової системи. Імена файлів. Символічне посилання на файл.
- •Фізична організація файлових систем. Типи фізичної організації файлових систем. Поняття фрагментації даних.
- •Типи файлів. Власники файлів. Права доступу до файлів.
- •Основні атрибути файлів.
- •Призначення та приклади використання утиліт: mkdir, mknod, mkfifo, cp, mv, rename.
- •Типи користувачів. Облікові даних користувачів. Групи користувачів.
- •Призначення та зміст файлів, що утворюють традиційну базу обліку користувачів Unix. Псевдокористувачі.
- •Призначення та приклади застосування базових утиліт управління обліком користувачів Unix: useradd, usermod, userdel, groupadd.
- •Призначення та приклади застосування базових утиліт управління обліком користувачів Unix: groupmod, groupdel, passwd, gpasswd.
- •Програма, задача, процес. Привілейовані та непривілейовані процеси.
- •Ідентифікатор процесу. Родинні відносини між процесами.
- •Призначення та приклади застосування базових утиліт управління задачами Unix: ps, kill, nice, renice, su, sudo.
- •Поняття мережевої та розподіленої ос. Вимоги до розподілених ос.
- •Поняття обчислювального кластера. Розподілена подільна пам’ять.
- •Принципи та обмеження основних способів оповіщення задач про настання подій (синхронізації).
- •Основні програмні інтерфейси синхронізації виконання процесів.
- •Командний сценарій. Потоки введення/виведення, конвеєри.
- •Стандартне виведення
Загальні відомості про інтерфейси користувача ос.
Інтерфейс – засоби та сукупність команд операційної системи для здійснення діяльності користувачами щодо опрацювання інформації засобами обчислювальної системи.
У сучасних операційних найбільш поширеними є:
— інтерфейс командного рядка дозволяє користувачеві набирати команди на клавіатурі після системного запрошення, що розташоване у рядку введення. Монітор працює в текстовому режимі.
— графічний інтерфейс користувача забезпечує уведення команд операційної системи за допомогою виконання дій з візуальним представленням об'єктів ОС. Файли, каталоги, команди, програми користувача представляються у вигляді значків (піктограм), меню, кнопок, вікон. Для задання команд використовується маніпулятор "мишка", "трекбол".
Командний рядок
Найпершим способом забезпечення управління обчислювальною системою був інтерфейс командного рядка. При цій технології, як єдиний спосіб введення інформації від людини до комп'ютера використовується клавіатура, а комп'ютер виводить інформацію за допомогою алфавітно-цифрового дисплея (монітора). Таку комбінацію (монітор + клавіатура) стали називати терміналом або консоллю. Команди набираються в командному рядкові, що являє собою символ запрошення і миготливий прямокутник - курсор
Графічний інтерфейс
Ідея використання графічного інтерфейсу користувача зародилася в середині 70-х років, коли в дослідницькому центрі Xerox Palo Alto Research Center (PARC) була розроблена концепція візуального інтерфейсу. Передумовою появи графічного інтерфейсу з'явилося зменшення часу реакції комп'ютера на введену команду, зумовлене зростанням потужності центрального процесора, та додаткового обладнання. Перша система з графічним інтерфейсом 8010 Star Information System групи PARC з'явилася за чотири місяці до виходу у світ першого персонального комп'ютера фірми IBM у 1981 році. На перших етапах візуальний інтерфейс використовувався тільки для прикладного програмного забезпечення: текстовий редактор, електронні таблиці. Зростання попиту на обчислювальну техніку змусило розробників ОС використовувати засоби візуального управління в операційних системах: спочатку на комп'ютерах Atari і Apple Macintosh, а потім і на IBM-сумісних комп'ютерах.
Паралельно з розробкою графічних інтерфейсів для ОС проходив процес уніфікації використання клавіатури і мишки прикладними програмами. Злиття цих двох тенденцій привело до створення користувацького інтерфейсу, за допомогою якого, при мінімальних затратах часу і засобів на перенавчання, можна працювати з будь-якими програмними продуктами.
Основною концепцією сучасних графічних інтерфейсів є подання компонентів операційної системи (файл, каталог, програма) у вигляді візуальних графічних об'єктів, що мають певні властивості, команди операційній системи відображаються як зміна властивостей об'єктів.
Порівняння графічного інтерфейсу та інтерфейсу командного рядка.
Операційна система є найбільш використовуваною середовищем для командного рядка. З її допомогою реалізуються багато завдань, а в деяких ОС користувач може працювати з нею навіть частіше, ніж з графічним інтерфейсом.
Виділяють такі переваги використання командного рядка:
- невелике число натиснень для виклику будь-якої команди; - практично миттєве звернення до команд різних виконуваних файлів; - можливість автоматизації будь завдання за допомогою shell script або пакетних файлів; - управління програмами, в яких відсутній графічний інтерфейс; - віддалене з'єднання з комп'ютером з мінімальними затратами трафіку; - велика місткість тексту на сторінці в порівнянні з графічним інтерфейсом.
До мінусів командного рядка можна віднести:
- недружнього для користувачів, які звикли працювати з графічним інтерфейсом; - затруднительность введення довгих команд при відсутності автоматичного доповнення; - відсутність "аналогового" типу вводу.
Графічні інтерфейси володіють рядом переваг:
1. Їх відносно просто вивчити і використовувати. Користувачі, що не мають досвіду роботи з комп'ютером, можуть легко і швидко навчитися працювати з графічним інтерфейсом.
2. Кожна програма виконується в своєму вікні (екрані). Можна перемикатися з однієї програми в іншу, не втрачаючи при цьому дані, отримані в ході виконання програм.
3. Режим повноекранного відображення вікон дає можливість прямого доступу до будь-якого місця екрану.
