Sunteți pe pagina 1din 4

LUCRARE DE LABORATOR N5 - Îndrumar de realizare

Tema: Gestiunea memoriei în SO


Scopul lucrării: Formarea deprinderilor în analiza modului de gestiune a memoriei computerului și în aplicarea
tehnicilor de pre-procesare a adreselor a memoriei RAM în elaborarea programelor cu cerințe
sporite față de eficacitate.

Aspectele teoretice
Gestiunea memoriei la nivel de SO se face pe adrese de celule. Abordarea aplicativa a memoriei RAM
presupune posibila amplasare intr-o celula a unui Octet (=Byte [=B]) de date [1B/celula]
1Octet (rom. Octet = eng. Byte) = 8 biti
1KB=1024B; 1MB=1024KB; 1GB=1024MB; 1TB=1024GB
Toate celulele memoriei sunt accesibile prin adrese atribuite. Inregistrarea datelor in memorie se face succesiv
(daca nu este specificata o alta metoda) de la adresa specificata (adresa initiala) in ascedență pîna la ultima celulă
folosita la inregistrarea portiunii de date (adresa finala): Prima celula – adresa XX16, 2-a celula – adresa XX16+1, 3-a
celula – adresa XX16+2, ... (unde XX16 – adresa celulei, specificata în formatul hexazecimal)
Specialistul IT trebuie să opereze liber cu transformările şi procesările adreselor în formatele hexazecimal(16) şi
zecimal(10). Valorile adreselor RAM să reprezintă în format hexazecimal16. La calcularea numărul de celule. – în
format zecimal10
Regula aplicării formatelor numerice 16/10 (hexazecimal/zecimal) în interacțiune cu administrarea
memoriei:
 Adresele fizice/reale RAM - se prezintă în format hexazecimal16,
 Numărul de celule (inclusiv și numărul de octeţi /Bytes) – în format zecimal10

De regulă, la alcătuirea/elaborarea programelor pentru calculator se subințelege procesarea (determinarea prin


calcularea speciala) a adreselor, astfel, deseori, programatorul, pentru a efecientiza procesul de executare a
programului elaborat, descrie operațiile, implicând adresarea relativă a memoriei calculatorului și specificând
adresele celulelor in formatul compus (mix din adresa-baza, care este determinata de SO [format hexazecimal] si
deplasarea adresei, determinata de programator in timpul scrierii codului de program [format zecimal sau
hexazecimal]:
 Adresa_reală16 = Adresa_bază16 + Deplasarea_adresei10 sau 16 (5.1)

Exemple:
a) 1A51DA16+C31316, = 1B14ED16, unde 1B14ED16 –adr.reala, C31316 – deplasarea, 1A51DA16 – adr.baza
b) 6B1DCC16+237010 = 6B270E16, unde 6B270E16–adr.reala, 237010 – deplasarea, 6B1DCC16– adr. baza

Deseori în procesul elaborării programelor apare necesitatea determinării Intervalului de celule in memorie –
entității de celule intre doua adrese (adresa initiala si adresa finala)
Regula +/-1:
 Numărul de celule în interval10 = (Adresa_finală16 - Adresa_inițială16)10 +1; (5.2)
 Adresa_finală16 = Adresa_inițială16 + (Numarul celulelor în interval10 -1)16; (5.3)
Adresa finală (=adresa maxima) a intervalului de celule în memorie

Exemple:
pentru intervalul 1A51DA16-:-74C31316:
74C31316–1A51DA16 = 5A713916 = 592722510, =>> 592722510+1 = 592722610
-unde 1A51DA16 –adr.initiala, 74C31316 – adresa finala, 592722610 - numarul celulelor in intervalul dat

Ținînd cont de dinamica proceselor și mobilitatea aplicațiilor/programelor în RAM, deseori apare necesitatea în
Defragmentarea zonelor de memorie, care reprezintă o operaţie complexă de rearanjare a continutului memoriei
prin integrare (concatenare) a mai multor intervale de celule din diferite zone separate ale memoriei într-un singur
interval, care este egal cu suma intervalelor concatenate.
Exemplu:
a) 349010 –numarul de celule in 1-ul interval
b) 610910 –numarul de celule in al 2-lea interval
c) 30010 –numarul de celule in al 3-lea interval
d) 105110 –numarul de celule in al 4-lea interval
e) => a)+b)+c)+d) = 349010+610910+30010+105110 = 1095010 celule în intervalul integrat (după defragmentare)

 Recomandare. Pentru calcule şi transformări din/în valoare zecimală <=> valoare hexazecimală
puteţi să folosiţi aplicaţia Calculator în regimul View/Programmer

SARCINA 0
1. Renumiţi fisierul Rezultant (SO-Lab5(17)Ro_R.docx) în fişierul cu numele „Lab5-(+ numele
de familie a studentilor care vor efectua lucrarea)” și înregistrați-l pe discul logic de lucru -
>Work (D):
Remarcă: Nu folosiţi în numele fişierelor semne diacritice şi semne neacceptabile !

În fişierul vizat se vor înregistra rezultatele obtinute la realizarea Sarcinilor din lucrare
!! Pe parcursul realizării Lucrării de laborator faceți salvarea copiilor actualizate cu o periodicitate de 10-15 min

2. Completați Tabelul 0
3. N - ultima cifra din valoarea sumei a ultimilor 4 cifre din CIAS personal.

Sarcina 1
1. Deschideți Windows Task Manager (ex. Ctrl+Alt+Del sau Ctrl+Shift+Esc),
2. Analizați informațiile din fila Processes referitor la utilizarea memoriei RAM în starea
curentă (atît pentru toate procesele în execuție – în partea de jos a ferestrei deschise în %, cît
și în particular – în dreptul fiecărui proces în KB sau B)
3. Fixați /memorați numărul proceselor în execuție și valoarea %-lă a memoriei folosite pentru
toate procesele,
4. Lansați/Startați orice 2 aplicații (arbitrar, la alegerea studentului)
 înregistrați în Tabelul 5.1 informațiile referitor la schimbările în utilizarea memoriei
RAM,
5. Reflectați în Tabelul 5.1 2 procese cu cea mai mare ocupare a memoriei și 2 procese cu cea
mai mica ocupare a memoriei (ponderea în % din Memoria RAM totală, în MB și în B)
 în caz de oscilare a valoriior memoriei folosite de procese în execuție – specificați
valorile marginale MIN-MAX, dar în calcule se va folosi media aritmetică
(MIN+MAX)/2 )

Sarcina 2
Aflaţi numărul de caractere într-un fişier (format .TXT) cu 59 rînduri de text, aranjate in 17 paragrafe cu
aliniate. Fișierul are mărimea 2068B
Spaţiul alocat în fişierele de tip .TXT:
 1 byte de memorie pentru fiecare caracter
 2 bytes pentru semnele de trecere de la un rînd de text la altul (invizibile în regim ordinar de
vizualizare)
 4 bytes pentru semnele de aliniat la inceputul fiecarui paragraf(invizibile în regim ordinar de
vizualizare)
Sarcina 3
Calculaţi volumul de memorie RAM în bytes (B), care va fi necesar pentru amplasarea in memorie a datelor din
3 fisiere impreuna:
1. 2 fişiere cu imagini (dimensiunea 600x400 pixeli, unde 24biţi/pixel) cu adaos de date însoţitoare de
(4*N+3.34)KB si (19.91+8.5*N)KB corespunzator
2. Un fisier cu aplicaţia de procesare a imaginilor, cu marimea de 21,8MB
Rezultatul trebuie calculat in Bytes (B) si MegaBytes (MB), dar valoarea obtinuta in MB trebuie rotungita cu
surplus până la zecimi (ex. 3.438512 MB => 3.5MB)

Sarcina 4
Determinaţi numarul total de celule folosite in memorie pentru amplasarea volumului specificat de informatii
[= numărul total de octeți/bytes] în RAM și adresa ultimii celule, folosite pentru memorarea volumului nominalizat,
în caz de folosire a intervalului începînd cu adresa 00000016:
1) 3 GB,
2) 2GB+(256*N)MB,

Exemplu [p-u cazul apropiat de 2)] cu valorile inițiale: 884MB+(312*N)MB cu N = 4]


(884+312*N)MB = 884+312*4 MB = (884+1248)MB = 2132MB = (1048576*2132)10B = 223556403210 celule

Sarcina 5
Determinați adresa reală a celulei în RAM din adresa compusa 4B74EF16+(970*N)10. Rezultatul - format
hexazecimal.
Exemplu de calcul pentru N = 5: 6B1DCC16+(23*N)10
a) (23*N)10= (23*5)10 = 11510
b) = 11510 = 7316
c) 6B1DCC16 + 7316= 6B1E3F16

Sarcina 6
Determinaţi numărul de celule în intervalele A, B, C [semnul „÷” indică intervalul intre adrese]:

A. 29CC2016-(24*N)10 ÷ 2C670816+(15*N)10
B. 2F950016-(7*N)10÷ 3003BA16+(7*N)10
C. 56FFCA16-(23*N)10 ÷ 6000AC16+(31*N)10

Sarcina 7
În baza rezultatelor din Sarcina 6 determinaţi numarul total de celule in intervalul unit/defragmentat (D =
A+B+C) si adresa maxima in pozitionarea acestui interval incepind cu adresa 459E0B16

Finalități
A. Concluziile la lucrare. (max. 100 cuvine la fiecare punct)
a. Greutățile întâmpinate la realizarea lucrării și recomandările Dvs., orientate spre
perfecționarea sarcinilor din actuala lucrare (In caz cind nu sunt – notați fraza „Nu sunt”);
b. [Opțional] Descrieți propria experiență în utilizarea sistemului de gestiune a memoriei în
SO Win7;
c. [Opțional] Referințe utile pentru realizarea sarcinilor (cu amplă/completă denumirea/adresă
și indicarea sarcinii de referință)
B. Copia de rezervă a fișierului rezultant
Realizați o copie a fișierului rezultant pe un suport sigur (ex. USB Memory stick, server eMail, disk-ul
cloud etc.), în care el se va păstra cel puțin pînă la susținerea Examenului (pentru a se pregăti de
examen și pentru a restabili datele de evaluare, la necesitate)
C. La solicitarea profesorului - Prezentați fișierul rezultant pe monitorul calculatorului
de lucru.
D. Expediați fisierul rezultant la adresa profesorului stud2me@gmail.com pentru verificare şi
evaluare
Regulile de expediere a mesajelor:
Subiectul mesajului trebuie să aibă următorul conţinut (4 elemente) - Numărul grupei, Numele Studentului,
Denumirea obiectului-Tema mesajului (Ex.: TI162, Ungureanu Vasile, SO-Lab5);
* În caz de expediere ulterioară (repetată) a variantei corectate, după elementele menționate se va specifica în paranteze versiunea
expedierii [ex.: (v.2) sau (v.4)] – Numai în acest caz se va evalua ULTIMA versiune expediată
Textul mesajului – specificarea numărului fişierelor ataşate şi formatelor lor [.doc, .xlsx, mdb etc.] + informația
relevantă/importanta/utila - textul asociat mesajului (ex.: Este ataşat: un fişier format .DOC [+…Textul mesajului…];)
* In caz cînd va avea loc expedierea repetată a mesajului e-Mail cu același subiect, dar
cu conținutul modificat/re-înnoit, la sfîrșitul cîmpului Subject se va mai adauga (Ver.n),
unde n – numărul de ordine a expedierii repetate
E. Solicitați de la profesor confirmarea primirii mesajului cu fișierul expediat.
F. [Opțional] Activitatea de perfecționare
 Specificați scăpările/greșelile depistate în Lucrare de laborator (în Îndrumarul de realizare și
șablonul Fișierului rezultant pentru Lab 5) și expediați-le la adresa eMail a profesorului într-un
mesaj separat, (conform cerințelor din p.D).

!! – Dupa finisarea realizării Lucrării de laborator şi expedierea fişierelor eliminaţi /=ştergeţi/ TOATE
fişierele formate sau copiate de Dvs. în curenta sesiune de lucru la calculator.

S-ar putea să vă placă și