
- •Тема 1: Вступ. Мета та задачі курсу.
- •Типи операційних систем
- •Тема 2: Процеси. Керування процесами
- •Блок керування процесом
- •Операції над процесами
- •Обробка переривань
- •Лекція 4: Ядро операційної системи
- •Основні функції ядра
- •Асинхронні паралельні процеси
- •Взаємо-виключення
- •Семафори
- •Кільцевий буфер
- •Конвеєр (програмний канал)
- •Черги повідомлень (Queue)
- •Алгоритми планування процесів
- •Витісняючі та невитісняючі алгоритми планування
- •Нитки, потоки (Thread)
- •Висновки
- •Лекція 5. Керування ресурсами
- •Керування пам’яттю
- •Ієрархія пам’яті
- •Розподіл пам’яті
- •Зв’язний розподіл пам’яті для одного користувача
- •Мультипрограмування з фіксованими розділами
- •Мультипрограмування із змінними розділами
- •Боротьба з фрагментацією
- •Стратегії розміщення інформації в пам’яті
- •Системи з розподілом часу. Сторінкова організація пам’яті. Концепція віртуальної (уявної) пам’яті.
- •Принцип кешування даних
- •Керування процесорами
- •Планування з переключення та без переключення
- •Лекція 6. Керування даними Файлова система
- •Функції файлової системи
- •Ієрархія даних
- •Об’єднання в блоки та буферизація
- •Організація файлів
- •Методи доступу
- •Характеристики файлів
- •Файлова система
- •Виділення та звільнення місця в пам’яті
- •Зв’язаний розподіл пам’яті
- •Незв’язаний розподіл пам’яті
- •1) Розподіл за допомогою списків секторів
- •2) Поблочний розподіл
- •Дескриптор файлу (file descriptor)
- •Матриця керування доступом
- •Керування доступом в залежності від класів користувачів
- •Копіювання та відновлення інформації
- •Планування роботи з дисковою пам’яттю
- •Призначення планування
- •Цільові характеристики принципів планування
- •Оптимізація пошуку циліндру
- •Оптимізація за часом очікування записів
- •Архітектура сучасних файлових систем
- •Лекція 7. Інтерфейс прикладного програмування api (application program interface)
- •Варіанти реалізації api Перший варіант реалізації
- •Другий варіант реалізації
- •Лекція 8. Основи організації ms-dos
- •Будова та функції основних складових дос
- •Керування пам’яттю
- •Відображена пам’ять
- •Розширена пам’ять
- •Висока пам’ять
- •Верхня пам’ять
- •Драйвери верхньої та розширеної пам’яті
- •Завантажувані модулі com та exe – файли
- •Логічна структура диску в ms-dos
- •Формат елементів таблиці розділів
- •Запис завантаження (boot)
- •Використання boot-сектору
- •Визначення формату fat
- •Формат fat
- •Файли та каталоги
- •Недоліки ms-dos
- •Переваги які надає користувачам Windows
- •Windows як операційна оболонка
- •Обмін даними в Windows
- •Зв’язування чи вбудовування
- •Первинність повідомлень: механізм повідомлень
- •Незалежна (preemptive) багатозадачність
- •Взаємодія 32– та 16–розрядних кодів
- •Робота з 16–розрядними продуктами
- •Робота з dos–продуктами
- •Робота 32–розрядних Windows–продуктів
- •Вдосконалення розподілу системних ресурсів
- •Vcache – 32–розрядний дисковий кеш
- •Варіанти модифікацій ос Windows xp
- •Нові характеристики реалізовані в Windows xp
- •Продуктивність
- •Лекція 8. Ос unix
- •Ядро ос unix
- •Генерування ос
- •Процеси
- •Початкове завантаження. Процеси 0 та 1
- •Файлова система unix
- •Будова файлової системи unix
- •Каталоги
- •Тема 1: Вступ. Мета та задачі курсу. 1
- •Тема 2: Процеси. 5
Організація файлів
Під організацією файлів розуміється спосіб розміщення записів файла в зовнішній пам’яті. Зараз найбільш відомі такі види організації файлів:
1. Послідовна. Записи розташовуються у фізичному порядку. „Наступний” запис – це запис, який фізично іде слідом за попереднім. Така організація застосовується для файлів, що зберігаються на магнітній стрічці, виводяться на друк, перфокарти, перфострічки і т.п., тому що вони в принципі є послідовними носіями даних. Файли на дисках також можуть мати послідовну організацію.
2. Індексно–послідовна. Записи розташовуються в логічній послідовності у відповідності із значенням ключів, які є в кожному записі. В системі маємо спеціальний системний індекс, де вказані фізичні адреси певних головних записів. Доступ до індексно–послідовних записів може відбуватись послідовно відповідно до зростання (зменшення) значення ключа, або безпосередньо за ключем, шляхом пошуку за системним індексом. Такі файли звичайно зберігаються на дисках.
3. Пряма. Доступ до записів відбувається прямо (довільно) за їх фізичними адресами на запам’ятовуючому пристрої прямого доступу (ЗППД). Прикладна програма розміщує записи на ЗППД в довільному (зручному) неї порядку. Файли прямої організації вимагають, щоб користувач мав детальне представлення про фізичні особливості зовнішніх ЗП, на яких зберігаються файли.
4. Бібліотечна. Це файл, який складається з послідовних підфайлів. Кожний послідовний підфайл називається елементом або геном файлу. Початкова адреса кожного такого елементу зберігається в директорії файлу. Такі файли часто використовуються для зберігання програмних бібліотек.
Ці види організації файлів мають багато варіантів, які застосовуються в реальних системах.
Носій записів, який використовується в кожному конкретному зовнішньому ЗП називається томом.
Методи доступу
В ОС, як правило, реалізуються декілька методів доступу. Метод доступу(access method) – це сукупність угод та засобів, за допомогою яких реалізується заданий спосіб обміну фізичними записами файла.
Виділяють дві категорії МД:
- метод доступу з чергами (queued access method, QAM);
- базисні методи доступу.(basic access method, BAM).
Перший застосовується в тих випадках, коли послідовність обробки записів можна передбачити. Наприклад, при послідовній та індексно–послідовній організації файлів. У них передбачається випереджуюча буферизація та планування операцій вводу–виводу, т.п. Ці засоби, направлені на те, щоб, по можливості, до кінця обробки одного запису наступний запис був готовий до обробки. В оперативній пам’яті в кожний конкретний момент часу знаходиться більше одного запису. Це дозволяє суміщати обробку записів та виконання операцій вводу–виводу.
Ці методи доступу забезпечують також автоматичне блокування та деблокування записів, так що користувач може про це не думати.
Базисні методи доступу застосовуються звичайно у випадках, коли послідовність обробки записів передбачити не можливо. Кожна процедура обміну даними викликається, відповідним оператором вводу–виводу в програмі, що виконується. ОС не забезпечує автоматичне блокування, деблокування, попередню буферизацію та синхронізацію операцій обміну з обробкою.
Ці методи застосовуються в ситуаціях, коли прикладним програмам користувача треба керувати доступом до записів, але без небажаних накладних витрат, що властиво методам доступу чергами.
Базисними методами читаються та записуються фізичні блоки. Блокування та деблокування (якщо вони необхідні в конкретному випадку) виконує сам користувач.