Ви переглядаєте архівну версію офіційного сайту НУЛП (2005-2020р.р.). Актуальна версія: https://lpnu.ua

Системне програмування

Спеціальність: Комп'ютерні науки та інформаційні технології
Код дисципліни: 6.122.00.O.37
Кількість кредитів: 5
Кафедра: Автоматизовані системи управління
Лектор: к.т.н., доц. Зербіно Дмитро Дмитрович
Семестр: 3 семестр
Форма навчання: денна
Результати навчання:
- Знати асемблер для INTEL PENTIUM;
- Знати асемблер для мікроконтролеру STM-8;
- Знати основні функції операційної системи WINDOWS;
- Вміти складати програми на асемблері за технологією зверху-вниз.
Необхідні обов'язкові попередні та супутні навчальні дисципліни:
- Основи програмування на алгоритмічних мовах
- Дискретна математика
Короткий зміст навчальної програми:
Комп’ютер як система. Мікроконтролери як елементарні комп’ютери. Порівняння комп’ютерних архітектур та їх цільове призначення. Поняття системних функцій. Класифікація системних функцій та їх типи. Розподіл системних функцій по бібліотеках. Асемблер як ефективний засіб системного програмування. Асемблер для INTEL PENTIUM. Асемблер для RISC-процесорів. Методи складання програм на асемблері. Методи синтезу структур даних для ефективної роботи. Методи пошуку логічних помилок в асемблерних програмах.
Рекомендована література:
- Р.Саймон «Microsoft Windows API – довідник системного програміста» Київ, 2004, 1211с.
- Intel Architecture Software Developer’s Manual, Volume 3: System Programming. – 658 p.
- Навчальні матеріали Львівської політехніки (Методички).
Методи і критерії оцінювання:
- Поточний контроль (75%):
- Кожен студент повинен мати працюючі програми по виконаних завданнях з лабораторних робіт;
- позитивну оцінку з практичних занять;
- виконану розрахункову роботу;
- позитивні результати поточного комп’ютерного тестування;
- Підсумковий контроль (25 %): екзамен.

Системне програмування

Спеціальність: Комп'ютерні науки та інформаційні технології
Код дисципліни: 6.122.00.O.38
Кількість кредитів: 5
Кафедра: Інформаційні системи та мережі
Лектор: к.т.н., доцент Кравець Петро Олексійович
Семестр: 3 семестр
Форма навчання: денна
Результати навчання:
- знати методи і засоби системного програмування;
- знати основи системного програмування мовами Intel-асемблер та Сі.
- вміти створювати і відлагоджувати програми Асемблера та Сі для Intel-процесорів, або сумісних з ними;
- вміти розробляти системні програми для роботи з пристроями комп’ютера на основі переривань для MSDOS, системних викликів для UNIX/LINUX та функцій Win API для Windows;
- вміти застосовувати навички, методи та засоби системного програмування на практиці для ефективного використання технiчних, програмних та iнформацiйних ресурсiв обчислювальних систем.
Необхідні обов'язкові попередні та супутні навчальні дисципліни:
- Алгоритмізація та програмування;
- Комп’ютерна графіка;
- Комп’ютерна схемотехніка та архітектура комп’ютерів.
Короткий зміст навчальної програми:
Призначення, склад та функції системного програмного забезпечення. Формати машинного зображення даних (символи, рядки символів, цілі, дійсні, вказівники). Програмна модель процесорів Intel 80x86 (програмно доступні регістри: 16, 32 та 64-розрядні). Структура асемблерної програми для DOS, Linux та Windows. Інструментальні засоби програмування на асемблері (tasm, masm, fasm). Компіляція, редагування зв’язків та відлагодження програми. Робота зі стеком. Команди пересилання та порівняння даних. Команди переходів. Арифметичнi команди над цілими та дісними числами. Органiзацiя циклiв та повторів. Робота з масивами. Логічні команди та команди зсування даних. Перетворення форматів даних для організації введення-виведення. Робота з рядками символів. Робота зі структурованими даними. Переривання та обробники переривань. Види переривань. Переривання BIOS та DOS. Організація роботи з файлами та файловою системою. Модульне програмування. Макроси та підпрограми. Комплексування програм асемблера та С/C++.
Рекомендована література:
- Гордеев А. В. Системное программное обеспечение / А. В. Гордеев, А. Ю. Молчанов. – СПб.: Питер, 2001. – 736 с.
- Харт Дж. В. Системное программирование в среде Win32 / Дж. В. Харт. – М.: Вильямc, 2001. – 464 с.
- Чан Т. Системное программирование на C++ для UNIX / Т. Чан. – К.: Издат. группа BHV, 1999. – 592 с.
- Абель П. Язык Ассемблера для IBM PC и программирования / П. Абель. – М., "Высшая школа", 1992. – 477 c.
- Сван Т. Освоение Turbo Assembler / Т. Сван. – К.: Диалектика, 1996. – 540 c.
- Юров В. Assembler. Учебний курс / В. Юров, С.Хорошенко. – CПб: Питер, 2003. – 637 c.
- Зубков С.В. Assembler для DOS, Windows и UNIX / С.В. Зубков. – M.: ДМК, 2000. – 608 с.
- Машинно-орієнтовані засоби системного програмування: метод. Вказівки до виконання лабораторних робіт з дисципліни «Системне програмування» для студентів спеціальностей 122 «Комп’ютерні науки та інформаційні технології» і 124 «Системний аналіз» першого освітньо-кваліфікаційного рівня (бакалавр) / укл. П.О. Кравець, В.А. Андруник, І.І. Кушнірецька – Львів: Видавництво Львівської політехніки, 2016. – 40 с.
Методи і критерії оцінювання:
• Поточний контроль (40%): письмові звіти з лабораторних робіт, усне опитування на практичних заняттях, розрахункова робота.
• Підсумковий контроль (60%, екзамен): письмово-усна форма.

Системне програмування

Спеціальність: Комп'ютерні науки та інформаційні технології
Код дисципліни: 6.122.00.O.39
Кількість кредитів: 5
Кафедра: Системи автоматизованого проектування
Лектор: к.т.н., доцент Мазур Віталій Володимирович
Семестр: 3 семестр
Форма навчання: денна
Результати навчання:
В результаті вивчення модуля студент повинен:
• знати методи і засоби системного програмування, основи і елементи системного програмування на Асемблері для ПЕОМ, принципи органiзацiї та функцiонування основних пристроїв ПЕОМ та їх програмування.
• вміти писати і відлагоджувати програми на Асемблері для ПЕОМ, розробляти системні програми на Асемблері для роботи з пристроями вводу/виводу, системним таймером, годинником реального часу, файловою системою, перериваннями, практично застосовувати навички, методи та засоби системного програмування, практично використовувати системне програмне забезпечення, для розширення можливостей та пiдвищення ефективностi використання технiчних, програмних та iнформацiйних ресурсiв.
Необхідні обов'язкові попередні та супутні навчальні дисципліни:
• переквізити: алгоритмізація та програмування
Короткий зміст навчальної програми:
Технічні засоби програмно-технічних систем та функціонування ЕОМ, програмування на Асемблері, організація і програмування вводу-виводу та обробки переривань, робота з таймером, файлами та каталогами.
Рекомендована література:
• Шеховцов В.А. Операційні системи. – К.: BHV, 2005.
• Несвижский В. Программирование аппаратных средств в Windows.- СПб.: БХВ-Петербург, 2008.
• Пирогов В.Ю. Ассемблер на примерах.- СПб.: БХВ-Петербург, 2012.
• Дунаев С. UNIX сервер.: - М. Диалог-МИФИ, 1998.
• Джордейн Р. Справочник программиста персональных компьютеров типа IBM PC, XT и AT.: М. Финансы и статистика, 1992.
• Сван Т. Освоение Tubo Assembler.: - К.: Диалектика, 1996.
• Пустоваров В.И. Ассемблер: программирование и анализ корректности машин-ных программ.: - К.: BHV, 2000.
• Зубков С.В. Assembler для DOS, Windows и UNIX.: - M.: ДМК, 2005.
• Глинський Я.М., Ряжська В.А. Linux-практикум з інформатики: Навч. посіб. – Львів: Деол, 2004.
Методи і критерії оцінювання:
• поточний контроль (30 %): письмові звіти з лабораторних робіт та усне опитування (30 %);
• підсумковий контроль (70% екзамен): тестування (70%).