1. | Наслов на наставниот предмет | Напредни концепти од оперативни системи | ||||||||||||||||||||||
2. | Код | 4ФЕИТ07009 | ||||||||||||||||||||||
3. | Студиска програма | 7-НКС, 8-КМ-ИНН, 20-ИМСА | ||||||||||||||||||||||
4. | Организатор на студиската програма
(единица, односно институт, катедра, оддел) |
Факултет за електротехника и информациски технологии | ||||||||||||||||||||||
5. | Степен (прв, втор, трет циклус) | Втор циклус студии | ||||||||||||||||||||||
6. | Академска година/семестар | I/1 | 7. | Број на ЕКТС кредити | 6.00 | |||||||||||||||||||
8. | Наставник | Д-р Марија Календар | ||||||||||||||||||||||
9. | Предуслов за запишување на предметот | |||||||||||||||||||||||
10. | Цели на предметната програма (компетенции):
Запознавање со напредните концепти од елементите на ОС, модуларност и драјвери за ОС, сложени концепти на процесна комуникација и управување со меморија и I/O уреди во паралелни и дистрибуирани средини, како и со спецификите на виртуелните системи, вградените системи и системите за работа во реално време. По завршување на курсот студентите ќе имаат компетенции за: напредно познавање на елементите од еден ОС; знаење за управување и одржување на комјутерски системи; знаење за работа со администраторски скрипти и управување на ОС; знаење и капацитет да применуваат концепти и функционалности од дистрибуирани ОС; знаење и користење на разновидни платформи за дизајн на софтвер и хардвер според примената; како и да вршат евалуација на избраните решенија според соодветни карактеристики и квалификатори; да планираат, дизајнираат и имплементираат соодветни комплетни системски проекти. |
|||||||||||||||||||||||
11. |
Содржина на програмата: Надградба на елементите од Оперативни системи. Напредни концепти од сите елементи на работа со оперативните системи: процес на подигање на систем и сите системски процеси, процеси, управување со меморија, влез/излез, датотечни системи и безбедност. Работа со структура на модерно ОС јадро и негови елементи. Администраторски скрипти. Детален преглед на дизајн и функционирање на системски повици кај Windows и UNIX/Linux базирани оперативни системи. Следење на системски повици низ јадро. Надградба на јадро на ОС. Модули и драјвери како дел од јадро на ОС. Дизајн, имплементација, тестирање на модули од јадро на ОС. Паралелизација и виртуелизација кај оперативните системи. Виртуелизација на процесори, меморија и складирање. Синхронизација, комуникација и распоредување кај паралелни ОС. Напредни концепти од дистрибуирани оперативни системи и нивните механизми. Управување со откажувања и опоравување во Дистрибуирани ОС. Системска поддршка за пресметки на ниво на Интернет. Оперативни системи за вградливи компјутерски системи: Android, Линукс, NetBSD, Windows Mobile. Градење ОС за специјализиран вграден систем: алатки за развој, крос-компајлирање, додавање датотечен систем, поврзување меморија. Поврзување на ОС со специфичен хардвер од вградената платформа. Поврзување со елементи на оперативни системи за работа во реално време- RTOS и распоредување процеси во реaлно време. |
|||||||||||||||||||||||
12. | Методи на учење:
Предавања, самостојна работа на проектни задачи и изработка на семинарски работи |
|||||||||||||||||||||||
13. | Вкупен расположив фонд на време | 180 | ||||||||||||||||||||||
14. | Распределба на расположивото време | 3 + 3 | ||||||||||||||||||||||
15. | Форми на наставните активности | 15.1 | Предавања – теоретска настава | 45 часови | ||||||||||||||||||||
15.2 | Вежби (лабораториски, аудиториски), семинари, тимска работа | 45 часови | ||||||||||||||||||||||
16. | Други форми на активности | 16.1 | Проектни задачи | 30 часови | ||||||||||||||||||||
16.2 | Самостојни задачи | 30 часови | ||||||||||||||||||||||
16.3 | Домашно учење | 30 часови | ||||||||||||||||||||||
17. | Начин на оценување | |||||||||||||||||||||||
17.1 | Тестови | 0 бодови | ||||||||||||||||||||||
17.2 | Семинарска работа/проект (презентација: писмена и усна) | 50 бодови | ||||||||||||||||||||||
17.3. | Активност и учење | 0 бодови | ||||||||||||||||||||||
17.4. | Завршен испит | 50 бодови | ||||||||||||||||||||||
18. | Критериуми за оценување (бодови/оценка) | до 50 бода | 5 (пет) (F) | |||||||||||||||||||||
од 51 до 60 бода | 6 (шест) (E) | |||||||||||||||||||||||
од 61 до 70 бода | 7 (седум) (D) | |||||||||||||||||||||||
од 71 до 80 бода | 8 (осум) (C) | |||||||||||||||||||||||
од 81 до 90 бода | 9 (девет) (B) | |||||||||||||||||||||||
од 91 до 100 бода | 10 (десет) (A) | |||||||||||||||||||||||
19. | Услов за потпис и полагање на завршен испит | 60% успех од сите предиспитни активности | ||||||||||||||||||||||
20. | Начин на полагање на испитот | Испитот се состои од два дела (може да се полагаат како парцијални испити). Прв парцијален ипит или теоретски дел: Тест прашања и проблеми (70 мин) и Втор парцијален испит/практичен дел: Изработка и одбрана на самостојна практична проектна задача. За време на испитот делумно е дозволено користење книги, скрипти, ракописи или белешки, но не е дозволено користење калкулатор, мобилен телефон, таблет или кој било друг електронски уред. | ||||||||||||||||||||||
21. | Јазик на кој се изведува наставата | Македонски и Англиски | ||||||||||||||||||||||
22. | Метод на следење на квалитетот на наставата | Самоевалуација | ||||||||||||||||||||||
23. | Литература | |||||||||||||||||||||||
23.1. | Задолжителна литература | |||||||||||||||||||||||
Ред.
број |
Автор | Наслов | Издавач | Година | ||||||||||||||||||||
1. | William Stallings | Operating Systems: Internals and Design Principles, 9 Ed. | Pearson | 2017 | ||||||||||||||||||||
2. | A. Silberschatz, G. Gagne, P. B. Galvin | Operating System Concepts 10th Edition | Wiley | 2021 | ||||||||||||||||||||
3. | Robert Love | ”Linux Kernel Development”, 3rd Edition | Addison-Wesley | 2010 | ||||||||||||||||||||
23.2. | Дополнителна литература | |||||||||||||||||||||||
Ред.
број |
Автор | Наслов | Издавач | Година | ||||||||||||||||||||
1. | Ian Gorton | Foundations of Scalable Systems: Designing Distributed Architectures 1st Edition | O’Reilly Media | 2022 | ||||||||||||||||||||
2. | Kaiwan N Billimoria | Linux Kernel Programming: A comprehensive guide to kernel internals, writing kernel modules, and kernel synchronization | Packt Publishing | 2021 |