Главная · Поиск книг · Поступления книг · Top 40 · Форумы · Ссылки · Читатели

Настройка текста
Перенос строк


    Прохождения игр    
Demon's Souls |#13| Storm King
Demon's Souls |#12| Old Monk & Old Hero
Demon's Souls |#11| Мaneater part 2
Demon's Souls |#10| Мaneater (part 1)

Другие игры...


liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня
Rambler's Top100
Образование - Различные авторы Весь текст 2311.07 Kb

Программирование и кодирование

Предыдущая страница Следующая страница
1 ... 104 105 106 107 108 109 110  111 112 113 114 115 116 117 ... 198
         в новое поколение плат спецификации расширенной  памяти,  -  мно-
         жество  наборов регистров отображения.  Этим будет обеспечиваться
         практически мгновенное переключение контекста между двумя или бо-
         лее  задачами путем назначения разных наборов регистров отображе-
         ния для каждого контекста.  Еще одно средство, именуемое  "наборы
         регистров  ПДП", позволит многозадачным операционным системам пе-
         реключать задачи,  пока другая задача ожидает завершения передачи
         по ПДП. Поддержка многих наборов регистров отображения и одновре-
         менных передач ПДП включена в девять подфункций функции 28   "Из-
         менить набор регистров отображения".
              Программное обеспечение операционных сред  может определять,
         какие новые возможности аппаратуры поддерживаются данным менедже-
         ром расширенной памяти,  путем выдачи функции 26 "Получить инфор-
         мацию об аппаратуре расширенной памяти". Она возвращает количест-
         во  альтернативных   наборов   регистров   отображения,   наборов
         регистров  ПДП и индикатор способности аппаратуры расширенной па-
         мяти обнаруживать,  когда выполняется ПДП.  Также она  возвращает
         размер  исходных  страниц,  поддерживаемый менеджером расширенной
         памяти.
              Аппаратура, содержащая в себе эти средства,  только начинает
         появляться на рынке.  Чтобы позволить выполнять разработку много-
         задачного программного обеспечения до того, как аппаратура нового
         поколения станет легко доступной,  в спецификации расширенной па-
         мяти LIM 4.0 обеспечена программная имитация альтернативных набо-
         ров регистров отображения путем сохранения и  восстановления  об-
         ластей сохранения контекста, которая обеспечивается многозадачным
         монитором и находится внутри него.

                                      - 7-46 -
                               Неразрушаемая память

              Две функции,  добавленные в спецификации расширенной  памяти
         LIM 4.0, поддерживают сохранение расширенной памяти в течение пе-
         резапуска из памяти.  Программное обеспечение, которое отображает
         память  в  отображаемую  обычную память (память ниже 640К) должно
         перехватывать все условия,  ведущие к перезапуску из памяти (пре-
         рывание 19h BIOS), и выдавать функцию 29  "Подготовить аппаратуру
         расширенной памяти для перезапуска из памяти".  Платы расширенной
         памяти  с соответствующим оборудованием смогут сохранить содержи-
         мое отображаемой обычной памяти,  так же как и  текущий  контекст
         отображения на время перезапуска из памяти. Менеджеры расширенной
         памяти для существующих плат не реализуют данную опцию, поскольку
         платы зависят от схемы регенерации системной памяти, которая бло-
         кируется на время перезапуска из памяти.
              Функция 19  "Получить/установить  атрибут обработчика"  поз-
         воляет приложению определить,  поддерживает ли менеджер расширен-
         ной памяти возможность сохранения содержимого страниц обработчика
         в течение перезапуска из памяти. Если да, приложение может запро-
         сить,  чтобы  менеджер  расширенной  памяти или сохранил страницы
         указанного обработчика на время перезапуска из памяти путем уста-
         новки атрибута обработчика на неразрушаемость, или разрешил   ме-
         неджеру расширенной памяти освободить обработчик и  сбросить  со-
         держимое   связанных  страниц  во  время  перезапуска  из  памяти
         (разрушаемый обработчик). По умолчанию у всех обработчиков внача-
         ле атрибут установлен на разрушаемость.

                                Управление доступом

              Важной особенностью набора функций операционных сред являет-
         ся то,  что многозадачный менеджер может запретить доступ к функ-
         циям менеджера расширенной памяти,  ориентированным на операцион-
         ную систему,  для любой программы, кроме самого себя. Функция  30
         "Разрешить/запретить  набор функций операционных сред"  позволяет
         многозадачному менеджеру блокировать функции 26,  28 и  30  перед
         тем,  как он передаст управление прикладному программному обеспе-
         чению и разблокировать доступ для собственных нужд.

                                Заключение

              Для многих типов приложений  расширенная  память  предлагает
         практическое программное решение для 640-Кбайтного ограничения PC
         DOS.  Наиболее современным определением  программного  интерфейса
         между  приложением и механизмом управления памяти,  переключаемой
         банками,  является спецификация расширенной памяти LIM 4.0.  Этот
         программный интерфейс реализует менеджер расширенной памяти,  ко-
         торый обычно загружается как драйвер символьного  устройства  DOS
         во  время загрузки.  Системы расширенной памяти могут строиться с
         помощью сложного оборудования  спецификации  расширенной  памяти,
         механизма страниц процессора 80386 Intel или регистрами отображе-
         ния на некоторых типах плат расширения памяти  PS/2  или  системы
         расширенной памяти могут быть чисто программными.
              Приложения выдают запросы функций для  менеджера расширенной
         памяти через механизм программного прерывания 67h,  сходным обра-
         зом с интерфейсом прерывания 21h DOS.  Параметры передаются через
         регистры и/или структуры данных,  резидентные в памяти, механизм,
         наиболее естественный для программистов на языке ассемблера. При-

                                      - 7-47 -
         ложения,  написанные на языках высокого уровня, также могут обра-
         щаться к расширенной памяти,  если эти языки обеспечивают способы
         выдачи  программных прерываний,  обработки регистров процессора и
         определяют удаленные указатели для кодовых объектов и данных.
              Спецификация расширенной  памяти LIM 3.2 определяет 8-Мбайт-
         ное расширенное адресное пространство,  разбитое  на  16-Кбайтные
         страницы. До 64К из этого пространства может быть доступно однов-
         ременно через 64-Кбайтный кадр страниц,  размещенный в пространс-
         тве памяти над 640К. Также определяется набор из 14 функций отно-
         сительно низкого уровня,  которые могут применяться для доступа и
         обработки кодовых объектов и данных в расширенной памяти.  Эти 14
         функций могут быть разделены на три группы:  информационные,  уп-
         равления данными и управления контекстом.
              Спецификация расширенной памяти LIM 4.0 -  дополнение,  сов-
         местимое вверх,  спецификации 3.2,  которое сейчас включается как
         часть в MS-DOS версии 4.0.  Она содержит несколько средств,  при-
         сутствующих в усовершенствованной спецификации расширенной памяти
         AQA,  включая кадр страниц,  больший 64К, и способность поддержи-
         вать  отображаемую  память  ниже 640К.  Она также добавляет класс
         функций,  разработанных, чтобы непосредственно поддерживать быст-
         рое переключение задач многозадачными операционными средами. Спе-
         цификация 4.0 увеличивает адресное пространство расширенной памя-
         ти  до 32 Мбайт и предлагает набор функций более высокого уровня,
         чем те, которые были возможны в спецификации 3.2.
              Пользоваться расширенной  памятью  могут  как нерезидентные,
         так и резидентные приложения. Резидентные приложения должны поль-
         зоваться функциями управления контекстом для сохранения и восста-
         новления контекста менеджера расширенной памяти,  так  как  такие
         программы должны сохранять состояние процессора при входе и  вос-
         станавливать это состояние при выходе.
              Функции поддержки операционной системы спецификации 4.0 спо-
         собны пользоваться преимуществами  усовершенствованных аппаратных
         средств,  которые могут появиться в новых разработках расширенной
         памяти. Одним из таких средств является множество наборов отобра-
         жения страниц, которое позволяет многозадачной операционной среде
         почти мгновенно переключать контекст путем назначения набора  ре-
         гистров  отображения задаче.  Другое средство - неразрушаемая па-
         мять - позволит содержимому  расширенной  памяти  сохраняться  во
         время  перезапуска  из памяти.  Платы,  обеспечивающие аппаратную
         поддержку для этих функций, только теперь появляются в продаже.

                                    Литература

              Duncan, Ray.  "Lotus/Intel/Microsoft Expanded Memory",  Byte,
         11, no.11, 1986 (Специальное издание IBM).
              Как писать программы с помощью спецификации расширенной  па-
         мяти LIM 3.2.  Даны примеры - части программы RAMDISK,  в которой
         используется расширенная память.

              Hansen, Marion,  and  John  Driscoll.  "LIM   EMS   4.0:   A
         definition for the Next Generation of Expanded Memory", MSJ3, no.
         1, Jan.88.
              Описание средств, введенных в спецификации расширенной памя-
         ти LIM 4.0. Примеры программ на Си и языке ассемблера  показывают
         улучшенные методы для сохранения экрана,  разделения данных между
         программами и выполнения кода из расширенной памяти.


                                      - 7-48 -
              Hansen, Marion,  Bill Krueger,  and Nick Stueklen. "Expanded
         Memory:  Writing  Programs  That  Break the 640K Barrier",  MSJ2,
         no.1, Mar.87.
              Описание спецификации  расширенной  памяти LIM 3.2.  Примеры
         программ на С и языке ассемблера показывают, как выполнять сохра-
         нение экрана и исполнять код из расширенной памяти.

              Lefor, John  A.,  and  Karen  Lund.  "Reaching into Expanded
         Memory", PCTJ5, no.5, May 86.
              Рассмотрение спецификации  расширенной памяти LIM 3.2 и усо-
         вершенствованной спецификации расширенной памяти AQA,  ориентиро-
         ванное на приложения. Примеры законченных программ, которые полу-
         чают параметры  расширенной  памяти  и  распечатывают  данные  из
         расширенной памяти.

              Lotus/Intel/Microsoft. "Lotus/Intel/Microsoft       Expanded
         Memory Specification,  Version 4.0",  Document number  300275-05,
         Oct 87.
              Полная спецификация самой последней версии спецификации рас-
         ширенной  памяти.  Включает  примеры  программ на Турбо-Паскале и
         языке ассемблера.

              Mirecki, Ted.  "Expandable Memory", PCTJ4 no.2, Feb 86.
              Описание спецификации  расширенной  памяти LIM 3.2 и усовер-
         шенствованной спецификации расширенной памяти AQA.  Тесты изделий
         расширенной памяти фирм Intel и AST.

              Yao, Paul.  "EMS  Support  Improves  Microsoft  Windows  2.0
         Application Performance", MSJ3, no.1, Jan 88.
              Техническое рассмотрение  способа,  в  котором  в  программе
         Windows 2.0 используется спецификация расширенной памяти  LIM 4.0
         для поддержания многих параллельно работающих приложений.



                                      - 7-49 -

             Программы сопряжения на низком уровне и пример приложения

              Если данная глава выполнила свое назначение, то у Вас должно
         быть хорошее представление того, как работает расширенная память,
         и  как  программы DOS могут использовать мегабайты дополнительной
         памяти для кодов и данных. Теперь мы поможем Вам применять потен-
Предыдущая страница Следующая страница
1 ... 104 105 106 107 108 109 110  111 112 113 114 115 116 117 ... 198
Ваша оценка:
Комментарий:
  Подпись:
(Чтобы комментарии всегда подписывались Вашим именем, можете зарегистрироваться в Клубе читателей)
  Сайт:
 

Реклама