Фигурнов В. Э. Ф49 ibm pc для пользователя. Изд. 7-е, перераб и доп
Вид материала | Книга |
СодержаниеГлава 39. Использование оперативной памяти в DOS Часть 7. DOS для опытного пользователя Глава 39. Использование оперативной памяти в DOS Часть 7. DOS для опытного пользователя |
- Курс лекций и практикум. 6-е изд., перераб и доп, 44.04kb.
- В. А. Алексунина 3-е изд., перераб и доп. М.: Дашков и К°, 2005. 716с, 8.09kb.
- Карпенков С. Х. Концепции современного естествознания: Учеб для вузов. 6-е изд., перераб, 1235.1kb.
- Тощенко Ж. Т. Социология: Общий курс. 2-е изд., доп и перераб. М.: Юрайт-М, 2001. 527, 49.36kb.
- Фролов И. Т. и др. 3-е изд, 14108.71kb.
- Лаврехин Ф. А. и Панкова С. В. Биология пчелиной семьи. Изд. 2-е, перераб и доп. М.,, 1857.45kb.
- Текст приводится по сборнику Конституции зарубежных государств: Учебное пособие/Сост, 2055.3kb.
- Сборник руководящих документов по заповедному делу, 11587.13kb.
- "Обучение детей технике рисования" Изд. 2-е, перераб и доп. М., «Просвещение», 1970., 1146.19kb.
- Основные модели бухгалтерского учета и анализа в зарубежных странах : учеб пособие, 475.04kb.
Использование
оперативной памяти в DOS
MS DOS создавалась для микропроцессора Intel-8088, который мог работать только с
одним Мбайтом памяти. Из этого Мбайта 384 Кбайта были зарезервированы для хра-
нения BIOS и использования содержащимися в компьютере контроллерами. Так что
для DOS, драйверов, резидентных программ и запускаемых пользователем прикладных
программ можно было использовать лишь 640 Кбайт оперативной памяти, а этого ко-
личества очень скоро стало не хватать.
Вскоре после появления MS DOS были выпущены микропроцессоры, умеющие обра-
щаться с гораздо большим количеством памяти (Intel-80286 Ч с 16 Мбайтами, Intel-
80286 Ч с 4 Гбайтами). Но заложенные в MS DOS принципиальные ограничения не
позволяли DOS и DOS-программам использовать память сверх 640 Кбайт. Для обхода
этих ограничений пришлось разрабатывать различные способы и трюки, которых было
придумано достаточно много. В результате кроме обычной памяти (то есть памяти в
пределах 640 Кбайт) появились EMS-память, расширенная память, верхняя память,
область НМА и т.д. Как говорится в детских стихах: "хозяйка с базара домой принес-
ла: картошку, капусту, морковку, горох, петрушку и свеклу. Ох!..". Но у пользователей
говорить "ох" имеется куда как больше оснований: та хозяйка положила все эти овощи
в суп, а пользователю приходится готовить из каждого овоща отдельное блюдо, иначе
говоря, обращаться с перечисленными выше видами памяти совершенно по-разному.
Разобраться во всем этом не так-то просто, но мы попробуем.
Хтт",/.",- ХХч':'
(., _; .ХХ.. Х. ^ j.,^
оперативной памяти в DOS
Как говорилось ранее, операционная система DOS была рассчитана на компьютер с
микропроцессором IntelЧ8088 или IntelЧ8086. А эти микропроцессоры могут обра-
щаться только к одному Мбайту памяти. Поэтому DOS-программы могут обращаться
только к первому Мбайту памяти, точнее, к памяти, имеющей адреса в первом Мбайте.
Память, которую могут непосредственно использовать DOS-программы (и другие про-
граммы, рассчитанные на микропроцессор Intel-8088), состоит из двух частей.
Первые 640 Кбайт памяти могут использоваться прикладными программами и операци-
онной системой. Как правило, эту часть памяти называют обычной памятью (по-
английски Ч conventional memory). Обычно младшие адреса обычной памяти занимает
DOS, драйверы и резидентные программы, а остальная часть свободна для использова-
ния прикладными программами.
.,Х;(, Остальные адреса памяти Ч от 640 Кбайт до 1 Мбайта Ч ("верхняя память*, по-
английски Ч upper memory) зарезервированы для служебных целей, в частности:
Х для хранения BIOS Ч программ, обеспечивающих тестирование компьютера, на-
чальную загрузку ОС, а также выполнение основных низкоуровневых услуг ввода-
вывода (обычно BIOS располагается в старших адресах первого Мбайта памяти);
Х для передачи изображения на экран;
Х для хранения различных расширений BIOS, которые поставляются вместе с неко-
торыми контроллерами (видеоконтроллером, контроллером дисков и т.д.).
" .;^ "in"<' Как правило, оперативная память, занятая BIOS и расширениями BIOS, дос-
. тупна только для чтения, запись каких-либо данных туда невозможна, 1акая память назы-
] вается ROM (read only memory), а память, доступная и для чтения, и для записи Ч RAM
Часть 7. DOS для опытного пользователя
Объем свободной
обычной памяти
Барьер 640 Кбайт
(random access rnernory, память с произвольным доступом). Содержимое ROM-памяти со-
храняется и при выключении компьютера, а содержимое RAM-памяти Ч пропадает.
Для DOS-программ особо важен объем свободной обычной памяти компьютера, то есть
обычной памяти, не занятой DOS, драйверами и резидентными программами. Как пра-
вило, общий объем обычной памяти компьютера составляет 640 Кбайт, из них от 16 до
100 Кбайт занято DOS, драйверами и резидентными программами. Остальная часть
обычной памяти может использоваться прикладными программами.
Итак, для DOS-программ доступная оперативная память должна была составлять не
более 640 Кбайт. В начале 80-х годов, когда разрабатывался компьютер IBM PC, воз-
можность работы с 640 Кбайтами была большим шагом вперед: остальные компьютеры
тогда могли работать только с 64 Кбайтами памяти. Кстати, первые модели IBM PC
были оснащены всего 256 Кбайтами памяти, хотя стоили около 5000 дол.
Но очень скоро выяснилось, что для многих программ 640 Кбайт мало (тем более что
из этих 640 Кбайт до 100 Кбайт могут занимать DOS и различные системные програм-
мы Ч драйверы устройств и резидентные программы). А очень широкому кругу про-
грамм (табличным процессорам, издательским системам, графическим редакторам,
многим научным и инженерным программам и т.д.) для эффективной работы на реаль-
ных задачах был необходим доступ к гораздо большему количеству памяти Ч как ми-
нимум в несколько Мбайт. Ведь 640 Кбайт Ч это на поверку не так уж и много: даже
одна матрица вещественных чисел размером 300х300 требует больше места!
И очень скоро способы увеличения количества оперативной памяти, доступной про-
граммам, были найдены. А именно, были внедрены два новых вида памяти Ч EMS-
память и расширенная память.
39.2. EMS-память
Что это такое
Обозначение
функционирование
EMS-памяти
Использование
EMS-памяти
В начале 80-х годов некоторые фирмы-производители оборудования для компьютеров
стали выпускать платы расширения памяти (memory extension cards), содержащие
дополнительные блоки памяти. Доступ к памяти на этих платах осуществляется через
специальную программу Ч драйвер управления дополнительной памятью (expanded
memory manager, EMM). Для обеспечения совместимости этих программ фирмами
Lotus, Intel и Microsoft был разработан стандарт Ч спецификация дополнительной па-
мяти (expanded memory specification, EMS). В настоящее время, как правило, исполь-
зуется версия 4.0 этой спецификации Ч LIM EMS 4.0. В ней максимальный объем до-
полнительной памяти составляет 32 Мбайта.
Часто память, доступную через EMS-драйвер, называют EMS-памятью. В англоязыч-
ной литературе принят также термин "expanded memory".
Хотя максимальный объем EMS-памяти составляет 32 Мбайта, из них одновременно
доступны могут быть не более 64 Кбайт. Действительно, если микропроцессор Intel-
8088 может работать с адресным пространством в 1 Мбайт, то 32 Мбайта туда помес-
титься никак не могут. Поэтому для обмена с EMS-памятью используется специальное
окно размером в 64 Кбайта. Это окно (по-английски оно называется EMS Frame) рас-
положено в верхней памяти, то есть в адресах от 640 Кбайт до 1 Мбайта. А сама EMS-
память разделена на страницы размером по 16 Кбайт, и в EMS-окне могут быть дос-
тупны любые 4 страницы EMS-памяти. Таким образом, для чтения или записи любой
страницы EMS-памяти надо обратиться к EMS-драйверу, который отобразит данную
страницу в EMS-OKHO, после чего она станет доступной и с ней можно будет работать.
Это, разумеется, весьма неудобно, так как заставляет программы заботиться о смене
страниц памяти. Кроме того, это делает EMS-память значительно более медленной,
чем обычная Ч ведь на смену страниц в окне требуется время.
В начале 80-х годов EMS-память получила широкое распространение, так как это
единственный способ увеличения количества памяти, пригодный для компьютеров
класса IBM PC XT (с микропроцессором Intel-8088 или 8086). Многие DOS-программы
(Microsoft Word, Ventura Publisher, Paradox и др.) могут использовать EMS-память,
установленную в компьютере. При этом они обрабатывают большие объемы информа-
ции значительно быстрее, так как им не приходится производить операции ввода-выво-
да с диском для "подкачки" этой информации.
Замечание. EMS-память используется в следующих программах, входящих в MS DOS:
FastOpen, VSafe, в драйвере компакт-дисков MSCDEX и в драйвере электронного диска
^ Глава 39. Использование оперативной памяти в DOS
'л.' 1 ' 14111."
RAMDRIVE. В версиях 4 и 5 MS DOS EMS-память могла использоваться также и командой
Buffers файла CONFIG.SYS и драйвером кэширования дисков SmartDrv.
Однако уже в середине и конце 80-х годов, в связи с вытеснением компьютеров типа
IBM PC XT компьютерами на основе микропроцессоров Intel-80286, 80386 и т.д.,
большую популярность приобрел другой способ увеличения количества доступной про-
граммам памяти Ч применение расширенной памяти. По сравнению с EMS-памятью
расширенная память значительно дешевле, удобнее в использовании, а доступ к ней
осуществляется быстрее. Так что очень скоро EMS-платы вымерли, как мамонты. А
для работы с программами, применяющими EMS-память, были созданы EMS-драйверы,
которые используют для имитации (часто говорят Ч эмуляции) EMS-памяти часть
расширенной памяти. В MS DOS, начиная с версии 5.0, входит такой драйвер для про-
цессоров 80386 и выше Ч EMM386.ЕХЕ.
^ир^1"и'!ая память
Определение
^Х"^<:Х. '!')11>,31){-'.р!НИ("
P^iC!lii'':PХ'! и 14:; l;.jM>i !И
Расширители DOS
Другая возможность увеличения размера доступной программам оперативной памяти
появилась в 1982 г., когда фирма Intel стала выпускать микропроцессоры Intel-80286.
Эти и последующие микропроцессоры (80386, 80486, Pentium и Pentium Pro) обеспе-
чивают совместимость с Intel-8088, но предоставляют и множество других возможно-
стей. В частности, эти микропроцессоры могут непосредственно работать с оператив-
ной памятью большего размера, чем 1 Мбайт. На системной плате компьютеров с эти-
ми микропроцессорами может устанавливаться более 1 Мбайта оперативной памяти:
теоретически Ч до 16 Мбайт для компьютеров на основе микропроцессоров Intel-
80286 и 80836SX, и до 4 Гбайт для остальных компьютеров.
Однако память с адресами свыше 1 Мбайта в этих микропроцессорах доступна только
в так называемом защищенном режиме, в котором не может работать DOS. А в ре-
жиме совместимости с Intel-8088, в котором работает DOS Ч этот режим называется
обычным, или реальным (real mode) Ч программам, как и на IBM PC XT, доступна
память только в пределах первого Мбайта. Исключением являются лишь первые 64
Кбайта расширенной памяти (см. ниже).
Часть оперативной памяти сверх первого мегабайта, доступного в реальном режиме,
называется расширенной памятью (extended memory).
Долгое время расширенную память компьютера можно было использовать только для
размещения "электронного диска" или кэш-буфера для диска. Дело в том, что операци-
онная система DOS работает в обычном режиме процессора, поэтому для доступа к
расширенной памяти необходимо переключаться из обычного в защищенный режим ра-
боты процессора и обратно, что не так-то просто Ч ведь вся организация памяти в
этих режимах совершенно различна. Да и стандарта на то, как обращаться с расши-
ренной памятью, не было, что делало невозможным одновременную работу с расши-
ренной памятью нескольких программ. Однако в середине 80-х годов эти проблемы
были решены. Были разработаны стандарт по работе с расширенной памятью (XMS) и
реализующие его драйверы расширенной памяти (например, HIMEM.SYS), которые
предоставили удобные средства для использования расширенной памяти DOS-
программам. Так что теперь большинство программ использует именно расширенную
память, а не EMS-память. К числу таких программ относятся Windows 3.1 и Windows
95. Для многих DOS-программ производители указывают, сколько обычной и расши-
ренной памяти им необходимо. Если количество требуемой обычной памяти невелико,
то часто указывают лишь общее количество памяти, которое должен иметь компьютер.
3пм^ч:11 inc. Расширенная память используется в следующих программах, входящих в MS
DOS: в драйвере электронного диска RAMDRIVE, драйвере кэширования дисков SmartDrv
и антивирусной программе VSale. Кроме того, в первые 64 Кбайта расширенной памяти
DOS может перемещать практически все свое ядро (см. ниже), освобождая обычную память
для прикладных программ.
DOS была создана для работы в реальном режиме процессора, и DOS-программы тоже
должны были работать в реальном режиме процессора Ч ведь DOS может предостав-
лять свои услуги только в реальном режиме процессора. Однако для таких программ
расширенная память (кроме ее первых 64 Кбайт) не может использоваться непосредст-
венно, что весьма неудобно. Для обработки данных в расширенной памяти необходимо
с помощью запроса к XMS-драйверу переместить блок расширенной памяти в первый
Мбайт, то есть в обычную или верхнюю память, там выполнить обработку и затем с
^ Часть 7. DOS для опытного пользователя
помощью запроса к XMS-драйверу переместить этот блок обратно. По существу, при
этом расширенная память превращается в некое подобие диска, только очень быстрого.
Более эффективное решение состоит в другом Ч если сама программа выполняется в
защищенном режиме процессора, то расширенная память доступна ей непосредствен-
но. При этом код программы и обрабатываемые данные могут располагаться в любом
месте доступной расширенной памяти. А для того, чтобы при этом программа могла
пользоваться услугами DOS, многими фирмами (Phar Lap, Borland и др.) были созданы
специальные системные программы Ч расширители DOS (DOS-extenders) Ч позво-
ляющие вызывать функции DOS из защищенного режима микропроцессора. Поэтому
во многих программах, требующих эффективной работы с большими объемами данных
Ч компиляторах, базах данных, играх и т.д., применяются расширители DOS. Приме-
ром может служить известная игра DOOM.
Разумеется, Windows (начиная с версии Windows/386 2.0) также включает в
себя внутренний расширитель DOS.
39.4. Первые
ПОЧЕМУ ОНИ И! ;'....:Ui
особую роль
Обозначение
Испол1-.:юп,1ии('.' '/W-i
b^
^'ui
Особую роль в расширенной памяти играют первые 64 Кбайта расширенной памяти.
Дело в том, что при создании микропроцессора Intel-80286 фирма Intel допустила
ошибку, из-за которой в реальном (совместимом с Intel-8088) режиме оказалось воз-
можным получать доступ к первым 64 Кбайтам (точнее, 65520 байтам) расширенной
памяти. Некоторое время эта особенность рассматривалась как курьез, но затем было
осознано, что из нее можно извлечь немалую пользу. Начиная с версии 5.0, MS DOS
может перемещать на компьютерах с микропроцессором Intel-80286 и выше свое ядро в
первые 64 Кбайта расширенной памяти. Это позволяет значительно увеличить объем
обычной памяти, доступной DOS-программам.
По-английски первые 64 Кбайта расширенной памяти часто называются High Memory
Area, сокращенно Ч НМА.
Для перемещения ядра DOS в НМА надо использовать драйвер HIMEM.SYS и указать
в файле CONFIG.SYS команду DOS=HIGH (или DOS=HIGH,UHB ). Подробнее об этом гово-
рится в главе 40. Х
^ Х . Ошибка при создании Intel-80286 состояла в следующем. Адрес каждого байта
памяти в микропроцессоре Intel-8088 задавался с помощью двух двухбайтовых чисел: сег-
мента и смещения. Он вычислялся по формуле: адрес = сегментх16+смещение. Но если
адрес получался больше 1 Мбайта (220), то лишний Мбайт отбрасывался (ведь Intel-8088
мог работать только с 1 Мбайтом памяти), и обращение происходило в начало (первые 64
Кбайта) памяти. Впрочем, на практике никто этот способ адресации не использовал, поэто-
му при разработке Intel-80286 об отбрасывании "лишнего" Мбайта в режиме совместимости
с Intel-8080 забыли. В результате стало возможным обращаться и к первым 64 Кбайтам
(точнее, 65520 байтам) расширенной памяти.
39.5. Эффективное ис^^ль.
Проблема дефици"
обычной ЧЗМЯЧ.1
Хотя многие прикладные DOS-программы научились работать с расширенной памятью
и/или EMS-памятью, место в первых 640 Кбайт оперативной памяти не перестало
быть крайне дефицитным ресурсом. Наоборот, оснащение компьютеров значительно
расширилось, многие компьютеры стали снабжаться различными дополнительными
устройствами: дисководами для компакт-дисков, стримерами, сканерами, магнитоопти-
ческими дисками и т.д., а драйверы для доступа к этим устройствам занимают память.
Да и разные полезные резидентные программы, Ч программы кэширования дисков,
работы со сжатыми дисками и т.д., Ч занимают много оперативной памяти. Между
тем, разработчики прикладных программ, работающих в DOS, вовсе не собирались
сажать создаваемые программы на режим жесткой экономии, ведь в расширенной па-
мяти они могли хранить только данные, а код программы должны были держать в
обычной памяти. Так что многие программы требовали не менее 550-570 Кбайт сво-
бодной памяти. В результате некоторые пользователи оказались перед крайне непри-
ятным выбором: или работать с тем или иным устройством, или запускать нужную им
прикладную программу. Опытные пользователи выходили из положения, создавая раз-
^ Глава 39. Использование оперативной памяти в DOS
Загрузка DOS в НМА
Диспетчеры памяти
Оптимизация
использования
памяти
личные настройки компьютера для разных режимов работы и перезагружая компьютер
для перехода от одного режима к другому (как это делается, описано в и. 40.14). Но
это не так уж удобно, да и слишком сложно для большинства пользователей.
Первые признаки улучшения ситуации появились, когда различные независимые раз-
работчики научились перемещать (с помощью специальных драйверов) часть кода DOS
в первые 64 Кбайта расширенной памяти. Это позволило освобождать 30-40 Кбайт
обычной памяти на компьютерах с процессором Intel-80286 или старше.
А с появлением микропроцессора Intel-80386 данную проблему стало возможно решит!.
кардинально. Этот микропроцессор оснащен средствами управления оперативной па-
мятью, с помощью которых можно назначить любому блоку физической памяти нуж-
ный логический адрес. Тем самым оказалось возможным как бы поместить блоки опе-
ративной памяти в адреса, не используемые BIOS и контроллерами, то есть в
"пустоты" между участками памяти, занятыми BIOS и контроллерами. Естественно,
при этом количество расширенной памяти компьютера несколько уменьшалось (ведь
общее количество физической памяти в компьютере от переназначения адресов не
изменилось), но расширенная память Ч это значительно менее дефицитный ресурс.
Различные фирмы (Quarterdesk, Qualitas и др.) разработали так называемые диспет-
черы памяти (QEMM и 386МАХ), которые реализовывали эту возможность, позволяя
помещать блоки оперативной памяти в адреса верхней памяти и загружать драйверы и
резидентные программы в эти блоки верхней памяти. В 1990 г. соответствующая воз-
можность была включена и в DR DOS 5.0 фирмы Digital Research, что стало угрожать
позициям фирмы Microsoft на рынке DOS. Поэтому фирма Microsoft напряглась и в
1991 г. выпустила MS DOS 5.0, в которую были включены аналогичные возможности:
драйвер EMM386, обеспечивающий доступ к верхней памяти и команды DeviceHigh и
LoadHigh, выполняющие загрузку драйверов и программ в верхнюю память. Кроме
того, MS DOS 5.0 поддерживала и перемещение ядра DOS в первые 64 Кбайта расши-
ренной памяти.
Итак, с помощью диспетчеров памяти EMM386 из MS DOS, QEMM, 386МАХ и др.
стало возможным загружать драйверы и резидентные программы не в обычную, а в
верхнюю память, тем самым освобождая столь драгоценную обычную память для при-
кладных программ. При этом значительно увеличился и общий объем памяти, который
мог отводиться для драйверов и резидентных программ: ведь типичный объем свобод-
ных участков верхней памяти составляет от 100 до 200 Кбайт (на разных компьютерах
Ч по разному).
Однако проблема наилучшего использования верхней памяти оказалась не такой-то
простой. Ведь доступная для размещения программ и драйверов верхняя память не
представляет собой один непрерывный кусок, а состоит из нескольких фрагментов
(обычно называемых регионами), расположенных в "дырах" между адресами памяти,
используемыми BIOS и контроллерами. Поэтому для наилучшего использования верх-
ней памяти необходимо для каждой резидентной программы или драйвера решить, в
какой регион верхней памяти лучше ее поместить (или, может быть, оставить в обыч-
ной памяти). Это совсем не простая комбинаторная задача, и часто здесь приходится
рассматривать десятки вариантов в поисках наилучшего.
Ясно, что возлагать на пользователя заботу об эффективном использовании верхней
памяти было бы неправильно. Пользователь должен решать свои проблемы, а не ком-
бинаторные задачи по наилучшей укладке программ и драйверов в регионы верхней
памяти. Тем более что при любом изменении конфигурации компьютера (добавлении
нового контроллера, изменении версии драйвера и т.д.) эту задачу надо решать заново.
Поэтому для решения этой задачи были созданы специальные программы Ч оптими-
заторы использования памяти. Эти программы впервые появились в диспетчерах
памяти независимых разработчиков (Optimize в диспетчере QEMM фирмы
Quarterdesk, Maximize в диспетчере 386МАХ фирмы Qualitas и т.д.). В MS DOS 6.0
также был включен оптимизатор MemMaker, который рассматривается главе 41. Оп-
тимизаторы выявляют потребности используемых драйверов и резидентных программ в
оперативной памяти, определяют, как наилучшим образом можно разместить эти про-
граммы и драйверы в регионах верхней памяти и вносят все необходимые изменения в
файлы конфигурации DOS Ч CONFIG.SYS и AUTOEXEC.BAT. Этот процесс требует
минимальных усилий от пользователя и выполняется за пару минут.
^ Часть 7. DOS для опытного пользователя
[Т] 39.6'
I fr'' !)'^.Х'^""-"-<>."{.
^ уl\Х1Mf^f.^^ Il4<,' ,//- ii .1 li-U.'
:t) И":Х1(^l". i'Ч^^^ll.ХХ^"
Для получения суммарных данных об использовании оперативной памяти можно вве-
сти команду MEM. На экран будет выдана следующая таблица:
Размеры различных
видов памяти
Размеры свободных
блоков памяти
Использование НМА
Если имеется
EMS-память
Memory Type
Conventional
Upper
Reserved
Extended (XMS)
Total memory
Total under 1 MB
Total
40K 600K
143K OK
384K OK
173K 64 196K
740K 64 796K
182K 600K
600K OK (614 688 (0 bytes) bytes)
Хmo ry area.
640K
143K
384K
64 369K
65 536K
783K
Largest executable program size
Largest free upper memory block
MS-DOS is resident in the high memory
Здесь для каждого типа памяти (Conventional Ч обычная память, Upper Ч верхняя
память. Reserved Ч зарезервированная память, то есть память, занятая для специаль-
ных целей, скажем, создания теневого BIOS, то есть копии BIOS в оперативной памя-
ти, Extended (XMS) Ч расширенная память) приводится общий размер данного типа
памяти (столбец Total), размер использованной памяти (столбец Used) и размер сво-
бодной, то есть незанятой памяти данного типа (столбец Free). Ниже в строке Total
memory данные сведения приводятся для всех видов памяти в сумме, а в строке Total
under I MB Ч суммарные данные для обычной и верхней памяти.
После этого программа МЕН приводит наибольший размер программы, который может
поместиться в обычную память, то есть размер наибольшего непрерывного блока
обычной памяти (строка Largest executable program size), и размер наибольшего не-
прерывного блока верхней памяти (строка Largest free upper memory block).
Если модули DOS загружены в первые 64 Кбайта расширенной памяти (НМА) с по-
мощью команды файла CONFIG.SYS DOS=HIGH), то в конце выдачи сообщается об этом:
MS-DOS is resident in the high memory area (MS DOS находится в НМА). Если драй-
вер расширенной памяти запущен, и первые 64 Кбайта расширенной памяти свободны,
то выдается другое сообщение: The high memory area is available (НМА свободна).
Если драйвер EMM386 эмулирует EMS-память, то после надписи Extended (XMS)
будет выведена звездочка Ч символ примечания. А само примечание будет приведено
чуть ниже:
EMM386 Is using XMS memory to simulate EMS memory as needed.
Free EMS memory may change as free XMS memory changes.
(EMM386 использует расширенную память для имитации EMS-памяти
при наличии потребности в ней. Размер свободной EMS-памяти может изменяться
при изменении количества свободной расширенной памяти).
А еще до этого в выдаче будут сообщены общий размер EMS-памяти (Total Expanded)
и размер свободной EMS-памяти (Free Expanded)'.
Total Expanded (EMS)
Free Expanded (EMS)*
32 064 (32 833 536 bytes)
31 376 (32 129 024 bytes)
" ) Г Х/1"," 11'
1-1(^101If Х.iUII^ХH Hi.'
/ 1НМЯ 1И ! lpOl /.)- 'MM:МИ
Чтобы узнать, какие программы и драйверы находятся в памяти и сколько памяти они
занимают, введите команду MEM /С /Р . Здесь режим /С указывает желаемый тип
выдачи, а режим /Р заставит программу Mem делать паузы при заполнении экрана
(для продолжения выдачи надо будет нажать любую алфавитно-цифровую клавишу).
Вот фрагмент выдачи программы Mem в этом режиме (для экономии места часть строк
заменена строкой с многоточием):