 
        
        - •Міністерство освіти і науки, молоді та спорту України
- •___Операційні системи____
- •(Назва навчальної дисципліни)
- •Питання та вправи на практичні заняття
- •Черкаси 2012 Модуль1
- •Тема 1. Поняття ос, мета її роботи. Класифікація комп’ютерних систем
- •Тема 2. Історія ос. Діалекти unix. Режими пакетної обробки, мультипрограмування, розділу часу
- •Тема 3. Особливості ос для різних класів комп’ютерних систем. Ос реального часу. Ос для хмарних обчислень
- •Тема 1. Архітектура комп’ютерної системи
- •Тема 2. Архітектура ос. Управління процесами: Основні поняття. Семафори і монітори.
- •Тема 1. Огляд функцій ос: управління пам’яттю, файлами, процесами, мережами, командними інтерпретаторами, сервіси ос, системні виклики. Рівні абстракції ос. Архітектура unix и ms-dos
- •Тема 1. Рівні абстракції ос. Ос с архітектурою мікроядра. Віртуальні машини. Мета проектування і розробки ос. Генерація ос
- •Тема 2. Управління процесами. Планування і диспетчеризація процесів
- •Тема 3. Потоки (threads) и багатопоточне виконання програм (multi-threading)
- •Тема 4. Методи синхронізації процесів
- •Тема 1. Управління пам’яттю
- •Тема 2. Сторінковая організація пам’яті
- •Тема 3. Сегментна організація пам’яті.
- •Модуль 2
- •Тема 1. Системи файлів
- •Тема 2. Віртуальні файлові системи (vfs). Реалізація файлових систем.
- •Тема 3. Мережева файлова система nfs
- •Тема 1. Системи вводу-виводу
- •Тема 1. Мережі і мережеві структури.
- •Тема 2. Безпека операційних систем і мереж
- •Тема 1. Архітектура, ядро, розповсюдження і ліцензування, принципи проектування, управління процессами
- •Тема 2. Огляд архітектури і можливостей системи Linux: Управління пам’яттю, ресурсами, файлові системи, драйвери пристроїв, мережі, безпека
- •Тема 1. Огляд архітектури і можливостей систем Windows 2000/xp/2003/Vista/2008/7
- •Тема 2. Системні механізми Windows
- •Тема 1. Ос для мобільних пристроїв. Windows Mobile Питання
- •Тема 2. Перспективи операційних систем I мереж
Тема 3. Потоки (threads) и багатопоточне виконання програм (multi-threading)
- Що таке потік, чим відрізняються однопотокові й багатопоточные процеси, у чому переваги багатопоточности? 
- У якій системі вперше було реалізоване поняття процесу, близьке сучасному поняттю потоку? 
- У який ОС багатопоточность уперше з'явилася "офіційно"? 
- На якій платформі розробки програм багатопоточность уперше була реалізована на рівні мови й базових бібліотек? 
- Що таке користувальницькі потоки, що таке системні потоки й чим вони відрізняються від користувальницьких? 
- Які існують моделі багатопоточности? 
- Які проблеми багатопоточності? 
- Що таке група потоків? 
- Якими типами даних описується потік в POSIX? 
- Які засоби синхронізації потоків використаються в POSIX? 
- У чому відмінність потоків в Solaris від потоків в інших системах? 
- Що таке полегшений процес? 
- У чому відмінність потоків в Windows 2000? 
- У чому відмінність потоків в Linux? 
Вправи
- Проаналізуйте й опишіть переваги, недоліки й проблеми багатопоточності. 
- Реалізуйте модель багатопоточності один/один. 
- Реалізуйте модель багатопоточності багато/один. 
- Реалізуйте модель багатопоточності багато/багато. 
Тема 4. Методи синхронізації процесів
- Чому необхідна синхронізація паралельних процесів? 
- Чому необхідні атомарность і взаємне виключення операцій над лічильником числа елементів у буфері? 
- Що таке конкуренція за загальні дані (race condition)? 
- Які атомарні операції, підтримані апаратно, використаються для синхронізації і яким образом? 
- Що таке загальний семафор й які операції над ним визначені? 
- Як реалізуються семафори й операції над ними? 
- Як використаються семафори для рішення проблеми критичних секцій? 
- Що таке двійковий семафор? 
- Як реалізуються загальні семафори й операції над ними з використанням двійкових семафорів? 
- Які Ви знаєте класичні завдання (схеми) синхронізації? 
- Що таке критичні області? 
- Як реалізується рішення завдання обмежений буфер з використанням критичних областей? 
- Що таке монітори (як засіб синхронізації)? 
- Які засоби синхронізації використаються в системі Solaris? 
- Які засоби синхронізації використаються в системі Windows 2000? 
Вправи
- Реалізуйте алгоритм рішення завдання обмежений буфер із взаємним виключенням критичних секцій. 
- Реалізуйте алгоритм булочної. 
- Реалізуйте алгоритми синхронізації процесів з використанням операцій TestAndSet й Swap (у припущенні, що вони атомарны). 
- Реалізуйте загальні семафори й операції над ними. 
- Реалізуйте двійкові семафори й операції над ними. 
- Реалізуйте алгоритм синхронізації критичних секцій з використанням семафорів. 
- Реалізуйте загальні семафори з використанням двійкових семафорів. 
- Реалізуйте алгоритм рішення завдання обмежений буфер з використанням семафорів. 
- Реалізуйте алгоритм рішення завдання читачі-письменники з використанням моніторів. 
- Реалізуйте монітори й умовні змінні з використанням семафорів. 
Змістовий модуль 5. Управління пам’яттю
