Системне програмування
Зміст
Системне програмування
Галузь знань 0403 Системні науки та кібернетика, напрям підготовки 040302 Інформатика, освітньо-кваліфікаційний рівень: бакалавр
Мета та завдання навчального курсу
Метою викладання дисципліни "Системне програмування та операційні системи" є формування у студентів теоретичних знань та практичних навичок, необхідних для розуміння взаємодії прикладних програм із ядром операційної системи за допомогою системних викликів та бібліотек.
Програмою дисципліни "Системне програмування та операційні системи" передбачається ознайомлення студентами із об’єктами ядра операційної системи (процесами, потоками, засобами синхронізації, файлами, проекціями файлів, каналами, поштовими скриньками, повідомленнями) та способами використання об’єктів ядра у прикладних програмах за допомогою системних викликів.
У результаті вивчення навчального курсу студент повинен
знати:
- основні принципи структурно-модульного програмування та побудови мультимодульних програм;
- принципи розробки консольних та віконних програм для Windows;
- принципи взаємодії прикладних програм із ядром операційної системи за допомогою системних викликів WinAPI;
- принципи використання основних об’єктів ядра операційної системи у прикладних програмах;
- принципи обробки виключень в операційній системі Windows;
- принципи розробки операційних систем та драйверів.
вміти:
- писати, компілювати та відлагоджувати програми з використанням функцій WinAPI мовами низького та високого рівнів;
- створювати програми для ОС Windows із використанням об’єктів ядра за допомогою системних викликів;
- керувати процесами та потоками у прикладних програмах, використовувати засоби синхронізації;
- створювати прикладні програми із використанням засобів міжпроцесної взаємодії:
- оброблювати виключення в операційній системі Windows.
Автор курсу
Учасники
Група 26, спеціальність "Інформатика", 2014-2015 н.р. викладач Баранюк Олександр Филимонович, Отримати консультацію
Графік навчання
Структура курсу
Змістовий модуль 1. Основи системного програмування
Тема 1. Основні поняття системного програмування. Тема 2. Взаємодія програм з операційною системою. Тема 3. Принципи програмування для Windows. Тема 4. Консольні програми у Windows. Функції вводу/виводу. Тема 5. Керовані подіями програми. Концепція повідомлень. Тема 6. Віконні програми у Windows. Використання ресурсів. Тема 7. Модульне програмування. Робота з динамічними бібліотеками. Тема 8. Обробка виключень у Windows.
Змістовий модуль 2. Програмування із використанням об’єктів ядра
Тема 9. Об'єкти ядра Windows. Тема 10. Робота з файлами засобами WinAPI. Тема 11. Керування пам’яттю у Windows. Відображення файлів у пам’ять. Тема 12. Керування процесами і потоками у Windows. Тема 13. Синхронізація потоків засобами WinAPI. Тема 14. Взаємодія між процесами. Канали. Поштові скриньки. Тема 15. Основи мережевого програмування з використанням сокетів. Тема 16. Розробка операційних систем та драйверів.
Календар курсу
Тиждень 1
Тема 1. Основні поняття системного програмування. Тема 2. Взаємодія програм з операційною системою.
Тиждень 2
Тема 3. Принципи програмування для Windows.
Тиждень 3
Тема 4. Консольні програми у Windows. Функції введення-виведення.
Тиждень 4
Тема 5. Керовані подіями програми. Концепція повідомлень.
Тиждень 5
Тема 6. Віконні програми у Windows. Використання ресурсів.
Тиждень 6
Тема 7. Модульне програмування. Робота з динамічними бібліотеками.
Тиждень 7
Тема 8. Обробка виключень у Windows.
Тиждень 8
Модульний контроль.
Зміст курсу
Змістовий модуль І. Назва модулю
Тема 1. Назва теми
Теоретичний матеріал
Практичні завдання
Самостійна робота
Змістовий модуль ІІ. Назва модулю
Тема 1. Назва теми
Теоретичний матеріал
Практичні завдання
Самостійна робота
Змістовий модуль ІІІ. Назва модулю
Тема 1. Назва теми
Теоретичний матеріал
Практичні завдання
Самостійна робота
Ресурси
Рекомендована література
Базова
Допоміжна
Інформаційні ресурси
---