Proč nemohou 64bitové operační systémy spouštět 16bitové aplikace?

Proč nemohou 64bitové operační systémy spouštět 16bitové aplikace?

Jakmile počítače začaly používat moderní 64bitovou architekturu, uživatelé si brzy uvědomili, že spouštění těchto starých 16bitových aplikací nebude fungovat. Proč nemohou 64bitové počítače spouštět 16bitové aplikace?





Odpověď na tuto otázku může být matoucí, podle toho, koho se zeptáte. Jednak není ve skutečnosti nemožné provozovat 16bitové aplikace. Je to prostě těžké. Za druhé, důvod této obtížnosti spočívá v architektuře CPU a operační systém.





Už jste zmatení? Nebojte se, nejste sami. Ale až se dostanete na konec tohoto článku, už nebudete zmatení.





Historie architektury CPU

Vím, poslední věc, kterou si chceš přečíst, je lekce dějepisu, že? Nebojte se, toto je krátké. Je také důležité pochopit, proč 64bitové systémy nemohou nativně spouštět 16bitové aplikace.

Pokud jste prožili 80. a 90. léta, pak si pravděpodobně pamatujete ty staré 16bitové dinosaury, o kterých všichni v té době věřili, že jsou špičkovou technologií.



V té době to bylo. Ty staré stroje běžely Intel 8086 procesor v roce 1978. Procesoru se podařilo získat přístup k adresnímu prostoru o velikosti 1 Mb pomocí 16bitového adresování. Vzhledem k tomu, že dřívějším strojům docházelo 64 kB paměti, byl to obrovský pokrok a znamenal začátek nové éry v oblasti osobních počítačů.

V tomto režimu (tzv Skutečný režim ), část byla vyhrazena pro RAM a zbytek využil BIOS a počítačový hardware jako grafická karta.





O něco později přišel další pokrok v architektuře CPU s procesorem 80286, schopným adresovat 16 Mb pomocí 16bitového adresování. S architekturou 286 přišel „chráněný režim“ s funkcemi, které umožňovaly nejen adresování větší paměti, ale také multitasking. Spouštění starších 16bitových aplikací v „reálném režimu“ nebylo vždy snadné, ale možné to bylo.

Konec 16bitových, tak nějak ...

V roce 1985 Intel představil procesor nové generace: Intel 386. Jednalo se o první procesor Intel, který dokázal adresovat paměť pomocí 32 bitů najednou a měl přístup k neuvěřitelným 4 Gb adresovatelné paměti. V té době to uživatelům počítačů připadalo jako zásadní průlom. Hry na PC se chystaly vstoupit do svého rozkvětu.





Spolu s příchodem 32bitové architektury přišla i rozšířená verze Chráněný režim to nejenže umožňovalo přístup k větší paměti, ale obsahovalo to sadu funkcí, kde software mohl do systému nahlásit, ať už to byl 16bitový nebo 32bitový kód. To bylo možné díky tomu, co je známé jako Režim Virtual 86 , což byl v podstatě vestavěný virtualizovaný systém 8086.

Jak vidíte, od jedné evoluce architektury CPU k druhé, jak hardware (programování CPU), tak software (operační systémy a aplikace), si zachovaly zpětnou kompatibilitu pro všechny ty uživatele, kteří stále měli velmi starý software, který chtěli běh. Pro jednotlivé uživatele počítačů to bylo užitečné, ale pro mnoho korporací a malých podniků to bylo zásadní pro starší systémy.

64bitová architektura zničila všechno

Limit 4 GB adresovatelné paměti zůstal po mnoho let berličkou pro 32bitové systémy. S vynálezem 64bitových procesorů však přišel další průlom. Tyto systémy obsahovaly nový režim (známý jako Dlouhý režim ) schopné adresovat až 16 milionů terabajtů paměti. Pravděpodobně bude dlouho trvat, než se to stane limitujícím faktorem pro počítačové aplikace.

S tímto ohromným pokrokem však přišel významný kompromis. Když se uživatelé pokusili spustit 16bitové aplikace, které vyžadovaly dlouhodobě podporovaný „skutečný režim“ nebo „virtuální režim 8086“, objevila se chybová zpráva „Program.exe není platná aplikace Win32“.

Bylo to frustrující, ale nebyl to konec světa. Uživatelé mohl použít emulátory nebo nainstalovat virtuální stroje běžící 32bitovou architekturou a operační systémy schopné podporovat starší 16bitové aplikace.

Takže i když je pro 64bitové systémy 'nemožné' provozovat 16bitové aplikace MS-DOS, není nemožné, aby to uživatelé dělali pomocí řešení. Ale proč se to stalo?

64bitová architektura Odebere NTVDM

V každé generaci 32bitového procesoru bylo v průběhu let vynaloženo velké úsilí, aby systém zvládl starší 16bitové aplikace DOS. Toho bylo dosaženo pomocí takzvaného NTVDM nebo NT Virtual DOS Machine.

Tato 32bitová aplikace běžela v operačním systému Windows a simulovala architekturu 486, která zvládá 16bitové adresování pomocí virtuálního 8086. Bohužel, adresování v „dlouhém režimu“ to nemohlo bezpečně zajistit. Místo toho by to vyžadovalo emulaci plného procesoru 8086 jednoduše pro podporu běžících aplikací DOS.

Microsoft se zjevně rozhodl tuto snahu vyřadit, aby podpořil rychlé vydání svého prvního 64bitového operačního systému. Na stránce podpory společnost Microsoft jasně uvádí, že '16bitové nástroje MS-DOS a Microsoft Windows 3.x se nespustí.'

Žádné omluvy. Prostě to není podporováno.

Vzhledem k nepřebernému množství virtualizačních produktů na trhu, které jsou toho schopny dosáhnout, společnost Microsoft zjevně necítila, že by bylo v jejím nejlepším zájmu znovu objevit kolo.

Jak spustit 16bitové aplikace na 64bitových systémech

Jen proto, že běh 16bitových aplikací DOS není v 64bitových systémech Windows nativně podporován, neznamená to, že je to nemožné. K nastavení věcí stačí nainstalovat nějaké další nástroje.

Pokud tě to baví klasické hry pro DOS nebo použijte jiné retro aplikace ze starých dobrých časů výpočetní techniky, možnosti jsou. Zde jsou čtyři způsoby, jak je můžete spustit na novém počítači se systémem Windows.

1. Hrajte retro hry s DOSBoxem

Jedním z nejjednodušších způsobů, jak na počítači spustit staré aplikace DOS, je použití emulátoru. Jedním z nejpopulárnějších z nich je DOSBox .

jak rozebrat xbox one

Christian podrobně popsal, jak nainstalovat a konfigurovat DOSBox spustit staré retro hry na vašem počítači se systémem Windows.

Skvělé na tom je, že většina těchto her je tak stará, že jsou považováni za opuštěný software , takže si je můžete legálně stáhnout a hrát zdarma.

2. Spusťte aplikace uvnitř VirtualBoxu

Protože operační systémy jako Windows XP a Windows 7 mohly spouštět 16bitové aplikace nativně, můžete na 64bitovém systému spouštět stejné aplikace vytvořením virtuálního počítače s jedním z těchto operačních systémů.

Jednou z nejznámějších a snadno nastavitelných aplikací je VirtualBox . Máme k dispozici kompletní průvodce jak nastavit a používat VirtualBox , takže s tímto přístupem můžete začít hned teď.

Jen si vyberte správný operační systém, který chcete nainstalovat. Držte se systému Windows 7 nebo staršího a můžete si do svého virtuálního systému rychle stáhnout a nainstalovat staré aplikace pro DOS.

3. Použijte Linux

Říkejte si, co chcete o Linuxu, jedna věc, kterou má většina distribucí Linuxu správně, je podpora 16bitových aplikací. Distribuce s PAE kernal, nejste omezeni na 4 GB 32bitových systémů, takže spuštění správného distra Linuxu jako dual-boot ve vašem systému je další možností.

K tomu slouží dvě možnosti: řešení s dvojitým spuštěním nebo virtuální počítač. Nebo můžete Windows úplně vypustit a jít s Linuxem . Cokoli pro vás funguje.

4. Použijte emulátory

DOSBox není jediným emulátorem, který je k dispozici pro provozování starých aplikací DOS. Existuje spousta skvělých emulátorů, které fungují stejně dobře. To platí zejména v případě, že jste hráč.

Christian popsal, jak emulovat a Přítel Commodore , do Raspberry Pi , an Android , a dokonce klasické SNES na jakémkoli PC.

To je jen špička ledovce. Pokud budete hledat online, najdete tam celou knihovnu různých emulátorů, které vám umožní spustit téměř jakoukoli retro aplikaci, kterou si dokážete představit. Společnost Microsoft se možná vzdala starých 16bitových aplikací z minulosti, ale stále máte možnosti.

Nevzdávejte to v 16bitové verzi

Neexistuje žádný důvod, proč byste si to měli myslet nemožné ke spuštění 16bitových aplikací na 64bitovém počítači. Nativně to může být nemožné, ale jak vidíte, existuje spousta řešení, jak úkol splnit.

Podíl Podíl tweet E-mailem 12 video stránek, které jsou lepší než YouTube

Zde je několik alternativních video serverů k YouTube. Každý zaujímá jiný výklenek, ale stojí za to přidat do vašich záložek.

Číst dále
Související témata
  • Hraní
  • Technologie vysvětlena
  • Emulace
  • Windows 10
  • 64bitové
O autorovi Ryan Dube(942 publikovaných článků)

Ryan má bakalářský titul z elektrotechniky. Pracoval 13 let v automatizačním inženýrství, 5 let v IT a nyní je Apps Engineer. Bývalý vedoucí redaktor MakeUseOf hovořil na národních konferencích o vizualizaci dat a vystupoval v národní televizi a rozhlase.

Více od Ryana Dubeho

Přihlaste se k odběru našeho zpravodaje

Připojte se k našemu zpravodaji a získejte technické tipy, recenze, bezplatné elektronické knihy a exkluzivní nabídky!

Kliknutím sem se přihlásíte k odběru