На головну

Пов'язане і несвязанное розподіл пам'яті.

  1.  II. РОЗПОДІЛ ТРУДОМІСТКОСТІ ПО РОЗДІЛАХ, ТЕМАМИ ДИСЦИПЛІНИ І ВИДІВ НАВЧАЛЬНОЇ РОБОТИ
  2.  III. РОЗПОДІЛ НАВЧАЛЬНОГО ЧАСУ ПО семестр, РОЗДІЛІВ, ТЕМ, ВИДІВ НАВЧАЛЬНИХ ЗАНЯТЬ
  3.  III. РОЗПОДІЛ НАВЧАЛЬНОГО ЧАСУ ЗА ТЕМАМИ І ВИДАМИ НАВЧАЛЬНИХ ЗАНЯТЬ
  4.  SIPP (SIP) -модулем пам'яті.
  5.  V. розподіл годин курсу за темами
  6.  VI. НЕЙРОХІМІЧНІ МЕХАНІЗМИ пластичність і ПАМ'ЯТІ.
  7.  Архітектурні засоби підтримки віртуальної пам'яті.

Найперші ЕОМ вимагали зв'язкового розподілу - кожна програма повинна була займати один блок осередків.

Звільнення пам'яті

програма користувача

Операційна система

Захист пам'яті здійснювалася за допомогою одного регістра, який дозволяв відокремити програму користувача від ОС.

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

Основні способи розподілу пам'яті.

Всі способи можна розділити на 2 класи в залежності від того, чи використовуються переміщення сегментів процесів між ОП і диском чи ні.

Методи без переміщення сегментів:

1. з фіксованими розділами

2. з динамічними розділами

3. з переміщуваними розділами.

Методи з переміщенням сегментів:

1. зі сторінковим розподілом

2. з сегментним розподілом

3. з сегментно-сторінковим розподілом.

З фіксованими розділами. У цьому випадку пам'ять розбивається на кілька областей фіксованої величини, які називаються розділами. Таке розбиття може бути виконано оператором під час старту або установки системи. Після цього кордону не змінюються.

Підсистема управління пам'яттю ОС в цьому випадку виконує наступні завдання: порівнює обсяг пам'яті, необхідний для знову надходження процесу, з розмірами вільних розділів і вибирає відповідний розділ; здійснює завантаження програми в один з розділів і налаштування адрес. Уже на етапі трансляції розробник може задати розділ, в якому буде виконуватися завдання. Це дозволяє відразу без використання переміщує завантажувача отримати машинний код, налаштований на конкретну область пам'яті. Спосіб простий в реалізації, але має недоліки: рівень мультипрограмування обмежений числом розділів; будь-яка програма буде займати весь розділ; розбиття пам'яті на жорсткі розділи не дозволяє виконувати процеси, програми яких не поміщаються ні в один розділ, але для яких було б достатньо кілька розділів. Цей спосіб застосовувався в ранніх мультипрограмних ОС, однак і зараз знаходить застосування в ОС реального часу.

Динамічні розділи. У загальному випадку пам'ять не ділиться на розділи, спочатку вся пам'ять для додатків вільна, кожному процесу на етапі створення виділяється необхідна пам'ять, після завершення вся пам'ять звільняється. Таким чином в довільний момент часу ОП являє собою послідовність зайнятих і вільних ділянок. Функції ОС: ведення таблиць вільних і зайнятих областей пам'яті; при створенні нових процесів - аналіз необхідної пам'яті, перегляд таблиці вільних областей і вибір розділу необхідних розмірів; саме завантаження програми і коригування таблиць вільних і зайнятих областей; після завершення процесу коригування таблиць. Недолік - фрагментація пам'яті - наявність великого числа несуміжних вільних ділянок. Розподіл пам'яті з динамічними розділами лежить в основі підсистем управління пам'яті багатьох мультіпрограмм 60-70 років.

Переміщувані розділи. Одним з методів боротьби з фрагментацією є переміщення всіх зайнятих ділянок так, щоб вся вільна пам'ять утворювала вільну область. Стиснення може виконуватися або при кожному завершенні процесу, або тільки тоді, коли для новостворюваного процесу немає вільного розділу достатнього розміру. В ході свого виконання програма переміщається, то в даному випадку неможливо виконати завантаження переміщуваного завантажника. Тут більш відповідним виявляється динамічне перетворення адрес.

Хоча процедура стиску призводить до більш ефективного використання пам'яті, вона може вимагати значного часу, що часто переважує перевага даного методу. Концепція стиснення застосовується і при використанні інших методів розподілу пам'яті, коли окремим процесу виділяється не одна суцільна область пам'яті, а кілька несуміжних ділянок довільного розміру.

30 березня 2012 р




 Еволюція ОС. |  Архітектура ОС. |  Мікроядерна архітектура ЕОМ. |  Процесор. Управління процесами. |  Класифікація ОС за ознакою підтримки процесів і потоків. |  Управління завданнями. |  Асинхронні паралельні процеси. |  Семафори. |  Монітори. |  Тупики. |

© um.co.ua - учбові матеріали та реферати