- •Основні концепції операційних систем. Поняття операційної системи, її призначення та функції.
- •Керування процесами і потоками. Базові поняття процесів і потоків. Процеси і потоки в сучасних ос. Моделі процесів і потоків. Складові елементи процесів і потоків.
- •3.Системний реєстр Windows xp. Логічна структура реєстру. Фізична організація реєстру. Програмний інтерфейс доступу до реєстру.
- •Основні концепції операційних систем. Операційна система як розширена машина. Операційна система як розподілювач ресурсів.
- •Логічна організація файлових систем. Загальні відомості про файлові операції. Файлові операції posix.
- •Основні концепції операційних систем. Історія розвитку операційних систем. Класифікація сучасних операційних систем.
- •Керування процесами і потоками. Створення процесів. Ієрархія процесів. Керування адресним простором під час створення процесів. Створення процесів
- •Логічна організація файлових систем. Загальні відомості про файлові операції. Файлові операції WinApi.
- •Керування процесами і потоками. Синхронне й асинхронне виконання процесів.
- •Логічна організація файлових систем. Організація інформації у файловій системі. Розділи. Каталоги. Зв'язок розділів і структури каталогів.
- •Основні концепції операційних систем. Функціональні компоненти операційних систем.
- •Архітектура операційних систем. Механізми і політика.
- •Керування процесами і потоками. Створення і завершення потоків. Особливості створення потоків
- •Міжпроцесова взаємодія на основі інтерфейсу файлової системи. Файлові блокування.
- •Архітектура операційних систем. Ядро системи. Привілейований режим і режим користувача.
- •Керування процесами і потоками. Керування процесами в unix і Linux.
- •Міжпроцесова взаємодія на основі інтерфейсу файлової системи. Файли, що відображаються у пам'ять.
- •Архітектура операційних систем. Реалізація архітектури операційних систем. Монолітні системи.
- •Керування процесами і потоками. Програмний інтерфейс керування потоками posix.
- •Міжпроцесова взаємодія на основі інтерфейсу файлової системи. Поіменовані канали
- •Архітектура операційних систем. Реалізація архітектури операційних систем. Багаторівневі системи.
- •Керування процесами і потоками. Керування процесами у Windows. Складові елементи процесу. Структури даних процесу.
- •Реалізація файлових систем. Інтерфейс віртуальної файлової системи vfs.
- •Архітектура операційних систем. Реалізація архітектури операційних систем. Системи з мікроядром.
- •Керування процесами і потоками. Керування процесами у Windows. Створення процесів. Завершення процесів.
- •Реалізація файлових систем. Файлові системи ext2fs і ext3fs.
- •Архітектура операційних систем. Реалізація архітектури операційних систем. Концепція віртуальних машин
- •Керування процесами і потоками. Програмний інтерфейс керування процесами WinАрі.
- •Реалізація файлових систем. Файлова система /ргос.
- •Архітектура операційних систем. Операційна система та її оточення. Взаємодія ос і апаратного забезпечення
- •Керування процесами і потоками. Керування потоками у Windows. Складові елементи потоку.
- •Динамічний розподіл пам'яті. Послідовний пошук підходящого блоку. Порівняння алгоритмів послідовного пошуку підходящого блоку.
- •Архітектура операційних систем. Взаємодія ос і апаратного забезпечення. Взаємодія ос і апаратного забезпечення
- •Керування процесами і потоками. Керування потоками у Windows. Створення потоків.
- •Динамічний розподіл пам'яті. Алгоритм найкращого підходящого. Алгоритм найкращого підходящого.
- •1)Архітектура операційних систем. Взаємодія ос і виконуваного програмного коду.
- •2).Керування процесами і потоками. Керування потоками у Windows.Особливості програмного інтерфейсу потоків
- •3) Динамічний розподіл пам'яті. Алгоритм першого підходящого.
- •Архітектура операційних систем. Особливості архітектури unix.
- •2.Взаємодія потоків. Основні принципи взаємодії потоків. Основні проблеми взаємодії потоків. Проблема змагання. Критичні секції та блокування. Базові механізми синхронізації потоків.
- •3.Динамічний розподіл пам'яті. Ізольовані списки вільних блоків. Проста ізольована пам'ять.
- •2.Взаємодія потоків. Семафори.
- •3.Основи технології віртуальної пам'яті
- •Взаємодія потоків. М'ютекси.
- •Основи технології віртуальної пам'яті. Фрагментація пам'яті. Логічна і фізична адресація пам'яті. Підхід базового і межового регістрів.
- •Міжпроцесова взаємодія. Види міжпроцесової взаємодії.
- •Взаємодія потоків. Умовні змінні.
- •Основи технології віртуальної пам'яті. Сегментація пам'яті. Особливості сегментації пам'яті. Реалізація сегментації в архітектурі іа-32.
- •Міжпроцесова взаємодія. Методи розподілюваної пам'яті. Методи передавання повідомлень.
- •Взаємодія потоків. Концепція монітора.
- •Основи технології віртуальної пам'яті. Сторінкова організація пам'яті. Базові принципи сторінкової організації пам'яті. Порівняльний аналіз сторінкової організації пам'яті та сегментації.
- •Міжпроцесова взаємодія. Технологія відображуваної пам'яті
- •Взаємодія потоків. Блокування читання-записування. Синхронізація за принципом бар'єра.
- •Основи технології віртуальної пам'яті. Багаторівневі таблиці сторінок. Реалізація таблиць сторінок в архітектурі іа-32
- •Взаємодія з диском підчас керування пам'яттю. Поняття підкачування. Проблеми реалізації підкачування сторінок.
- •Взаємодія з диском підчас керування пам'яттю. Заміщення сторінок. Оцінка алгоритмів заміщення сторінок.
- •Взаємодія потоків. Синхронізація процесів користувача у Linux. Ф'ютекси.
- •Керування процесами і потоками. Програмний інтерфейс керування потоками posix
- •Взаємодія з диском підчас керування пам'яттю. Алгоритм fifo. Оптимальний алгоритм.
- •Взаємодія потоків.Програмний інтерфейс взаємодії WinАрі.
- •Взаємодія з диском підчас керування пам'яттю. Годинниковий алгоритм.
- •Взаємодія потоків.Взаємодія потоків у Linux.
- •1.Взаємодія з диском підчас керування пам'яттю. Блокування сторінок у пам'яті. Фонове заміщення сторінок. Блокування сторінок у пам'яті
- •Взаємодія потоків.Взаємодія потоків у Linux.
- •Планування процесів і потоків. Види планування. Довготермінове планування. Середньотермінове планування. Короткотермінове планування. Стратегії планування.
- •Короткотермінове планування
- •Міжпроцесова взаємодія на основі інтерфейсу файлової системи. Файли, що відображаються у пам'ять.
- •Взаємодія потоків.Базові механізми синхронізації потоків.
Архітектура операційних систем. Операційна система та її оточення. Взаємодія ос і апаратного забезпечення
ОС повинна реалізувати засоби взаємодії з апаратним забезпеченням та арх. комп. Потрібно проектувати з урахуванням того що на ньому буде функціонувати ОС. Інтерфейс апаратного забезпечення має бути схований від прикладних програм та користувачів, роботу з ним здійснює ОС. Сучасні архітектури комп’ютерів реалізують базові засоби підтримка ОС. Система переривань – основний механізм що забезпечує роботу ОС(за допомогою них процесор отримує інфу про події). Переривання є апаратні і програмі. Апаратне – сигнал що передається процесору від апаратного пристрою(перериваня ввведеня – виведення, переривання пов’язані з апаратними в програмними помилками). Програмні переривання генерує прикладна програма виконуючи інструкцію переривання. Якщо перериваня відбулося то процесор передає керування процедурі – оброблювачеві переривання. Тут є переривання для відмов та для пасток. За встановлення оброблювачів переривань відповідає ОС. Механізм трансляції адрес забезпечує перетворення адрес пам’яті в адреси фізичної пам’яті. Захист пам’яті – перевіряє права доступу до пам’яті під час кожної спроби його отримати. BIOS(базова система введення - виведення) – службовий програмний код що зберігається в ПЗП і призначений для ізоляції ОС від конкретного програмного забезпечення.
Керування процесами і потоками. Керування потоками у Windows. Складові елементи потоку.
Потік у Windows ХР складається з таких елементів:
вмісту набору регістрів, який визначає стан процесора;
двох стеків - один використовують для роботи в режимі користувача, інший— у режимі ядра; ці стеки розміщені в адресному просторі процесу, що створив цей потік;
локальної пам'яті потоку (TLS);
4- унікального ідентифікатора потоку (thread id, tid), який вибирають із того самого простору імен, що й ідентифікатори процесів. Сукупність стану процесора, стеків і локальної пам'яті потоку становить контекст потоку. Кожний потік має власний контекст. Усі інші ресурси процесу спільно використовуються потоками. Розрізняють два види потоків: потоки користувача і потоки ядра, які у Windows ХР називають системними робочими потоками — system worker threads. Перші з них створюють у режимі користувача й тільки за необхідності перемикають у режим ядра. Інші створюють в ядрі під час його ініціалізації і виконують у режимі ядра протягом усього часу їхнього існування.
Структури даних потоку
Для виконавчої системи Windows ХР кожен потік відображається об'єктом-потоком виконавчої системи, який також називають керуючим блоком потоку (ETHREAD). Для ядра системи потік відображається об'єктом-потоком ядра, який також називають блоком потоку ядра (KTHREAD). У режимі користувача доступним є блок оточення потоку (ТЕВ), який перебуває в адресному просторі процесу, що створив потік. Неважко помітити, що кожній структурі даних потоку відповідає структура даних процесу (EPROCESS, KPR0CESS і РЕВ).
Керуючий блок потоку містить базову інформацію про потік, зокрема: блок потоку ядра, ідентифікатор процесу, до якого належить потік, і покажчик на керуючий блок цього процесу (EPROCESS), стартову адресу потоку, з якої почнеться виконання його коду, інформацію для підсистеми безпеки.
Блок потоку ядра, у свою чергу, містить інформацію, необхідну ядру для організації планування і синхронізації потоків, зокрема: покажчик на стек ядра, інформацію для планувальника, інформацію, необхідну для синхронізації цього потоку, покажчик на блок оточення потоку.
Блок оточення потоку містить інформацію про потік, доступну для застосувань режиму користувача. До неї належать:ідентифікатор потоку, покажчик на стек режиму користувача, покажчик на блок оточення процесу, до якого належить потік, покажчик на локальну пам'ять потоку.
