Діаграма порівняння
Основа порівняння | Розміщення суміжної пам'яті | Розміщення безперервної пам'яті |
---|---|---|
Основний | Виділяє послідовні блоки пам'яті процесу. | Виділяє окремі блоки пам'яті процесу. |
Накладні витрати | Визначення суміжної пам'яті не має накладних витрат при перекладі адреси під час виконання процесу. | Неспроможне виділення пам'яті має накладні витрати при перекладі адреси під час виконання процесу. |
Швидкість виконання | Процес виконує fatser у безперервному виділенні пам'яті | Процес виконується досить повільно порівняно в нерозривному виділенні пам'яті. |
Рішення | Простір пам'яті має бути розділений на розділ фіксованого розміру, і кожен розділ виділяється тільки одному процесу. | Розділіть процес на кілька блоків і розмістіть їх у різних частинах пам'яті відповідно до наявності вільного місця в пам'яті. |
Таблиця | Таблиця підтримується операційною системою, яка підтримує список доступних і зайнятих розділів у просторі пам'яті | Таблиця повинна підтримуватися для кожного процесу, який переносить базові адреси кожного блоку, який був придбаний процесом в пам'яті. |
Визначення суміжного розподілу пам'яті
Операційна система і процеси користувача повинні бути розміщені в основній пам'яті. Отже, основна пам'ять розділена на два розділи: на одному розділі операційна система знаходиться, а в інших - процеси користувача. У звичайних умовах кілька процесів користувача повинні перебувати в пам'яті одночасно, і тому важливо враховувати розподіл пам'яті в процесах.
Виділення послідовної пам'яті є одним з методів виділення пам'яті. У розподілі безперервної пам'яті, коли процес запитує для пам'яті, одному суміжному ділянці блоків пам'яті призначається процес відповідно до його вимоги.
У схемі змінного розділення операційна система підтримує таблицю, яка вказує, який розділ пам'яті є вільним і який займає процеси. Виділення послідовної пам'яті прискорює виконання процесу шляхом зменшення накладних витрат на переклад адреси.
Визначення безперервного розподілу пам'яті
Виділення безперервної пам'яті дозволяє процесу придбати кілька блоків пам'яті в іншому місці в пам'яті відповідно до його вимоги. Виділення безперервної пам'яті також зменшує втрати пам'яті, викликані внутрішньою і зовнішньою фрагментацією. Як вона використовує отвори пам'яті, створені під час внутрішньої і зовнішньої фрагментації.
Пейджинг і сегментація - це два способи, які дозволяють фізичному адресному простору процесу бути несуміжним. У розподілі безперервної пам'яті процес поділяється на блоки (сторінки або сегменти), які розміщуються в іншій області пам'яті відповідно до доступності пам'яті.
Неперервне виділення пам'яті має перевагу зменшення втрат пам'яті, але, але збільшує накладні витрати на переклад адрес. Оскільки частини процесу розміщуються в іншому місці в пам'яті, це уповільнює виконання пам'яті, оскільки час споживається в перекладі адреси.
Тут операційна система повинна підтримувати таблицю для кожного процесу, який містить базову адресу кожного блоку, який набувається процесом в просторі пам'яті.
Основні відмінності між суміжним і безперервним розподілом пам'яті
- Основна відмінність між безперервним і безперервним розподілом пам'яті полягає в тому, що суміжний розподіл виділяє один процес безперервного блоку пам'яті, тоді як безперервне розподіл поділяє процес на декілька блоків і розміщує їх в іншому адресному просторі пам'яті, тобто безперервно. .
- У виділенні безперервної пам'яті процес зберігається в суміжному просторі пам'яті; тому під час виконання перекладу адрес не існує. Але в нерозривному виділенні пам'яті існує накладне перерахування адрес під час виконання процесу, так як блоки процесу поширюються в просторі пам'яті.
- Процес, що зберігається в суміжній пам'яті, виконується швидше в порівнянні з процесом, що зберігається в безперервному просторі пам'яті.
- Рішенням для послідовного виділення пам'яті є розділення простору пам'яті на розділ фіксованого розміру і виділення розділу в один процес. З іншого боку, при розподілі безконтактної пам'яті процес поділяється на кілька блоків, і кожен блок розміщується в різних місцях пам'яті відповідно до доступності пам'яті.
- У розподілі безперервної пам'яті операційна система повинна підтримувати таблицю, яка вказує, який розділ доступний для процесу і який зайнятий процесом. У нестаціонарному виділенні пам'яті зберігається таблиця для кожного процесу, який вказує базову адресу кожного блоку процесу, розміщеного в просторі пам'яті.
Висновок:
Неперервне виділення пам'яті не створює накладних витрат і прискорює швидкість виконання процесу, але збільшує втрату пам'яті . У свою чергу нерозривне виділення пам'яті створює накладні витрати перекладу адреси, зменшує швидкість виконання процесу, але збільшує використання пам'яті . Таким чином, існують плюси і мінуси обох методів розподілу.