Память в реальном режиме


1)Карта памяти

Ка́рта па́мяти или флеш-ка́рта — компактное электронное запоминающее устройство, используемое для хранения цифровой информации. Современные карты памяти изготавливаются на основе флеш-памяти, хотя принципиально могут использоваться и другие технологии. Карты памяти широко используются в электронных устройствах, включая цифровые фотоаппараты, сотовые телефоны, ноутбуки, MP3-плееры и игровые консоли. Карты памяти являются компактными, перезаписываемыми, и, кроме того, они могут хранить данные без потребления энергии (энергонезависимость).

Различают карты с незащищенной, полнодоступной памятью, для которых отсутствуют ограничения на чтение и запись данных, и карты с защищенной памятью, использующие специальный механизм разрешений на чтение/запись и удаление информации. Обычно карты с защищенной памятью содержат неизменяемую область идентификационных данных.

2)Сегменты и смещение

Сегментная адресация памяти — схема логической адресации памяти компьютера в архитектуре x86. Линейный адрес конкретной ячейки памяти, который в некоторых режимах работы процессора будет совпадать с физическим адресом, делится на две части: сегмент и смещение. Сегментом называется условно выделенная область адресного пространства определённого размера, а смещением — адрес ячейки памяти относительно начала сегмента. Базой сегмента называется линейный адрес (адрес относительно всего объёма памяти), который указывает на начало сегмента в адресном пространстве. В результате получается сегментный (логический) адрес, который соответствует линейному адресу база сегмента+смещение и который выставляется процессором на шину адреса.

3)Страница- это область памяти, которой можно манипулиро­вать в одной операции. При страничной организации памяти преоб­разование логического адреса (в форме сегмент: смещение), генери­руемого программой, в линейный адрес происходит, как и прежде с использованием таблиц, в которых включены опции страничного обмена. Система страничной организации памяти обеспечивает до­полнительный шаг преобразования логического адреса в линейный и поддерживает полную страничную виртуальную память (умозритель­ная память, позволяющая использовать НЖМД в качестве ОП).

Система страничной организации памяти дает возможность использовать любой раздел физической памяти в любом желаемом месте линейного пространства памяти, адресуемой ЦП.

Обратите внимание, что страница- это количество информа­ции, которое Windows перемещает из одного места в памяти в дру­гое или с диска в память как одно целое. Эта возможность позволя­ет извлечь все преимущества страничного обмена, используя LIM EMS 4.0, не покупая дополнительной платы расширенной памяти EMS. Все что нужно для переотображения памяти в другие области - это соответствующие ПО, управляющее устройством страничного обмена. В качестве такого ПО в данном случае можно использовать LIM - эмулятор 386.

 

4)Адресация памяти в реальном режиме.

Логический адрес принято записывать в форме <сегмент:смещение>.

Например, пусть у нас есть логический адрес 1234h:0123h. Сегментная компонента равна 1234h, компонента смещения - 0123h. Вычислим физический адрес, соответствующий нашему логическому адресу:

  • расширяем до 20 бит сегментную компоненту, дописывая справа 4 нулевых бита, получаем число 12340h;
  • расширяем до 20 бит компоненту смещения, дописывая слева 4 нулевых бита, получаем число 00123h;
  • для получения физического адреса складываем полученные числа: 12340h + 00123h = 12453h.

Очевидно, что одному физическому адресу может соответствовать несколько логических. Например, физическому адресу 12453h соответствует логический адрес 1245h:0003h.

Фактически в схеме адресации памяти реального режима вся память как бы разбивается на сегменты. Физический адрес начала сегмента (базовый адрес сегмента) равен расширенной до 20 бит сегментной компоненте адреса (расширение выполняется дописыванием справа 4 нулевых бит).

Сегменты могут начинаться не с любого физического адреса, а только с такого, который кратен 16 байтам. Поэтому сегмент может начинаться только с границы параграфа.

Компонента смещения при такой схеме адресации является смещением внутри сегмента памяти. А сам сегмент памяти задаётся сегментной компонентой.

Логический адрес должен находиться в следующих пределах:

0000h:0000h <= [логический адрес] <= FFFFh:000Fh

 

Здесь есть одна тонкость. Логический адрес FFFFh:000Fh соответствует максимально возможному физическому адресу FFFFFh. Но используя 16-разрядные регистры процессора вы можете задать и большее значение для логического адреса, например, FFFFh:0010h. Что произойдёт в этом случае?

Если в компьютере установлены процессоры i8086 или i8088, произойдёт переполнение адреса, которое будет проигнорировано процессором. В результате логическому адресу FFFFh:0010h будет соответствовать физический адрес 00000h.

Если же используются процессоры i80286, i80386 или i80486, физическая шина адреса шире 20 бит. Для процессора i80286 шина адреса имеет ширину 24 бита, а для процессоров i80386 и i80486 - 32 бита. При работе в реальном режиме используются младшие 20 адресных линий - от A0 до A19, остальные адресные линии аппаратура компьютера блокирует.

Однако есть возможность снять блокировку с адресной линии A20. При этом в реальном режиме появляется ещё один "льготный" сегмент памяти, лежащий выше границы первого мегабайта. Этот сегмент называется областью старшей памяти (High Memory Area). Ему соответствует диапазон логических адресов от FFFFh:0010h до FFFFh:FFFFh. Размер области старшей памяти составляет 64 килобайта без 16 байт.

Операционная система MS-DOS умеет использовать старшую область памяти, располагая там своё ядро. Для этого необходимо подключить драйвер HIMEM.SYS и поместить в файл CONFIG.SYS строку:

DOS=HIGH

 

Архитектура процессоров серии i80XXX, работающих в реальном режиме, предполагает хранение сегментной компоненты адреса в специальных сегментных регистрах:

CS - сегмент кода;

DS - сегмент данных;

ES - дополнительный сегмент данных;

SS - сегмент стека.

 

Компонента смещения может находиться в регистрах BX, BP, SI, DI, IP.

Задавая произвольные значения сегментной компоненты и компоненты смещения любая программа может адресоваться к любому участку памяти компьютера. В частности, любая программа может преднамеренно или из-за ошибки разрушить области данных, принадлежащие операционной системе.

Выделим два основных недостатка схемы адресации памяти реального режима:

  • ограниченное адресное пространство (до 1 мегабайта плюс примерно 64 килобайта старшей области памяти для процессоров i80286, i80386 и i80486);
  • свободный доступ для любых программ к любым областям данных, что представляет потенциальную опасность для целостности операционной системы.

Этих недостатков полностью лишена схема адресации памяти, которая используется в защищённом режиме.

5)Специальные адреса, зарезервированные Intel

Каждый производитель сетевого оборудования должен зарегистрировать в IEEE диапазоны MAC адресов, которые будут использоваться при работе его оборудования. MAC - аббревиатура от английского Media Access Control. В сети не должно быть устройств с одинаковыми MAC адресами, на этом строится работа большинства протоколов канального уровня.
Получив MAC адрес, например, из ARP запроса, при помощи этой базы данных можно определить, сетевое оборудование какого производителя отправило этот ARP запрос.
Для запроса к базе данных достаточно ввести первые три октета MAC адреса. Например, 00-00-01. В запросе допустимо использовать запись MAC адреса и без дефисов, например 005056С00001.
Кроме поиска определённого MAC адреса, можно получить список всех диапазонов MAC адресов, зарегистрированных за одним производителем оборудования. Для этого нужно ввести название компании в соответствующее поле. Например, Xerox.

MAC адреса, начинающиеся с 00216B, зарезервированы за компанией Intel Corporate

6) Системная (стандартная или нижняя) память

Системная(стандартная, нижняя) память включает область пространства адресуемой памяти от 0 до 640 Кбайт. Системная па­мять-это специальный раздел пространства адресной памяти пред­назначенный для ОС, прикладных программ.

Поначалу специалистам казалось, что 640 Кбайт вполне дос­таточно, однако сейчас все считают что 640 Кбайт - унизительно маленький объем памяти, которого едва хватает для выполнения чего-либо полезного.

7)Верхняя память

С 1981 года фирма IBM поставила на рынок ПК с PC DOS (a затем MS DOS) и двадцатиразрядной адресной шиной. Такой ПК мог адресовать до 1 Мбайт памяти. Фирма IBM определила разделы пространства памяти по принципу их использования. Верхние 384 Кбайт (верхняя память) предназначались для буфера видеодисплея, ROM и специальных системных целей. Первые 640 Кбайт отводи­лись для общепрограммного использования. Небольшая часть этого объема памяти использовалась самой ОС.

Нехватка оперативной памяти побудила специалистов к поис­ку путей увеличения объема ОП и привела к разработке различных вариантов расширенной памяти.

 

8)Дополнительная память- это раздел пространства памяти, адресуемой ЦП, расположенной выше 1 Мбайт. Первое использование дополнительной памяти стало возмож­но на IBM PC/AT (с чипом 80286), но в ограниченном размере до 16 Мбайт (адресная шина имела 24 разряда). С выпуском полностью 32-х разрядного ПК с процессором 80386 появилась возможность практически неограниченного исполь­зования дополнительной памяти. Для организации и управления памяти важное значение име­ют режимы (реальный и защищенный).

9) Область HMA

Область верхней памяти (HMA, High Memory Area) — область оперативной памяти объёмом 65520 байтов (64 Кбайта без 16 байт), расположенная по адресам 0010_0000 — 0010_FFEF, т.е. сразу свыше 1 Мбайта. Её нередко именуют верхней памятью, что может создать путаницу, поскольку перекликается с английским термином Upper Memory, имеющим другой смысл.

Из всей оперативной памяти ПК именно HMA была выделена в особую область из-за ошибки, допущенной инженерами Intel при разработке микропроцессора 80286.

Ошибка в 80286 заключалась в том, что этот микропроцессор не отбрасывал «лишний» бит, даже если работал в реальном режиме, когда он теоретически должен быть полностью совместим с более ранними процессорами. В результате появилась возможность обращаться из реального режима к той самой области физической памяти, которая получила название HMA.

10)Расширенная память(EMS) позволяет даже самым малень­ким PC и XT, которые могут адресовать всего 1 Мбайт ячеек, ис­пользовать до 8 или даже 32 Мбайт наращиваемой памяти.

Стратегия, лежащая в основе расширенной памяти, основыва­ется на переключении банков памяти. Расширенная память - это выход за пределы RAM с помощью специальных плат памяти, ис­пользуя адресацию через окно системной области памяти.

Для повышения расширенной и дополненной памяти необхо­димо разобраться с понятиями: сегмент, смещение, банк, страница,

параграф.

Расширенная память использует платы страничной записи данных. Для управления расширенной памятью разрабатывались программы в соответствии с договоренностью по специфика­ции (не официальному стандарту) фирм Lotus - Intel -

Microsoft (LIM).

Документ LIM-EMS описывал и стандарт построения платы страничной платы и драйвер устройства для управления платой. Стандарт предписывал использовать в качестве окна страниц рас­ширенной памяти раздел в пространстве памяти размером в 64 Кбайт, который должен был делиться на четыре страницы по 16 Кбайт каж­дая. Администратор (программа) расширенной памяти должен был получать запросы от прикладных программ и выделять приложени­ям свободную память на плате EMS.

 

11) Адресное огибание

12) Cпецификация памяти EMS и XMS

Расширенная память (англ. expanded memory) — аппаратно-программная система, предоставляющая доступ к дополнительной памяти MS-DOS приложениям, которым недостаточноосновной памяти. Расширенная память адресуется странично через окно, находящееся в верхней зарезервированной области памяти (UMA). Спецификация расширенной памяти (англ. Expanded Memory Specification, EMS) была разработана в 1984 году совместно Lotus Software, Intel и Microsoft. Поэтому часто встречается сокращение LIM EMS. С конца 1980-х до середины 1990-х EMS активно использовалась в играх и коммерческих приложениях. Однако с приходом спецификаций дополнительной памяти (XMS) стала использоваться реже.

Дополнительная память (англ. Extended memory, XMS) — память за пределами первого мегабайта адресного пространства IBM PC-совместимого компьютера с процессором Intel 80286или более поздним. Extended Memory Specification (XMS) — спецификация дополнительной памяти, предполагает использование дополнительной памяти в реальном режиме только для хранения данных (но не для выполнения кода программы). Память становится доступной благодаря использованию менеджера дополнительной памяти (eXtended Memory Manager, XMM), такого, как, например,HIMEM.SYS. Функции XMM вызываются через прерывание 2Fh. XMS не должна вызывать проблем совместимости ни с чем, в том числе и с EMS.

13) Управление памятью

14) Содержимое и размещение драйверов, программ, специальных программ.



Дата добавления: 2016-05-30; просмотров: 5212;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.067 сек.