De ce sistemele de operare pe 64 de biți nu pot rula aplicații pe 16 biți?

De ce sistemele de operare pe 64 de biți nu pot rula aplicații pe 16 biți?

Odată ce computerele au început să utilizeze arhitectura modernă pe 64 de biți, utilizatorii au realizat curând că rularea acelor aplicații vechi pe 16 biți nu va funcționa. De ce aparatele pe 64 de biți nu pot rula aplicații pe 16 biți?





Răspunsul la această întrebare poate fi confuz, în funcție de cine întrebați. În primul rând, nu este de fapt imposibil să rulezi aplicații pe 16 biți. E doar dificil. În al doilea rând, motivul acestei dificultăți rezidă atât în ​​arhitectura CPU și sistemul de operare.





Confuz încă? Nu-ți face griji, nu ești singur. Dar până ajungi la sfârșitul acestui articol, nu vei mai fi confuz.





Istoria arhitecturii CPU

Știu, ultimul lucru pe care vrei să-l citești este o lecție de istorie, nu? Nu vă faceți griji, acesta este unul scurt. De asemenea, este esențial pentru a înțelege de ce sistemele pe 64 de biți nu pot rula aplicații pe 16 biți în mod nativ.

Dacă ai trăit prin anii ’80 și ’90, atunci îți aduci aminte probabil de acei dinozauri vechi de 16 biți pe care toți cei de la acea vreme i-au crezut că sunt o tehnologie de sânge.



La acea vreme, a fost. Mașinile alea vechi conduceau Intel 8086 procesor în 1978. Procesorul a putut accesa un spațiu de adrese de 1Mb utilizând adresarea pe 16 biți. Cu mașinile anterioare care aveau 64 Kb de memorie, aceasta a fost o avansare extraordinară și a marcat începutul unei ere noi în calculul personal.

În acest mod (numit Mod real ), o parte a fost rezervată pentru RAM, iar restul a fost utilizat de BIOS și hardware-ul computerului, cum ar fi placa grafică.





Puțin mai târziu a venit o nouă avansare în arhitectura CPU cu procesorul 80286, capabil să adreseze 16Mb utilizând adresarea pe 16 biți. Odată cu arhitectura 286 a venit „Modul protejat”, cu funcții care nu numai că permiteau adresarea mai multor memorii, ci și multitasking. Rularea aplicațiilor mai vechi pe 16 biți în „mod real” nu a fost întotdeauna ușoară, dar a fost posibilă.

Sfârșitul celor 16 biți, un fel de ...

În 1985, Intel a introdus procesorul de nouă generație: Intel 386. Acesta a fost primul procesor Intel care putea adresa memoria utilizând 32 de biți la un moment dat și putea accesa o memorie enormă de 4 Gb. La acea vreme, acest lucru părea utilizatorilor de computere ca o descoperire majoră. Jocurile pe PC erau pe punctul de a intra în apogeul ei.





Odată cu apariția arhitecturii pe 32 de biți a apărut o versiune extinsă a Mod protejat asta nu numai că a permis accesul la mai multă memorie, dar a inclus un set de caracteristici în care software-ul putea semnaliza sistemul fie că este vorba de cod pe 16 biți sau pe 32 de biți. Acest lucru a fost posibil prin ceea ce este cunoscut sub numele de Modul virtual 86 , care era în esență un sistem încorporat virtualizat 8086.

După cum puteți vedea, de la o evoluție a arhitecturii CPU la următoarea, atât hardware-ul (programarea CPU), cât și software-ul (sisteme de operare și aplicații), au menținut compatibilitatea înapoi pentru toți acei utilizatori care încă aveau software foarte vechi pe care doreau să-l alerga. Pentru utilizatorii individuali de computere, acest lucru a fost util, dar pentru multe corporații și întreprinderi mici, a fost esențial pentru sistemele vechi.

Arhitectura pe 64 de biți a distrus totul

Limita de 4 GB de memorie adresabilă a rămas o cârjă pentru sistemele pe 32 de biți timp de mulți ani. Cu toate acestea, odată cu invenția procesorelor pe 64 de biți a venit o altă descoperire. Aceste sisteme includeau un nou mod (cunoscut sub numele de Mod lung ) capabil să adreseze până la 16 milioane de terabyți de memorie. Probabil va trece mult timp până când acest lucru va deveni un factor limitativ pentru aplicațiile de calculator.

Cu toate acestea, odată cu această avansare extraordinară a venit un compromis semnificativ. Atunci când utilizatorii au încercat să ruleze aplicații pe 16 biți care necesită „modul real” sau „modul virtual 8086” acceptat de mult, au descoperit un mesaj de eroare pe care scria „Program.exe nu este o aplicație Win32 validă”.

A fost frustrant, dar nu a fost sfârșitul lumii. Utilizatori ar putea folosi emulatoare sau instalați mașini virtuale care rulează arhitectură pe 32 de biți și sisteme de operare capabile să suporte aplicații vechi de 16 biți.

Deci, deși este „imposibil” pentru sistemele pe 64 de biți să ruleze aplicații MS-DOS pe 16 biți, nu este imposibil ca utilizatorii să o facă folosind o soluție. Dar de ce s-a întâmplat asta?

Arhitectura pe 64 de biți elimină NTVDM

În fiecare generație de procesor pe 32 de biți de-a lungul anilor, s-a depus mult efort în sistemul de operare pentru ca sistemul să gestioneze aplicații DOS mai vechi pe 16 biți. A fost realizat folosind ceea ce este cunoscut sub numele de NTVDM sau NT Virtual DOS Machine.

Această aplicație pe 32 de biți a funcționat în sistemul de operare Windows și a simulat o arhitectură 486 capabilă să gestioneze adresarea pe 16 biți utilizând virtualul 8086. Din păcate, adresarea „în mod lung” nu a putut acomoda acest lucru în siguranță. În schimb, ar fi trebuit să emulați un procesor 8086 complet pentru a sprijini rularea aplicațiilor DOS.

Microsoft a luat în mod clar o decizie de a renunța la acest efort pentru a sprijini lansarea promptă a primului său sistem de operare pe 64 de biți. Pe pagina sa de asistență, Microsoft afirmă clar că „utilitățile MS-DOS pe 16 biți și Microsoft Windows 3.x nu vor porni”.

Fără scuze. Pur și simplu nu este acceptat.

Având o mulțime de produse de virtualizare de pe piață capabile să realizeze acest lucru oricum, Microsoft nu a simțit în mod clar că este în interesul său să reinventeze roata.

Cum se execută aplicații pe 16 biți pe sisteme pe 64 de biți

Doar pentru că rularea aplicațiilor DOS pe 16 biți nu este acceptată nativ pe sistemele Windows pe 64 de biți, asta nu înseamnă că este imposibil. Trebuie doar să instalați câteva instrumente suplimentare pentru a configura lucrurile.

Dacă vă place jocuri clasice DOS sau utilizați orice alte aplicații retro din vremurile bune de calcul, există opțiuni. Iată patru moduri în care le puteți rula pe noua dvs. mașină Windows.

1. Joacă jocuri retro cu DOSBox

Una dintre cele mai simple modalități de a rula aplicații DOS vechi pe computerul dvs. este utilizarea unui emulator. Unul dintre cele mai populare dintre acestea este DOSBox .

cea mai bună aplicație TV live gratuită pentru Android

Christian a detaliat cum se instalează și se configurează DOSBox la rulați jocuri retro vechi pe computerul dvs. Windows.

Marele lucru despre acest lucru este că majoritatea acestor jocuri sunt atât de vechi încât sunt considerați abandonware , astfel încât să le puteți descărca și juca legal gratuit.

2. Rulați aplicații în VirtualBox

Deoarece sistemele de operare precum Windows XP și Windows 7 pot rula aplicații pe 16 biți în mod nativ, puteți rula aceleași aplicații pe sistemul dvs. pe 64 de biți construind o mașină virtuală cu unul dintre aceste sisteme de operare pe ea.

Una dintre cele mai cunoscute și ușor de configurat aplicații pentru aceasta este VirtualBox . Avem un ghid complet cum să configurați și să utilizați VirtualBox , astfel încât să puteți începe să utilizați această abordare chiar acum.

Asigurați-vă că alegeți sistemul de operare potrivit pentru instalare. Rămâneți cu Windows 7 sau o versiune anterioară și puteți descărca și instala aplicații vechi DOS pe sistemul dvs. virtual în cel mai scurt timp.

3. Folosiți Linux

Spuneți ce doriți despre Linux, un lucru pe care majoritatea distribuțiilor Linux îl au în vedere este suportul pentru aplicațiile pe 16 biți. Distracții cu kernal-ul PAE, nu sunteți limitat la 4 GB de sisteme pe 32 de biți, așa că rularea unei distribuții Linux adecvate ca boot dual pe sistemul dvs. este o altă opțiune.

Două opțiuni pentru a face acest lucru: o soluție dual-boot sau o mașină virtuală. Sau puteți descărca Windows în întregime și mergeți cu Linux . Orice funcționează pentru tine.

4. Folosiți emulatoare

DOSBox nu este singurul emulator disponibil pentru a rula aplicații DOS vechi. Există o mulțime de emulatori grozavi care funcționează la fel de bine. Acest lucru este valabil mai ales dacă sunteți un jucător.

Christian a acoperit cum să imite un Comodor Prieten , la Raspberry Pi , un Android , și chiar clasic SNES pe orice computer.

Acesta este doar vârful iceburgului. Dacă căutați online, veți găsi o întreagă bibliotecă de emulatori diferiți, care vă va permite să rulați aproape orice aplicație retro pe care o puteți imagina. Este posibil ca Microsoft să fi renunțat la aplicațiile vechi de 16 biți de pe vremuri, dar aveți în continuare opțiuni.

Nu renunțați pe 16 biți

Nu există niciun motiv pentru care să credeți că este imposibil pentru a rula aplicații pe 16 biți pe o mașină pe 64 de biți. Poate fi imposibil la nivel nativ, dar, după cum puteți vedea, există o mulțime de soluții pentru îndeplinirea sarcinii.

Acțiune Acțiune Tweet E-mail 12 site-uri video care sunt mai bune decât YouTube

Iată câteva site-uri video alternative la YouTube. Fiecare ocupă o nișă diferită, dar merită adăugate la marcajele dvs.

Citiți în continuare
Subiecte asemănătoare
  • Jocuri
  • Tehnologie explicată
  • Emulare
  • Windows 10
  • 64 de biți
Despre autor Ryan Dube(942 articole publicate)

Ryan are o diplomă de licență în inginerie electrică. A lucrat 13 ani în ingineria automatizării, 5 ani în IT, iar acum este inginer de aplicații. Fost editor manager al MakeUseOf, a vorbit la conferințe naționale privind vizualizarea datelor și a fost prezentat la TV și radio naționale.

Mai multe de la Ryan Dube

Aboneaza-te la newsletter-ul nostru

Alăturați-vă newsletter-ului pentru sfaturi tehnice, recenzii, cărți electronice gratuite și oferte exclusive!

Faceți clic aici pentru a vă abona