DOS кеңейткіші: Қорғалған режимде жұмыс істеу мүмкіндігі
DOS extender
DOS кеңейткіші: DOS жүйесінде қорғалған режимде бағдарлама іске қосуға мүмкіндік беретін бағдарлама. 80286/80386 процессорларымен үйлесімді, жад шектеулерін жеңілдетеді.
Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Компьютерлік бағдарламаның түрі
Type of computer software program
DOS-шығыстырғышы – DOS жүйесінде іске қосылатын компьютерлік бағдарлама, ол хост операциялық жүйе тек нақты режимде жұмыс істей алса да, бағдарламалық құралдарды қорғалған режимде жұмыс істеуге мүмкіндік береді. DOS-шығыстырғыштары алғаш рет 1980-ші жылдары Intel 80286 процессорының (кейін Intel 80386 процессорымен толықтырылды) енгізілуінен кейін DOS-тың жад шектеулерімен күресу үшін жасалған.
A DOS extender is a computer software program running under DOS that enables software to run in a protected mode environment even though the host operating system is only capable of operating in real mode. DOS extenders were initially developed in the 1980s following the introduction of the Intel 80286 processor (and later expanded upon with the Intel 80386), to cope with the memory limitations of DOS.
DOS кеңейту операциясы
DOS extender – DOS-ты “кеңейтетін” бағдарлама, соның арқасында қорғалған режимде жұмыс істейтін бағдарламалар DOS API-мен тікелей байланыса алады. Бұл қажеттілік туындады, себебі DOS-тың көптеген функцияларына 16 биттік сегмент және офсет адрестері қажет, олар жадтың алғашқы 640 килобайтындағы жад орындарына сілтеме жасайды. Бірақ, қорғалған режим үйлесімсіз адрестеу әдісін қолданады, онда сегмент тізілімдері (қазір таңдауыштар деп аталады) жаһандық сипаттама кестесіндегі жазбаға сілтеме жасайды, ол сегменттің сипаттамаларын көрсетеді. Бұл екі адрестеу әдісі бір-бірінсіз болып табылады, процессор қорғалмаған режимдегі сұраныстарды орындау үшін қымбатқа түсетін ауысуларды нақты (немесе V86) режимге жасауы тиіс. Қоршаған ортаны құрудан және орындалатын бағдарламаны жүктеуден басқа, DOS extender 1 МБ нақты режимдік жад шегінен төмен сақталатын буферлерді ұстап тұратын аударма қабатын да қамтамасыз етеді (басқа да мүмкіндіктермен бірге). Бұл буферлер деректерді негізгі операциялық жүйе мен қорғалған режимдегі бағдарлама арасында алмасу үшін қолданылады. Нақты/V86 режим мен қорғалған режим арасындағы ауысу салыстырмалы түрде көп уақыт алатын операция болғандықтан, extender өзінің қорғалған режимдік ортасында көптеген нақты режимдік операциялардың функционалдығын көшіру арқылы ауысулар санын азайтуға тырысады. DOS операциялық жүйе мен пайдаланушы деңгейіндегі бағдарламалық қамтамасыз ету арасындағы байланыс үшін үзілістерді кеңінен пайдаланатындықтан, DOS extender көптеген жалпы аппараттық (мысалы, нақты уақыт сағаты және пернетақта контроллері) және бағдарламалық (мысалы, өзі DOS және тышқан API) үзілістерін ұстап алады. Кейбір extender басқа да жалпы үзіліс функцияларын, мысалы бейне BIOS процедураларын да басқарады. Негізінен, DOS extender – бұл кішкентай операциялық жүйе, ол негізгі операциялық жүйенің көптеген функцияларын өзі атқарады.
A DOS extender is a program that "extends" DOS so that programs running in protected mode can transparently interface with the underlying DOS API. This was necessary because many of the functions provided by DOS require 16 bit segment and offset addresses pointing to memory locations within the first 640 kilobytes of memory. Protected mode, however, uses an incompatible addressing method where the segment registers (now called selectors) are used to point to an entry in the Global Descriptor Table which describes the characteristics of the segment. The two methods of addressing are mutually exclusive, with the processor having to make costly switches to real (or V86) mode to service non protected mode requests. In addition to setting up the environment and loading the actual program to be executed, the DOS extender also provides (amongst other things) a translation layer that maintains buffers allocated below the 1 MB real mode memory barrier. These buffers are used to transfer data between the underlying real mode operating system and the protected mode program. Since switching between real/V86 mode and protected mode is a relatively time consuming operation, the extender attempts to minimize the number of switches by duplicating the functionality of many real mode operations within its own protected mode environment. As DOS uses interrupts extensively for communication between the operating system and user level software, DOS extenders intercept many of the common hardware (e. g. the real time clock and keyboard controller) and software (e. g. DOS itself and the mouse API) interrupts. Some extenders also handle other common interrupt functions, such as video BIOS routines. Essentially, a DOS extender is like a miniature operating system, handling much of the functionality of the underlying operating system itself.
Даму тарихы
DOS кеңейтушісін Phar Lap ойлап тапқан деуге болады, бірақ Tenberry Software (бұрынғы Rational Systems) компаниясының 386 DOS/4GW кеңейтушісі қорғалған режимдегі DOS бағдарламаларын жаппай нарыққа шығарды. 386 класты процессорларға арналған Watcom-ның C, C++ және Fortran компиляторларымен бірге келген ол, көп ұзамай id Software-дің сәтті Doom сияқты PC қолданбалары мен ойындарының кең таралған құралына айналды. DOS кеңейтушілерін жасауға бастапқыда көп жадты қажет ететін бизнес-қосымшалар түрткіс болса, оларды назарға алған – ПК ойындары болды. DOS кеңейтушілерін дамыту нәтижесінде, жадты басқарудың әртүрлі әдістерінен туындауы мүмкін қақтығыстарды шешу және клиенттік бағдарламалар үшін бірыңғай интерфейс жасау мақсатында екі жаңа бағдарламалық интерфейс құрылды. Осы интерфейстердің біріншісі – Виртуалды Бақылау Бағдарламасының Интерфейсі (VCPI), бірақ ол Windows 3.0 әзірлемесінен пайда болған DOS қорғалған режимі Интерфейсі (DPMI) спецификациясымен тез арада ығыстырылды. Олар кеңейтілген бағдарламаға нақты режимдегі бағдарламалық жасақтамамен байланысуға, жадты бөлуге және үзіліс қызметтерін басқаруға мүмкіндік беретін API ұсынды. Сонымен қатар, кеңейтушіге қорғалған режимге ауысуды жеңілдетіп, бірнеше қорғалған режимдегі бағдарламалардың қатар өмір сүруін қамтамасыз етті.
The DOS extender was arguably invented by Phar Lap, but it was Tenberry Software's (formerly Rational Systems) 386 extender DOS/4GW that brought protected mode DOS programs to a mass market. Included with Watcom's C, C++, and Fortran compilers for 386 class processors, it soon became a ubiquitous mainstay of PC applications and games such as id Software's successful Doom. While initially it was the memory hungry business applications that drove the development of DOS extenders, it would be PC games that truly brought them into the spotlight. As a result of the development of DOS extenders, two new software interfaces were created to take care of the many potential conflicts that could arise from the varied methods of memory management that already existed, as well as provide a uniform interface for client programs. The first of these interfaces was the Virtual Control Program Interface (VCPI), but this was rapidly overshadowed by the DOS Protected Mode Interface (DPMI) specification, which grew from the Windows 3.0 development. They provided an API through which an extended program could interface with real mode software, allocate memory, and handle interrupt services. They also provided an easy method for the extender to set up the switch to protected mode, and allowed multiple protected mode programs to coexist peacefully.