G.1.2. Предыстория

Следует отметить, что термин "расширенная адресация" (augmented addressing) возник вместе с возникновением различных схем адресации (addressing schemes см. глоссарий) Со временем выяснилось, что прямая адресация памяти (direct addressing) не позволяет обращаться ко всей доступной оперативной памяти компьютера. Например, при прямой адресации на 16-ти разрядной шине данных возможно только обращение к 64 килобайтам памяти, что явно недостаточно для выполнения большинства программ. Поэтому стала использоваться сегментная адресация (впервые реализованная в процессоре i8088), когда заданный короткий адрес складывается с содержимым сегментного регистра, и по полученному значению происходит машинная адресация. В дальнейшем к этому способу добавилась расширенная адресация, когда заданный короткий адрес объединялся с регистром расширенной адресации для формирования окончательного машинного адреса. При этом короткий адрес не модифицировался, а просто добавлялся как младшие разряды требуемого адреса. Подобная адресация была реализована в микропроцессоре i80286. Одновременно использовалась схема отображения адреса (address mapping), при которой процессор адресовал некоторый непрерывный блок памяти (кадр, или фрейм, frame) сверх 640 килобайт. Этот кадр мог реально находится где угодно: на дополнительных микросхемах памяти, на жестком диске и даже на другом компьютере! Обращение к этой памяти осуществлялось по кадрам, а за управление кадрами отвечал специальный аппаратный контроллер. Впервые эта память для микропроцессоров фирмы Intel, которую назвали дополнительной, появилась в компьютерах на основе i8086. Кадры дополнительной памяти расположены в области машинной памяти микропроцессоров i80x86 по адресам D0000h - Dffffh. Эту память использовали программные продукты фирмы Lotus. Впоследствии консорциум фирм Lotus, Intel и Microsoft разработали спецификацию на дополнительную память, которая получила аббревиатуру EMS LIM x.xx , где x.xx - номер редакции.

В микропроцессоре i80386 фирма Intel подвергла ревизии свои разработки в области адресации памяти. В результате этой ревизии верхняя, расширенная и дополнительная память стала отображаться в область выше первого мегабайта оперативной памяти, а положение кадров дополнительной памяти перестало быть фиксированным. В связи с этим фирма Microsoft для своих операционных систем MS-DOS разработала драйвера расширенной (Himem.sys) и дополнительной (Emm386.exe) памяти (смотри разделы "Драйвер расширенной памяти HIMEM.SYS" и "Драйвер дополнительной памяти EMM386.EXE "). Фирма Quarterdesk разработала свой драйвер Quemm386.sys, удовлетворяющий спецификации EMS LIM 4.00 и реализующий поддержку расширенной и дополнительной памяти одновременно. Рассмотрим эти драйверы по подробнее.

Назад...   Вперед...

 

Гостевая книга Обсуждение в блоге. Отправить E-mail Автору проекта.

=== *** === *** === *** ===

В настоящее время проект закрыт (в версии 1.3.0 beta). Автор приносит извинения за прекрашение разработки.

Hosted by uCoz