Memoria virtuală

Curs
7/10 (1 vot)
Domeniu: Calculatoare
Conține 1 fișier: doc
Pagini : 8 în total
Cuvinte : 1603
Mărime: 24.52KB (arhivat)
Publicat de: Livia Vasilescu
Puncte necesare: 0
Profesor îndrumător / Prezentat Profesorului: Stefan Stanescu

Extras din curs

Memoria virtuala este folosita datorita existentei unor programe mai mari decit memoria disponibila.Solutia uzuala era de a sparge programele in bucati numite overlay-uri.Overlay-urile aveau dinamica cu discul foarte simpla ;programatorul făcea impartirea si gestiunea overlay-urilor.Totusi aceasta munca era consumatoare de timp si plictisitoare.Noua metoda (Fotheringham 1961)s-a numit memorie virtuala.Ea prevedea prelungirea memoriei reale pe dimensiuni ireale,incluzind memoria externa,cu trecerea parţii active in memoria reala. Microprocesorul sesizează doar faptul ca accesul la date durează mai mult.Cu gestiunea memoriei virtuale se ocupa sistemul de operare care actualizează si intretine paginile memoriei virtuale.

Memoria virtuala poate lucra si in regim de multiprogramare ,pe care o realizează mai eficient si deasemenea este valabila doar in sistemele multitasking.

Paginarea:

Programul generează adrese virtuale in spaţiul adreselor virtuale. Adresele virtuale nu merg direct la memorie ci la MMU(memory management unit),care le decodifica si oferă adresele fizice.

Ex:Calculator cu 32k RAM si memorie virtuala 64k RAM.

Spaţiul virtual este impartit in pagini virtuale care se încarcă in pagini de memorie reala de aceeaşi dimensiune. Paginile virtuale si reale au aceeaşi dimensiune.

Page table este o tabela cu locurile paginilor virtuale intre paginile reale (locul in care este incarcata fiecare pagina virtuala in RAM ,care poate fi RAM fizic sau extins).

Atunci cind programul face apel la o pagina virtuala ce nu se afla in memoria fizica (toate poziţiile ocupate are loc "page fault trap")se decide ce pagina va fi trnsferata pe disc , se aduce pagina noua in memoria fizica, se reactualizează page table(2 operaţii) si se restarteaza instrucţiunea ce a fost întrerupta prin trap.

ALGORITM DE SCOATERE A PAGINII

Daca algoritmul de scoatere a pagini din memorie nu este bine ales exista posibilitatea sa scot o pagina pe care programul respectiv o foloseşte frecvent, deci pagina respectiva va trebui readusa curind in memorie si astfel se va pierde mult timp.

a) Algoritmul aleator

După cum spune si numele este vorba despre o soluţie aleatoare.Solutia nu este buna pentru ca sistemul de operare poate schimba o pagina des folosita.

b) Algoritmul optim

Trebuie subliniat faptul ca este vorba despre un algoritm teoretic, acesta nefiind practic.

Se da un program. Se cunoaşte activitatea pe acest program si se înregistrează necesarul de pagini iar in fiecare pagina se număra cite instrucţiuni se executa fara a se face saltul in alta pagina. In momentul in care apare un salt la alta pagina se calculează in fiecare pagina din memorie unde exista cele mai multe instrucţiuni fara salt .Aceste pagini ,care amina cel mai mult saltul in alte pagini, se vor păstra in memorie. Prin aceasta metoda se asigura situaţia ca “trap fault”-urile sa apară cit mai tirziu.

Aceasta metoda este de referinta.Celelalta metode se vor raporta la acest algoritm.

c)

Pentru a putea verifica lucrul cu pagina avem nevoie de circuite hard.Astfel au fost introduşi doi biţi

R - Reference bit: acest bit al pagini va fi setat la orice acces la pagina(scriere sau citire)

M - Modify bit : acest bit va fi setat doar daca se va efectua o scriere in pagina

Descrierea acestor biţi se face cu circuite hard.Astfel exista patru clase:

PAG-0:pagina este nereferita(R=0;M=0)

PAG-1:pagina cu scriere veche(R=0;M=1)

PAG-2:pagina scrisa de curind dar nemodificata(R=1;M=0)

PAG-3:pagina la care s-a făcut ultima scriere(R=1;M=1)

Gestiunea acestui set de biţi se face prin mecanisme hardware cu ajutorul unui ceas: daca după un anumit timp pagina nu a fost referita bitul “R” se şterge si astfel clasa trece in clasa 1 iar clasa 2 trece in clasa 0.

Preview document

Memoria virtuală - Pagina 1
Memoria virtuală - Pagina 2
Memoria virtuală - Pagina 3
Memoria virtuală - Pagina 4
Memoria virtuală - Pagina 5
Memoria virtuală - Pagina 6
Memoria virtuală - Pagina 7
Memoria virtuală - Pagina 8

Conținut arhivă zip

  • Memoria Virtuala.doc

Alții au mai descărcat și

AutoCad

APERTURE - controleazã mãrimea cursorului selector, caracteristic modului object snap. ARC - traseazã un arc de cerc de orice dimensiune. A -...

Biblioteca de Șabloane Standard

Biblioteca de Sabloane Standard (STL) asigura o abstractizare standardizata a datelor prin intermediul containerelor si o abstractizare procedurala...

Clase Derivate

1. Clase derivate. Prin mostenire, atributele unei clase de baza sunt transmise unor clase derivate. Derivarea permite definirea unor clase noi,...

Clase în Java

Clase pentru miniaplicatii Miniaplicatiile constituie extensii ale unei clase deja existente java.applet.Applet. Structura clasei unui applet...

Clase

1. Programare procedurala –Programare orientata pe obiecte. Limbajul C, ca si Pascal, utilizeaza modelul programarii structurate procedurale, care...

Comunicații internet

2.1. Stilurile caracterelor {n sfirsit pagina dvs. contine ceva, chiar daca este vorba numai de un nume. Vom analiza in continuare elementele de...

Crearea unei aplicații independente în Java

Toate aplicatiile Java contin o metoda main(), spre deosebire de miniaplicatii. class FirstApp { public static void main( String argsst) {...

Curs Excel

Deplasarea prin foi Deplasarea dintr-o foaie in alta se face cu clic cu mouse-ul pe eticheta foii dorite. Deplasarea prin celule Va puteti...

Te-ar putea interesa și

Ghid Office

Cap. 1. SISTEME DE OPERARE 1.1,Prezentare generala Se numeste sistem de operare ansamblul programelor si procedurilor care asigura indeplinirea...

Caracteristică generală a memoriei PC

Introducere Ce este memoria? Psihologia defineşte memoria ca un proces prin care oamenii şi alte organisme reuseşc să codifice, să stocheze şi să...

Module de Memorie - Tehnologie

MOTIVAVAŢIA LUCRĂRII In această lucrare,voi explica pe scurt ce este memoria şi cum sunt stocate datele in ea.Pentru ca apoi să intru in detaliile...

Memoria internă a unui calculator personal

ARGUMENT Industria memoriilor este una dintre cele mai dinamice aplicatii ale electronicii din zilele noastre. In ultimi ani chip-urile de memorie...

Sisteme cu Microprocesare

Scurt istoric Generatia 0 – calculatoare mecanice – (??-1940) sec. 17 – Pascal –masina de calcul pt. adunare si scadere sec. 17-18 – Leibnitz –...

Arhitectura calculatoarelor

1.1. Sistemul de calcul 1.1.1. Definiţii Sistemul de calcul (SC, System Computer sau calculator) este reprezentat de o structură destinată...

Mediul informațional-informatic suport al comunicării

COMUNICAREA UMANA este plina de probleme si dificultati. Foarte des auzim fraze de tipul: “Nu am vrut sa spun asta” , “Înca nu sesizezi ceea ce...

Linux

Lucrarea 6 Configurarea unui server linux 1. Introducere teoretica Un server Linux poate oferi toate serviciile pe care le poate oferi un server...

Ai nevoie de altceva?