Может принимать значения: разрешен контроль памяти на ошибки (Enabled), запрещен (Disabled) и Auto. Последняя установка автоматически активизирует проверку памяти и определяет возможности модулей памяти как по контролю четности, так и по коррекции ошибок. В некоторых версиях BIOS параметр Auto может отсутствовать.
Только два пункта (Enabled/Disabled) предлагает и опция Memory Parity (Error) Check. При активации контроля четности и отсутствии необходимых модулей памяти загрузка ПК может прерваться с выводом сообщения Parity Error.
Single Bit Error Report (Сообщение об однобитовой ошибке)
Если включен режим коррекции ошибок, то установка опции в Enabled позволит системе вывести сообщение об имеющей место однобитовой ошибке и ее коррекции. Решение этой задачи берет на себя контроллер памяти, он же направляет центральному процессору информацию об ошибке памяти. Отключение опции ведет к отказу от вывода сообщений, но сама коррекция не отменяется.
4.2. «Затенение» памяти, выделенная память
Ликбез. Shadow Memory это так называемая «теневая» память. В адресах памяти от 640 Кб до 1 Мб (A0000h FFFFFh) находятся «окна», через которые «видно» содержимое различных системных ПЗУ. Например, адреса F0000h FFFFFh занимает системное ПЗУ, содержащее BIOS системы, окно C0000h C7FFFh ПЗУ видеоадаптера (видеоBIOS) и т. п. При включении режима Shadow для каких-либо адресных диапазонов, соответствующих системным ПЗУ либо картам расширения, содержимое их ПЗУ копируется в участки основной памяти, которые затем подключаются к этим же адресам вместо ROM, «затеняя» их.
Дает ли это какие-нибудь преимущества? Повышается ли производительность системы? Включение «затенения» обеспечивает, в первую очередь, значительное ускорение работы с данными ПЗУ за счет более высокого быстродействия микросхем ОЗУ (в сравнении со временем доступа к ROM BIOS в 150-200 нс). Кроме того, при обращении к микросхемам BIOS непосредственно используется 8-разрядный доступ, и включение «затенения» ПЗУ делает доступ более эффективным. Иными словами, при обращении к постоянной памяти за один такт можно считать только один байт. В отличие как минимум от 32-разрядного (4-байтного) доступа к оперативной памяти (16-битный доступ ушел в историю с исчезновением 286-х систем). Кроме того, появляется возможность модифицировать видимое содержимое ПЗУ: все современные системные BIOS используют это для самонастройки, а в область видеоBIOS обычно загружаются экранные шрифты (речь идет о работе в DOS прим. ред.), и т. п.
Что представляет собой «теневая» память физически? Этот вопрос связан с распределением памяти вообще. В первом мегабайте часть памяти в 640 Кб используется по прямому назначению, то есть как основная память, а остальные 384 Кб оказываются в адресном пространстве, зарезервированном для ПЗУ и внешних устройств. В современных системах вся память представляет собой непрерывный массив, поэтому разрывать адресное пространство модулей памяти на две части нельзя. А потому часть системной области приходится аппаратно исключать, теряя при этом 384 Кб.
Но чтобы она не пропадала зря, можно скопировать в эту память содержимое ПЗУ. Для этого применяют несколько способов.
1) Организация Shadow Memory. Доступ к ней регулирует чипсет. Как правило, Shadow Memory находится в адресном пространстве в том же месте, где и исходное ПЗУ. Поскольку две области памяти в одном месте физически оказаться не могут, для управления этой памятью в чипсете предусмотрена специальная схема, которая может подключить в этот фрагмент адресного пространства либо исходное ПЗУ, либо ОЗУ.
Несколько слов о защите от записи. Обычно Shadow Memory в нормальном состоянии находится в режиме Read Only («Только для чтения»). Это породило проблемы, например, при написании русификаторов, так как приходится открывать «затененные» участки той же видеопамяти. Различные версии BIOS позволяют решать эту проблему, с помощью опций, в которых указывается, оставлять ли требуемый диапазон Read Write или Read Only.
Но не только BIOS способен управлять Shadow-функциями чипсета. С этой задачей справится и программа, умеющая корректно обращаться к регистрам чипсета на низком уровне. Начиная с 386-х, в защищенном режиме работы процессора имеется страничная организация памяти, обеспечивающая формирование физического (реального) адреса из виртуального адреса программы. Именно эта возможность и обеспечивает в большинстве распространенных драйверов памяти (менеджеров) не только выполнение функций затенения, но и получение доступа к памяти EMS (сверх области 1 Мб) при наличии расширенной памяти в компьютере. Программно возможности Shadow-функций менеджеров памяти значительно более гибкие, чем у чипсета, управляемого BIOS. В частности, контролирование размеров памяти, выделяемой для Shadow Memory, может производиться достаточно малыми по размеру страницами 4 Кб. Это позволяет эффективнее использовать адресное пространство первого мегабайта. В MS-DOS (за управление отвечает) возможность управления Shadow-памятью имеет драйвер памяти HIMEM.SYS (ключ /SHADOWRAM:ON|OFF).
Затенение полезно, главным образом, в 16-разрядных ОС. 32-разрядные системы не используют 16-разрядный код из ROM (ПЗУ). Вместо него они загружают 32-разрядные драйверы в ОЗУ, заменяя ими 16-разрядный код BIOS, который таким образом применяется только в процессе загрузки системы.
2) Организация блоков верхней памяти UMB (Upper memory blocks). По сути, аналогия предыдущему варианту.
3) Перемещение (relocation). Это перенос неиспользуемой памяти из системной области (640 Кб 1 Мб) в область расширенной (Extended) памяти. Чаще всего перемещается весь фрагмент сразу, то есть все 384 Кб. Связано это со сложностью схемы управления адресными линиями. В этом случае освободить остаток первого мегабайта можно, только выключив все без исключения установки Shadow.
В первых IBM PC устанавливалось 640 Кб основной памяти и отдельно расширенная память. Поэтому со старшими 384 Кб проблем не возникало. Позднее, а это также было давно, некоторые чипсеты (Neat, OPTi495, SiS471, др.) имели возможность переносить старшие 384 Кб за пределы первого мегабайта, присоединяя их к расширенной памяти. Одни чипсеты могли переносить свободные от «затенения» участки, другие только все 384 Кб целиком.