- •Призначення та основні функції операційної системи.
- •Моделі операційних систем.
- •Класифікація операційних систем.
- •Виникнення та розвиток 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.
- •Поняття мережевої та розподіленої ос. Вимоги до розподілених ос.
- •Поняття обчислювального кластера. Розподілена подільна пам’ять.
- •Принципи та обмеження основних способів оповіщення задач про настання подій (синхронізації).
- •Основні програмні інтерфейси синхронізації виконання процесів.
- •Командний сценарій. Потоки введення/виведення, конвеєри.
- •Стандартне виведення
Основні атрибути файлів.
Атрибути - це характеристики властивостей файлів. Зазвичай має такі атрибути:
Час створення
Розмір
Дата встановленої модифікації
Права доступу
Специфічно для UNIX систем:
тип файлу(6 типів)
розмір
права доступу
ідентифікатор власника користувача
ід. Групи власника
час останньої модифікації
існує ще 4 додаткових:
ознака примусового блокування
ознака липкості
SUID(set user ID)
GUID(get user ID)
Для виконуваних файлів ознака липкості вказує на те, що необхідно зберегти образ файлу в пам’яті після його виконання.
Призначення та приклади використання утиліт: mkdir, mknod, mkfifo, cp, mv, rename.
mkdir - створення нового каталогу. Утиліта mkdir створює каталоги, задані списком операндів, у вказаному порядку, використовуючи режим прав доступу "rwxrwxrwx'' (0777).
Синтаксис:
mkdir [-pv] [-m режим] <имя_каталога> ...
Опції:
-m режим - становити права доступу кінцевого створюваного каталогу відповідно до зазначеного режимом.
-p - створювати проміжні каталоги по мірі необхідності.
-v - виводити докладну інформацію при створенні каталогів.
mknod - створює FIFO (іменований канал), спеціальний файл символьного чи блокового пристрою з вказаним ім'ям.
Синтаксис:
mknod [опції] <ім’я створюваного файлу>
Опції:
-p – створити іменовний канал FIFO.
-b – створити спеціальний блоковий файл.
-c - створити спеціальний символьний файл.
mkfifo - створює FIFO (іменовані) канали.
Синтаксис:
mkfifo [опції] <назва файлу>
Опції:
-m - встановлює права доступу до створюваних FIFO.
cp - утиліта копіювання файлу.
Синтаксис:
cp [опції] <файл | каталог> <файл | каталог >
Опції:
R- рекурсивне копіювання;
i - запит підтвердження перед перезаписом будь-яких файлів, які можуть бути перезаписані.
f- протилежність -i, замінює будь-які існуючі файли без запиту підтвердження.
v- докладний режим, повідомляє про всі дії, що виконуються cp.
Приклад: cp-i / timages / * images / - копіює всі файли з каталогу / timages / в каталог images /, що знаходиться в поточному каталозі. Запитується підтвердження, якщо має бути перезаписаний файл.
mv - команда переміщення файлів,
Синтаксис:
mv [опції] <файл|каталог>
Опції:
f - форсування операції - попередження не виводиться, якщо перезаписується існуючий файл.
і- протилежна дія. У користувача питається підтвердження перед перезаписом існуючого файлу.
v-докладний режим, повідомляє про всі зміни і дії.
Приклад: mv-vf file * images / trash - переміщує без запиту підтвердження всі файли з поточного каталогу, що починаються з file, разом з усім каталогом images / в каталог trash /, і показує порядок виконання кожної операції.
rename – утиліта для перейменування файлів
Типи користувачів. Облікові даних користувачів. Групи користувачів.
Користувач - об'єкт, який має певні правами, може запускати на виконання програми та володіти файлами. В якості користувачів можуть, наприклад, виступати віддалені комп'ютери або групи користувачів з однаковими правами і функціями. Такі користувачі називаються псевдокористувачами. Вони володіють правами на певні файли системи і від їх імені запускаються задачі, що забезпечують ту чи іншу функціональність UNIX.
Кожен користувач має свій ID ідентифікатор:
0 – має root (суперкористувач);
1-500 – це псевдо користувачі.
Обліковий запис користувача – це відомості, якими користувач представлений в ОС. Обліковий запис користувача містить такі атрибути: логін, пароль, числовий ідентифікатор UID, первинний груповий ідентифікатор GID, ім’я домашнього каталогу, ім’я початкового командного інтерпретатора /bin/bash.
Кожен користувач системи має унікальне ім'я. Однак система розрізняє користувачів щодо асоційованого з ім'ям ідентифікатору користувача або UID.
Користувач є членом однієї або декількох груп - списків користувачів, що мають подібні завдання. Приналежність до групи визначає додаткові права, якими володіють всі користувачі групи. Кожна група має унікальне ім'я, але як і для користувача, внутрішнім поданням групи є її ідентифікатор GID.
UID і GID визначають, якими правами володіє користувач в системі.
Вся інформація про користувачів зберігається у файлі etc/passwd. Це звичайний текстовий файл, право на читання якого мають всі користувачі системи, а право на запис має тільки адміністратор.
Аналогічно, інформація про групи зберігається у файлі / etc / group і містить списки користувачів, які належать тій чи іншій групі.
