Tervehdys.
Kyselisin ihan sellaista asiaa, että mitä ovat käyttöjärjestelmän Base- ja Limit -rekisterit ja mihin niitä oikeastaan tarvitaan???
Base- ja Limit -rekisterit
2
655
Vastaukset
- käyttöjärjestelmän?
...
- Mika0800
nuo ovat systeemirekistereitä, jotka ladataan automaattisesti segmenttirekistereitä ladattaessa.
Base -rekisteri kertoo, mikä oikea (nyk. virtuaali-) osoite vastaa segmentin 0 -osoitetta ja Limit kertoo, kuinka suuri yksi segmentti on, eli määrää suurimman sallitun offsetin segmentin sisällä. Tämän suurimman sallitun ylitys johtaa "Access Violation" -virheeseen.
huom: tämä selitys oli yksinkertaistettu. 80386 ja uudempien prosesssorien virtuaalimuisti monimutkaistaa asiaa; esim. windowsissa voi varata erikseen muistiosoiteavaruutta ja oikeaa muistia, joka sitten kytketään noihin muistiavaruuden osoitteisiin. ks. VirtualAlloc, VirtualFree ja VitrualProtect.
Muistin virtuaalisuuden ideahan on se, että kukin lohko (joka windowsissa on 4 Ki, mutta muistaakseni CPU sallisi vaihtoehtoisesti myös 8 Ki) voi viitata mihin tahansa fyysiseen muistiosoitteeseen tai ei mihinkään, jolloin tuon osoitteen luku/kirjoitusyritys aiheuttaa myös "access violation" -poikkeuksen, mutta sitä ei aina käsitellä virheenä, vaan käyttöjärjestelmän virtuaalijärjestelmän pyyntönä ladata puuttuva muistilohko kiintolevyltä RAMmiin, ja muokata osoitustalulukko osoittamaan siihen kohtaan fyysistä RAMmia, mihin puuttuva lohko juuri ladattiin, ja lopuksi palata suoritusosoitteeseen, jossa oleva käsky aiheutti poikkeuksen, jolloin suoritus jatkuu normaalisti, nythän sama osoite, joka äsken ei ollut fyysisessä muistissa, on siellä, kun käyttöjärjestelmän virtuaalimuistilataaja sen sinne juuri latasi.
Windowsissa yleensä lataus tehdään muuttumattomasta EXE tai DLL - tiedostosta; hyötynä se, että virtuaalimuisti on nopeampaa, kun kiintolevyä näissä tapauksissa vain luetaan (EXE tai DLL ei muutu suorituksen aikana).
Poikeuksena tilanne, jossa muistia vaaditaan niin paljon, että tämäkään ei riitä: silloin otetaan käyttöön win386.swp, ja myös kirjoitetaan sinne toinen muistilohko, joka poistetaan RAMmista, jotta sinne saadaan tilaa puuttuvalle lohkolle.
Näinollen windowsin virtuaalimuistia käytetään silti, vaikka tuota win386.swp -tiedostoa ei käytettäisi ollenkaan.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Kalajoen hukkuneet pojat olivat tummaihoisia
Jälleen kerran, hukkuneet tai heikon uimataidon vuoksi vaaraan joutuneet olivat muita kuin suomalaisia. Turha viisastell2094646- 1882606
- 671532
Minkä asian haluaisit muuttaa kaivatussasi?
Mikä kaivattusi luonteessa tai ulkonäössä ärsyttää sua?961210Jos kaivattusi on perääntynyt lähestyessäsi
jossain tilanteessa, ymmärrätkö miksi hän saattoi tehdä sen?1071130- 1251129
Kohta katson sun kuvaasi
ja päästän ajatukseni liitämään. Jo kuvasi näkeminen rauhoittaa, ja pistää hyrräämään vähän muutakin. Ihanan kaunista sa91122- 711081
Ahneus iski Fazeriin, suklaalevy kutistuu 180 grammaan
Kun mikään ei riitä. Shrinkflaatio. Mitä isot (Marabou) edellä, sitä pienet (Fazer) perässä. Pienikin voi siis olla a1371054- 109989