Основная область памяти


Далее до адреса A000h:0000h все принадлежит только программам и данным. Этот адрес известен как граница 640 Кб.

UMA

Вслед за первыми 640 Кб RAM становится "аппаратной". Здесь находится информация, которая служит для сопряжения прикладных программ с различными картами расширений, установленными в PC, а т. к. иногда карты расширения, например, видеокарту, называют адаптером (Adapter;), эту область памяти коротко называют сегментом адаптера или, поскольку речь идет об области памяти с более высокими адресами, UMA (Upper Memory 'Area). Это - верхняя память (Upper Memory) располагается по адресам от A0000h до FFFFFh (от 640 Кб до 1 Мб), ее размер составляет 384Кб.

Рассматриваемая область памяти не однородна. В UMA размещается видео- Память и ROM BIOS, а также могут находиться модули постоянной и оперативной памяти, конструктивно расположенные на картах расширения, подключенных кPC. Поэтому среди этих блоков некоторые являются зарезервированными (пользователь не может их использовать), другие, напротив, свободны. Свободные блоки называют UMB (Upper Memory Block), Т. к. они находятся в верхней памяти.

Область памяти графической карты находится в пределах адресов от A000h:0000h до C000h:0000h и занимает 128 Кб. Конструктивно она располагается на видеокарте, а логически помещена в адресное пространство памяти PC.

С видеопамятью работают сразу два компонента PC. Процессор помещает в нее данные, а монитор обращается к видеопамяти для вывода этих данных на экран. Процессор обращается к видеопамяти только при необходимости изменить выводимые данные, а монитор считывает данные из нее непрерывно для отображения их на экране.

Современные видеокарты поставляются с видеопамятью от 0,5 до 4 Мб. В этой памяти хранится изображение. Соответствующая программа обращается к нему через "окно" размером 64 Кб, адрес которого приходится на начало блока A000h:0000h или блока B000h:0000h. При этом программа управляет значением в специальном индексном регистре, которое показывает, какие 64 Кб видеопамяти отображаются в окне. Этот способ несколько напоминает ситуацию с памятью EMS, о которой расскажем ниже.

Выше адреса C000h:0000h вплоть до C800h:0000h находится VGA BIOS (размером 32 Кб), где записаны основные функции для представления изображений. Некоторые прикладные программы охотно обращаются к этому VGA BIOS, потому что доступ к программам BIOS в области памяти сегмента адаптера намного быстрее, чем к соответствующим программам, находящимся в ROM BIOS видеокарты.

Выше адреса C800h:0000h все по-настоящему запутано. Здесь находятся несколько свободных блоков, которые могут быть использованы различным образом. Большинство изготовителей план пользуются этим и с целью ускорения доступа располагают здесь информацию, например, SCSI-Host-адаптера или сетевой карты. При отсутствии таких карт вы можете использовать эту память для операционной системы (ее можно туда поместить if 1 помощью драйвера EMM386.EXE, входящего в поставку DOS или Windows). Кроме того, 64 Кб резервируются для страниц дополнительной (EMS) памяти, если она будет использоваться. Как это сделать, описано ниже.

В последних 64 Кб сегмента адаптера выше адреса F000h:0000h располагается ROM BIOS. Здесь, например, находится информация, внесенная в CMOS Setup, при конфигурировании PC. Предположительно, в вашем CMOS Setup имеется опция System BIOS Shadow RAM, которую желательно активизиро­вать (об этом будет написано далее).

 

EMS

 

Как уже упоминалось ранее, в верхней памяти имеются изрядные "дыры", которые представляют собой свободную память, самостоятельно не идентифицируемую системой. Пустуют, как правило, область расширения системного ROM BIOS или часть области под дополнительные модули ROM. Использовать эту память позволяет метод EMS (Expanded Memory Specification), появившийся потому, что программы, использующие большое количество памяти, не могут разместиться воперативной памяти до 640 Кб. Возможно, вы уже встречались с типичным сообщением на экране монитора:

 

Insufficient Memory

 

Чтобы преодолеть этот барьер, фирмы Lotus, Intel и Microsoft (отсюда название LIM) создали стандарт, который основывается на так называемом переключении банков (Bank Switching), или блоков (страниц), памяти. В области UMB между видеобуфером и системным ROM BIOS выделяется незанятое окно (page frame) размером 64 Кб, разделенное на 4 логические страницы по 16 Кб каждая. С помощью специального драйвера, например, EMM386.EXE, строятся "отображения" до четырех произвольных физических страниц в логические из дополнительной (Expanded) памяти, расположенной на специальной карте расширения. Поэтому эту память часто называют отображаемой памятью. При необходимости обращения к данным, расположенным в дополнительной памяти, с помощью драйвера выбирается соответствующее ранее построенное "отображение" физических страниц в логические.

Когда CPU обращается к области памяти, входящей в окно (адрес памяти которого ниже 1 Мб), аппаратно происходит обращение к соответствующим страницам дополнительной памяти на плате расширения. Таким образом, посредством адресации, реализуемой драйвером EMS, можно обращаться к 8 Мб (стандарт LIM 3.2) или к 32 Мб (стандарт LIM 4.0) дополнительной памяти, которая конструктивно расположена на отдельной карте расшире­ния. На PC с процессорами 80386 и выше такая отдельная карта не нужна. EMS здесь может эмулироваться с помощью специальных драйверов.

Для того чтобы использовать EMS-память, необходимо выполнение двух

условий:

· Прикладные программы должны уметь обращаться к драйверу EMS-памяти

· Необходим специальный менеджер памяти (Expanded Memory Manager), сокращенно EMM, который организует страницы и управляет ими. Ранее для старых материнских плат соответствующий драйвер поставлялся на отдельной дискете. В настоящее время этот драйвер входит в стандартные поставки DOS и Windows, в этом случае он соответствует последнему стандарту LIM и представляет собой файл EMM386.EXE. Этот драйвер позволяет программно эмулировать дополнительную (Expanded) память в расширенной (Extended) памяти. В CONFIG.SYS этот драйвер определя­ется, как правило, следующим образом:

Device = C:\DOS\EMM386.EXE хххх

или

Device = C:\Windows\EMM386.EXE хххх

где хххх — параметр, который определяет в килобайтах величину эмулируемой Expanded-памяти.

 

Командная строка

C:\DGS\EMM386.EXE 1024

файла CONFIG.SYS резервирует 1 Мб дополнительной памяти, что можно проверить, например, с помощью утилиты SysInfo, входящей в пакет Norton Utilities (рис 5.31). Посмотреть распределение памяти можно с помощью команды MEM (рис. 5.32).

 

Эмулировать дополнительную память необходимо только в том случае, если выполняются соответствующие программы. Такие программы, как AUTOCAD или Windows, нуждаются скорее в памяти XMS, которая будет рассмотрена ниже.

Так как драйвер EMM386.EXE служит для идентификации и управления блоками верхней памяти (UMB), рекомендуется использовать его всегда. В CONFIG.SYS запишите следующую командную строку:

Device = C:\DOS\EMM386.EXE NoEms

Параметр NoEms обозначает, что в области памяти свыше 1 Мб для дополнительной памяти не выделяется ни одного байта (что наиболее ценно для Windows).

 

HMA

 

Первый блок величиной 64 Кб непосредственно выше границы 1 Мб оперативной памяти обозначают как HMA (High Memory Area). Своему существованию эта область целиком обязана несколько "ущербной" эмуляции процессора 8088 процессором 80286. Дело состоит в следующем. Вся стандартная память, помимо того, что может быть представлена в виде 16 не перекрываемых блоков размером 64 Кб каждая (0—F), также может быть представлена и в виде перекрываемых 64-Кб областей, называемых сегментами, которые, вообще говоря, могут начинаться через каждые 16 байт. Максимальный полный адрес в виде сегмент : смещение, по которому может обратиться процессор i8088, — это FFFF:000Fh (20 адресных линий). Если увеличить это значение хотя бы на единицу, то произойдет циклический перенос (wrap around) и значение адреса станет 0000:0000. Для CPU 80286 и выше в общем случае этого не случится, так как адресная шина этих процессоров больше 20 разрядов, но адрес памяти при этом превысит границу 1 Мб. Чтобы исправить эту ошибку, фирма IBM предусматривает на материнских платах PC специальные аппаратные средства, "заставляющие" процессор 80286 выполнять переход на низшие адреса, как это было при работе процессора 8088. Однако такой переход может быть отменен чисто программным путем.

Таким образом, PC с CPU не ниже 80286 в реальном режиме может дополнительно адресовать память в пределах FFFF:0010-FFFF:FFFFh, то есть практически целый сегмент размером 64 Кб минус 16 байт. Особенно важным для понимания является тот факт, что область НМА доступна, по сути, в реальном режиме работы процессора. Необходимую программную поддержку выполняет специальный драйвер HIMEM.SYS, соответствующий спецификации XMS, о которой речь пойдет ниже.

Если вы не совсем разобрались во всем вышеизложенном и вас мало интересует, какое управление адресами обеспечивает доступ к НМА, запомните только, что в файле CONFIG.SYS должна содержаться следующая строка:

Device = C:\DOS\HIMEM, SYS

XMS

 

Это последний тип памяти, но с помощью аппаратных средств едва ли можно сделать что-то большее. XMS (extended Memory Specification) обозначает всю память выше границы 1 Мб, включая также НМА. Правда, следует отметить, что спецификация XMS дает возможность одновременного доступа к НМА только одной программе DOS, например для загрузки в НМА ее резидентной части. Информацию о XMS-памяти можно получить с помощью утилиты Syslnfo (рис. 5.33).

 

Чтобы иметь доступ к этой памяти, необходим специальный драйвер, с помощью которого данные пересылаются из стандартной памяти в расширенную и обратно. Выполнение программ, размещенных в расширенной памяти, не предусмотрено. Драйвер, реализующий XMS, переводит CPU в защищенный режим, т.е. режим, в котором можно адресовать всю память.

Этот драйвер мы уже упомянули в предыдущем разделе. Он, как "и EMM386.EXE, поставляется вместе с DOS и Windows и называется HIMEM.SYS. Определяется в файле CONFIG.SYS с помощью командной строки типа:

 

Device = C:\DOS\HIMEM.SYS

 

Дальнейшие детали по оптимизации оперативной памяти с помощью файлов CONFIG.SYS и AUTOEXEC.BAT описаны далее.

 

ROM BIOS

Элемент ROM BIOS часто называют просто BIOS. Аппаратно он представляет собой элемент памяти емкостью 64 Кбайт, установленный 28 ножками в DIP-разъем на материнской плате. Ведущими изготовителями ROM BIOS являются фирмы AMI, Award и Phoenix. Функции, выполняемые системами BIOS, одинаковы и не зависят от фирмы-изготовителя. Типичный элемент ROM BIOS представлен на рис. 9.1. Конечно, возможны различия в спосо­бах настройки, а также в меню систем BIOS.

ROM BIOS выполняет три основные функции:

§ предоставляет операционной системе аппаратные драйверы и осуществляет сопряжение между материнской платой и остальными средствами PC; ROM BIOS должен соответствовать конкретной материнской плате;

§ содержит тестовую программу проверки системы, так называемую POST (Power On Self Test), которая при включении PC проверяет все важнейшие компоненты;

§ содержит программу CMOS Setup для установки параметров BIOS и аппаратной конфигурации PC.

Обозначение ROM расшифровывается как Read Only Memory (память только для чтения, ПЗУ), то есть информацию из этой памяти можно только считывать, но данные записывать в память нельзя.

BIOS (Basic Input Output System — Базовая система ввода/вывода) содержит

набор основных функций управления стандартными внешними устройствами PC. Возникает вопрос: где хранятся значения, которые устанавливаются в CMOS Setup, если в ROM BIOS невозможно записать новую информацию? Изменения конфигурации (например, информация о новом винчестере) записываются в специальную область памяти (и оттуда считываются ROM BIOS), называемую CMOS RAM. Эта область памяти (емкостью 100— 129 байт) расположена в контроллере периферии 82С206. Для того чтобы записанные значения не были потеряны, контроллер обеспечивается питанием от аккумуляторной батареи. Таким образом, информация о конфигурации PC остается в памяти, даже если долго не включать компьютер.

 

Эта аккумуляторная батарея внешне чаще всего представляет собой цилиндрический голубой корпус на материнской плате, она обеспечивает хранение установок CMOS Setup и работу системного таймера. Если вы заметили, что системное время "убегает", замените аккумуляторную батарею или установите внешний аккумулятор. Из-за дефектной или разрядившейся батарейки не только нарушится правильный отсчет времени, но одновременно потеряется и информация CMOS RAM, которая содержит, например, параметры винчестера и установки оптимальной конфигурации Chipset.

Скажем несколько слов о POST. Этот самостоятельный тест поможет вам при идентификации ошибок, если вы установили в PC новую материнскую плату, и при этом что-то не функционирует.

Во время выполнения программы POST на экране монитора появляются два типа сообщений:

 

§ Информационные

§ Сообщения об ошибках (на экране монитора и звуковые)

Рис. 9.2. – Сообщение AMI BIOS при включении PC

С помощью информационных сообщений можно идентифицировать версию и производителя BIOS, производителя материнской платы. Chipset, установленный на материнской плате и др. Кроме того, на экране появляется информация об объеме установленной памяти (рис. 9.2), подключенных устройствах (HDD, FDD, CD-ROM и др.).

Отметим только, что POST выдает соответствующие сообщения, как на экране монитора, так и подачей звуковых сигналов (рис. 9.3). По числу "писков" можно быстро идентифицировать источник ошибки. Естественно, динамик должен быть подключен к системе.

Рис. 9.3. – Сообщение AWARD BIOS при включении PC

С помощью идентификационной строки, расположенной в нижней части экрана монитора, можно определить производителя материнской платы. Информация о производителе материнской платы с установленным AMI BIOS содержится в третьей группе цифр (см. рис. 9.2), если AMI BIOS вы­пущен до 1991 году:

51-0620-001121-00111111-071595-I430TX-001_10_CHIPSET-F

и во второй группе цифр для AMI BIOS, выпущенного с 1986 по 1991 гг.:

DINT-1123-04990-K8

В табл. 9.1 представлен идентификационный номер производителей мате­ринских плат с установленным AMI BIOS.

Таблица 9.1 Код производителей материнских плат с установленным AMI BIOS

Код производителя Производитель
Soyo Technology Co., Ltd.
Dataexpert Corp.
Chicony Electronics Co., Ltd.
A-Trend Technology Co., Ltd.
First International Computer Inc. (Fie)
Microstar Computer Corp.
Chaintech Computer Co., Ltd.
Acer Incorporated
Mercury Computer Corporation
Taiwan Igel Co., Ltd.
Applied Component Technology Corp.
Delta Electronics Inc.
Universal Scientific Industrial Co.
GigaByte Co., Ltd.
Rise Computer Inc.
Elite Computer Co., Ltd.
Darter Technology Inc.
Yunglin Technology Corp.
Formosa Industrial Computer Inc.
Win Tech Technology Co., Ltd.
Mustek Corporation
Amptek Technology Co., Ltd.
Abit Computer Corp.
Lucky Star Technology Co., Ltd.
Gvc Corporation
Portwell Inc.
Ufo Computer Co., Ltd.
Jet Way Information Co., Ltd.
Efa Corporation
Advance Creative Computer Corp.
Taiwan Mycomp Co., Ltd.
Asustek Computer Inc.
Flexus Computer Technology.
Datacom Technology Co., Ltd.
Artdex Computer Corp.
Epox Computer Co., Ltd.
Eagle Computer Technology Co., Ltc.
Digital Equipment International Ltd
Lantic Inc.
Ase Technologise Inc.
Kingston Technology Inc.
Macrotek International Corp.
Lapro Corporation
Chaining Computer & Communiction Co
Expert Electronic Corp.
Bcom Electronics Inc.
Ipex Itg Int'l Ltd.
Green Taiwan Computer Co., Ltd.
"Supertone Electronic Co., Ltd.
At& T Taiwan Telecommunications Co.
China Semiconductor Corporation
Chang Tseng Corp.
Supermicro Inc.

 

Информация о производителе материнской платы с установленным Award BIOS содержится в 6 и 7 цифре третьей группы цифр (табл. 9.2).

06/11/1998-1430TX-2A59IL1CC-00

Таблица 9.2 Код производителей материнских плат с установленным AWARD BIOS

Код производителя Производитель
A1 Abit Computer Corp
Ab Acer Incorporated
A0 Asustek Computer Inc.
А2 A-Trend Technology Co., Ltd.
A3 Bcom Electronics Inc.
СЗ Chaintech Computer Co., Ltd.
D0 Dataexpert Corp.
D1 Datacom Technology Co., Ltd.
ЕЗ Efa Corporation
Ра Epox Computer Co., Ltd.
F0 First International Computer Inc. (Fie)
F8 Formosa Industrial Computer Inc.-
G0 Giga Byte Co., Ltd.
G5 Gvc Corporation
J1 Jet Way Information Co., Ltd.
L1 Lucky Star Technology Co., Ltd.
Mh Macrotek Internationa! Corp.
M4 Microstar Computer Corp.
M8 Mustek Corporation
S5 Shuttle Corporation
S2 Soyo Technology Co., Ltd.
U3 Umax Co., Ltd.
V5 Vision Corporation
Z1 Zida Corporation

 

В информационной строке также содержится информация о Chipset, установленном на материнской плате (см. рис. 9-2, 9.3).

Для того чтобы установить время создания BIOS, можно набрать в командной строке DOS команду DEBUG. Эта команда загружает отладчик, который, скорее всего, находится в директории C:\DOS\ В качестве приглашения к вводу команд программа DEBUG использует дефис (-). В строке приглашения введите:

-d f000:fff5 fffc

 

Компьютер выдаст примерно следующее:

30 38 2F-30 38 2F 39 33 08/08/93

Последние цифры указывают дату создания BIOS для вашего PC. Чтобы выйти из DEBUG в DOS, введите команду Q.

Каждая система BIOS в адресной области FE00H—FFFD9H имеет определенные подпрограммы, которые специально подобраны для используемой материнской платы. По этой причине система BIOS PC не взаимозаменяема.

В последнее время многие изготовители для хранения BIOS используют микросхемы, электрически стираемой программируемой постоянной памяти (Electrically Erasable Programmable Read-Only Memory, EEPROM), относящейся к микросхемам ПЗУ, которые можно стирать и перепрограммировать непосредственно в PC. Такой элемент BIOS называют Flash-BIOS. Теперь производитель может выпускать обновленные версии BIOS на дискете, а пользо­ватель — загружать их в микросхему Flash-ROM материнской платы.

Центральный процессор имеет доступ к BIOS через систему программных прерываний. Каждое прерывание дает доступ к соответствующей подпрограмме BIOS. Вектора прерываний системы BIOS представлены в табл. 9.3.

Таблица 9.3 Вектора прерываний системы BIOS

Программное прерывание Функция Обозначение в BIOS
Деление на нуль D-EOI
Пошаговое прерывание D-EOI
NM1 (немаскируемое прерывание) NMI-INT
Точка останова D-EO!
Переполнение D-EOI
Печать экрана PRINT-SCREEN
Резерв D-EOI
Резерв D-EOI
Таймер (IRQ 0, часы реального времени) TIMER-INT
Клавиатура (IRQ 1) KB-INT
А Резерв (IRQ 2) D-EOI
В COM2 (IRQ 3 последовательного порта) D-EOI
С СОМ1 (IRQ 4 последовательного порта) D-EOI
D Резерв (IRQ 5) D-EOI
Е Прерывание дисковода (IRQ 6) DISK-INT
F Прерывание принтера (IRQ 7) D-EOI
Сервис видеоадаптера VIDEO-IO
Диагностика оборудования EQUIPMENT
Тестирование памяти MEMORY-SIZE -DETERMINE
Сервис FDD/HDD DISKETTE-IO
Последовательная передача данных RS232-IO
Работа с кассетой CASSETTE-IO
Работа с клавиатурой KEYBOARD-SO
Работа с принтером PRINTER-IO
Обращение к ROM-BASIC (в IBM PC) F600:0000
Начальная загрузка ("теплый старт", первичный загрузчик) BOOT-STRAP
Запрос времени суток TIME-OF-DAY
1B Прерывание клавиатуры DUMMY-RETURN
Прерывание реального времени DUMMY-RETURN
1D Инициализация видеопараметров VIDEO-FARMS
Инициализация параметров дискеты DISK-BASE
1F Параметры для видео - BIOS

 

Например, прерывание 12h отвечает за тестирование памяти и может использоваться для определения необходимого объема RAM.

 

Plug&Play

 

Современные микросхемы BIOS поддерживают так называемый стандарт Plug&Play ("Подключай и работай"). В BIOS, поддерживающих этот стандарт, включено 13 дополнительных системных функций, используемых операционной системой PC.

Стандарт Plug&Play (рис. 9.4), разработанный корпорацией Intel, позволяет системам и адаптерам, поддерживающим его, автоматически настраивать друг друга.

 

Рис. 9.4. – Реализация технологии Plug&Play

 

Все устройства PC (карты расширения, клавиатура, мышь и др.) используют определенное адресное пространство, требуют для себя линии прерываний (IRQ), каналы прямого доступа (DMA) и адреса ввода/вывода (I/O). По мере увеличения количества устройств заметно усложняется задача грамотного распределения ресурсов PC. Стандарт Plug&Play разработан для автоматического распознавания и согласования всех изменений в конфигурации PC, тогда пользователю не надо переустанавливать джамперы и вручную распре­делять ресурсы. В реализации стандарта Plug&Play принимают участие:

 

  • Аппаратные средства
  • BIOS
  • Операционная система

 

Аппаратные средства, поддерживающие стандарт Plug&Play, информируют BIOS и операционную систему о необходимых им ресурсах и, в свою очередь, само настраиваются на основании полученной информации.

В BIOS возможности Plug&Play реализуются в процессе выполнения программы проверки системы (POST). BIOS распознает установленные аппа­ратные средства, подключенные к материнской плате и адаптерам PC, ана­лизирует распределение ресурсов этих устройств, считывает информацию, содержащуюся в ROM подключенных устройств, настраивает адаптеры Plug&Play.

Операционная система, поддерживающая технологию Plug&Play (например Windows 95/98), берет на себя управление всеми внешними устройствами, загружая соответствующие драйверы. Кроме того, операционная система сообщает о конфликтах устройств, которые не были устранены BIOS. С помощью операционной системы можно настроить параметры адаптеров вручную (с экрана монитора) или после изменения положения джамперов на картах расширения. Стандарт Plug&Play поддерживают операционные системы Windows 95/98. Windows NT и др.

 

CMOS Setup

 

CMOS является сокращенным названием полупроводника определенного типа (Complementary Metal Oxide Semiconductor

К изменению CMOS Setup необходимо подходить с осторожностью, потому что некоторые изменения могут привести к фатальному исходу для PC (например, он больше не будет загружаться).

Прежде чем проводить изменения в CMOS Setup, запишите установленные или, что проще, распечатайте таблицы на принтере с помощью клавиши<prints>. Заставка CMOS Setup показана на рис, 9.5. В этом случае при необходимости можно вернуться к стандартным значениям. Впрочем. CMOS Setup при выходе из нее всегда позволяет вам отменить сделанные изменения.

 

Рис. 9.5. Заставка CMOS Setup AMI BIOS

 

Хотя имеется большое число различных типов и версий BIOS, отдельные установки CMOS Setup всегда присутствуют. Если в последующем обзоре вы не найдете опций конфигурации для вашего PC, то либо ваш компьютер имеет BIOS старого типа, либо для Chipset вашей материнской платы не предусмотрены рассмотренные ниже установки. И если какие-то параметры установить с помощью CMOS Setup невозможно, то значит, это и не нужно делать.

Клавиши, которые нужно нажать, чтобы войти в CMOS Setup, определяются фирмой-изготовителем BIOS. Обычно на экране монитора при загрузке системы появляется примерно такое сообщение:

Press <DEL> if you want to run Setup (для AMI BIOS)

или

Press <Ctrl><Alt><Esc> if you want to run Setup (для Award BIOS)

 



Дата добавления: 2017-06-13; просмотров: 1688;


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

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

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

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