Kodėl 64 bitų operacinės sistemos negali paleisti 16 bitų programų?

Kodėl 64 bitų operacinės sistemos negali paleisti 16 bitų programų?

Kai kompiuteriai pradėjo naudoti modernią 64 bitų architektūrą, vartotojai netrukus suprato, kad paleisti tas senas 16 bitų programas neveiks. Kodėl 64 bitų mašinos negali paleisti 16 bitų programų?





Atsakymas į šį klausimą gali būti painus, priklausomai nuo to, ko klausiate. Viena vertus, iš tikrųjų nėra neįmanoma paleisti 16 bitų programų. Tiesiog sunku. Antra, šio sunkumo priežastis slypi tiek procesoriaus architektūroje ir operacinė sistema.





Dar sumišęs? Nesijaudink, tu ne vienas. Bet kai pasieksite šio straipsnio pabaigą, jūs nebebusite supainioti.





CPU architektūros istorija

Žinau, paskutinis dalykas, kurį norite perskaityti, yra istorijos pamoka, tiesa? Nesijaudinkite, tai trumpas. Taip pat labai svarbu suprasti, kodėl 64 bitų sistemos negali paleisti 16 bitų programų.

Jei gyvenote aštuntąjį ir devintąjį dešimtmečius, tikriausiai prisimenate tuos senus 16 bitų dinozaurus, kuriuos visi tuo metu manė, kad tai pažangiausios technologijos.



Tuo metu tai buvo. Tos senos mašinos veikė „Intel 8086“ procesorius 1978 m. Procesorius galėjo pasiekti 1 MB adresų sritį, naudodamas 16 bitų adresavimą. Ankstesnėms mašinoms išeikvojant 64 Kb atminties, tai buvo milžiniška pažanga ir pažymėjo naujo asmeninio skaičiavimo amžiaus pradžią.

Šiuo režimu (vadinamas Realus režimas ), dalis buvo skirta RAM, o likusią dalį panaudojo BIOS ir kompiuterinė įranga, pvz., vaizdo plokštė.





Šiek tiek vėliau įvyko tolesnis CPU architektūros pažanga naudojant 80286 procesorių, galintį adresuoti 16 MB naudojant 16 bitų adresavimą. Su 286 architektūra atsirado „apsaugotas režimas“ su funkcijomis, kurios ne tik leido pasiekti daugiau atminties, bet ir atlikti daugiafunkcinius veiksmus. Paleisti senesnes 16 bitų programas realiuoju režimu ne visada buvo lengva, tačiau tai buvo įmanoma.

16 bitų pabaiga, savotiška ...

1985 m. „Intel“ pristatė savo naujos kartos procesorių: „Intel 386.“. Tai buvo pirmasis „Intel“ procesorius, galintis vienu metu atminti atmintį naudojant 32 bitus ir galintis pasiekti didžiulę 4 Gb adresinę atmintį. Tuo metu kompiuterių vartotojams tai atrodė kaip didelis proveržis. Kompiuteriniai žaidimai artėjo prie savo klestėjimo.





Kartu su 32 bitų architektūros atsiradimu atsirado išplėstinė versija Apsaugotas režimas Tai ne tik suteikė galimybę pasiekti daugiau atminties, bet ir sudarė funkcijų rinkinį, pagal kurį programinė įranga galėjo pažymėti sistemą, nesvarbu, ar tai 16 bitų, ar 32 bitų kodas. Tai tapo įmanoma dėl to, kas žinoma Virtualus 86 režimas , kuri iš esmės buvo įmontuota virtualizuota 8086 sistema.

Kaip matote, nuo vienos procesoriaus architektūros evoliucijos prie kitos tiek aparatinė įranga (procesoriaus programavimas), tiek programinė įranga (operacinės sistemos ir programos) išlaikė atgalinį suderinamumą visiems tiems vartotojams, kurie vis dar turėjo labai seną programinę įrangą, kurią norėjo bėgti. Individualiems kompiuterių vartotojams tai buvo naudinga, tačiau daugeliui korporacijų ir mažų įmonių tai buvo labai svarbu senoms sistemoms.

64 bitų architektūra viską sugadino

4 GB adresuojamos atminties riba daugelį metų išliko ramentu 32 bitų sistemoms. Tačiau išradus 64 bitų procesorius atėjo dar vienas proveržis. Šios sistemos apėmė naują režimą (žinomą kaip Ilgas režimas ), galintis perduoti iki 16 milijonų terabaitų atminties. Tikriausiai praeis daug laiko, kol tai taps ribojančiu veiksniu kompiuterių programoms.

Tačiau su šiuo didžiuliu progresu įvyko didelis kompromisas. Kai vartotojai bandė paleisti 16 bitų programas, kurioms reikalingas ilgai palaikomas „tikrasis režimas“ arba „virtualus 8086 režimas“, jie aptiko klaidos pranešimą „Program.exe nėra tinkama„ Win32 “programa“.

Buvo apmaudu, bet tai nebuvo pasaulio pabaiga. Vartotojai gali naudoti emuliatorius arba įdiegti virtualias mašinas veikia 32 bitų architektūra ir operacinės sistemos, galinčios palaikyti senas 16 bitų programas.

Taigi, nors 64 bitų sistemoms „neįmanoma“ paleisti 16 bitų MS-DOS programų, vartotojams nėra neįmanoma to padaryti naudojant sprendimą. Bet kodėl taip atsitiko?

64 bitų architektūra Pašalina NTVDM

Kiekvienos kartos 32 bitų procesorius bėgant metams į operacinę sistemą buvo įdėta daug pastangų, kad sistema galėtų tvarkyti senesnes 16 bitų DOS programas. Tai buvo padaryta naudojant vadinamąją NTVDM arba NT virtualią DOS mašiną.

Ši 32 bitų programa veikė „Windows“ operacinėje sistemoje ir imitavo 486 architektūrą, galinčią valdyti 16 bitų adresavimą naudojant virtualų 8086. Deja, „ilgojo režimo“ adresavimas negalėjo to saugiai pritaikyti. Vietoj to, norint palaikyti veikiančias DOS programas, reikėjo imituoti visą 8086 procesorių.

„Microsoft“ aiškiai nusprendė atsisakyti šių pastangų, kad padėtų greitai išleisti pirmąją 64 bitų operacinę sistemą. „Microsoft“ palaikymo puslapyje aiškiai nurodo, kad „16 bitų MS-DOS ir„ Microsoft Windows 3.x “komunalinės paslaugos nebus paleistos“.

Jokių atsiprašymų. Tai tiesiog nepalaikoma.

Kadangi rinkoje yra daugybė virtualizavimo produktų, galinčių tai padaryti, „Microsoft“ aiškiai nemanė, kad būtų naudinga išradinėti ratą.

Kaip paleisti 16 bitų programas 64 bitų sistemose

Tiesiog todėl, kad 16 bitų DOS programų paleidimas nėra palaikomas 64 bitų „Windows“ sistemose, tai nereiškia, kad tai neįmanoma. Jums tereikia įdiegti keletą papildomų įrankių, kad viską nustatytumėte.

Jei jums patinka klasikiniai DOS žaidimai ar naudoti bet kokias kitas retro programas iš senų gerų kompiuterinių laikų, yra galimybių. Štai keturi būdai, kaip juos paleisti naujame „Windows“ kompiuteryje.

1. Žaiskite retro žaidimus naudodami „DOSBox“

Vienas iš paprasčiausių būdų paleisti senas DOS programas kompiuteryje yra naudoti emuliatorių. Vienas iš populiariausių iš jų yra DOSBox .

Kaip atsisiųsti vaizdo įrašus iš svetainės

Kristianas išsamiai aprašė, kaip įdiegti ir konfigūruoti „DOSBox“ paleisti senus retro žaidimus „Windows“ kompiuteryje.

Puikus dalykas yra tai, kad dauguma šių žaidimų yra tokie seni jie laikomi apleistais , kad galėtumėte juos legaliai atsisiųsti ir žaisti nemokamai.

2. Paleiskite programas „VirtualBox“ viduje

Kadangi tokios operacinės sistemos kaip „Windows XP“ ir „Windows 7“ gali paleisti 16 bitų programas, jūs galite paleisti tas pačias programas savo 64 bitų sistemoje sukurdami virtualią mašiną su viena iš tų operacinių sistemų.

Viena iš labiausiai žinomų ir lengvai nustatomų programų yra „VirtualBox“ . Mes turime išsamų vadovą kaip nustatyti ir naudoti „VirtualBox“ , todėl dabar galite pradėti naudoti šį metodą.

Tiesiog įsitikinkite, kad pasirinkote tinkamą operacinę sistemą, kurią norite įdiegti. Laikykitės „Windows 7“ ar senesnės versijos ir galite greitai atsisiųsti ir įdiegti senas DOS programas savo virtualioje sistemoje.

3. Naudokite „Linux“

Pasakykite, ką norėsite apie „Linux“, vienas dalykas, kurį dauguma „Linux“ distribucijų turi teisingai, yra 16 bitų programų palaikymas. Jei naudojate PAE branduolį, jūs neapsiribojate 4 GB 32 bitų sistemomis, todėl dar viena galimybė yra paleisti tinkamą „Linux“ platinimą kaip dvigubą įkrovą.

Dvi galimybės tai padaryti: dvigubo įkrovos sprendimas arba virtuali mašina. Arba galite tiesiog visiškai išmesti „Windows“ ir eik su Linux . Kad ir kas jums tinka.

4. Naudokite emuliatorius

„DOSBox“ nėra vienintelis emuliatorius, skirtas senoms DOS programoms paleisti. Yra daug puikių emuliatorių, kurie veikia taip pat gerai. Tai ypač pasakytina, jei esate žaidėjas.

Kristianas aprašė, kaip sekti a Draugas komodaras , į Raspberry Pi , an „Android“ , Ir netgi klasikiniai SNES bet kuriame kompiuteryje.

Tai tik ledkalnio viršūnė. Jei ieškosite internete, rasite visą įvairių emuliatorių biblioteką, kuri leis jums paleisti beveik bet kokią retro programą, kokią tik galite įsivaizduoti. „Microsoft“ galbūt jau seniai atsisakė senų 16 bitų programų, tačiau vis tiek turite galimybių.

Nepasiduokite 16 bitų

Nėra jokios priežasties manyti, kad tai yra neįmanomas paleisti 16 bitų programas 64 bitų kompiuteryje. Iš pradžių tai gali būti neįmanoma, tačiau, kaip matote, užduočiai atlikti yra daugybė sprendimų.

Dalintis Dalintis „Tweet“ Paštu 12 vaizdo įrašų svetainių, kurios yra geresnės nei „YouTube“

Štai keletas alternatyvių „YouTube“ vaizdo įrašų svetainių. Kiekvienas iš jų užima skirtingą nišą, tačiau verta juos pridėti prie savo žymių.

Skaityti toliau
Susijusios temos
  • Žaidimai
  • Technologija paaiškinta
  • Emuliacija
  • „Windows 10“
  • 64 bitų
Apie autorių Ryanas Dube(Paskelbti 942 straipsniai)

Ryanas turi elektrotechnikos bakalauro laipsnį. Jis 13 metų dirbo automatikos inžinerijos srityje, 5 metus IT srityje, o dabar yra programų inžinierius. Buvęs „MakeUseOf“ vadovaujantis redaktorius, jis kalbėjo nacionalinėse duomenų vizualizavimo konferencijose ir buvo rodomas nacionalinėje televizijoje ir radijuje.

Daugiau iš Ryan Dube

Prenumeruokite mūsų naujienlaiškį

Prisijunkite prie mūsų naujienlaiškio, kad gautumėte techninių patarimų, apžvalgų, nemokamų el. Knygų ir išskirtinių pasiūlymų!

Norėdami užsiprenumeruoti, spustelėkite čia