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
659
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
Persujen VigeIius noIasi taas itsensä
Kun uhriutui vuonna 2024 (siis persujen "vahtivuorolla") Tampereella aloittaneen perheryhmäkodin toiminnasta. ”Leviää k2394389- 174099
Oli kiva nähdä sut
vaikkakin kaukaa ja nopeasti. Tiedän kyllä tasan tarkkaan missä mennään, joten anteeksi jos pilasin päiväsi, ei ollut mi383930Joko alkaa menemään tajuntaan tämä yliluonnollinen yhteys?
Varmaan pikkuhiljaa. Muista olla kiltisti ❤️343905Maataloustuet pois
Jokainen maksakoon harrastuksensa itse. Eihän golfin peluutakaan maksa yhteiskunta.1613814Kohtalokas laukaus
IL 20.9.25 "Ihminen kuoli baarin edustalla Kajaanissa Poliisi ei epäile tapauksessa rikosta." "Kajaanin keskustassa on k263762Työeläkkeen saamiseksi olisi tehtävä töitä
Meillä on Suomessa iso joukko ihmisiä, joilla olisi vielä työkykyä jäljellä, mutta joilta puuttuu arjesta mielekäs tekem1243562Joulukinkku NYT
Sian kankuista tulee vielä pula. Nyt on oikea aika hankkia joulukinkku.202974Muistattekos kun Sannan aikana suomalaisten varallisuuteen lisättiin viidennes
Köyhät voittivat eniten mutta rikkaimmat kuitenkin köyhtyi!192905Jos voisit kysyä
Kaivatultasi vielä yhden kysymyksen, mikä se olisi? Aloitan: Mitä sinä halusit minusta?2622630