Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SysSoft Lecture 04.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.7 Mб
Скачать

Відображена пам’ять

Концепція розширеної пам’яті (Expanded memory) належить фірмам Lotus, Intel, Microsoft (LIM).

LIM-EMS – Специфікація відображеної пам’яті (Expanded memory Specification).

Використовується як правило для збереження даних.

ЕМS 3.2 – до 8Мбайт.

ЕМS 4.0 –до 32Мбайт. Допускає сторінки нестандартного розміру (більші або менші 16 Кбайтів, але такі, щоб в одній нестандартній сторінці вміщувалось ціле число стандартних, або щоб в одній стандартній було ціле число нестандартних).

У ХТ, АТ використовується спеціальна плата пам’яті, що відповідає вимогам EMS і програмний драйвер, який керує відображеною пам’яттю. Драйвер відображеної пам’яті – ЕММ (Expanded Memory Manager).

На комп’ютерах з мікропроцесором 386 відображена пам’ять емулюється за допомогою драйверу ЕММ386.ЕХЕ (набір функцій, що доступні через переривання 21h).

Як і стандартна, розширена пам’ять також виділяється блоками. Блок виділяється за запитом від програми, яка вказує число потрібних сторінок. Програма, яка видала запит, отримує в своє розпорядження обробник (handle) або маніпулятор виділеного блоку. Цей обробник використовується у всіх операціях читання з блоку та запису в нього.

Обробник – невелика інформаційна структура, яка зберігає всі необхідні дані про блок.

Таким чином, обмін даними між стандартною та відображеною пам’яттю на логічному рівні реалізується аналогічно обміну між стандартною та зовнішньою пам’яттю.

Перший блок відображеної пам’яті завжди використовується самим ЕММ для себе.

Розширена пам’ять

Microsoft, Lotus, Intel та AST – розробили специфікацію розширеної пам’яті – XMS – eXtended Memory Specification.

Ця специфікація визначила правила доступу як до самої розширеної пам’яті, так і до додаткової пам’яті інших типів, які створюються за її рахунок.

Програмний драйвер, який реалізує специфікацію XMS, дозволяє пересилати дані із стандартної пам’яті у розширену і назад.

Цей драйвер – адміністратор розширеної пам’яті – ХММ, один з найбільш відомих HIMEM.SYS.

Виділення розширеної пам’яті виконується блоками ЕМВ – Extended Memory Block, - та за спеціальним запитом від програм. Програма, яка зробила запит на блок розширеної пам’яті, отримує в своє розпорядження обробник і користується ним при доступі до блоку пам’яті.

Розширена пам’ять – це така, керування якою узгоджене з XMS – XMS-пам’ять, оскільки сама розширена пам’ять може використовуватись і за іншими правилами (! Базова розширена пам’ять це не XMS).

Звертання через переривання 15h замість специфікації XMS.

Висока пам’ять

У процесорі 80286 ША – 24 розрядів. Тоді стає можливою адресація сегменту пам’яті – 64 Кбайт, який починається з останнього значення параграфу UMA. Таким чином адресується до 64Кбайт розширеної пам’яті мінус16 байтів, що входять в останній параграф UMA.

Від 1 Мбайту до 1 Мбуйту + 64 Кбатів – 16 байтів. Область високої пам’яті НМА – (High Memory Area).

Метод доступу до цього сегменту реалізований в драйвері HIMEM.SYS (враховано в XMS).

Розширену пам’ять, що попадає в цю область, називають високою пам’яттю (High Memory). Використовується безпосередньо, без переключення режимів роботи мікропроцесору. Але XMS дозволяє її використовувати тільки одній програмі. Частіше це DOS, частина її резидентного коду, звільняє тим самим стандартну пам’ять.

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