
- •Технические средства предприятий информационного сервиса
- •Часть 2 Пособие
- •230702 «Информационный сервис»
- •Содержание
- •1 Периферийные шины
- •1.1 Контроллеры ide (ata)
- •1.2 Интерфейс Serial ata
- •1.3 Интерфейс scsi
- •1.5 Последовательные интерфейсы com, ат, ps/2
- •1.6 Интерфейс lpt
- •2 Инфракрасный протокол
- •3 Технологии amr и cnr
- •4 Запоминающие устройства компьютера
- •5 Оперативная память
- •5.1 Статическая и динамическая оперативная память
- •5.2 Регистровая кэш-память
- •5.3 Физическая структура основной памяти
- •5.4 Типы оперативной памяти
- •5.5 Постоянные запоминающие устройства
- •5.6 Логическая структура основной памяти
- •6 Внешние запоминающие устройства
- •6.1 Логическая структура данных на диске
- •6.2 Накопители на жестких магнитных дисках
- •6.3 Дисковые массивы raid
- •6.4 Накопители на гибких магнитных дисках
- •6.5 Накопители на флоптических дисках
- •6.6 Накопители на магнитной ленте
- •7 Устройства для чтения/записи карт памяти
- •Библиографический список
5.5 Постоянные запоминающие устройства
Постоянное запоминающее устройство (ПЗУ или ROM - Read Only Memory, память только для чтения) конструктивно реализуется в виде модулей на материнской плате, используется для хранения неизменяемых программ (некоторых загрузочных, тестирования оборудования, драйверов BIOS).
По технологии записи информации, ПЗУ можно классифицировать на:
- классические или масочные - микросхемы, программируемые только при изготовлении;
- программируемые (ППЗУ, PROM) - однократно программируемые в лабораторных условиях микросхемы;
- перепрограммируемые (EPROM) - микросхемы многократно программируемые. Существуют электрически перепрограммируемые микросхемы EEPROM или ФЛЭШ-память.
В современных компьютерах используется FLASH-память (энергонезависимая), которая устанавливается в разъемы материнской платы и имеет следующие параметры:
-емкость до 128 Кбайт;
-время обращения по считыванию 0,035-0,2 мкс;
-время записи одного байта 2-10 мкс;
-скорость записи 500 Кбайт/с.
5.6 Логическая структура основной памяти
Основная память имеет единое адресное пространство, каждая ячейка которой имеет свой адрес.
Адресное пространство - максимально возможное количество адресуемых ячеек основной памяти, которое зависит от разрядности адресных шин. Если использовать 16-разрядный адресный код, который по длине равен машинному слову, то тогда непосредственно можно адресовать 216 = 65536 ячеек памяти (сегмент). Однако современные компьютеры имеют основную память емкостью гораздо больше 1 Мбайт (непосредственно адресуемая память в реальном режиме), для адресации которой необходимо 220 = 1 048 576 ячеек и 20-разрядный код.
Абсолютный адрес (Аaбс) формируется следующим образом:
Аабс= 16*Асегм + Аасм,
где
Асегм - адрес сегмента (начальный адрес 64-килобайтного поля, внутри которого находится адресуемая ячейка); Аасм - адрес смещения (относительный 16-разрядный адрес ячейки внутри сегмента).
В современных компьютерах с большим объемом оперативной памяти для увеличения адресного пространства используют режим виртуальной адресации или виртуальную память (оперативная память + часть дисковой памяти). При виртуальной адресации абсолютный адрес Аабс формируется без использования начального адреса сегмента Асегм, многоразрядным адресным кодом из специальных таблиц. Рассмотрим этот способ адресации подробьней. В регистр сегмента помещается переключатель вида: ИНДЕКС F СЛ, где
СЛ - вспомогательная служебная информация; F – идентификатор, определяющий тип дескрипторной таблицы для формирования Асегм:
при F = 0 используется глобальная дескрипторная таблица (GDT), общая для всех задач, решаемых на компьютере при многопрограммном режиме;
при F = 1 используется локальная дескрипторная таблица (LDT), создаваемая для каждой задачи отдельно; ИНДЕКС - адрес строки в дескрипторной таблице.
По индексу и идентификатору из глобальной или локальной дескрипторной таблицы происходит считывание 64-битовой строки, содержащей все необходимые элементы адреса. Подобная виртуальная адресация используется при защищенном режиме работы микропроцессора.
Загрузка задачи должна сопровождаться выделением необходимых ресурсов для ее выполнения в том числе и определенного объема оперативной памяти. В случае недостаточного объема оперативной памяти используются дополнительная, размещенная на жестком диске (виртуальная память), то есть используются условные адреса, которые затем привязываются к различным областям в памяти. Физические оперативная, дисковая и виртуальная память разбиваются на страницы по 4 Кбайта, страницам виртуальной и физической памяти присваиваются номера, которые сохраняются на весь период решения задачи. Операционная система формирует две таблицы: страниц виртуальной памяти, физического размещения страниц и устанавливает между ними связи. Физические страницы могут находиться в текущий момент времени в оперативной и во внешней памяти, причем из внешней памяти виртуальные страницы, при обращении к ним, автоматически перемещаются в оперативную, замещая при этом отработавшие. Страничные таблицы для каждой программы при распределении памяти создаются операционной системой и изменяются когда физические страницы перемещаются из области дискового устройства в оперативную память.
Распределение памяти выполняется статическом и динамическом режимах (соответственно до и в момент загрузки программы в оперативную память). Первый режим используется реже, так как используют метод разбиения программ на части, которые загружаются в оперативную память по мере необходимости (оверлейная структура программы). При динамическом распределении памяти используется виртуальная память, которая при загрузке программы в оперативную память использует виртуальные адреса и лишь при исполнении команды выполняется преобразование виртуальных адресов в реальные физические адреса оперативной памяти.
Для всех IBM PC существует понятие - логическое разделение памяти. Можно выделить пять логических областей оперативной памяти:
• Стандартная оперативная память (Conventional Memory
• EMS-память (Extended Memory Specification)
• UMA (Upper Memory Area)
• HMA (High Memory Area)
• XMS (eXtended Memory Specification)
Стандартная память начинается от адреса 0000:0000 и продолжается до адреса A000:0000. Для адресации памяти используется шестнадцатеричная система счисления; адрес выражается двумя конструкциями, разделенным двоеточием. Эти части называются соответственно сегмент (номер шестнадцатибайтного блока памяти) и смещение (относительно начала сегмента). Такой диапазон адресов соответствует памяти от 0 до 1 Mb. Такой невысокий предел установлен процессорами 8088 и 8086. Эти процессоры имели 20-разрядную адресную шину и поэтому могли адресовать 220 байт. В пределах этой области, начиная от 640 Kb, фирмой IBM зарезервированы 384 Kb для выполнения внутренних функций (UMA).
В оставшихся 640 Kb находится таблица векторов прерываний - адреса сервисных программ, входящих в BIOS и операционную систему (базовые функции: отображение символа на экране, организация доступа к диску и т.д.). Так как существуют различные версии BIOS и операционных систем, то эти программы-прерывания могут располагаться в различных местах памяти. В таблице прерываний указано их реальное положение. Таблица занимает 1 Kb (1024 байта) и начинается с адреса 0000h:0000h. Вслед за таблицей прерываний находится область данных BIOS размером 768 байт. Здесь размещены: буфер клавиатуры, счетчик таймера и другая внутренняя информация. Далее вся память до 640 Kb (A000h:0000h) свободна и ее могут использовать программы.
Далее за областью 640 Kb ОЗУ становится аппаратной так как здесь находится информация, необходимая для взаимодействия программ с аппаратным обеспечением компьютера. Рассматриваемая область памяти неоднородна. Здесь размещается и ROM видеокарты, сетевой платы, и ROM BIOS. Перенос ROM различных устройств в оперативную память позволяет повысить быстродействие системы, так как многие программы весьма активно работают с ROM различных устройств, а постоянная память в отличие от оперативной имеет большое время доступа. В CMOS Setup можно устанавливать возможность кэширования ROM BIOS. Рассматриваемый сегмент стандартной памяти называется верхние адреса основной памяти UMA (Upper Memory Area). Очевидно, что если система не располагает достаточно большим количеством устройств, которые помещают в UMA свои данные, то в этой области находятся и свободные участки. Эти блоки памяти называются UMB (Upper Memory Block). Фирма Microsoft разработала драйвер EMM386.EXE (EMM Expanded Memory Manager), который позволяет использовать эти блоки прикладным программам и операционной системе. Это драйвер может увеличить объем доступной памяти на несколько десятков или сотен килобайт. Для DOS это очень важно, так как не все DOS-программы могут работать с памятью XMS или EMS.
Однако главная область применения драйвера EMM386.EXE заключается в осуществлении доступа к памяти свыше 1 Mb, что позволяет использовать ресурсоемкие программы. Один из таких типов памяти является EMS (Expanded Memory Specification). Чтобы лучше понять, что это такое, обратимся к истории. Во времена процессоров 80286 для увеличения объема оперативной памяти использовались специальные карты расширения с установленными на них микросхемами RAM, которые тоже управлялись специальным менеджером памяти. Соответственно и программы разрабатывались с поддержкой этого вида памяти. Начиная с процессора 80386 предел в 1 Mb был преодолен, и компьютеры стали оснащаться большими объемами памяти, однако отказываться от созданных под EMS программ сразу нельзя. EMM386.EXE позволяет путем программной эмуляции "превращать" память свыше 1 Mb в EMS-память и таким образом даже на современных компьютерах без EMS-карт можно использовать программы, работающие с этой памятью (для DOS они порядком устарели). Доступ к EMS происходит следующим образом. В верхней памяти имеются свободные блоки, которые недоступны пользователю, но с помощью EMM386.EXE их можно сделать доступными и тем самым несколько увеличить объем свободной памяти. Так вот, в оном из таких UMB драйвером выделяется 64 Kb для создания так называемого страничного окна (page frame), которое разделяется на четыре страницы по 16 Kb каждая. При обращении программы к EMS-памяти происходит ранее построенное отображение страниц из расширенной памяти (XMS) в логические.
Вся память свыше 1 Mb называется расширенной (XMS). За ее использование в DOS отвечает менеджер EMM386.EXE. Все последние DOS-программы не используют EMS, им и нужна память XMS. Драйвер EMM386.EXE в основном выполняет одну функцию - переводит процессор в защищенный режим (режим, в котором он может адресовать всю память, а не только первый мегабайт).
В XMS-памяти выделяют первые 64 килобайта, которые носят название HMA (High Memory Area). Эта область своим существованием обязана ошибке, которую допустила Intel при разработке процессора 80286.
Итак компьютер имеет два главных типа памяти: основную и расширенную. Размер основной составляет 1 Mb; в этой памяти отводится 384 Kb для внутренних функций, а в оставшихся 640 Кбайт может размещаться OС, драйверы и прикладные программы. Расширенная память представляет собой всю оставшуюся память компьютера. С помощью диспетчера памяти EMM386.EXE она может быть доступна как обычная память или преобразована в EMS. Обычно EMS не используют. В расширенной памяти выделяют первые 64 Kb, которые, в отличие от всей остальной XMS, могут быть адресованы процессором в реальном режиме и в них может быть помещена часть ядра DOS. Необходимую программную поддержку здесь выполняет драйвер HIMEM.SYS.
Диспетчер памяти необходим только в DOS, но не следует забывать, что наличие Windows, не отменяет полностью необходимость в DOS и DOS-программах, а в экстренных случаях если не загружается Windows или нужно работать без жесткого диска - эта информация весьма полезна. Windows сама является диспетчером памяти и может выделять программам память самостоятельно. Это касается и DOS-программ, запущенных из-под Windows. Если вышеупомянутые драйверы и понадобятся, Windows грузит их автоматически. Упоминание драйверов EMM386.EXE и HIMEM.SYS в файле CONFIG.SYS нужно только при работе в чистой DOS либо при работе Windows 9х в режиме единственного приложения MS DOS.
Вышеуказанное не имеет смысла для систем Windows NT, так как Windows NT, в отличие от Win95/98, не имеет к DOS почти никакого отношения. Аналогично можно сказать и про МЕ.
Итак, основная память по методам обращения и адресации классифицируется на:
1) непосредственно адресуемая память с адресами от 0 до 1024К.
а) стандартная память (СМА — Conventional Memory Area) с адресами от 0 до 640К;
б) верхняя память (UMA - Upper Memory Area)с адресами от 640 до 1024К, используется для видеопамяти и постоянного запоминающего устройства;
2) расширенную память, работающая при защищенном режиме работы микропроцессора и использовании специальных драйверов.
а) высокая память (HMA- High Memory Area) с адресами от 1024 до 1088К, которая адресуется при использовании драйвера HIMEM. EXE и может использоваться для хранения любой информации, в том числе и программ пользователя;
б) расширенная с адресами от 1088 и выше.