Операційні системи - Робоча програма навчальної дисципліни (Силабус)

Реквізити навчальної дисципліни

Рівень вищої освіти Перший (бакалаврський)
Галузь знань 12 Інформаційні технології
Спеціальність 126 Інформаційні системи та технології
Освітня програма Інтегровані інформаційні системи, Інформаційні управляючі системи та технології
Статус дисципліни Нормативна
Форма навчання очна(денна)/заочна/дистанційна
Рік підготовки, семестр 1 курс, осінній семестр
Обсяг дисципліни 120 годин (денна: 36 годин – лекції, 18 годин – лабораторні, 66 годин – СРС; заочна: 4 години – лекції, 4 години – лабораторні, 112 годин – СРС)
Семестровий контроль/ контрольні заходи Залік/залікова робота
Розклад занять http://rozklad.kpi.ua
Мова викладання Українська
Інформація про керівника курсу / викладачів Лектор: ст. викладач Хмелюк Марина Сергіївна m.khmeliuk@kpi.ua. Лабораторні: ст.викл. Хмелюк Марина Сергіївна, m.khmeliuk@kpi.ua, ас. Феденко Віталій Валентинович, fedenko5961@gmail.com
Розміщення курсу https://campus.kpi.ua

Програма навчальної дисципліни

Опис навчальної дисципліни, її мета, предмет вивчання та результати навчання

Опис дисципліни

При проходженні даної дисципліни, студенти познайомляться з поняттям «операційна система», базовим складом компонентів операційної системи, функціями операційної системи, методами і алгоритмами керування локальними та розподіленими ресурсами: процесором, пам’яттю, пристроями введення-виведення. На лабораторних заняттях опанують роботу з клієнтськими операційними системами Windows 10 та Linux (Debian, Ubuntu) за допомогою графічного середовища та командного рядка, адміністрування систем, управління процесами в операційних системах. В курсі передбачений контроль якості отриманих знань у вигляді модульних контрольних робіт. На лекціях проводитимуться експрес опитування по пройденому матеріалу.

Предмет навчальної дисципліни

структура та функціонування централізованих операційних систем, процеси, управління процесором, пам’яттю, пристроями ведення-виведення, основні характеристики розподілених систем, процеси та синхронізація процесів в розподілених системах.

Міждисциплінарні зв’язки

Дисципліна Операційні системи є основою для дисциплін: Комп’ютерні мережі, Linux, Технології розроблення програмного забезпечення.

Мета навчальної дисципліни

Підготовка висококваліфікованих фахівців, які будуть володіти знаннями щодо принципів роботи операційних систем та застосовувати знання при розробці програмного забезпечення, мати навички взаємодії ОС з прикладним програмним забезпеченням та адмініструванні операційних систем Windows та Linux, а також уміти обґрунтовано вибрати операційну систему для вирішення певних завдань.

Основні завдання навчальної дисципліни

Знання
  • основи побудови операційних систем, їхньої архітектури, вимоги до них, історію їх розвитку і сучасні підходи до їх реалізації;
  • базовий склад компонентів операційної системи, основні функції ядра і системного програмного забезпечення;
  • методи і алгоритми керування локальними ресурсами комп’ютера: процесором, пам’яттю, пристроями введення-виведення, поділюваними ресурсами;
  • способи і засоби розв’язання проблем синхронізації в централізованих та розподілених операційних системах;
  • принципи реалізації файлових систем, структуру сучасних файлових систем;
  • проблеми реалізації мережних функцій операційних систем і способи організації розподілених файлових систем;
  • підходи до реалізації зазначених вище механізмів у сучасних операційних системах Windows та Linux.
Уміння
  • здійснювати інсталяцію сучасних операційних системам Windows та Linux, в тому числі у віртуалізованих середовищах;
  • виконувати базові налаштування операційних систем і вирішувати задачі адміністрування їх;
  • використовуючи системні засоби розробляти сценарії для автоматизації задач адміністрування;
  • формулювати вимоги до операційної системи для вирішення певних прикладних завдань.

Пререквізити та постреквізити дисципліни (місце в структурно-логічній схемі навчання за відповідною освітньою програмою)

Пререквізити

вміти користуватися комп’ютером, знати архітектуру обчислювальної машини.

Постреквізити

адміністрування операційних систем, застосування способів управління ресурсами обчислювальної системи для ефективної розробки програмного забезпечення. Після проходження дисципліни студенти зможуть інсталювати операційні системи у віртуальному середовищі, працювати з файловою систему за допомогою командного рядка (cmd Windows, bush Linux), писати файли пакетної обробки даних (.bat), управляти процесами в ОС, налаштовувати групові політики для користувачів.

Зміст навчальної дисципліни

Очна форма

Лекційні заняття

Розділ 1. Структура на функціонування операційних систем Тема 1. Загальні відомості про операційні системи Тема 2. Мережеві операційні системи Тема 3. Керування процесами і потоками. Тема 4. Керування пам’яттю Тема 5. Керування введенням-виведенням Тема 6. Файлові системи Розділ 2. Linux Тема 7. Структура файлової системи Тема 8. Стандартні потоки Linux Тема 9. Управління каталогами, файлами Тема 10. Управління текстовими потоками за допомогою фільтрів Тема 11. Користувачі, групи, права доступа в Linux Тема 12. Процеси в Linux

Лабораторні заняття
  1. Віртуалізація. Системи підтримки віртуалізації VMWare, Oracle VirtualBox. Операційна система Microsoft Windows. Інсталяція
  2. Облікові записи користувачів і групи користувачів операційної системи Windows. Права доступу до файлів і каталогів
  3. Команди роботи з файлами ОС Windows (cmd)
  4. Команди переадресації, конвеєри, фільтри. Файли пакетної обробки даних. Команди пакетних файлів.
  5. Операційна система Linux. Інсталяція, Структура файлової системи.
  6. Команди роботи з файлами ОС Linux (bush).
  7. Процеси в ОС Linux і керування ними.
  8. Додаткові системні утиліти Linux.

Заочна форма

Лекційні заняття

Розділ 1. Структура на функціонування операційних систем Тема 3. Керування процесами і потоками. Тема 4. Керування пам’яттю Тема 5. Керування введенням-виведенням Тема 6. Файлові системи

Лабораторні заняття
  1. Операційна система Windows. Інсталяція, Файлова система, права доступу до файлів. Командний рядок cmd
  2. Операційна система Debian. Інсталяція, Файлова система. Командний рядок bush

Навчальні матеріали та ресурси

Базова література

  1. Хмелюк М.С. Конспект лекцій з дисципліни «Операційні системи»
  2. Хмелюк М.С. Методичні вказівки до виконання лабораторних робіт для студентів з дисципліни «Операційні системи»
  3. Танненбаум Э. Современные операционные системы. 4-е изд. – СПб.: Питер, 2015. – 1120с.
  4. Олифер В.Г., Олифер Н.А. Сетевые операционные системы. 2-е изд. – СПб.: Питер, 2009. – 669с.
  5. Шеховцов В. А. Операційні системи – К.: Видавнича група BHV, 2005. – 576c.
  6. Руссинович М., Соломон Д. Внутреннее устройство Microsoft Windows. 6-е изд. – СПб.: Питер, 2013. – 800 с.

Допоміжна література

  1. Хоар Ч. Взаимодействующие последовательнные процессы.- Мир, 1989
  2. А.Гордеев, А.Ю.Молчанов Системное программное обеспечение. Учебник.- Санкт-Питербург. Питер, 2001 -734с.
  3. Уильямс Стивенс UNIX Взаимодействие процессов , ПИТЕР , 2002, 573с.

Навчальний контент

Методика опанування навчальної дисципліни (освітнього компонента)

Очна форма

Лекційні заняття

Назва теми лекції та перелік основних питань (перелік дидактичних засобів, посилання на літературу та завдання на СРС)
1 Лекція 1. Визначення, історія розвитку операційних систем. Функції операційних систем.
Важливі означення: обчислювальна система, операційна система, прикладні програми. ОС як розширена машина. Поняття про ресурси і завдання керування ресурсами комп'ютера. Історія розвитку ОС.
Література: (1- стор.3-16)
Завдання на СРС. Особливості ОС –FreeBSD, Android. Їхнє місце у класифікації ОС.
2 Лекція 2. . Архітектура операційних систем. Вимоги до сучасних операційних систем. >
Класифікація ОС за особливостями алгоритмів керування ресурсами, за апаратною платформою і за областями використання. Поняття архітектури операційної системи. Ядро і системне програмне забезпечення. Привілейований режим і режим користувача. Монолітна архітектура. Багаторівнева архітектура. Мікроядерна архітектура. Архітектура ОС Linux і Windows. Об'єктна архітектура. Апаратна незалежність і здатність ОС до перенесення. Програмна сумісність, прикладні програмні середовища. Розширюваність.
Література: (1- стор.17-26)
Завдання на СРС. Об’єктна архітектура Windows. Сучасні системи підтримки віртуалізації. VMware, Oracle VirtualBox.
3 Лекція 3. Мережеві засоби ОС. Компоненти мережевої ОС.
Структура мережевої операційної системи. Взаємодія компонентів операційної системи при взаємодії комп'ютерів. Підходи до побудови мережевих ОС. Однорангові ОС та з виділеними серверами (дворангові ОС). ОС для груп, кампусів, підприємств. Особливості корпоративних ОС.
Література: ( 1- стор.27-40)
Завдання на СРС. Безпека в корпоративних ОС.
4 Лекція 4. Основи мультипрограмування.
Мультипрограмування. Означення процесу і потоку. Потоки ядра і потоки користувача. Керування процесами/потоками, планування. Опис процесів і потоків: дескриптор і контекст. Стани потоків. Створення процесів.
Література: (1- стор.41-48)
Завдання на СРС. Моделі багатопотоковості. Теоретичний опис. Опис процесів і потоків у системі Linux (структури даних).
5 Лекція 5. Планування процесів і потоків.
Витісняюча і невитісняюча багатозадачність. Пріоритетні і безпріоритетні дисципліни планування. Квантування. Алгоритми планування. Керування процесами і потоками у сучасних ОС: Linux, Windows.
Література: (1- стор.49-55)
Завдання для СРС. Алгоритми планування в Linux. Алгоритми планування в системах реального часу.
6 Лекція 6. Синхронізація.
Взаємодія між процесами. Проблема синхронізації. Гонки. Критична секція. Блокування, змінна блокування. Семафори. Задача виробник-споживач. Взаємні блокування. М’ютекси, умовні змінні, монітори.
Література: (1- стор.56-65)
Завдання для СРС. Рішення задачі виробник-споживач за допомогою м’ютексів і умовних змінних.
7 Лекція 7. Загальні принципи керування пам’яттю.
Керування пам'яттю. Типи адрес. Розподіл пам'яті без застосування дискового простору.
Література: ( 1- стор.66-73)
Завдання для СРС. Розподіл пам’яті в ОС Windows та Linux.
8 Лекція 8. Віртуальна пам’ять. Кеш-пам’ять.
Віртуальна пам'ять. Оверлеї. Свопінг. Розподіл пам'яті з застосування дискового простору. Запам’ятовуючі пристрої. Ієрархія запам’ятовуючих пристроїв. Організація кеш-пам’яті.
Література: ( 1- стор.74-88)
Завдання для СРС. Рівні кеш-пам’яті.
9 Лекція 9. Основні принципи керування введенням-виведенням.
Завдання керування введенням-виведенням. Фізична організація пристроїв введення-виведення. Контролери, регістри. Організація програмного забезпечення введення-виведення. Синхронне та асинхронне введення-виведення. Обробка переривань. Драйвери пристроїв. Незалежний від пристроїв шар операційної системи. Користувацький шар програмного забезпечення.
Література: (1- стор.89-96 )
Завдання для СРС. Структура пакетів запитів введення-виведення (Windows). Команди роботи в периферійними пристроями.
10 Лекція 10. Основні принципи організації файлових систем.
Основні поняття про файли і файлові системи. Імена файлів. Типи файлів. Каталоги, зв’язки, спеціальні файли. Логічна організація файлів в Linux, Windows. Фізична організація файлу. Права доступу до файлів.
Література: (1- стор.97-108)
Завдання для СРС. Логічна організація файла блоками. Права доступу в ОС Windows.
11 Лекція 11. Реалізація файлових систем.
Кешування диску. Загальна модель файлової системи. Відображені в пам'ять файли. Сучасна архітектура файлових систем. Файлові системи Windows, Linux. Віртуальна файлова система VFS.
Література: (1- стор.109-123)
Завдання для СРС. Робота з файловою системою.
12 Лекція 12. Структура файлової системи.
Структура файлової системи, Змінні оточення, змінні середовища. Командний рядок. Команди Bash.
Література: (1- стор.124-151)
Завдання для СРС. Класифікація розподілених ОС.
13 Лекція 13. Стандартні потоки Linux.
Потоки STDIN, STDOUT, STDERR. Перенаправлення між потоками.
Література: (1- стор.158-166)
Завдання для СРС. Базові примітиви передачі повідомлень в розподілених системах.
14 Лекція 14. Управління каталогами, файлами.
Команди Bash для роботи з файлами, каталогами. Bush Globbing.
Література: (1- стор.167-182)
Завдання для СРС. Системи передачі повідомлень, які базуються на основі системних викликів.
15 Лекція 15. Управління текстовими потоками за допомогою фільтрів.
Команди для роботи з текстовими потоками. Текстовий редактор Vi. Регулярні вирази.
Література: (1- стор.144-157)
Завдання для СРС. Виклик віддалених процедур (RPC).
16 Лекція 16. Лекція 16. Користувачі, групи права доступу в Linux.
Ідентифікація користувачів. Права доступу до файлів і каталогів. SetUserID(SUID), SetGroupID(GUID), sticky bit, umask.
Література: ( 1- стор.183-207)
Завдання для СРС. Синхронізація в розподілених системах.
17 Лекція 17. Процеси в Linux.
Моніторинг, зупинка, знищення, зміна пріоритетів процесів.
Література: (1- стор.208-222)
Завдання для СРС. Процеси і потоки(нитки) в розподілених системах.

Лабораторні заняття

Назва лабораторної роботи Кількість ауд. годин
1 Віртуалізація. Системи підтримки віртуалізації VMWare, Oracle VirtualBox. Операційна система Microsoft Windows. Інсталяція. 2
2 Облікові записи користувачів і групи користувачів операційної системи Windows. Права доступу до файлів. 2
3 Команди роботи з файлами ОС Windows (cmd). 2
4 Команди переадресації, конвеєри, фільтри. Файли пакетної обробки даних. Команди пакетних файлів. 4
5 Операційна система Linux. Інсталяція, Структура файлової системи. 2
6 Команди роботи з файлами ОС Linux (bush) 2
7 Процеси в ОС Linux і керування ними 2
8 Додаткові системні утиліти Linux 2

Заочна форма

Лекційні заняття

Назва теми лекції та перелік основних питань (перелік дидактичних засобів, посилання на літературу та завдання на СРС)
1 Лекція 1. Основи мультипрограмування та загальні принципи керування пам’яттю
1. Мультипрограмування. Означення процесу і потоку. Потоки ядра і потоки користувача. Керування процесами/потоками, планування. Опис процесів і потоків: дескриптор і контекст. Стани потоків. Створення процесів. Планування. 2. Керування пам'яттю. Типи адрес. Розподіл пам'яті без застосування дискового простору.
Література: ( 1- стор.41-48, 66-73)
Завдання на СРС. 1. Розподілені ОС. Системні виклики в розподілених системах. 2. Опис процесів і потоків у системі Linux (структури даних). 3. Розподіл пам’яті в ОС Windows та Linux.
2 Лекція 2. Основні принципи керування введенням-виведенням та особливості розподілених операційних систем.
1 Завдання керування введенням-виведенням. Фізична організація пристроїв введення-виведення. Контролери, регістри. Організація програмного забезпечення введення-виведення. Синхронне та асинхронне введення-виведення. Обробка переривань. Драйвери пристроїв. Незалежний від пристроїв шар операційної системи. Користувацький шар програмного забезпечення. 2. Основні поняття про файли і файлові системи. Імена файлів. Типи файлів. Каталоги, зв’язки, спеціальні файли. Логічна організація файлів в Linux, Windows. Фізична організація файлу. Права доступу до файлів. Кешування диску. Загальна модель файлової системи. Відображені в пам'ять файли. Сучасна архітектура файлових систем. Файлові системи Windows, Linux. Віртуальна файлова система VFS.
Література: (1- стор.89-96, 97-123)
Завдання для СРС. 1. Структура пакетів запитів введення-виведення (Windows). 2. Файлові системи Windows, Linux. 3.Каталоги, файли, права доступу в в операційних системах Windows, Linux.

Лабораторні заняття

Назва лабораторної роботи Кількість ауд. годин
1 Операційна система Windows. Інсталяція, Файлова система, права доступу до файлів. Командний рядок cmd. 2
2 Операційна система Debian. Інсталяція, Файлова система. Командний рядок bush. 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 2
9 Рівні кеш-пам’яті 4
10 Структура пакетів запитів введення-виведення (Windows) 4
11 Команди роботи в периферійними пристроями 2
12 Логічна організація файла блоками 4
13 Права доступу в ОС Windows 2
14 Робота з файловою системою 4
15 Класифікація розподілених ОС 3
16 Базові примітиви передачі повідомлень в розподілених системах 3
17 Системи передачі повідомлень, які базуються на основі системних викликів 4
18 Виклик віддалених процедур (RPC) 2
19 Синхронізація в розподілених системах 4
20 Процеси і потоки(нитки) в розподілених системах 4

Заочна форма

Назва теми, що виноситься на самостійне опрацювання Кількість годин СРС
1 Дати визначення обчислювальної системи, операційної системи та прикладної програми 2
2 ОС як розширена машина 2
3 Поняття про ресурси і завдання керування ресурсами комп'ютера 2
4 Історія розвитку ОС 2
5 Особливості ОС –FreeBSD, Android. Їхнє місце у класифікації ОС 4
6 Класифікація ОС за особливостями алгоритмів керування ресурсами, за апаратною платформою і за областями використання 2
7 Поняття архітектури операційної системи 2
8 Ядро і системне програмне забезпечення. Привілейований режим і режим користувача 2
9 Монолітна архітектура. Багаторівнева архітектура. Мікроядрова архітектура 2
10 Архітектура ОС UNIX і Windows. Об'єктна архітектура 2
11 Апаратна незалежність і здатність ОС до перенесення 2
12 Програмна сумісність, прикладні програмні середовища.Розширюваність 2
13 Об’єктна архітектура Windows 2
14 Сучасні системи підтримки віртуалізації. VMware, Oracle VirtualBox 4
15 Безпека в корпоративних ОС 2
16 Моделі багатопотоковості. Теоретичний опис. Опис процесів і потоків у системі Linux (структури даних) 2
17 Алгоритми планування в Linux. Алгоритми планування в системах реального часу 6
18 Взаємодія між процесами. Проблема синхронізації. Гонки (змагання) 2
19 Критична секція. Блокування, змінна блокування. Семафори 2
20 Задача виробник-споживач. Взаємні блокування. М’ютекси, умовні змінні, монітори 2
21 Рішення задачі виробник-споживач за допомогою м’ютексів таумовних змінних 2
22 Розподіл пам’яті в ОС Windows та Linux 4
23 Рівні кеш-пам’яті 4
24 Структура пакетів запитів введення-виведення (Windows) 4
25 Команди роботи з периферійними пристроями 2
26 Основні поняття про файли і файлові системи. Імена файлів. Типи файлів 2
27 Каталоги, зв’язки, спеціальні файли. Логічна організація файлів в UNIX, Windows 2
28 Фізична організація файлу. Права доступу до файлів 2
29 Логічна організація файлу блоками 4
30 Права доступу в ОС Windows 2
31 Кешування диску. Загальна модель файлової системи 2
32 Відображені в пам'ять файли. Сучасна архітектура файлових систем 2
33 Файлові системи Windows, Linux. Віртуальна файлова система VFS 2
34 Каталоги, файли, права доступу в в операційних системах Windows, Linux 8
35 Особливості розподілених систем. Базові терміни та визначення 2
36 Розподіл прикладних програм за рівнями в розподіленій системі 3
37 Класифікація розподілених систем. Характеристики розподілених систем 2
38 Програмні компоненти розподілених систем 3
39 Системні виклики. Способи адресації. Блокуючі і неблокуючі примітиви 2
40 Буферизуючі і небуферизуючі примітиви. Надійні і ненадійні примітиви 2
41 Системи передачі повідомлень, які базуються на основі системних викликів 3
42 Концепція виклику віддалених процедур. Базові операції . Етапи виконання RPC 2
43 Статичне зв’язування. Динамічне зв’язування. Відмови. Семантика RPC у разі відмов 2
44 Особливості технології RPC 2
45 Алгоритм синхронізації логічного годинника 2
46 Алгоритми взаємного виключення (централізований алгоритм, розподілений алгоритм, алгоритм Token Ring). Неподільні транзакції 2
47 Алгоритми голосування 4
48 Поняття потоку. Способи організації обчислювального процесу з використанням ниток. Реалізація ниток. Нитки та RPC 2
49 Багатопотоковість на клієнті і сервері 2

Політика та контроль

Політика навчальної дисципліни (освітнього компонента)

Система вимог, які ставляться перед студентом:

  • відвідування лекційних та лабораторних занять є обов’язковою складовою вивчення матеріалу;
  • на лекції викладач користується власним презентаційним матеріалом; використовує телеграм для викладання матеріалу поточної лекції, додаткових ресурсів, лабораторних робіт та інше; викладач відкриває доступ до певної директорії гугл-диска для скидання електронних лабораторних звітів;
  • на лекції заборонено відволікати викладача від викладання матеріалу, усі питання, уточнення та ін. студенти задають в кінці лекції у відведений для цього час;
  • лабораторні роботи захищаються у два етапи – перший етап: демонстрація результатів роботи; другий етап – захист лабораторної роботи. Бали за лабораторну роботу враховуються лише за наявності електронного звіту;
  • модульні контрольні роботи пишуться на лекційних заняттях (тести у Moodle);
  • заохочувальні бали виставляються за: активну участь на лекціях. Кількість заохочуваних балів на більше 10;
  • штрафні бали виставляються за: невчасну здачу лабораторної роботи. Кількість штрафних балів на більше 10.

Види контролю та рейтингова система оцінювання результатів навчання (РСО)

Рейтинг студента складається з балів, що він отримує за:

  1. виконання та захист 8 лабораторних робіт;
  2. виконання 2 одногодинних модульних контрольних робіт (МКР);
  3. заохочувальні та штрафні бали.

Система рейтингових балів та критерії оцінювання

Денна форма навчання:
Лабораторні завдання
  • «відмінно», пповна відповідь на питання під час захисту (не менш ніж 90% потрібної інформації), повне виконання завдання лабораторної роботи – 9 балів;
  • «добре», достатньо повна відповідь на питання під час захисту (не менш ніж 75% потрібної інформації), повне виконання завдання лабораторної роботи – 7.5 балів;
  • «задовільно», неповна відповідь на питання під час захисту (не менш ніж 60% потрібної інформації), незначні помилки у виконанні завдання лабораторної роботи – 6.5 балів;
  • «незадовільно», незадовільна відповідь та/або значні помилки у виконання завдання лабораторної роботи – 0 балів.

За запізнення з поданням лабораторної роботи до захисту від встановленого терміну оцінка знижується на 1 бал(але не нижче 1 балу за кожну лабораторну роботу).

Модульні контрольні роботи
  • «відмінно», повна відповідь (не менш ніж 90% потрібної інформації) – 14 балів;
  • «добре», достатньо повна відповідь (не менш ніж 75% потрібної інформації), або повна відповідь з незначними помилками – 10 балів;
  • «задовільно», неповна відповідь (але не менш ніж 60% потрібної інформації) та незначні помилки – 6 балів;
  • «незадовільно», незадовільна відповідь потребує обов’язкового повторного написання в кінці семестру – 0 балів.
Заохочувальні бали

за активну творчу роботу на лекції 0,5 балів.

Міжсесійна атестація

За результатами навчальної роботи за перші 7 тижнів максимально можлива кількість балів – 27 балів. На першій атестації (8-й тиждень) студент отримує «зараховано», якщо його поточний рейтинг не менше 18 балів.

За результатами 13 тижнів навчання максимально можлива кількість балів – 82 бали. На другій атестації (14-й тиждень) студент отримує «зараховано», якщо його поточний рейтинг не менший ніж 57 балів

Максимальна сума вагових балів контрольних заходів протягом семестру складає:

RD = 8*rл.р.+2*rмкр+ (rз - rш)=8*9+2*14+(rз - rш)=100 + (rз - rш), де rл.р. – бал за лабораторну роботу (0…9); rмкр – бал за написання МКР (0…14); rз – заохочувальні бали (0…10); rзш – штрафні бали (0…10);.

Залік

Студенти, які не мають заборгованостей з лабораторних робіт, виконали дві МКР не нижче ніж на оцінку «задовільно», отримують залікову оцінку (залік) так званим «автоматом» відповідно до набраного рейтингу (таблиця 1)

Таблиця 1. Переведення рейтингових балів до оцінок за університетською шкалою
Кількість балів Оцінка
100-95 Відмінно
94-85 Дуже добре
84-75 Добре
74-65 Задовільно
64-60 Достатньо
Менше 60 Незадовільно
Є не зараховані лабораторні роботи або не зарахована модульна контрольна робота Не допущено

Додаткова інформація з дисципліни (освітнього компонента)

• перелік теоретичних питань, які виносяться на семестровий контроль наведено в Додатку 1 та Додатку 2.

Робочу програму навчальної дисципліни (Силабус): Складено ст. викладач, Хмелюк Марина Сергіївна Ухвалено кафедрою ІСТ (протокол № 1 від 31.08.2021 р.) Погоджено Методичною комісією факультету[1] (протокол № 1 від 30.08.2021 р.)

Додаток 1 Перелік теоретичних питань на залік по першій частині курсу

  1. Операційна система і її задачі
  2. ОС як розширена машина
  3. Безпека корпоративних ОС
  4. Підтримка багатозадачності в ОС
  5. Класифікація ОС щодо особливості алгоритмів керування процесами
  6. Багатопроцесорна обробка в ОС (мультипроцесування)
  7. Взаємодія компонентів операційної системи при взаємодії комп'ютерів
  8. Процес, стани процесів
  9. Кеш-пам'ять
  10. Структура кеш-пам’яті
  11. Як відбувається запит до оперативної пам’яті в системі оснащеній кеш-пам’яттю
  12. Довідкова служба в корпоративних ОС
  13. Контекст і дескриптор процесу
  14. Свопінг
  15. ОС як система управління ресурсами
  16. Підтримка додатків в корпоративних ОС
  17. Алгоритми планування процесів, які базуються на квантуванні
  18. Сегментно-сторінковий розподіл пам'яті
  19. Однозадачність і багатозадачність ОС
  20. Особливості мережевої ОС рівня підприємств
  21. Алгоритми планування процесів, які базуються на пріоритетах
  22. Сегментний розподіл пам'яті
  23. Однокористувацький і багатокористувацький режими роботи ОС
  24. Особливості мережевої ОС рівня кампусів
  25. Витісняють алгоритми планування процесів
  26. Сторінковий розподіл пам'яті
  27. Витісняюча і невитісняюча багатозадачність
  28. Особливості мережевої ОС рівня відділів (груп)
  29. Невитісняючі алгоритми планування процесів
  30. Віртуальна пам'ять, задачі, методи з використанням зовнішньої пам'ять і без неї
  31. Мережева ОС з виділеними серверами
  32. Критичні секції з використанням блокуючих змінних
  33. Розподіл пам'яті переміщуваними розділами
  34. Класифікація ОС щодо особливостей апаратних платформ
  35. Мережева одноранговая ОС
  36. Критичні секції з використанням семафором (метод Дейкстра)
  37. Розподіл пам'яті розділами змінної величини
  38. Розподіл пам'яті фіксованими розділами
  39. Класифікація ОС щодо особливості областей використання
  40. Системи пакетної обробки даних
  41. Системи розподілу часу
  42. Системи реального часу
  43. Підходи до побудови мережевої ОС
  44. Як запобігти виникненню тупиків, розпізнавання тупиків
  45. Класифікація ОС щодо особливостей методів побудови ОС
  46. Способи побудови ядра ОС
  47. Об’єктно-орієнтований підхід в побудові ОС
  48. Структура мережевої ОС
  49. Нитки (багатопоточність)
  50. Функції ОС по управлінню пам'яттю.
  51. Типи адрес
  52. Способи перетворення віртуального адреси в фізичний
  53. Що таке файлова система
  54. Імена файлів
  55. Типи файлів
  56. Атрибути файлів
  57. Структура каталогів
  58. Логічна організація файлової системи
  59. Фізична організація і адреса файлу
  60. Права доступу до файлу
  61. Загальна модель файлової системи (5 рівнів)
  62. Відображені в пам'ять файли
  63. Фізична організація пристроїв вводу-виводу
  64. Блок-орієнтовані пристрої, байт-орієнтовані пристрої
  65. Організація програмного забезпечення вводу-виводу. Рівень обробки переривань
  66. Організація програмного забезпечення вводу-виводу. Драйвери пристроїв
  67. Організація програмного забезпечення вводу-виводу. Незалежний від пристроїв рівень ОС
  68. Організація програмного забезпечення вводу-виводу. Користувацький рівень програмного забезпечення

Додаток 2 Перелік теоретичних питань на залік по другій частині курсу

  1. Структура файлової системи Linux
  2. Змінні оточення
  3. Змінні оболонки
  4. Командний рядок Shell
  5. Командні інтерпретатори
  6. Налаштування змінних середовища
  7. Команди Bash source, alias, bind, cd, declare, dirs, echo, enable, exit, bg, fg, history, help, kill, let, type, test, popd, printf, pushd, pwd, read, suspend, umask, time, wait
  8. Обробка текстових потоків за допомогою фільтрів: head, tail, od, join, nl, paste, pr, sed
  9. Текстові фільтри: sort, wc, uniq, split, tr, less, more
  10. Регулярні вирази: grep, egrep
  11. File Globbing
  12. Стандартні потоки в Linux
  13. Символи перенаправлення між потоками в Linux
  14. Управління файлами в Linux (каманди)
  15. Управління каталогами в Linux (каманди)
  16. Права доступу до файлів і каталогів в Linux
  17. SUID
  18. SGID
  19. sticky bit
  20. Додавання користувача в Linux
  21. Управління користувачами
  22. Управління групами користувачів
  23. Утиліта Umask
  24. Моніторинг процесів в Linux
  25. Команда kill, сигнали
  26. Зміна пріоритету процесів в Linux
  27. Розподілена операційна системи
  28. Характеристики розподілених систем
  29. Передача повідомлень в розподілених системах. Базові виклики
  30. Блокуючі та неблокуючі примітиви (виклики) передачі повідомлень
  31. Буферизуючі та небуферизуючі примітиви (виклики) передачі повідомлень. Як вирішується питання збереження повідомлень на машині - отримувачі
  32. Надійні та ненадійні примітиви (виклики) передачі повідомлень.
  33. Три підходи забезпечення надійності доставки повідомлень.
  34. Концепція викливу віддалених процедур
  35. Проблеми реалізації виклику віддалених процедур, пов’язані з розподіленістю
  36. Виконання виклику локальної процедури. Описати
  37. STUB- процедура при реалізації RPC
  38. Етапи виконання RPC
  39. Послідовність команд, яку необхідно виконати для кожного RPC-виклику. Розподіл часу між етапами виконання RPC
  40. Зв’язок клієнта і сервера. Статичне зв’язування
  41. Зв’язок клієнта і сервера. Динамічне зв’язування
  42. Специфікація сервера. Її використання при динамічному зв’язуванні
  43. Класи відмов. Семантика RPC у разі відмов
  44. Три підходи розпізнання ситуації, коли сервер відмовив
  45. Аварія клієнтської сторони. Що робити з «сиротами» - відповіді на запити, яких ніхто не очікує
  46. Синхронізація процесів. Рішення проблем синхронізації в централізованих та розподілених системах
  47. Проблеми фізичних годинників в розподілених системах. Відношення «сталося до». Постановка задачі ведення часу для процесів, які виконуються на різних машинах
  48. Алгоритм синхронізації логічного годинника
  49. Взаємне виключення. Використання критичних секцій для забезпечення взаємного виключення. Назвіть алгоритми для забезпечення взаємного виключення в розподілених системах
  50. Централізований алгоритм (опис, переваги, недоліки)
  51. Розподілений алгоритм (опис, переваги, недоліки)
  52. Алгоритм Token Ring (опис, переваги, недоліки)
  53. Неподільні транзакції. Модель неподільної транзакції
  54. Методи, які використовуються для реалізації неподільних транзакцій. Опис. Властивості транзакцій (впорядкованість, неподільність, постійність)
  55. Підходи для реалізації механізму транзакцій. Підхід, при якому процес, який починає транзакцію, працює в індивідуальному робочому просторі
  56. Підходи для реалізації механізму транзакцій. Підхід – перелік намірів
  57. Підходи для реалізації механізму транзакцій. Протокол двофазної фіксації транзакцій
  58. Нитки в централізованих та розподілених системах
  59. Реалізація ниток, де процеси мають по одній нитці кожен в розподілених системах
  60. Підхід реалізації ниток, де один процес має декілька ниток в розподілених системах
  61. Нитки в розподілених системах. Модель «Диспетчер/робочі нитки»
  62. Нитки в розподілених системах. Модель «Команда»
  63. Нитки в розподілених системах. Модель «Конвеєр»
  64. Користь використання ниток на клієнтських машинах в розподілених системах
  65. Реалізація ниток. Статичний, динамічний підхід. Створення, завершення ниток в розподілених системах.
  66. Реалізація ниток на клієнтській стороні в користувацькому просторі в розподілених системах. Преваги. Недоліки
  67. Реалізація ниток на клієнтській стороні в просторі ядра в розподілених системах. Преваги. Недоліки
  68. Реалізація RPC з використанням ниток (у випадку локального виклику RPC)
  69. Неявний виклик RPC. Переваги зі звичайним RPC