Mis on reaalrežiim?

Reaalrežiim on arvuti mikroprotsessorite mäluaadressi skeem ja tööolek. Reaalrežiimis ei hallata ega puhverdata riistvara, tarkvara ega põhilised sisend- ja väljundteenused (BIOS) mälu, millele programm pääseb – tavaliselt muutmälu (RAM) –. See tähendab, et programm on võimeline pääsema juurde kõikidele juurdepääsetavatele mäluaadressidele, olenemata sellest, milleks mälu kasutatakse, ning peab ise haldama kõiki mälukohtade lugemise ja kirjutamise aspekte. Reaalrežiimi kasutamisega kaasnevad mitmed piirangud, sealhulgas asjaolu, et ligipääsetava mälu maht on piiratud 1 megabaidiga, kuna selles režiimis võimaldab protsessor aadressidel olla vaid 20 bitti. Praktilisest vaatenurgast ei kasuta arvutitarkvara enam reaalrežiimi, kuna see asendati turvalisema, laiendatava ja paindlikuma adresseerimisrežiimiga, mida nimetatakse kaitstud režiimiks.

Arvuti keskprotsessor (CPU) on koht, kus saab aktiveerida reaalrežiimi ja enamik režiimi aspekte tegeleb tegelikult probleemidega, mida tavaliselt nähakse montaažikeeles kirjutatud rakendustes, kuna need on oma olemuselt üsna aatomilised. Algsel 8086 arhitektuuril põhinevad protsessorikiibid käivituvad sisselülitamisel reaalrežiimis, et saaksid käitada programme, mis on kirjutatud varasema riistvara jaoks, kuigi sageli on selle õnnestumiseks vaja emulatsioonitarkvara. Kaitstud režiim on 2011. aasta seisuga peaaegu täielikult asendanud reaalse adresseerimise, nii et saadaval on väga vähe kompilaatoreid, mis suudavad isegi reaalset adresseerimist kasutada võivat programmi kompileerida, ja veelgi vähem tavalisi operatsioonisüsteeme, mis seda käitaksid.

Mälu reaalrežiimis on põhimõtteliselt üks, lineaarne baitide jada, millele pääseb vabalt juurde aadressiga, mis koosneb 16-bitisest segmendi aadressist ja 4-bitisest nihkest segmendi sees, moodustades kombineerimisel täieliku 20-bitise aadressi. Programm võib juurde pääseda mis tahes punktile mälus ja lugeda või kirjutada kõike, olenemata asukohast. See tähendab, et ilma korraliku haldamise ja teadmisteta võib reaalset adresseerimisrežiimi kasutav programm hõlpsasti operatsioonisüsteemi ja süsteemi BIOS-i üle kirjutada, käivitada füüsilise riistvarakatkestuse või saata kogemata signaali välisseadmele. See võib mitte ainult põhjustada süsteemi külmumist või krahhi, vaid ka andmekadu või riistvara füüsilist kahju.

Protsessori arhitektuuri arenedes asendas kaitstud režiim lõpuks peaaegu kõigis tarkvarades reaalrežiimi. Aja jooksul muutus tegeliku adresseerimisrežiimi kasutamine ebavajalikuks, kuna see ei olnud võimeline juurde pääsema rohkem kui 1 megabaidile RAM-ile ja ei suutnud kasutada rohkem kui 20 bitti süsteemisiinist, mis tähendab, et see suutis kasutada vaid murdosa enamikul saadaolevatest ressurssidest. arvutid. Tõeline adresseerimine kujutab endast ka olulist turvariski. Üks väheseid viise reaalset adresseerimisrežiimi kasutava programmi kirjutamiseks on kasutada montaažikeelt ja käivitada programm spetsiaalse kettaoperatsioonisüsteemi (DOS) all, mis ei lülitu käivitamisel automaatselt kaitstud režiimi.