Extended Memory Specification
XMS (ang. Extended Memory Specification) – specyfikacja dostępu do pamięci rozszerzonej (ang. extended memory, znajdującej się powyżej 1 MB) w programach pracujących w systemie operacyjnym DOS na komputerach wyposażonych w procesor 80286 lub wyższy. XMS definiował również dostęp do pamięci HMA, w tym umożliwiał sterowanie linią adresową A20 - więcej na ten temat w artykule Tryb rzeczywisty.
Aby program mógł wykorzystywać pamięć rozszerzoną wymagana jest obecność sterownika, który będzie realizował żądania programu (np. przydział bloku pamięci, zwolnienie bloku pamięci itp.). Dostęp do funkcji sterownika jest możliwy przez przerwanie programowe o numerze 2Fh. Z systemem MS-DOS, począwszy od wersji 4.00, dostarczany był standardowo sterownik o nazwie HIMEM.SYS, który był ładowany do pamięci poprzez wpis w pliku systemowym CONFIG.SYS. Wiele programów napisanych dla systemu MS-DOS korzystało ze sterownika pamięci rozszerzonej, były to m.in. programy użytkowe, gry, a nawet systemy operacyjne Microsoft Windows w wersjach 2.1 - Me. Te ostatnie przydzielały sobie całą dostępna pamięć rozszerzoną, by same nią zarządzać i alokować dla procesów uruchamianych w tychże środowiskach graficznych.
Wersja druga tej specyfikacji została przedstawiona w roku 1988 przez grupę firm: Microsoft, Lotus, Intel oraz AST Research. Wersja trzecia specyfikacji została opublikowana w roku 1991. Głównymi zmianami było dodanie funkcji obsługujących 32-bitową przestrzeń adresową procesora 80386, gdyż wcześniej można było zaadresować jedynie 64 MB pamięci rozszerzonej.
Specyfikacja XMS miała za zadanie, podobnie jak specyfikacja EMS, udostępnić więcej pamięci dla programów uruchamianych w systemie DOS. Przy czym w systemach z procesorem 80386 i nowszych można było emulować pamięć EMS w pamięci XMS wykorzystując do tego celu sterownik EMM386.EXE. Istnieją jednak pewne różnice w zarządzaniu pamięcią XMS przez sterowniki HIMEM.SYS i EMM386.EXE. Do najważniejszych z nich należą możliwości, przez pierwszy z wymienionych sterowników, alokowania bloków pamięci o różnych rozmiarach, kopiowania bloków między pamięcią konwencjonalną (od prawie dowolnego adresu) a rozszerzoną, zwalniania bloków pamięci i redefiniowania ich rozmiarów.
Zobacz też
Linki zewnętrzne
- Specyfikacja XMS v3.0 (ang.) (ostatni dostęp 20.09.2008)
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.