Diferență între paginare și segmentare

Anonim

Paging vs Segmentation

Paging este o metodă de gestionare a memoriei utilizată de sistemele de operare. Paging-ul permite memoriei principale să utilizeze date care se află pe un dispozitiv secundar de stocare. Aceste date sunt stocate în dispozitivul de stocare secundar ca blocuri de aceeași dimensiune numite pagini. Paging permite sistemului de operare să utilizeze date care nu se încadrează în memoria principală. Segmentarea memoriei este o metodă care asigură protecția memoriei. Fiecare segment de memorie este asociat cu o lungime specifică și un set de permisiuni. Atunci când un proces încearcă să acceseze memoria, este verificată mai întâi pentru a vedea dacă are permisiunea necesară pentru a accesa segmentul de memorie special.

Ce este Paging?

Paging este o metodă de gestionare a memoriei utilizată de sistemele de operare. Paging-ul permite memoriei principale să utilizeze date care se află pe un dispozitiv secundar de stocare. Aceste date sunt stocate în dispozitivul de stocare secundar ca blocuri de aceeași dimensiune numite pagini. Paging permite sistemului de operare să utilizeze date care nu se încadrează în memoria principală. Când un program încearcă să acceseze o pagină, mai întâi este bifată tabela de pagini pentru a vedea dacă această pagină se află în memoria principală. Tabelul de pagini conține detalii despre locul în care sunt stocate paginile. Dacă nu este în memoria principală, se numește o eroare de pagină. Sistemul de operare este responsabil pentru manipularea defectelor paginii fără a le arăta programului. Sistemul de operare găsește mai întâi locul în care respectiva pagină este stocată în spațiul de stocare secundar și apoi o aduce într-un cadru gol al paginii din memoria principală. Apoi actualizează tabela de pagini pentru a indica faptul că noile date se află în memoria principală și returnează controlul înapoi la programul care a solicitat inițial pagina.

Ce este segmentarea?

Segmentarea memoriei este o metodă care asigură protecția memoriei. Fiecare segment de memorie este asociat cu o lungime specifică și un set de permisiuni. Când un proces încearcă să acceseze memoria, este mai întâi verificată dacă are permisiunea necesară pentru a accesa segmentul de memorie particular și dacă se află în lungimea specificată de respectivul segment de memorie. Dacă oricare dintre aceste condiții nu este îndeplinită, se face o excepție hardware. În plus, un segment poate avea, de asemenea, un steag care indică dacă segmentul se află în memoria principală sau nu. Dacă segmentul nu se află în memoria principală, se va majora o excepție și sistemul de operare va aduce segmentul din memoria secundară în memoria principală.

Care este diferența dintre Paging și segmentare?

În paginare, memoria este împărțită în segmente egale de mărime numite pagini, în timp ce segmentele de memorie pot varia în funcție de mărime (de aceea fiecare segment este asociat unui atribut de lungime).Dimensiunile segmentelor sunt determinate în funcție de spațiul de adrese solicitat de un proces, în timp ce spațiul de adresă al unui proces este împărțit în pagini de dimensiune egală în paginare. Segmentarea oferă securitate asociată cu segmentele, în timp ce procesul de paginare nu oferă un astfel de mecanism.