Paginare și Administrarea Memoriei Cache

Curs
8/10 (1 vot)
Domeniu: Automatică
Conține 1 fișier: doc
Pagini : 23 în total
Cuvinte : 7416
Mărime: 237.66KB (arhivat)
Publicat de: Amza Mircea
Puncte necesare: 0
Profesor îndrumător / Prezentat Profesorului: Marian Popescu
Univeristatea Constantin Brancusi . Ingineria Sistemelor

Extras din curs

Paginarea este utilizată pentru a implementa memoria virtuală bazată pe blocuri de dimensiune fixă, denumite pagini. Asemănător segmentării, paginarea translatează adresele virtuale în adrese fizice. Acestea sunt translatare prin maparea (suprapunerea) blocurilor de memorie de lungime fixă în locaţiile de memorie fizică, denumite cadru pagină. Segmen¬tarea şi paginarea sunt similare: un nume şi un offset sunt translatate într-o adresă. Să considerăm o memorie fizică compusă din paginile 0, 1,2, 3, fiecare având câte 10 octeţi; pentru convertirea unei adrese virtuale într-una fizică se utilizează o tabelă de pagini. De exemplu, adresa virtuală 27 este translatată în adresa fizică 17:

Figura 3.1 Translaţia adresei virtuale în elemente de dimensiune fixă

Avantaje şi dezavantaje

Avantajul esenţial al paginării faţă de segmentare este reprezentat de dimensiunea fixă a paginării. Deoarece pentru memoria virtuală se utilizează discul se pot alege dimensiuni de pagină care corespund dimensiunii sectorului de pe disc. De asemenea, paginarea evită problema fragmentării memoriei, specifică segmentării. Ori de câte ori o pagină este scoasă din memorie, altă pagină se încadrează exact în spaţiul eliberat.

Un alt avantaj este că alocarea pentru un obiect mare nu trebuie realizată într-un spaţiu continuu de memorie. Paginarea este invizibilă programatorului. Spre deosebire de segmentare, care necesită cunoaşterea numelui virtual (segment) şi a unui offset pentru un obiect din memorie, paginarea necesită cunoaşterea doar a unei adrese. Adresa virtuală este descompusă în componentele sale de mecanismul memoriei virtuale.

Utilizarea paginării înseamnă pierderea inelelor de protecţie, implementate cu seg¬mentarea.

De asemenea, ea este legată de un alt tip de fragmentare, denumit „fragmentare internă", care apare la memorarea unor obiecte care nu se încadrează într-o pagină sau sec¬venţă de pagini. De exemplu, dacă pagina este de 10 octeţi, un obiect de 10 octeţi necesită două pagini, care irosesc, deci, spaţiu de memorie.

Paginarea necesită mai multă memorie. La segmentare, tabela de translaţie, pentru conversia unei adrese virtuale într-una fizică este necesară când se încarcă un nou segment. La paginare, însă, conversia (translaţia) trebuie realizată pentru fiecare acces la memorie; acesta nu este un inconvenient dacă întreaga tabelă de pagini poate fi memorată în procesor, dar necesită tabele de pagini foarte mari.

Pentru a depăşi aceste probleme se poate implementa o schemă de protecţie simplă, care utilizează numai paginarea, sau se pot utiliza în paralel cele două mecanisme: paginare şi segmentare.

Pentru a reduce spaţiul necesar translaţiei de pagini (de fapt, fragmentarea internă) se utilizează paralelismul intern al procesoarelor şi o memorie cache specială, denumită „buffer de translaţie adrese" (TLB-Translation Lookahead Buffer), ce nu trebuie confun¬dată cu memoria cache internă a procesoarelor 486 / Pentium.

Translaţia paginii

Cea de-a doua etapă, a translaţiei de adresă, (prima fiind cea de segmentare) - transferă adresa liniară într-o adresă fizică. Aceasta implementează caracteristicile de bază necesare pentru sistemele de memorie virtuală, orientate pe pagina, şi protecţia la nivel de pagină.

Un cadru pagina este o unitate de 4 Ko de adrese continue din memoria fizică.

O adresă liniară face referire, indirect, la o adresă fizică, prin specificarea unei tabele de pagini, o pagină în cadrul acestei tabele şi un offset în acea pagină. Mecanismul complet, de segmentare şi paginare, este prezentat în figura 3.2.

Preview document

Paginare și Administrarea Memoriei Cache - Pagina 1
Paginare și Administrarea Memoriei Cache - Pagina 2
Paginare și Administrarea Memoriei Cache - Pagina 3
Paginare și Administrarea Memoriei Cache - Pagina 4
Paginare și Administrarea Memoriei Cache - Pagina 5
Paginare și Administrarea Memoriei Cache - Pagina 6
Paginare și Administrarea Memoriei Cache - Pagina 7
Paginare și Administrarea Memoriei Cache - Pagina 8
Paginare și Administrarea Memoriei Cache - Pagina 9
Paginare și Administrarea Memoriei Cache - Pagina 10
Paginare și Administrarea Memoriei Cache - Pagina 11
Paginare și Administrarea Memoriei Cache - Pagina 12
Paginare și Administrarea Memoriei Cache - Pagina 13
Paginare și Administrarea Memoriei Cache - Pagina 14
Paginare și Administrarea Memoriei Cache - Pagina 15
Paginare și Administrarea Memoriei Cache - Pagina 16
Paginare și Administrarea Memoriei Cache - Pagina 17
Paginare și Administrarea Memoriei Cache - Pagina 18
Paginare și Administrarea Memoriei Cache - Pagina 19
Paginare și Administrarea Memoriei Cache - Pagina 20
Paginare și Administrarea Memoriei Cache - Pagina 21
Paginare și Administrarea Memoriei Cache - Pagina 22
Paginare și Administrarea Memoriei Cache - Pagina 23

Conținut arhivă zip

  • Paginare si Administrarea Memoriei Cache.doc

Alții au mai descărcat și

Java

Java este o tehnologie inovatoare lansata de compania Sun Microsystems 1n 1995, care a avut un impact remarcabil asupra a1ntregii comunitatsi a...

Limbajul de Programare VHDL

VHDL ca un limbaj de programare VHDL seamana cu un limbaj de programare; cei care sint familiarizati cu limbajul de programare Ada vor observa...

Cursuri AC

caracterizarea noţiunii de informaţie, reprezentarea şi prelucrarea acesteia în sistemele tehnice; - obţinerea prin rafinări succesive a unui...

Autocad

Procedura de desenare 1. Alegeti optiunea New... din meniul derulant File iar la aparitia ferestrei pentru numele desenului prototip...

C Standard

C-ul este un limbaj orientat pentru aplicatii de uz general . Datorita caracteristicilor sale este un limbaj foarte utilizat de toate categoriile...

Fundamentele Calculatoarelor

Prin proces industrial se întelege un ansamblu de transformari mecanice, electrice sau de alta natura care au loc în instalatii industriale....

Arhitectura calculatoarelor

I Introducere Arhitectura calculatoarelor trateaza comportarea functionala a unui calculator asa cum este vazut acesta de catre programator....

Programarea interfețelor aplicațiilor Windows

Dialog Based – pentru care interfaţa are aspectul unei casete de dialog, care poate încapsula întreaga funcţionalitate a aplicaţiei. - SDI (Single...

Te-ar putea interesa și

Microprocesorul Intel Pentium II

I. Introducere în Pentium II În 1968, Robert Noyce, inventatorul circuitului integrat de siliciu, Gordon Moore, faimos datorită legii lui Moore şi...

Proiectarea unui Numărător Invers

Proiectarea unui numărător invers cu modulul de numărare C=13,pe baza bistabilelor JK cu întrări directe şi elementelor logice ŞI,NU care au un...

Sisteme de Operare - Concepte Fundamentale - Gestiunea Memoriei

CAPITOLUL III GESTIUNEA MEMORIEI Obiective. În conformitate cu arhitectura von Neumann, memoria primara (interna) este o componenta principala a...

Sisteme de Operare

CAPITOLUL I INTRODUCERE Obiective. Rolul acestui capitol este de a evidentia rolul central al sistemului de operare în cadrul componentei...

Arhitectura calculatoarelor

I Introducere Arhitectura calculatoarelor trateaza comportarea functionala a unui calculator asa cum este vazut acesta de catre programator....

Elemente de Arhitectură a Sistemelor de Calcul și Operare

CALCULATORUL ŞI SISTEMUL DE OPERARE. NOŢIUNI INTRODUCTIVE 1.1 Introducere În ultimii ani calculatoarele au devenit, indiscutabil, componente...

Ai nevoie de altceva?