ОПЕРАЦІЙНІ СИСТЕМИ
Робоча програма навчальної дисципліни (Силабус)
Реквізити навчальної дисципліни
Рівень вищої освіти | Перший (бакалаврський) |
---|---|
Галузь знань | 12 Інформаційні технології |
Спеціальність | 126 Інформаційні системи та технології |
Освітня програма | Інтегровані інформаційні системи |
Статус дисципліни | Нормативна |
Форма навчання | очна(денна)/заочна/дистанційна |
Рік підготовки, семестр | 1 курс, осінній семестр |
Обсяг дисципліни | 120 годин (36 годин – Лекції, 18 годин – Лабораторні, 66 годин – СРС) |
Семестровий контроль/ контрольні заходи | Залік/залікова робота |
Розклад занять | http://rozklad.kpi.ua |
Мова викладання | Українська |
Інформація про керівника курсу / викладачів |
Лектор: ст.викл. Хмелюк Марина Сергіївна, Telegram @Maryna181280 Лабораторні: ас. Феденко Віталій Валентинович, |
Розміщення курсу | https://campus.kpi.ua |
Програма навчальної дисципліни
Опис навчальної дисципліни, її мета, предмет вивчання та результати навчання
Опис дисципліни. При проходженні даної дисципліни, студенти познайомляться з поняттям «операційна система», базовим складом компонентів операційної системи, функціями операційної системи, методами і алгоритмами керування локальними та розподіленими ресурсами: процесором, пам’яттю, пристроями введення-виведення. На лабораторних заняттях опанують роботу з клієнтськими операційними системами Windows 10 та Linux (Debian, Ubuntu) за допомогою графічного середовища та командного рядка, адміністрування систем, управління процесами в операційних системах. В курсі передбачений контроль якості отриманих знань у вигляді модульних контрольних робіт. На лекціях проводитимуться експрес опитування по пройденому матеріалу.
Предмет навчальної дисципліни: структура та функціонування централізованих операційних систем, процеси, управління процесором, пам’яттю, пристроями ведення-виведення, основні характеристики розподілених систем, процеси та синхронізація процесів в розподілених системах.
Міждисциплінарні зв’язки. Дисципліна Операційні системи є основою для дисципліни Технології розроблення програмного забезпечення.
Мета навчальної дисципліни. Підготовка висококваліфікованих фахівців, які будуть володіти знаннями щодо принципів роботи операційних систем та застосовувати знання при розробці програмного забезпечення, мати навички взаємодії ОС з прикладним програмним забезпеченням та адмініструванні операційних систем Windows та Linux, а також уміти обґрунтовано вибрати операційну систему для вирішення певних завдань.
Основні завдання навчальної дисципліни
Знання:
основи побудови операційних систем, їхньої архітектури, вимоги до них, історію їх розвитку і сучасні підходи до їх реалізації;
базовий склад компонентів операційної системи, основні функції ядра і системного програмного забезпечення;
методи і алгоритми керування локальними ресурсами комп’ютера: процесором, пам’яттю, пристроями введення-виведення, поділюваними ресурсами;
способи і засоби розв’язання проблем синхронізації в централізованих та розподілених операційних системах;
принципи реалізації файлових систем, структуру сучасних файлових систем;
проблеми реалізації мережних функцій операційних систем і способи організації розподілених файлових систем;
підходи до реалізації зазначених вище механізмів у сучасних операційних системах Windows та Linux.
Уміння:
здійснювати інсталяцію сучасних операційних системам Windows та Linux, в тому числі у віртуалізованих середовищах;
виконувати базові настроювання операційних систем і вирішувати задачі адміністрування їх;
використовуючи системні засоби розробляти сценарії для автоматизації задач адміністрування;
формулювати вимоги до операційної системи для вирішення певних прикладних завдань.
Пререквізити та постреквізити дисципліни (місце в структурно-логічній схемі навчання за відповідною освітньою програмою)
Пререквізити: вміти користуватися комп’ютером, знати архітектуру обчислювальної машини.
Постреквізити: адміністрування операційних систем, застосування способів управління ресурсами обчислювальної системи для ефективної розробки програмного забезпечення.
Після проходження дисципліни студенти зможуть інсталювати операційні системи у віртуальному середовищі, працювати з файловою систему за допомогою командного рядка (cmd Windows, bush Linux), писати файли пакетної обробки даних (.bat), управляти процесами в ОС, налаштовувати групові політики для користувачів.
Зміст навчальної дисципліни
Очна форма
Лекційні заняття
Розділ 1. Структура на функціонування операційних систем
Тема 1. Загальні відомості про операційні системи
Тема 2. Мережеві операційні системи
Тема 3. Керування процесами і потоками.
Тема 4. Керування пам’яттю
Тема 5. Керування введенням-виведенням
Тема 6. Файлові системи
Розділ 2. Розподілені ОС. Управління розподіленими ресурсами
Тема 7. Розподілені ОС
Тема 8. Базові примітиви передачі повідомлень в розподілених системах
Тема 9. Виклик віддалених процедур (RPC)
Тема 10. Синхронізація в розподілених системах
Тема 11. Процеси і потоки(нитки) в розподілених системах
Лабораторні заняття
1. Віртуалізація. Системи підтримки віртуалізації VMWare, Oracle VirtualBox
2. Операційна система Microsoft Windows. Інсталяція.
3. Облікові записи користувачів і групи користувачів операційної системи Windows. Права доступу до файлів
4. Команди роботи з файлами ОС Windows (cmd).
5. Команди переадресації, конвеєри, фільтри. Файли пакетної обробки даних. Команди пакетних файлів.
6. Операційна система Linux. Інсталяція, Структура файлової системи.
7. Команди роботи з файлами ОС Linux (bush).
8. Процеси в ОС Linux і керування ними.
9. Додаткові системні утиліти Linux.
Заочна форма
Лекційні заняття
Розділ 1. Структура на функціонування операційних систем
Тема 3. Керування процесами і потоками.
Тема 4. Керування пам’яттю
Тема 5. Керування введенням-виведенням
Розділ 2. Розподілені ОС. Управління розподіленими ресурсами
Тема 7. Розподілені ОС
Лабораторні заняття
1. Операційна система Windows. Інсталяція, Файлова система, права доступу до файлів. Командний рядок cmd
2. Операційна система Debian. Інсталяція, Файлова система. Командний рядок bush
Навчальні матеріали та ресурси
Базова література
Хмелюк М.С. Конспект лекцій з дисципліни «Операційні системи»
Хмелюк М.С. Методичні вказівки до виконання лабораторних робіт для студентів з дисципліни «Операційні системи»
Танненбаум Э. Современные операционные системы. 4-е изд. – СПб.: Питер, 2015. – 1120с.
Олифер В.Г., Олифер Н.А. Сетевые операционные системы. 2-е изд. – СПб.: Питер, 2009. – 669с.
Шеховцов В. А. Операційні системи – К.: Видавнича група BHV, 2005. – 576c.
Руссинович М., Соломон Д. Внутреннее устройство Microsoft Windows. 6-е изд. – СПб.: Питер, 2013. – 800 с.
Допоміжна література
Хоар Ч. Взаимодействующие последовательнные процессы.- Мир, 1989
А.Гордеев, А.Ю.Молчанов Системное программное обеспечение. Учебник.- Санкт-Питербург. Питер, 2001 -734с.
Уильямс Стивенс UNIX Взаимодействие процессов , ПИТЕР , 2002, 573с.
Навчальний контент
Методика опанування навчальної дисципліни (освітнього компонента)
Очна форма
Лекційні заняття
№ з/п | Назва теми лекції та перелік основних питань (перелік дидактичних засобів, посилання на літературу та завдання на СРС) |
---|---|
Тема 1 Загальні відомості про операційні системи | |
1 | Лекція 1. Визначення, історія розвитку операційних систем. Функції операційних систем Важливі означення: обчислювальна система, операційна система, прикладні програми. ОС як розширена машина. Поняття про ресурси і завдання керування ресурсами комп'ютера. Історія розвитку ОС Л. (1- стор.3-16) Завдання на СРС. Особливості ОС –FreeBSD, Android. Їхнє місце у класифікації ОС. |
2 | Лекція 2. Архітектура операційних систем. Вимоги до сучасних операційних систем Класифікація ОС за особливостями алгоритмів керування ресурсами, за апаратною платформою і за областями використання. Поняття архітектури операційної системи. Ядро і системне програмне забезпечення. Привілейований режим і режим користувача. Монолітна архітектура. Багаторівнева архітектура. Мікроядерна архітектура. Архітектура ОС Linux і Windows. Об'єктна архітектура. Апаратна незалежність і здатність ОС до перенесення. Програмна сумісність, прикладні програмні середовища. Розширюваність Л. (1- стор.17-26) Завдання для СРС. Об’єктна архітектура Windows. Сучасні системи підтримки віртуалізації. VMware, Oracle VirtualBox |
Тема 2 Мережеві засоби операційні системи | |
3 | Лекція 3. Мережеві засоби ОС. Компоненти мережевої ОС Структура мережевої операційної системи. Взаємодія компонентів операційної системи при взаємодії комп'ютерів. Підходи до побудови мережевих ОС. Однорангові ОС та з виділеними серверами (дворангові ОС). ОС для груп, кампусів, підприємств. Особливості корпоративних ОС Л. (1- стор.27-40) Завдання для СРС. Безпека в корпоративних ОС |
Тема 3 Керування процесами і потоками | |
4 | Лекція 4. Основи мультипрограмування Мультипрограмування. Означення процесу і потоку. Потоки ядра і потоки користувача. Керування процесами/потоками, планування. Опис процесів і потоків: дескриптор і контекст. Стани потоків. Створення процесів. Завдання планування. Л. (1- стор.41-48) Завдання для СРС. Моделі багатопотоковості. Теоретичний опис. Опис процесів і потоків у системі Linux (структури даних). |
5 | Лекція 5. Планування процесів і потоків Витісняюча і невитісняюча багатозадачність. Пріоритетні і безпріоритетні дисципліни планування. Квантування. Алгоритми планування. Керування процесами і потоками у сучасних ОС: Linux, Windows Л. (1- стор.49-55) Завдання для СРС. Алгоритми планування в Linux. Алгоритми планування в системах реального часу |
6 | Лекція 6. Синхронізація Взаємодія між процесами. Проблема синхронізації. Гонки (змагання). Критична секція. Блокування, змінна блокування. Семафори. Задача виробник-споживач. Взаємні блокування. М’ютекси, умовні змінні, монітори Л. (1- стор.56-65) Завдання для СРС. Рішення задачі виробник-споживач за допомогою м’ютексів і умовних змінних. |
Тема 4 Керування пам’яттю | |
7 | Лекція 7. Загальні принципи керування пам’яттю Завдання керування пам'яттю. Типи адрес. Розподіл пам'яті без застосування дискового простору. Л. (1- стор.66-73) Завдання для СРС. Розподіл пам’яті в ОС Windows та Linux . |
8 | Лекція 8. Віртуальна пам’ять. Кеш-пам’ять Віртуальна пам'ять. Оверлеї. Свопінг. Розподіл пам'яті з застосування дискового простору. Запам’ятовуючі пристрої. Ієрархія запам’ятовуючих пристроїв. Організація кеш-пам’яті. Л. (1- стор.74-88) Завдання для СРС. Рівні кеш-пам’яті. |
Тема 5. Керування введенням-виведенням | |
9 | Лекція 9. Основні принципи керування введенням-виведенням. Завдання керування введенням-виведенням. Фізична організація пристроїв введення-виведення. Контролери, регістри. Організація програмного забезпечення введення-виведення. Синхронне та асинхронне введення-виведення. Обробка переривань. Драйвери пристроїв. Незалежний від пристроїв шар операційної системи. Користувацький шар програмного забезпечення. Л. (1- стор.89-96) Завдання для СРС. Структура пакетів запитів введення-виведення (Windows). Команди роботи в периферійними пристроями |
Тема 6. Файлові системи | |
10 | Лекція 10. Основні принципи організації файлових систем. Основні поняття про файли і файлові системи. Імена файлів. Типи файлів. Каталоги, зв’язки, спеціальні файли. Логічна організація файлів в Linux, Windows. Фізична організація файлу. Права доступу до файлів. Л. (1- стор.97-108) Завдання для СРС. Логічна організація файла блоками. Права доступу в ОС Windows. |
11 | Лекція 11. Реалізація файлових систем Кешування диску. Загальна модель файлової системи. Відображені в пам'ять файли. Сучасна архітектура файлових систем. Файлові системи Windows, Linux. Віртуальна файлова система VFS. Л. (1- стор.109-123) Завдання для СРС.Робота з файловою системою /proc. |
Тема 7 Розподілені ОС | |
12 | Лекція 12. Особливості розподілених операційних систем Базові терміни та визначення. Особливості розподілених систем. Л. (1- стор.124-134) Завдання для СРС. Розподіл прикладних програм за рівнями в розподіленій системі. |
13 | Лекція 13. Класифікація розподілених ОС Класифікація розподілених систем. Характеристики розподілених систем. Л. (1- стор.135-151) Завдання для СРС. Програмні компоненти розподілених систем. |
Тема 8. Базові примітиви передачі повідомлень в розподілених системах | |
14 | Лекція 14. Системні виклики в розподілених системах Системні виклики. Способи адресації. Блокуючі і неблокуючі примітиви. Буферизуючі і небуферизуючі примітиви. Надійні і ненадійні примітиви. Л. (1- стор.152-158) Завдання для СРС. Системи передачі повідомлень, які базуються на основі системних викликів. |
Тема 9. Виклик віддалених процедур (RPC) | |
15 | Лекція 15. Виконання RPC Концепція виклику віддалених процедур. Базові операції . Етапи виконання RPC. Статичне зв’язування. Динамічне зв’язування. Відмови. Семантика RPC у разі відмов. Л. (1- стор.159-171) Завдання для СРС. Особливості технології Microsoft RPC. |
Тема 9. Синхронізація в розподілених системах | |
16 | Лекція 16. Синхронізація в розподілених системах Алгоритм синхронізації логічного годинника. Алгоритми взаємного виключення (централізований алгоритм, розподілений алгоритм, алгоритм Token Ring). Неподільні транзакції Л. (1- стор.172-182) Завдання для СРС. Алгоритми голосування. |
Тема 10. Процеси і потоки(нитки) в розподілених системах | |
17 | Лекція 17. Процеси і потоки в розподілених ОС Поняття потоку. Способи організації обчислювального процесу з використанням ниток. Реалізація ниток. Нитки та RPC Л. (1- стор.183-190) Завдання для СРС. Багатопотокові клієнти і сервери. |
Лабораторні заняття
№ з/п | Назва лабораторної роботи (комп’ютерного практикуму) | Кількість ауд. годин |
---|---|---|
1 | Віртуалізація. Системи підтримки віртуалізації VMWare, Oracle VirtualBox Ознайомитися в програмами віртуалізації. Створити віртуальну машину, налаштувати. Л. (2- стор.5-20) |
2 |
2 | Операційна система Microsoft Windows. Інсталяція. Інсталювати операційну систему Windows 10. Ознайомитись з налаштуваннями Л. (2- стор.21-54) |
2 |
3 | Облікові записи користувачів і групи користувачів операційної системи Windows. Права доступу до файлів Створити облікові записи користувачів, груп користувачів операційної системи Windows. Налаштувати права доступу до файлів і каталогів операційної системи Windows. Л. (2- стор.55-70) |
2 |
4 | Команди роботи з файлами ОС Windows (cmd) Освоїти команди роботи з файловою системою через cmd. Л. (2- стор.71-99) |
2 |
5 | Команди переадресації, конвеєри, фільтри. Файли пакетної обробки даних. Команди пакетних файлів. Набути практичні навички роботи з командами переадресації, конвеєрами і зовнішніми командами фільтрів: find, more, sort. А також створити і застосувати файл пакетної обробки. Л. (2- стор.100-115) |
2 |
6 | Операційна система Linux. Інсталяція, Структура файлової системи. Створити віртуальну машину для установки ОС Debian. Інсталювати операційну систему. Розібратись зі структурою каталогів Л. (2- стор.116-140) |
2 |
7 | Команди роботи з файлами ОС Linux (bush). Освоїти команди роботи з файловою системою через bush. Л. (2- стор.141-157) |
2 |
8 | Процеси в ОС Linux і керування ними. Освоїти команди управління процесами Л. (2- стор.158-168) |
2 |
9 | Додаткові системні утиліти Linux. Навчитися користуватися grep, sed, locate whereis, aptitude, dpkg3 Л. (2- стор.169-179) |
2 |
Заочна форма
Лекційні заняття
|
|
---|---|
|
|
|
|
|
|
|
|
Лабораторні заняття
|
|
|
---|---|---|
|
|
|
|
|
|
Самостійна робота студента/аспіранта
Очна форма
№ з/п | Назва теми, що виноситься на самостійне опрацювання | Кількість годин СРС |
---|---|---|
1 | Особливості ОС –FreeBSD, Android. Їхнє місце у класифікації ОС. | 4 |
2 | Об’єктна архітектура Windows. | 2 |
3 | Сучасні системи підтримки віртуалізації. VMware, Oracle VirtualBox.. | 4 |
4 | Безпека в корпоративних ОС | 2 |
5 | Моделі багатопотоковості. Теоретичний опис. Опис процесів і потоків у системі Linux (структури даних) |
2 |
6 | Алгоритми планування в Linux. Алгоритми планування в системах реального часу | 6 |
7 | Рішення задачі виробник-споживач за допомогою м’ютексів і умовних змінних | 2 |
8 | Розподіл пам’яті в ОС Windows та Linux | 4 |
9 | Рівні кеш-пам’яті | 4 |
10 | Структура пакетів запитів введення-виведення (Windows). | 4 |
11 | Команди роботи в периферійними пристроями | 2 |
12 | Логічна організація файла блоками. | 4 |
13 | Права доступу в ОС Windows | 2 |
14 | Робота з файловою системою /proc | 4 |
15 | Розподіл прикладних програм за рівнями в розподіленій системі | 3 |
16 | Програмні компоненти розподілених систем. | 3 |
17 | Системи передачі повідомлень, які базуються на основі системних викликів. | 4 |
18 | Особливості технології RPC. | 2 |
19 | Алгоритми голосування. | 4 |
20 | Багатопотокові клієнти і сервери. | 4 |
Заочна форма
|
|
|
---|---|---|
Дати визначення обчислювальної системи, операційної системи та прикладної програми. |
|
|
ОС як розширена машина. |
|
|
Поняття про ресурси і завдання керування ресурсами комп'ютера. |
|
|
Історія розвитку ОС. |
|
|
Особливості ОС –FreeBSD, Android. Їхнє місце у класифікації ОС. |
|
|
Класифікація ОС за особливостями алгоритмів керування ресурсами, за апаратною платформою і за областями використання. |
|
|
Поняття архітектури операційної системи. |
|
|
Ядро і системне програмне забезпечення. Привілейований режим і режим користувача. |
|
|
Монолітна архітектура. Багаторівнева архітектура. Мікроядрова архітектура. |
|
|
Архітектура ОС UNIX і Windows. Об'єктна архітектура. |
|
|
Апаратна незалежність і здатність ОС до перенесення. |
|
|
Програмна сумісність, прикладні програмні середовища. Розширюваність |
|
|
Об’єктна архітектура Windows. |
|
|
Сучасні системи підтримки віртуалізації. VMware, Oracle VirtualBox. |
|
|
Безпека в корпоративних ОС |
|
|
|
|
|
|
|
|
Взаємодія між процесами. Проблема синхронізації. Гонки (змагання). |
|
|
Критична секція. Блокування, змінна блокування. Семафори. |
|
|
Задача виробник-споживач. Взаємні блокування. М’ютекси, умовні змінні, монітори |
|
|
Рішення задачі виробник-споживач за допомогою м’ютексів та умовних змінних |
|
|
Розподіл пам’яті в ОС Windows та Linux |
|
|
Рівні кеш-пам’яті |
|
|
Структура пакетів запитів введення-виведення (Windows). |
|
|
Команди роботи з периферійними пристроями |
|
|
Основні поняття про файли і файлові системи. Імена файлів. Типи файлів. |
|
|
Каталоги, зв’язки, спеціальні файли. Логічна організація файлів в UNIX, Windows. |
|
|
Фізична організація файлу. Права доступу до файлів. |
|
|
Логічна організація файлу блоками. |
|
|
Права доступу в ОС Windows |
|
|
Кешування диску. Загальна модель файлової системи. |
|
|
Відображені в пам'ять файли. Сучасна архітектура файлових систем. |
|
|
Файлові системи Windows, Linux. Віртуальна файлова система VFS. |
|
|
Робота з файловою системою /proc |
|
|
Особливості розподілених систем. Базові терміни та визначення. |
|
|
Розподіл прикладних програм за рівнями в розподіленій системі |
|
|
Класифікація розподілених систем. Характеристики розподілених систем. |
|
|
Програмні компоненти розподілених систем. |
|
|
Системні виклики. Способи адресації. Блокуючі і неблокуючі примітиви. |
|
|
Буферизуючі і небуферизуючі примітиви. Надійні і ненадійні примітиви. |
|
|
Системи передачі повідомлень, які базуються на основі системних викликів. |
|
|
Концепція виклику віддалених процедур. Базові операції . Етапи виконання RPC. |
|
|
Статичне зв’язування. Динамічне зв’язування. Відмови. Семантика RPC у разі відмов. |
|
|
Особливості технології RPC. |
|
|
Алгоритм синхронізації логічного годинника. |
|
|
Алгоритми взаємного виключення (централізований алгоритм, розподілений алгоритм, алгоритм Token Ring). Неподільні транзакції. |
|
|
Алгоритми голосування |
|
|
Поняття потоку. Способи організації обчислювального процесу з використанням ниток. Реалізація ниток. Нитки та RPC. |
|
|
Багатопотоковість на клієнті і сервері. |
|
Політика та контроль
Політика навчальної дисципліни (освітнього компонента)
Система вимог, які ставляться перед студентом:
відвідування лекційних та лабораторних занять є обов’язковою складовою вивчення матеріалу;
на лекції викладач користується власним презентаційним матеріалом; використовує телеграм для викладання матеріалу поточної лекції, додаткових ресурсів, лабораторних робіт та інше; викладач відкриває доступ до певної директорії гугл-диска для скидання електронних лабораторних звітів;
на лекції заборонено відволікати викладача від викладання матеріалу, усі питання, уточнення та ін. студенти задають в кінці лекції у відведений для цього час;
лабораторні роботи захищаються у два етапи – перший етап: демонстрація результатів роботи; другий етап – захист лабораторної роботи. Бали за лабораторну роботу враховуються лише за наявності електронного звіту;
модульні контрольні роботи пишуться на лекційних заняттях (тести у Moodle);
заохочувальні бали виставляються за: активну участь на лекціях. Кількість заохочуваних балів на більше 10;
штрафні бали виставляються за: невчасну здачу лабораторної роботи. Кількість штрафних балів на більше 10.
Види контролю та рейтингова система оцінювання результатів навчання (РСО)
Рейтинг студента з дисципліни складається з балів, що він отримує за:
виконання та захист 9 лабораторних робіт;
виконання 2 одногодинних модульних контрольних робіт (МКР);
заохочувальні та штрафні бали.
Система рейтингових балів та критерії оцінювання
Лабораторні роботи:
«відмінно», повна відповідь на питання під час захисту (не менш ніж 90% потрібної інформації) та оформлений належним чином протокол до лабораторної роботи – 8 бали;
«добре», достатньо повна відповідь на питання під час захисту (не менш ніж 75% потрібної інформації) та оформлений належним чином протокол до лабораторної роботи – 7 бали;
«задовільно», неповна відповідь на питання під час захисту (не менш ніж 60% потрібної інформації), незначні помилки та оформлений належним чином протокол до лабораторної роботи – 6 бал;
«незадовільно», незадовільна відповідь та/або не оформлений належним чином протокол до лабораторної роботи – 0 балів.
За кожне запізнення з поданням лабораторної роботи до захисту від встановленого терміну оцінка знижується на 1 бал (але не нижче 1 балу за кожну лабораторну роботу).
Модульні контрольні роботи:
«відмінно», повна відповідь (не менш ніж 90% потрібної інформації) – 14 балів;
«добре», достатньо повна відповідь (не менш ніж 75% потрібної інформації), або повна відповідь з незначними помилками – 9 балів;
«задовільно», неповна відповідь (але не менш ніж 60% потрібної інформації) та незначні помилки – 5 бали;
«незадовільно», незадовільна відповідь потребує обов’язкового повторного написання в кінці семестру – 0 балів.
Заохочувальні бали
за активну творчу роботу на лекції 0,5 балів.
Міжсесійна атестація
За результатами навчальної роботи за перші 7 тижнів максимально можлива кількість балів – 24 балів. На першій атестації (8-й тиждень) студент отримує «зараховано», якщо його поточний рейтинг не менше 15 балів.
За результатами 13 тижнів навчання максимально можлива кількість балів – 62 балів. На другій атестації (14-й тиждень) студент отримує «зараховано», якщо його поточний рейтинг не менший ніж 45 балів.
Максимальна сума вагових балів контрольних заходів протягом семестру складає:
R=9* rлаб +2* rмкр =9*8+2*14=100
де rлаб – бал за лабораторну роботу (0…8);
rмкр – бал за написання МКР (0…14);
Залік:
Студенти, які не мають заборгованостей з лабораторних робіт, виконали дві МКР не нижче ніж на оцінку «задовільно», отримують залікову оцінку (залік) так званим «автоматом» відповідно до набраного рейтингу (таблиця 1)
Таблиця 1. Переведення рейтингових балів до оцінок за університетською шкалою
Кількість балів | Оцінка |
100-95 | Відмінно |
94-85 | Дуже добре |
84-75 | Добре |
74-65 | Задовільно |
64-60 | Достатньо |
Менше 60 | Незадовільно |
Є не зараховані лабораторні роботи або не зарахована модульна контрольна робота |
Не допущено |
Додаткова інформація з дисципліни (освітнього компонента)
- перелік теоретичних питань, які виносяться на семестровий контроль наведено в Додатку 1 та Додатку 2.
Робочу програму навчальної дисципліни (Силабус):
Складено ст. викл, Хмелюк Марина Сергіївна
Ухвалено кафедрою АУТС (протокол № 1 від 27.08.2020 р.)
Погоджено Методичною комісією факультету[1] (протокол № 1 від 02.09.2020 р.)
[1] Методичною радою університету – для загальноуніверситетських дисциплін.
Додаток 1
Перелік теоретичних питань на залік по першій частині курсу
Операційна система і її задачі
ОС як розширена машина
Безпека корпоративних ОС
Підтримка багатозадачності в ОС
Класифікація ОС щодо особливості алгоритмів керування процесами
Багатопроцесорна обробка в ОС (мультипроцесування)
Взаємодія компонентів операційної системи при взаємодії комп'ютерів
Процес, стани процесів
Кеш-пам'ять
Структура кеш-пам’яті
Як відбувається запит до оперативної пам’яті в системі оснащеній
кеш-пам’яттю
Довідкова служба в корпоративних ОС
Контекст і дескриптор процесу
Свопінг
ОС як система управління ресурсами
Підтримка додатків в корпоративних ОС
Алгоритми планування процесів, які базуються на квантуванні
Сегментно-сторінковий розподіл пам'яті
Однозадачність і багатозадачність ОС
Особливості мережевої ОС рівня підприємств
Алгоритми планування процесів, які базуються на пріоритетах
Сегментний розподіл пам'яті
Однокористувацький і багатокористувацький режими роботи ОС
Особливості мережевої ОС рівня кампусів
Витісняють алгоритми планування процесів
Сторінковий розподіл пам'яті
Витісняюча і невитісняюча багатозадачність
Особливості мережевої ОС рівня відділів (груп)
Невитісняючі алгоритми планування процесів
Віртуальна пам'ять, задачі, методи з використанням зовнішньої
пам'ять і без неї
Мережева ОС з виділеними серверами
Критичні секції з використанням блокуючих змінних
Розподіл пам'яті переміщуваними розділами
Класифікація ОС щодо особливостей апаратних платформ
Мережева одноранговая ОС
Критичні секції з використанням семафором (метод Дейкстра)
Розподіл пам'яті розділами змінної величини
Розподіл пам'яті фіксованими розділами
Класифікація ОС щодо особливості областей використання
Системи пакетної обробки даних
Системи розподілу часу
Системи реального часу
Підходи до побудови мережевої ОС
Як запобігти виникненню тупиків, розпізнавання тупиків
Класифікація ОС щодо особливостей методів побудови ОС
Способи побудови ядра ОС
Об’єктно-орієнтований підхід в побудові ОС
Структура мережевої ОС
Нитки (багатопоточність)
Функції ОС по управлінню пам'яттю.
Типи адрес
Способи перетворення віртуального адреси в фізичний
Що таке файлова система
Імена файлів
Типи файлів
Атрибути файлів
Структура каталогів
Логічна організація файлової системи
Фізична організація і адреса файлу
Права доступу до файлу
Загальна модель файлової системи (5 рівнів)
Відображені в пам'ять файли
Фізична організація пристроїв вводу-виводу
Блок-орієнтовані пристрої, байт-орієнтовані пристрої
Організація програмного забезпечення вводу-виводу. Рівень обробки
переривань
Організація програмного забезпечення вводу-виводу. Драйвери
пристроїв
Організація програмного забезпечення вводу-виводу. Незалежний від
пристроїв рівень ОС
Організація програмного забезпечення вводу-виводу. Користувацький
рівень програмного забезпечення
Додаток 2
Перелік теоретичних питань на залік по другій частині курсу
Розподілена операційна системи
Характеристики розподілених систем
Комп’ютерні мережі. Програмні сервери. Програмні клієнти
Особливості розподілених систем. Переваги. Недоліки
Класифікація розподілених систем
Класичний комп’ютер SISD. Особливості
Паралельні й розподілені архітектури з MIMD. Особливості
Комп’ютери зі спільної, розподіленою, спільною віртуальною пам’яттю
Вільнозв’язні, сильнозв’язні комп’ютерні системи
Шинно-базовані й Switch-базовані комп’ютерні мережі
Розподілені периферійні системи
Розподілені системи типу «Newcastle»
Абсолютно прозорі розподілені системи
Прозорість в розподілених системах
Відкрита розподілена система. Характеристики
Гнучкість в розподілених системах
Стійкість в розподілених системах
Безпека, ефективність в розподілених системах
Масштабованість в розподілених системах
Підходи, що забезпечують масштабованість розподіленої системи
Передача повідомлень в розподілених системах. Базові виклики
Способи адресації повідомлень
Адресація повідомлень типу «машина-процес»
Адресація повідомлень типу «унікальна адреса»
Адресація повідомлень типу «символьні імена»
Блокуючі та неблокуючі примітиви (виклики) передачі повідомлень
Проблеми, пов’язані з неблокуючими викликами та можливі виходи.
Буферизуючі та небуферизуючі примітиви (виклики) передачі
повідомлень. Як вирішується питання збереження повідомлень на машині - отримувачі
Механізм буферизації «поштова скринька»
Надійні та ненадійні примітиви (виклики) передачі повідомлень.
Три підходи забезпечення надійності доставки повідомлень.
Концепція викливу віддалених процедур
Проблеми реалізації виклику віддалених процедур, пов’язані з
розподіленістю
Виконання виклику локальної процедури. Описати
STUB- процедура при реалізації RPC
Етапи виконання RPC
Послідовність команд, яку необхідно виконати для кожного
RPC-виклику. Розподіл часу між етапами виконання RPC
Зв’язок клієнта і сервера. Статичне зв’язування
Зв’язок клієнта і сервера. Динамічне зв’язування
Специфікація сервера. Її використання при динамічному зв’язуванні
Класи відмов. Семантика RPC у разі відмов
Три підходи розпізнання ситуації, коли сервер відмовив
Аварія клієнтської сторони. Що робити з «сиротами» - відповіді на
запити, яких ніхто не очікує
Синхронізація процесів. Рішення проблем синхронізації в
централізованих та розподілених системах
Проблеми фізичних годинників в розподілених системах. Відношення
«сталося до». Постановка задачі ведення часу для процесів, які виконуються на різних машинах
Алгоритм синхронізації логічного годинника
Взаємне виключення. Використання критичних секцій для забезпечення
взаємного виключення. Назвіть алгоритми для забезпечення взаємного виключення в розподілених системах
Централізований алгоритм (опис, переваги, недоліки)
Розподілений алгоритм (опис, переваги, недоліки)
Алгоритм Token Ring (опис, переваги, недоліки)
Неподільні транзакції. Модель неподільної транзакції
Методи, які використовуються для реалізації неподільних транзакцій.
Опис. Властивості транзакцій (впорядкованість, неподільність, постійність)
Підходи для реалізації механізму транзакцій. Підхід, при якому
процес, який починає транзакцію, працює в індивідуальному робочому просторі
Підходи для реалізації механізму транзакцій. Підхід – перелік
намірів
Підходи для реалізації механізму транзакцій. Протокол двофазної
фіксації транзакцій
Нитки в централізованих та розподілених системах
Реалізація ниток, де процеси мають по одній нитці кожен в
розподілених системах
Підхід реалізації ниток, де один процес має декілька ниток в
розподілених системах
Нитки в розподілених системах. Модель «Диспетчер/робочі нитки»
Нитки в розподілених системах. Модель «Команда»
Нитки в розподілених системах. Модель «Конвеєр»
Користь використання ниток на клієнтських машинах в розподілених
системах
Реалізація ниток. Статичний, динамічний підхід. Створення,
завершення ниток в розподілених системах.
Реалізація ниток на клієнтській стороні в користувацькому просторі в
розподілених системах. Преваги. Недоліки
Реалізація ниток на клієнтській стороні в просторі ядра в
розподілених системах. Преваги. Недоліки
Реалізація RPC з використанням ниток (у випадку локального виклику
RPC)
Неявний виклик RPC. Переваги зі звичайним RPC