This article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.ComputingWikipedia:WikiProject ComputingTemplate:WikiProject ComputingComputing
This article is within the scope of WikiProject Microsoft Windows, a collaborative effort to improve the coverage of Microsoft Windows on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.Microsoft WindowsWikipedia:WikiProject Microsoft WindowsTemplate:WikiProject Microsoft WindowsMicrosoft Windows
This article is based on material taken from the Free On-line Dictionary of Computing prior to 1 November 2008 and incorporated under the "relicensing" terms of the GFDL, version 1.3 or later.
Слияние
Согласен с предложением по объединению страниц. Timharwoodx 21:38, 26 октября 2006 (UTC) [ ответить ]
Доступ
«Расширенная память доступна в реальном режиме только через EMS, UMB, XMS или HMA»
Во-первых, UMB не имеют ничего общего с расширенной памятью. Во-вторых, на самом деле не объясняется, как эти аббревиатуры позволяют расширенной памяти существовать в реальном режиме, хотя, ну, расширенная память не существует в реальном режиме. - Джош ( обсуждение | вклад ) 05:36, 28 февраля 2008 (UTC) [ ответ ]
Никто не удосужился объяснить, для чего это нужно и как это работает, что лишь указывает на то, как мало реальное использование преобразуется в практические знания:
1. UMB — это блоки памяти размером более 640 КБ для процессоров 8088 и 8086, до 1 МБ, при использовании DOS 5.0 и выше.
2. UMB — это блоки памяти свыше 640 КБ для процессоров 80286 и 80386, до 1 МБ при использовании DOS 5.0 и выше.
включая крошечную область размером 64k-16bytes в конце адресного пространства 1MB, которая обычно отображается в расширенную память, но из-за ошибки в процессоре 286, которая должна была быть реализована в реальном режиме процессора 80386, отображала бы крошечную часть расширенной памяти в память реального режима, которая могла бы использоваться для программ, имеющих драйвер XMS (защищенный переключатель режима для доступа к памяти), чтобы либо предоставить приложению DOS более 1MB памяти (1Mb + 63bytes), либо... позволить приложению DOS реального режима, работающему в реальном режиме, использовать UMBs, чтобы преобразовать память расширенного режима в память расширенного режима. (Да, у вас должна болеть голова, потому что голова болит у всех).
3. Расширенная память не является памятью реального режима, за исключением первых 63 Кбайт.
Расширенная память — это память на процессоре 286 или 386, которая превышает 1 МБ, которая обычно не может использоваться DOS в реальном режиме (режим 8086), если только не присутствовал драйвер и неизвестная ошибка процессора 286, которая использовалась программным обеспечением для отображения первых 63 Кбайт расширенной памяти в реальный режим. Процессор 386 был разработан с учетом ошибки, присутствующей в защищенном модеме 286 для совместимости программного обеспечения.
4. EMS — это и расширенная память (память на карте расширения), которая может быть заменена на блоки верхней памяти, не используемые картами расширения, в реальном режиме для увеличения объема памяти, доступной программам, которым требуется больше, чем память реального режима, оставшаяся после загрузки операционной системы (DOS) и приложения (обычно Lotus 1-2-3 Rel 2, затем Dbase III+ и AutoCAD): таким образом, доступная память увеличивается с 260 КБ до 260 КБ/реальная и 2000 КБ/расширенная. (Журнал BYTE, PC Tech ref и computer world подробно освещали эту тему).
5. XMS — это спецификация расширенной памяти и драйвер, который позволял программам Real Mode DOS и EMS использовать расширенную память в качестве расширенной памяти в защищенном режиме на 286 в защищенном режиме 286, а на 386 использовать 32-битный защищенный режим 386 для эмуляции защищенного режима 286 и 6-байтового блока памяти с оберткой 3 байта. Windows 2.0/286 использовали XMS, а Windows 2.0/386 были примерами этого: было только одно предостережение: если не было файла подкачки, то процессор 386 запускал DOS в реальном режиме Windows, если был файл подкачки, то процессор 386 запускал DOS в виртуальном режиме Windows (т. е. это приводило к гораздо меньшему сбою всей машины...) (запутались? да, оба приглашения DOS выглядели одинаково, но команда memory давала совершенно разные результаты, и эта прикладная программа вела себя по-разному.)
На 386, при включенном файле подкачки, DOS будет работать как хост для Windows, а Windows может размещать несколько сеансов Virtual DOS. (запутались? Это было так запутанно, что журналу PC Tech Magazine пришлось написать утилиту, чтобы сообщать, в каком режиме работает DOS. VIRT386.EXE)
6. HMA — это область свыше 1 МБ на IBM PC/AT или PS/2 50, которая составляет 65 КБ-16 байт:
https://en.wikipedia.org/wiki/High_memory_area
Теперь, когда все термины объяснены, я могу сформулировать утверждение:
«Расширенная память доступна в реальном режиме только через EMS, UMB, XMS или HMA»
Нет, расширенная память доступна в реальном режиме DOS только в DOS 5.0 и более поздних версиях, если в config.sys указано DOS=HIGH и вы работаете на процессоре 286 или 386.
UMB являются частью реальной памяти, а НЕ расширенной или расширенной памяти, если только EMM386 не превратил некоторые верхние блоки памяти в расширенное окно памяти, тогда UMB стали частью системы расширенной памяти, где расширенная память могла быть заменена реальной памятью.
Есть два исключения, которые являются крайне эзотерическими:
1. DOS 4.0M, который мог получить доступ к HMA уникальным способом, который мог использовать только DOSSHELL из DOS 4.0M. Никто, даже IBM TopView, который мог бы воспользоваться этим, не использовал его, но все программное обеспечение DOS могло использовать дополнительную память, которая была доступна.
2. Драйвер для DOS 3.21 на SPERRY/UNISYS 286 может предоставить DOS... это сломает вам мозг: с HMA, XMS, EMS и виртуальной памятью.
Подождите: Становится лучше, команда memory сообщила бы о большем количестве памяти, чем было установлено. Машина с 1 МБ сообщила бы о 1 МБ+63 КБ, и с той виртуальной памятью, которая была бы создана.