Haku vs segmentointi
Paging on käyttöjärjestelmien käyttämä muistinhallintamenetelmä. Haku sallii päämuistin käyttää toissijaisessa tallennuslaitteessa olevia tietoja. Nämä tiedot tallennetaan toissijaiseen tallennuslaitteeseen samankokoisina lohkoina, joita kutsutaan sivuiksi. Haku antaa käyttöjärjestelmän käyttää tietoja, jotka eivät mahdu päämuistiin. Muistin segmentointi on menetelmä, joka suojaa muistia. Jokainen muistisegmentti on liitetty tiettyyn pituuteen ja joukkoon käyttöoikeuksia. Kun prosessi yrittää käyttää muistia, se tarkistetaan ensin, onko sillä tarvittavat oikeudet käyttää tiettyä muistisegmenttiä.
Mitä on henkilöhaku?
Paging on käyttöjärjestelmien käyttämä muistinhallintamenetelmä. Haku sallii päämuistin käyttää toissijaisessa tallennuslaitteessa olevia tietoja. Nämä tiedot tallennetaan toissijaiseen tallennuslaitteeseen samankokoisina lohkoina, joita kutsutaan sivuiksi. Haku antaa käyttöjärjestelmän käyttää tietoja, jotka eivät mahdu päämuistiin. Kun ohjelma yrittää päästä sivulle, ensin tarkistetaan sivutaulukosta, onko sivu päämuistissa. Sivutaulukko sisältää tiedot siitä, missä sivut on tallennettu. Jos se ei ole päämuistissa, sitä kutsutaan sivuvirheeksi. Käyttöjärjestelmä on vastuussa sivuvirheiden käsittelystä näyttämättä sitä ohjelmalle. Käyttöjärjestelmä etsii ensin, missä kyseinen sivu on tallennettu toissijaisessa muistissa, ja tuo sen sitten tyhjään sivukehykseen päämuistissa. Sitten se päivittää sivutaulukon osoittamaan, että uudet tiedot ovat päämuistissa, ja palauttaa ohjauksen takaisin ohjelmalle, joka alun perin pyysi sivua.
Mitä segmentointi on?
Muistin segmentointi on menetelmä, joka suojaa muistia. Jokainen muistisegmentti on liitetty tiettyyn pituuteen ja joukkoon käyttöoikeuksia. Kun prosessi yrittää käyttää muistia, se tarkistetaan ensin, onko sillä tarvittavat oikeudet käyttää tiettyä muistisegmenttiä ja onko se kyseisen muistisegmentin määrittämän pituuden sisällä. Jos jompikumpi näistä ehdoista ei täyty, tehdään laitteistopoikkeus. Lisäksi segmentillä voi olla myös lippu, joka osoittaa, onko segmentti päämuistissa vai ei. Jos segmentti ei sijaitse päämuistissa, poikkeus tulee esiin ja käyttöjärjestelmä tuo segmentin toissijaisesta muistista päämuistiin.
Mitä eroa on sivutuksella ja segmentoinnilla?
Hakussa muisti jaetaan samankokoisiin segmentteihin, joita kutsutaan sivuiksi, kun taas muistisegmentit voivat vaihdella kooltaan (tämän vuoksi jokainen segmentti liitetään pituusmääritteeseen). Segmenttien koot määräytyvät prosessin vaatiman osoiteavaruuden mukaan, kun taas prosessin osoiteavaruus jaetaan sivuilla samankokoisiksi sivuiksi. Segmentointi tarjoaa segmentteihin liittyvän suojan, kun taas sivutus ei tarjoa tällaista mekanismia.