>
960 K
В
F000 h
В В В В
Розширення ROM BIOS
В В В В
896 K
В
E000 h
В В
"Вікно EMS"
В
...
...
В В В В В
Hard Disk ROM BIOS
В В В
I/O ROM BIOS
В В
C800 h
В В В
784 K
EGA/VGA ROM BIOS
C000 h
В В В В В В В В
Відеопам'ять
768 K
Дисплей CGA
В В В В В В В В В
ОЗУ
736 K
Монохромний дисплей
B000 h
В В В В
Дисплей EGA/VGA
В В В В В
...
...
...
A000 h
В В
В
Драйвер ЕМM.SYS
В
В
TSR-прогрсмми
В В В В В
DOS
В В В
DOS
0 K
В В В В В
Рис. 1 Додаткова пам'ять
В В
Рис. 2 Розширена пам'ять
Найбільш істотною відмінністю розширеної (базової) і додаткової пам'яті є те, що програми, працюють у реальному режимі, не можуть виконуватися в додатковій пам'яті. А так як DOS написаний для реального режиму, йому доводиться обходитися тільки базової пам'яттю. Але сказати, що додаткова пам'ять марна в реальному режимі - невірно. p> Програми не знають, як адресуватися до додаткових осередків пам'яті. Але додаткова пам'ять може бути використана для зберігання інформації. А отже, просто потрібно розробити програмне забезпечення, щоб використовувати можливості додаткової пам'яті. І такі DOS-програми існують. Прекрасний приклад тому імітатор логічного диска - VDISK, який підтримується DOS, починаючи з версії 3.0. Хоча програмні коди VDISK виконуються в звичайній пам'яті DOS в реальному режимі, додаткова пам'ять може використовуватися для зберігання даних. Так як OS/2 може функціонувати в захищеному режимі, їй доступні всі ресурси додаткової пам'яті. Проте варто нагадати, що, коли OS/2 використовує підпрограми старенької DOS, їй доводиться задовольнятися обмеженнями пам'яті реального режиму в 640 Кб.
У 1985 року декілька місяців по тому після представлення перших AT з кількома Мб додаткової пам'яті - головне видавництво з програмного забезпечення і розробник технічного забезпечення сформулювали свій власний метод подолання обмеження в 640 Кб старих комп'ютерів на 8088 мікропроцесорі, що працюють в DOS. Через кілька місяців до них приєдналася і Microsoft Corporation. Їх розробка названа Lotus - Intel-Microsoft Expended Memory Specification або LIM пам'ять, або EMS, або просто розширена пам'ять. Перша версія була названа EMS 3.0, щоб вказати на сумісність з тоді останньою версією DOS. Нова система відрізнялася як від базової пам'яті, так і від додаткової. Вона не була в межах адресного простору центрального мікропроцесора. Її робота грунтувалася на спеціальній схемі технічного забезпечення, яка функціонувала на кшталт перемикача. Це пристрій переключало банки пам'яті з нормального адресного простору 8088 мікропроцесора, де чіп міг читати і писати в неї. p> Ця схема, названа перемикачем банків, не була ні нової ні незвичайною. Подібний пристрій використовувалося в комп'ютерах на Z80 для подолання ліміту в 64К. Перші EMS мали справу з розширеною пам'яттю, розбитою на банки по 16К. Представлення AT з потенційно адресованими 16М затьмарило EMS, поки важка дійсність недоступності додаткової пам'яті була до кінця усвідомлена. Навіть кілька наявних програм, які могли користуватися перевагами EMS, були більш корисні ніж драйвер VDISK, який був єдиною сумісної з DOS програмою, що дозволяє використовувати додаткову пам'ять.
Все програмне забезпечення EMS можн...