МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ „ЛЬВІВСЬКА ПОЛІТЕХНІКА”
ОБ’ЄКТИ ЯДРА WINDOWS
МЕТОДИЧНІ ВКАЗІВКИ
до виконання лабораторної роботи №1
з дисципліни “Операційні системи”
для студентів базового напрямку 6.0804
“Комп’ютерні науки”
ЗАТВЕРДЖЕНО
на засіданні кафедри
Програмного забезпечення
Протокол №__ від __.__.2008 р.
Львів 2008
ОБ’ЄКТИ ЯДРА WINDOWS. Методичні вказівки до лабораторної роботи №1 з дисципліни “Операційні системи” для студентів базового напрямку 6.0804 “Комп’ютерні науки” / Укл.: Вовчак .І.Г., Львів: Видавництво НУ “Львівська політехніка”, 2008р., 5 стор.
Укладач: Вовчак І.Г., асистент каф. програмного забезпечення
Яковина В.С., доц. каф. програмного забезпечення
Відповідальний за випуск: Федасюк Д.В., д.т.н., професор
1. МЕТА РОБОТИ
Ознайомитися із структурою ОС(операційна система) на прикладі Windows NT5 (ядро 5.X), навчитися працювати із абстрактними об’єктами ОС.
2. ТЕОРЕТИЧНА ЧАСТИНА
Посередником між користувачом(і додатковим програмним забезпеченням) та технічним забезпеченням ПК (персональний комп’ютер) являється ОС.
На рис. 2.1. зображено структуру взаємозв’язків між такими глобальними об’єктами, як: користувач, прикладні програми, додаткові системні програми, операційна система, технічне забезпечення.
Рис. 2.1. Структура взаємозв’язків
При написані ПЗ (програмного забезпечення) для абстрагування від технічного забезпечення використовуються об’єкти ядра ОС, щоб не прив’язуватися до конкретного технічного забезпечення ПК (персональний комп’ютер).
Основою роботи із ресурсами ПК здійснюється не на «пряму», а через об’єкти ОС, особливо відчутним це стало у ядрі п’ятої версії, де закритий будь який доступ до технічного забезпечення, навіть через порти(тобто заборонено на пряму працювати із такими портами як: COM1-255, LPT, USB, PS/2, IEEE 1394).
Для розробки ПЗ, це ускладнило роботу розробника, але при цьому переваги суттєво відчутні у порівняні із попередніми ядрами Windows. Так у ядрі 5.Х значно підвищилась стійкість і безпека ОС від збоїв при: нештатній роботі прикладної програми, вірусах, збоях в мережі, робота із нестандартним технічним забезпеченням.
Використовувати відповідні об’єкти можна за допомогою Win32API, або ж розширених бібліотек розробки ПЗ наприклад: Microsoft .NET Framework.
Об'єкти ядра використовуються системою і призначені для управління безліччю самих різних ресурсів: процесами, потоками, файлами. Windows дозволяє створювати і оперувати з декількома типами таких об'єктів паралельно, зокрема, табл.2.1.:
Таблиця 2.1 Об’єкти ядра ОС
Kernel object
Об’єкт ядра
Access token
Маркер доступу
Change notification
Повідомлення про зміни на диску
I/O completion ports
Порт завершення введення-виводу
Event
Подія
File
Файл
File mapping
Проекція файлу
Heap
Купа
Job
Завдання
Mailslot
Поштовий слот
Module
Динамічно – підвантажуваний модуль (DLL)
Mutex
Мютекс
Pipe
Канал
Process
Процес
Semaphore
Семафор
Socket
Сокет
Thread
Потік
Timer
Очікуваний таймер
Як працювати із відповідними об’єктами ядра ОС описано у документації до відповідного середовища IDE (Integrated Development Environment), наприклад: Visual Studio 2005.NET, Borland Studio 2006.NET.
3. ІНДИВІДУАЛЬНІ ЗАВДАННЯ
Написати програму переписування одного вмісту текстового файлу у інший, використовуючи HADLE для доступу до файлів. Файли повинні знаходитися у в корені системного диску (c:\). Рекомендоване IDE: Visual Studio 2005.NET
4. КОНТРОЛЬНІ ЗАПИТАННЯ
1. Що таке ОС?
2. Які ви знаєте об’єкти ядра ОС?
3. Яку роль виконують об’єкта ядра(на прикладі одного) ?
5. ПОРЯДОК ВИКОНАННЯ РОБОТИ
1. Ознайомитися із лабораторною роботою.
2. Отримати індивідуальне завдання у викладача.
3. Детально розібратися із індивідуальним завданням при виникненні певних питань задати викладачу.
4. Написати програму із реалізації індивідуального завдання.
5. Оформити звіт лабораторної роботи згідно шаблону, якого вимагає викладач(за погано оформлений звіт знімаються бали).
6. Ознайомитись із контрольними питаннями і підготуватися до захисту роботи.
7. Захистити роботу.
6. ЗМІСТ ЗВІТУ
1. Мета роботи.
2. Теоретичні відомості
3. Індивідуальне завдання
4. Код програми
5. Результат виконання
6. Висновок
7. ІНФОРМАЦІЙНІ ДЖЕРЕЛА
1. Курс лекцій «Операційні системи»
2. http://msdn.microsoft.com