V praktickem dusledku mely Windows 3.0 stejnou ochranu pameti jako System 7, tj. zadnou. Poradna ochrana pameti se mezi lidi s Windows dostala az s WinXP (vetsina paranu, lidi co neco datlovali doma do wordu nebo proste vetsina lidi co si koupila pocitac nekde v obchode nic z rady NT nepouzivala, protoze tam byly problemy s kompatibilitou a Windows rady 9x taky zcela memory protection nevychytaly).
Myslite skok do protectu, nastaveni deskriptoru a (podle Intelu nemozny) navrat zpet do realu? Nojo, to byly casy, kdy mezi programem a CPU nebyl zadny OS :-)
Máte pravdu v tom, že se používal tento trik (řadič klávesnice na požádání provedl RESET CPU, v BIOSu se pak pomocí speciálního záznamu v CMOS se pak tento stav odlišil od skutečného resetování a program běžel dál, dik proběhlému resetu ovšem v reálném modu).
V CPU i386 se dalo toto (vypnutí chráněného režimu) udělat i pomocí speciální instrukce.
Ale pozor - dalo se to vypnout i na 286 bez nutnosti spolupráce vnějšího HW (jen čistě programově) a navíc byl tento způsob (údajně) asi 100x rychlejší než výše popisovaný postup s řadičem klávesnice.
Přesněji 1114096 B (1088 kiB), protože se dá povolit "přetečení" ve sčítačce adresy, takže po nastavení segmentového registru na 0xFFFF je poslední adresovatelná buňka na zdrese FFFF:FFFF, což je :
0xFFFF0 + 0xFFFF = 0x10FFEF
Těch 64 kiB navíc se pak využívalo v DOSu (nahrávalo se tám jádro OS) příkazem DOS=HIGH v config.sys.