
- •6.050101 «Комп’ютерні науки»
- •Загальні вимоги до виконання лабораторних робіт
- •Лабораторна робота №1
- •1. Основні теоретичні відомості
- •1.1 Основні поняття
- •1.2 Створення процесу
- •1.3 Створення потоку
- •2. Хід роботи
- •4. Завдання
- •5. Контрольні запитання
- •6.Список використаної літератури
- •Додаток 1
- •Додаток 2
- •Додаток 3
- •Функція CreateProcess створює новий процес.
- •Додаток 4
- •Додаток 5
- •Addr ThreadId – Створює новий потік.
- •Додаток 6
- •Додаток 7
- •Лабораторна робота №2
- •1. Основні теоретичні відомості
- •1.1 Механізми міжпроцесової взаємодії
- •1.2 Механізми синхронізації процесів та потоків
- •1.3 Об’єкти синхронізації
- •1.4 Очікуючі функції
- •1.5 Створення атома
- •1.6 Створення каналу
- •2. Хід роботи
- •4. Завдання
- •5. Контрольні запитання
- •6.Список використаної літератури
- •Додаток 1
- •Додаток 2
- •Додаток 3
- •Додаток 4
- •Додаток 5 Детальний опис функції створення анонімного каналу
- •Додаток 6 Детальний опис функції створення іменованого каналу
- •Додаток 7
- •Додаток 8
- •Додаток 9 Текст програми створення анонімного каналу
- •Додаток 10
- •Лабораторна робота №3
- •1. Основні теоретичні відомості
- •2. Приклад програми створення dll
- •Опис програми My_dll.Asm та файлу лістінга My_dll.Def
- •4. Трансляція та компонування dll Для того, щоб відтранслювати(ml.Exe) та зкомпонувати (link.Exe) даний .Asm код, потрібно використовувати наступні параметри:
- •5. Приклад використання функції з бібліотеки
- •Приклад програми завантаження dll
- •7. Створення файлу лістінгу існуючої бібліотеки
- •8. Приклад передачі даних у функцію бібліотеки Створення динамічно завантажуваної бібліотеки
- •Передача параметру у функцію бібліотеки
- •9. Хід роботи
- •11. Завдання
- •12. Контрольні запитання
- •13. Список використаної літератури
- •Лабораторна робота №4
- •1. Основні теоретичні відомості
- •Параметри функції CreateToolhelp32Snapshot:
- •2. Перегляд процесів
- •3. Перегляд потоків
- •Значення результуючого параметру (регістр еах) таке саме як в Process32First і Process32Next.
- •4. Перегляд хіпів асоційованих з процесом
- •5. Перегляд модулів, які використовує процес
- •6. Керування процесами
- •7. Хід роботи
- •9. Завдання На 75 балів виконати 4 завдання:
- •10. Контрольні запитання
- •11. Список використаної літератури
- •Додаток 1
- •Лабораторна робота №5
- •Основні теоретичні відомості
- •1.1 Основні поняття
- •1.2 Категорії даних
- •1.3 Відкриття і закриття ключів реєстру
- •1.4 Створення підключа у відкритому ключі реєстру
- •1.5 Отримання інформації з ключа реєстру
- •1.6 Перелічення списку значень для заданого ключа реєстру
- •1.7 Виявлення змін в гілці реєстру
- •1.8 Робота з налаштуваннями операційної системи через реєстр
- •2. Хід роботи
- •4. Завдання
- •5. Контрольні запитання
- •6. Список використаної літератури
- •Додаток 1
- •Лабораторна робота №6
- •1. Основні теоретичні відомості
- •Породження процесів
- •1.2 Породження потоків
- •2. Хід роботи
- •4. Індивідуальні завдання
- •5. Контрольні запитання
- •Для нотаток Для нотаток Для нотаток
2. Хід роботи
Ознайомитись з основними теоретичними відомостями даної лабораторної роботи.
Скомпілювати і виконати програму, яку подано в додатку 1.
Затвердити номер індивідуального завдання у викладача.
Виконати завдання згідно з номером.
3. Зміст звіту
Звіт повинен містити:
титульну сторінку;
мету роботи;
завдання, робочий варіант тексту програми, результат виконання програми;
короткі висновки по проведеній роботі.
4. Завдання
Програма розробляється на мові асемблер для ОС Windows, використовуючи пакет MASM32. Результат виводиться на екран.
На 65 балів розробити програму, яка виводить на екран значення з гілки реєстру (див. дод.1) згідно варіанту:
Wallpaper з гілки реєстру “HKEY_CURRENT_USER\Control Panel\Desktop”.
HOMEPATH з гілки реєстру “HKEY_CURRENT_USER\Volatile Environment”.
iFormat з гілки реєстру “HKEY_CURRENT_USER\Software\Microsoft\Clock”.
ShellNext з гілки реєстру “HKEY_CURRENT_USER\Software\Microsoft\Internet Connection Wizard”.
На 75 балів потрібно розробити програму згідно варіанту.
Розробити програму в середовищі MASM32, яка:
Змінює значення в гілці реєстру за допомогою функції RegSetValueEx, згідно варіанту завдань на 65 балів.
Виводить на екран числове значення кольору довільного елемента оформлення Windows за допомогою функції GetSysColors (див. файл допомоги WIN32.HLP).
На 95 балів потрібно розробити програму згідно варіанту.
Розробити програму в середовищі MASM32, яка:
Виводить назви програм, які записані в автозагрузку ОС. Для цього потрібно відобразити всі значення, які знаходяться в ключі реєстру HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run.
По іменованому каналу (див. лаб. 5, дод. 7,8) передає значення системної валюти (див. дод. 1). Інша програма повинна зчитувати цю інформацію і виводити на екран.
Кожні 10 сек. змінює малюнок робочого стола (використовуючи функцію SystemParametersInfo). Шлях і назви малюнків можна задати в програмі будь-яким зручним способом.
Завдання таке ж як 2, але дані повинні надсилатися на інший ком’ютер з допомогою команди net send (див. лаб. 4, дод. 2).
Добавляє нову програму в автозагрузку ОС (див. завд. 1). Шлях до виконуваного файлу задається з командного рядка.
Створює новий ключ в гілці реєстру HKEY_CURRENT_USER\SOFTWARE\ з назвою уявної компанії (прізвище студента) а в ньому підключ з назвою уявного програмного продукту (ім’я студента).
Очікує змін в гілці реєстру, яка визначає автозагрузку (див. завд. 1). Коли зміни настали – виводить повідомлення довільного змісту.
Змінює колір довільного елемента оформлення Windows з допомогою функції SetSysColors (див. файл допомоги WIN32.HLP).
5. Контрольні запитання
Для чого потрібен реєстр в ОС Windows?
З чого складається реєстр?
Назвіть один з розділів реєстру.
6. Список використаної літератури
Help по функціях API – файл WIN32.HLP, який знаходиться в мережі FКІТ за адресою \\nt-backup\Predmetu\SPZ\HELP_WIN32APIENG\
Microsoft Windows Help - Win32 Programmers Reference
Технічна документація Microsoft - MSDN