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


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


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


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


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


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


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


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


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


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



Свопінг

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

Різновидом віртуальної пам'яті є свопінг (swapping) або звичайна підкачка. На рис. 10.12 показаний графік залежності коефіцієнта завантаження процесора в залежності від числа одночасно виконуваних процесів і частки часу, проведеного цими процесами в стані очікування вводу-виводу. Для завантаження процесора на 90% достатньо всього трьох рахункових задач. Однак для того, щоб забезпечити таку ж завантаження інтерактивними завданнями, які виконують інтенсивний введення-виведення, будуть потрібні десятки таких завдань. Необхідною умовою для виконання задачі є завантаження її в оперативну пам'ять, обсяг якої обмежений. У цих умовах був запропонований метод організації обчислювального процесу, званий свопінгу.

Рис. 10.12. Залежність завантаження процесора від числа задач і інтенсивності вводу-виводу

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

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

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

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

 




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

<== попередня сторінка | наступна сторінка ==>
Сторінково-сегментний розподіл | Стратегії управління сторінковою пам'яттю

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

  

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


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