Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LABAS__OS_final_after2Kachko.DOC
Скачиваний:
19
Добавлен:
24.11.2019
Размер:
360.96 Кб
Скачать

9.3Порядок виконання лабораторної роботи

У даній лабораторній роботі необхідно виконати наступне:

1. скласти програму для формування системної інформації про віртуальну пам'ять і пояснити отримані результати;

2. виділити пам'ять деякого розміру й визначити новий стан системної інформації, пояснити результати;

3. визначити статус віртуальної пам'яті (функція GlobalMemoryStatus) до і після виділення віртуальної й фізичної пам'яті, пояснити результати;

4. визначити стан адресного простору (функція VіrtualQuery) до і після виділення віртуальної й фізичної пам'яті, пояснити результати.

Реалізовувати ці завдання зручно у такій послідовності:

  • визначити системну інформацію, яка стосується пам'яті, на початку програми;

  • виділити віртуальну пам'ять і визначити зміни в системній інформації до й після виконання;

  • виділити фізичну пам'ять і визначити зміни в системній інформації до і після виконання;

  • зробити послідовне звільнення виділеної пам'яті;

  • визначити максимальний розмір пам'яті, що може бути призначений для виділення віртуальної й фізичної пам'яті;

  • визначити послідовні адреси блоків пам'яті, що виділяються, і зробити висновок про доцільність виділення пам'яті маленькими порціями;

  • перевірити заповнюваність пам'яті при виділенні віртуальної, фізичної пам'яті;

  • перевірити можливість доступу до пам'яті, за межами виділеної області.

9.4Зміст звіту

- повний опис функцій для роботи з пам'яттю, що були використані у лабораторній роботі;

- текст програми з виведенням повної інформації про пам'ять до і після виділення пам'яті різних типів;

- пояснення отриманих результатів;

- висновки.

9.5Контрольні питання й завдання

    1. Дайте визначення різних типів пам'яті.

    2. Поясните дії, необхідні для виділення пам'яті з погляду програміста і операційної системи.

    3. Яка інформація про пам'ять може бути отримана і де використовується ця інформація?

  1. Які атрибути можуть бути задані для сторінок?

  2. Чим визначається максимальний розмір фізичної пам'яті, що може бути виділений однією операцією виділення?

  3. Яким образом пам'ять звільняється?

  4. Що буде, якщо:

  • програміст забув звільнити пам'ять?

  • у зв'язку з аварійним завершенням програми вона не дійшла до коду звільнення?

  1. Що буде, якщо не передбачена перевірка благополучності виділення пам'яті і використовується фактично невиділена пам'ять?

  2. Що буде, якщо використовується більший обсяг пам'яті, чим виділено?

10 Синхронізація процесів і потоків

10.1Мета роботи

Вивчити об'єкти операційної системи для синхронізації процесів і методику їхнього використання

10.2Методичні вказівки з організації самостійної роботи студентів

При підготовці до лабораторної роботи необхідно повторити матеріал відповідних лекцій та ознайомитися з [1, c. 160 – 186, 3, c. 187 – 245, c. 203 - 257].

Вивчить особливості створення й завершення процесів, їх призначення, процеси-нащадки і властивості, що отримуються у спадок від процеса-батька (конспект лекцій, файл WІN32.HLP);

Вивчить потоки, способи їх створення і завершення (конспект лекцій, файл WIN32.HLP);

Вивчить розподіл часу між потоками і можливості програміста по керуванню цим розподілом. Пріоритетне обслуговування потоків (конспект лекцій, файл WIN32.HLP);

Вивчити способи синхронізації потоків (конспект лекцій, файл WIN32.HLP):

  • без операційної системи (конспект лекцій, файл WIN32.HLP);

  • за допомогою критичних секцій (конспект лекцій, файл WIN32.HLP);

Вивчити засоби синхронізації процесів (конспект лекцій, файл WIN32.HLP):

  • м'ютекси;

  • семафори;

  • таймери, що очкуються.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]