Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Динамічний розподіл пам'яті

У цьому випадку пам'ять машини не поділяється заздалегідь на розділи. Спочатку вся пам'ять вільна. Кожній знову надходить задачі виділяється необхідна їй пам'ять. Якщо достатній обсяг пам'яті відсутній, то задача не приймається на виконання і стоїть в черзі. Після завершення завдання пам'ять звільняється, і на це місце може бути завантажена інша задача. Таким чином, у довільний момент часу оперативна пам'ять є випадкову послідовність зайнятих і вільних ділянок (розділів) довільного розміру. На малюнку 10.4 показано стан пам'яті в різні моменти часу при використанні динамічного розподілу.

Так в момент t0 у пам'яті знаходиться тільки ОС, а до моменту t1 пам'ять розділена між 5 задачами, причому задача П4, завершуючись, залишає пам'ять. На звільнене після задачі П4 місце завантажується задача П6, що надійшла в момент t3.

Завданнями ОС при реалізації даного методу керування пам'яттю є:

- Ведення таблиць вільних і зайнятих областей, в яких вказуються початкові адреси і розміри ділянок пам'яті;

- При надходженні нової задачі - аналіз запиту, перегляд таблиці вільних областей і вибір розділу, розмір якого достатній для розміщення надійшла завдання;

- Завантаження завдання у виділений їй розділ і коректування таблиць вільних і зайнятих областей;

- Після завершення завдання коректування таблиць вільних і зайнятих областей.

Програмний код не переміщається під час виконання, тобто може бути проведена одноразова настройка адрес, за допомогою використання переміщує завантажувача.

 

Рис. 10.4. Розподіл пам'яті динамічними розділами

Вибір розділу для нової задачі може здійснюватися за різними правилами, таким, наприклад, як "перший-ліпший розділ достатнього розміру", або "розділ, що має найменший достатній розмір". Всі ці правила мають свої переваги і недоліки.

У порівнянні з методом розподілу пам'яті фіксованими розділами даний метод має набагато більшу гнучкість, але йому властивий дуже серйозний недолік - зовнішня фрагментація пам'яті. Зовнішня фрагментація - це наявність великого числа несуміжних ділянок вільної пам'яті дуже маленького розміру (фрагментів). Настільки маленького, що жодна з знову надходять програм не може поміститися в жодній з ділянок, хоча сумарний обсяг фрагментів може скласти значну величину, що набагато перевищує необхідний обсяг пам'яті.

 

Свого часу динамічний розподіл використовувала ОС IBM для мейнфреймів OS / MVT (Multiprogramming with a Variable number of Tasks - багатозадачна зі змінною кількістю завдань).

 




Переглядів: 2626

<== попередня сторінка | наступна сторінка ==>
Розподіл пам'яті фіксованими розділами | Переміщувані розділи

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.011 сек.