Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ „ЛЬВІВСЬКА ПОЛІТЕХНІКА”
РОБОТА ІЗ ПРОЦЕСАМИ В ОС WINDOWS
МЕТОДИЧНІ ВКАЗІВКИ
до виконання лабораторної роботи №2
з дисципліни “Операційні системи”
для студентів базового напрямку 6.0804
“Комп’ютерні науки”
ЗАТВЕРДЖЕНО
на засіданні кафедри
Програмного забезпечення
Протокол №__ від __.__.2008 р.
Львів 2008
РОБОТА ІЗ ПРОЦЕСАМИ В ОС WINDOWS. Методичні вказівки до лабораторної роботи №2 з дисципліни “Операційні системи” для студентів базового напрямку 6.0804 “Комп’ютерні науки” / Укл.: Вовчак .І.Г., Львів: Видавництво НУ “Львівська політехніка”, 2008р., 4 стор.
Укладач: Вовчак І.Г., асистент каф. програмного забезпечення
Яковина В.С., доц. каф. програмного забезпечення
Відповідальний за випуск: Федасюк Д.В., д.т.н., професор
1. МЕТА РОБОТИ
Ознайомитися із реалізацією багатозадачності у сімействі операційних систем Microsoft на прикладі Windows NT5 (ядро 5.X). Освоїти роботу із процесами і методами створення їх.
2. ТЕОРЕТИЧНА ЧАСТИНА
Процес зазвичай визначають як екземпляр виконуваної програми. Але це неправильне визначення. Оскільки програма це є набір процесорних команд, тоді як процесом називається саме виконання цього програмного коду. Екземпляр виконуваної програми складається із двох компонентів:
об'єкту ядра, через який операційна система керує процесом. Там же зберігається статистична інформація про процес;
адресний простір, в якому міститься код і дані усіх EXE і DLL модулів. Саме в ньому знаходяться область пам'яті, що динамічно розподіляється для стеків потоків та інших потреб.
Процеси інертні. Щоб процес виконав певну операцію, в ньому потрібно створити потік. Саме потоки відповідаю за виконання коди, що міститься в адресному просторі процесу. В принципі, один процес може володіти декількома потоками, і тоді вони "одночасно" виконують код в адресному просторі процесу.
Для цього кожен потік повинен мати в своєму розпорядженні власний набір регістрів процесора і власний стек. У кожному процесі є мінімум один потік. Якби у процесу не було жодного потоку, система автоматично знищила б його разом з виділеним йому адресним простором.
Щоб усі ці потоки працювали, операційна система відводить кожному з них певний процесорний час. Виділяючи потокам відрізки часу (звані квантами) за принципом каруселі, вона створює тим самим ілюзію одночасного виконання потоків. Рис 2.1. ілюструє розподіл процесорного часу між потоками на машині з одним процесором. Якщо в машині встановлено більш за один процесор, алгоритм роботи операційної системи значно ускладнюється (в цьому випадку система прагне збалансувати навантаження між процесорами).
Рис.2.1. Операційна система виділяє потокам кванти часу CPU за принципом каруселі
При створенні процесу перший (точніше, первинний) потік створюється системою автоматично. Далі цей потік може породити інші потоки, ті у свою чергу — нові і так далі.
3. ІНДИВІДУАЛЬНІ ЗАВДАННЯ
Написати програму створення додаткового потоку для програми calc.exe. показати в результатах виконання деревовидну структуру залежності новоствореного процесу від батьківського процесу.
4. КОНТРОЛЬНІ ЗАПИТАННЯ
1. Що таке програма?
2. Що таке процес?
2. Що таке потік?
3. Яка різниця між програмою і процесом?
4. Яку роль потоки ?
5. ПОРЯДОК ВИКОНАННЯ РОБОТИ
1. Ознайомитися із лабораторною роботою.
2. Отримати індивідуальне завдання у викладача.
3. Детально розібратися із індивідуальним завданням при виникненні певних питань задати викладачу.
4. Написати програму із реалізації індивідуального завдання.
5. Оформити звіт лабораторної роботи згідно шаблону, якого вимагає викладач(за погано оформлений звіт знімаються бали).
6. Ознайомитись із контрольними питаннями і підготуватися до захисту роботи.
7. Захистити роботу.
6. ЗМІСТ ЗВІТУ
1. Мета роботи.
2. Теоретичні відомості
3. Індивідуальне завдання
4. Код програми
5. Результат виконання
6. Висновок
7. ІНФОРМАЦІЙНІ ДЖЕРЕЛА
1. Курс лекцій «Операційні системи»
2. http://msdn.microsoft.com
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!