Sei sulla pagina 1di 24
APITOLUL 5 MEMORIA PRIMARA eprezinti memoria ¢ erat restul sistemului de ¢ calculator, fiind considerat8 unitate slave pentn Ea este implementata cu circuite integrate de memorie DRA’ fi realizaté intr-o concepti (M), fiecare modu! put ocuri (bank-uri) de memorie (By), de asemenea d in MP si/ bank-uri fntt-un n unde M,AM,=®, Vxy=Lk,x4y J B,; unde By, 0B, = 0, V uvehl ust v 1. Organizarea si adresarea memorici primare muite modu multe Cap. 5. Memoria prima Observatie: Pentru o implementare hardware mai usoar’, numéru modulelor din MP si numarul bank-urilor din modul se aleg, i ale lui ile de Modulele si ban! wemorie pot fi repre: ca si circuitele integrate pe care le contin, ca in ate schem gura 5.1. ADR Modul M, dim M,= 2"cu DATA COM Fig. 5.1 Simbol de memorie pot avea capacititi de me pot m siuni di modulului respectiv. Acelasi mo dul de memorie poate fi imp 1 numar diferit de bank-uri sau cu diferite circuite Bank-urile unui modul ie au de obice! find realizate cu rout Exprimarea capacititii de _memorare a reflecte atat 1 unui mod: informatie memorate, c ul trebuie si ul de cuvinte di si dimensi pre felul in cuvantului. ins ea n nizeazi nici un indici este realizat modulul de memorie Un modul de memorie a memorare de 8M x 2 si are dowd bani-uri de dimensiun gale, notate I si Il. Rezulta: dim modul = 8 Meuv si dim I = dim IL = 4 Meuv, Ieuv = 32b. Exprimarea capacititii de memorare nu de implementare cu circuite integ lor componente. Astfel, bank-ur de 32 biti pot fi reatizate in div memorie de 4M x 4, pa memorie de 4M x ata tipul te, a modului sau a bank- de 4N de memori tse vari 130 i cea mai mica unitate de ati individual in memor Definitie Cuvantul de memorie reprezin informatie, care poate fi adres adrese, de cétre 0 unitate master ie, prin magistrala de Nu este necesar ca dimensiunea cuvantului de memorie din MP sa fie egal cu dimensiunea r ii centrale. in general, unitatea central are instructiuni ce pot transfera cu memoria, operanzi de dimensiuni diferite (pe 8, 16, 32 biti), in functie de necesititile de moment ale UC gistrelor De aceea, cuvantul de memorie se alege de dimensiunea celu mic operand, pe care UC il poate transfera cu MP. Cele mai multe sisteme de calcul au memoria primar& organizatd pe octeti Un operand cu dimensiunea mai mare confine mai mulfi octeti, si va fi meme at cu octetii plasati la adrese succesive. Exemplu: La un calculator personal compatibil IBM-PC, ul Pentium are registr lucreaz cu mai multe tipuri de operanzi. Deoarece acesia poat transfera si prelucra si operanzi pe 8 biti, memoria prim: de microproceso nter Himdne organizati pe octet Modulele de m morie sunt astfel organizate, ineat pot transfera mai multe cuvinte de memorie in paralel de memorie, sta, ele dispun de magistrale de date de dimensiuni mai mari Pentru ac decat dimensiunea cuvantului de memorie. Astfel, mecanismul de adresare al microproc ea si transferul unor operanzi mai mari, p memorie simultan, aflate la adrese de memorie succesive. sorului_ permite mai multe cuvinte de select Dator ucfiuni specitice, micro arhitecturii superscalare si folosind tun yrocesoral Pe poate trans! cu memoria, doi op: e 32 biti, de la 8 adrese succesive, strala de date de 64 biti, simultan, pe o ma: Cap. 5, Memoria primara Totusi, operanzii formati din mai multi octeti memorati in MP, incepand de Ja anumite adi transferul tuturor octetilor simultan, intr ebuie sa fic ese, pentru a se putea face un singur ciclu de memorie. Spunem in acest caz, ¢& operanzil scant aliniai in memorie. Altfel, daci opera i au octetii memorafi la adrese succesive, dar incepind de la alte adrese, transferul es memorie, iar operanzii se numesc neal e mai lent gi di reazi doi cicluri d Conditia ca un © and, care are m octeti (n = 2, 4, 8, ... pute lui 2), si fie aliniat in memorie, este ca adresa sa de inceput fie: 0 mod n. e la una di multiplu de n): OH, nH, 2nfl, 3nl¥ etc. Un exemplu ¢ ste i Rezulti 4 operandul trebu urmato: fie memorat in MP, incepand rele adri a operanzilor ustra in figura | Exemplu: Presupunem c n MP fa patru adres e succesive, in doud moduri, dupa 3H 2H 1H OH 2H 4H OH 2) operand aliniat in MP b) operand neali Fig. 5.2. iat in MP linierea operansilor in primul caz, operandul MP, find ciclu de memorie. in al doilea caz, operandul este memorat la 4 adrese consecutive: 2H, 3H, 4H si SH. Operandul nealiniat $i transferul te memorat Ia primel 4 adrese di sferul va dura un aliniat in memorie. Tra cicluri de memorie: in timpul executarii programelor, pentru ca transferurile cu memoria primara sé fie cat mai rapide, este important ca blocurile de informatii din MP s& fie aliniate. In acest fel, unitatea central poate transfera cu MP, un num maxim de octeti simultan, in fiecare ciclu de memorie. De aceea, la sctiere programelor trebuie rezolvaté problema alinierii informatiilor in me: Observatie: in limbajele de programare, utilizatorul este degrevat de erii informatiilor in memorie. De obicei, aceasta este rezolvati de caitre compilator rcina al 5.2. Functia de adresare Unitatile master acceseaz’ MP in timpul ciclurilor de memorie, ind mai inti informatii secundare citre aceasta: 0 adresa, pe magistrala unidirectional de adrese, precum si comenzi, pe magistrala de control. Pe baza lor, sunt selectate locatiile de memorie, prin intermediul unui circuit de selectie, aflat in controlerul de memorie. Apoi, int bidireotionala de date. adrese pot fi transm locatii de formatiile primare sunt transferate pe o Pe cele n linii de adresa ale magistralei combinafii binare dife memorie, diferite sau nu, rite, care pot selecta la un moment dat 2 Definitie: Multimea adreselor fizice care pot fi trimise pe magistrala de adrese formeazi un spatiu liniar de adrese, numit spatiul adreselor fizice, notat P. A, Ay| 4, = 40,1} Wi=O,n=l foe dim P= 2" Def pot fi adre inte locajiilor de memorie existente in sistem, te prin magistrala de adrese, si care apartin diferitetor circuite ate de memorie, formeaz spatiul locafiilor de memorie, notat M. ex Observatie: — Spajiul M contine doar locafiile de memorie direct © unitafile master si care formeaz’ memoria de lucru, Cap Memoria primari De aceea, spa{iul locatiilor de m norie M cuprinde doar circuitele de memorie primari (MP), nu si pe cele ale memoriei cache. Aceasta este transparent (invizibil&) unitafilor master, find gestionatA automat de catre controleral memoriei cache. La proiectarea sistemului de calcul, se pun in core dou mul imi, P si M, asignandu-se fiectrei locajii de memorie (m) din M, cel puin o adresa fizicd (a) din P, dupa cum se arati in figura Astfel se implementeaza hardware, prin intermediul circuitului de selectie a modulelor (aflat in c ntrolerul de memorie), 0 functia de adresare, de forma fy: P—> M. nctie fag numitd in etapa de exploatare a sistem 1i de calcul, functia de adresare va asigura selectarea locatiilor de memorie din M, prin care, 0 adresi din P norie. Exp ul sistemul ecteaz 0 singurt locatie de me ia funetiei de adresare poate software, sub cor de operare Fig. 5.3. Functia Je adresare Funetia de adres ¢ are urmiitoarele proprietiti: 1) fag trebuie s intai o functie, ccea ce inseamna ci, o adresii a din P trebuie si selecteze o singura foc: dat. ins; e de memorie m din M, Ia un moment ilizand un mecanism de comu fare a blocurilor de memorie, aceeasi adresi a din P poate selecta, la momente de ti memorie di in sistema modeme.d Cap. 5. Memoria primara functia de adresare trebuie sa fie surjectiva, ceea ce inseamna cA, pentru orice locatie de memorie m din M trebuie s& existe 0 adrest fizicd a din P, so selecteze, altfel locatia de memorie nu ar putea fi utilizata: WmeM, JaeP ai f,j(a)=m car 3) funefia de adresare poate fi sau nu injectiva, ceea ce inseamna ci, do adrese diferite din P pot selecta sau nu o aceeasi locatie de memorie din M Daca functia de adresare este injectivi, atunci adrese diferite ‘A locatii de memorie diferite: VayaneP, ata, > faala) # faa(ar) Acesta este cazul cel mai des utilizat in sistemele de caicul. select Dacé fu nu este injectiva, atunci vor exista adrese diferite din P, care si acceseze aceea locatie de memorie din M Faa,eP, ata, ai. fuga) = fog(ar) Observatie: Nu este necesar ca dimensiunile lui P si M sf fie egale. in general, ele au dimensiuni diferite: dim P # dim M. in cazul in care dimensiunile sunt difer a) Dac dim P > dim M, atunci unititile master pot adresa, prin magistrala de adrese a sistemului, mai multi memorie decat exist fizi in sistemul de calcul respectiv. Acesta este cazul tuturor microprocesoarelor au un numir mare de linii de adresa. te, pot apare doud situati implementata moderne, Exemple: Microprocesoru! Pentium are o magistra n spatiu liniar de adres fizice P, cu dim P = 2", El poate adresa direct © memorie primar cu dimensiunea de 64 Go. in practicd inst, cele mai multe calculatoare au dimensiuni mult mai mici ale memoriei primare, cu valori maxime limitate de citre controlerul de memorie Chiat si microprocesoarele mai vechi (cum este 1486), au o magistrala de adrese de 32 de linii sia adrese de 36 de linii, care genereazi putea adresa © memorie prima Cap. 5. Memoria primari A dim P< dim M, in sistem exist& implemé adres ati mai mult’ memorie se poate adresa j in magistrala de in acest caz se impune folosirea unor circuite hardware suplimentare, care s momente de ti diferite, locatii de memo modified expresia fun are, sub controlul unei componente software (de obicei, a sistemului de operare). Pro} ¢ unitatea central, in cicluri de scriere la adrese de porturi VO. permiti ca, 0 aceeagi adres a din P s& selecteze, la diferite. Aceste circuite ei de ad narea comutarii se f set Metoda, ce permite utiliza comutirii blocurilor de memorie (bank switching in e, astfel incat, o zona contin memorie diferite, la momente de timp diferite a intregii memorii, se numeste metoda se modifi !, prin ac 4 expresia functiei de eze blocuri de adresar de adrese din P si ac La calculatoarele personale compatibile IBM-PC aceasta situatie a aparut din considerente pr (MS-DOS), 1 de lucru real (ca primu! microprocesor Ruland un sistem de operare monotaskin; croprocesoarele Intel lucreazi in modi pe 16 biji, 1 8086) si nu pot adresa decat //Mo de memorie, cénd in sistem exist Zona de locatii de memorie, impartita in blocuri si folosita de mecanismul de comutare a blocurilor, se numeste memorie expandati, Ea a fost introdusé, microprocesoarele mplementat’ mai multi memorie. neepand cu pe 16 bifi, si a fost preluaté ulterior, pentru compatibilitate softwar Observatie : ca memoriei cache are loc tot printr-un mecanism implement: locurilor de memoric. ins, acesta este ardware in controlerul de memorie, fiind transparent unitatilor master ce adreseazi MP. Practic, unitatea centrala realizeaza transferurile de informatii cu memoria, conform functiei de adres: MP sau cu MC. transferul se face cu 136 Cap. 5. Memoria primard 5.3. Harta de memorie Specificarea functiei de adresare presupune reprezentarea spatiului de adrese fizice si a modului de ocupare a acestuia cu diferite module de memorie. Acest lucru se poate face grafic, utilizind harta de memorie, sau tabelar, prin intermediul unui tabel de adevar al adreselor fizice. Harta de memorie permite specificarea fimetiei de adresare, total (pentru intreaga memorie primard) sau parfialé (pentru anumite module de memorie), intr-un mod grafic condensat oi Ea este 0 reprezer re dreptunghiular’, ce cuprinde pe latura vertical, spatiul liniar al adreselor fizice, iar in interior se araté modul de ocupare cu diferite module de memorie. Pe latura orizontala se simboliz ntuh Da i memo fe cazul) lungimea euv: MP este organizati pe unci pe latura orizon Adresele sunt trecute sunt exprimate e crescatoare, de la ordit A spre varf, si n valori hexazecimale, Numarul ciftelor hexa depinde de numérul liniilor de adres (valori binare), pe care se face adresarea memoriei respective. jor sunt trecute diferitele modul tul interval bank-uri sau zone de ‘ice corespunzitoar sit, in inte memorie, plasate in Zon jor de adrese f inceput si Je sunt treeute | Exempt La calculatoarele personale compatibile IBM-PC, imediat dup RESET, microprocesoarele Intel intra in modul nu pot adres 1Mo de memorie. Harta de memorie de /Mo conjine 16 segmente de cite 64 ko, care sunt ocupate cu diverse citeuite de memorie, dupa cum se arata in figura 5.4 de lucru real § Memoria se ad Rezult& c& adresele fizice se vor scrie cu $ 00000 H... FFFFF H. Cap. 5. Memoria primar guri se observ mai multe zone, impreund cu ut si de sfirsit: zona de memorie DRAM, ru, © zona de memorie RAM adresele lor incep ce constituie memoria de lu video, aflata pe cuplorul video, zona componentelor BIC pe plicile adaptoare (inclusiv placa video), o zona rezervata gi componenta ROM BIOS. FRFFE 0000 H. DFFEF H C0000 Hi BETEF H Fig. 5.4. Harta de memorie de Mo a unui PC, dupd RESET | Zonele de memorie din hart’ au dimensiuni diferite gi deci, s adreseavi cu numar diferit de linii de adresi, dintre liniile de adresi ale spafiului P considerat. Restut liniilor de adres& ale lui P determina modul de aranjare a zonelor in harta de memorie. | Exemplu Presupunem o memorie primara de 128 Mo, realizaté cu patru module de dimensiuni egale, notate 1, If, III gi IV. Pentru MP rezulta : dim MP = 128 Mo = 20. 7 Deci, MP se adreseaz cu 27 linii de adresa. Pentru modulele de memorie, avem: i dim I = dim I = Fiecare m: linii ale MP. de adres, din ce Cap. 5. Memoria primari dowi lini de adres’ rimase vor face sclectia modulelor si determina aranjarea acestora in harta de memorie. e dou’ linii de selectie pot fi oricare din in Teore linii de ade , de obicei, selectiile zonelor de memorie se fac cu linii de adres mai semnificative (de exemplu, cele mai semnificative doua linii). esar ca unui modul de memorie si-i corespunda in harta zona continua de adrese zone de adre: Nu este ne: de memorie, pt fizice din P. Modulul poate fi impartit in mai mu distribuite in harta de memorie. Modul concret, de impartire a me acestora in harta de memorie, depinde de liniile de a ui gi a zonelor in modul functia de adresare, o singui continue, si distribu sf alese pentru lelor in zon selectia modul fe de memorare | Exempl © memorie primar de 128 Ko si contine dou’ module de cate 64 Ko, notate I si IL. Modulele pot fi in mai multe moduri, rezultind harti de memorie diferite, dup& cum este 05.5. Cu are o capacita adresate, prin functia de adres: ilustra At zonele continue de adrese din hart au dimensiuni mai mici, cu atit vor fi ms \dresa cu rezulti c& zonele se vor vor exista mai multe Memoria primar 5.4. Marirea dimensiunii MP peste limita de adresare a UC mai multé memorie Daca in sistemul de calcul existi implementa decdt se poate adresa prin magistrala de adrese, atunci spatiul adreselor fizice P este mai mic decat cel al locatiilor de memorie M (dim P < dim M) in acest caz, unitatile master nu mai pot adresa direct, prin magistrala de in sistem, adrese, intreaga memorie existent Mirirea dimensiunii MP peste limita de adresare a unititii centrale se poate face folosind mecanismul de comutare a blocurilor de memorie, intr-un acelasi spatiu de ice din P (bank switching). Acest mecanism este ilustrat in figura 5.6 si se implementeazd in mai multi pasi de comutare a blocurilor de memori Fig. 5.6. Mecanisy 1. in spafiul liniar de adrese fizice adrese, de dimensiune fixa, notat& Po. A 4 va fi folosité pentru comutarea blocurilor de memorie. Spatiul de adrese ramas se noteaza P’, rezulténd: este 0 zona continud de 140 Cap. 5, Memoria primari in spatiul locas je memorie M se separa o zon de locatii de memorie M’, de dimensiune egala cu P*: dim M' = dim P Aceasti zona va fi adresati direct de adresele din P”. Spatiul locatiilor de memorie rimas se noteazé M M=M'uM" Deoarece dim M> dim P si dim M’ = dim P’, rezulta dim M" > dim Pc Observatie Dimensiunea zonei de adrese Pc se alege, astfel incat si fie de & ori mai mic& decit dimensiunea zonei de locatii de emorie M” 5 memorie M ae ‘dim Pe keN ‘ona M” se imparte in & blocuri de dimensiuni egale cu zona Pc, notate By ... By M*=(JB,, unde dim8, i Funetia de adresare va avea dowd expresii diferite, fiind: fat :P' J Po > M [f@ aeP, fuPioM' LE"@) aePo, f'Po>B, i=Lk a lui f “este fix’, find particular fiecdrui sistem de calcul Functia f" are expresie variabila, ce riméne neschimbati, cat timp se lucreaza cu blocul B Daca se doreste accesul la un not si modifice expresia. Aceasta perm sf selecteze, la mon diferite ale lui M” bloc B, din M™, functia f © aceeasi adres’ a din Pc ¢ de timp diferite, locafii de memorie din blo trebuie Rezulti ci functia de adres: are expresie variabila in. timp, dependenté de blocul de memorie adresat de / Cap. 5. Memoria prima Modificarea expresiei lui fag se face printr-un mecanism hardware, ce determin’ comutarea blocurilor de memorie, sub controlul unei componente software (de obicei, a sistemului de operare). Mecanismul de comutare a blocurilor de memorie permite ‘ea intregului spatiu de locatii de memorie M, inst, de timp se poate Iucra cu o capacitate de memorare maxin spatiului de adresare P. utili in fiecare moment egala cu a Metoda de definire a expresiei functiei de adresare, prezentati anterior, are urmatoarele dezavantaje: ntroduce timpi de intarziere, cind se doreste comutarea blocurilor de memorie, necesari pentru schimbarea expresiei lui fu ~ functia de adresare nu este foarte flexibili, deoar sce lucreazA la un tla adrese succesive. Este moment dat cu un singur bloc din M”, plas pref dresa diverse locafii de memorie, distribuite in M at ca si se poat Pentru a face functia de adresare mai flexibili, aceasta trebuie si lucreze cu mai multe blocuri din M ” simultan, dupa cum se poate observa, in figura 5.7. Cap. 5, Memoria primara Funetia de adresare trebuie s& conjin& expresii multiple, mecanismul de comutare este urmatorul + zona de adrese Pe se imparte in m zone de dimensiuni egale: =UP, dim P; ecm, m + spatiul de locafii de memorie M ” se imparte in n blocuri de aceeasi dimensiune: dim P- m =a, dim B, dim P, Deoarece dim M” = in aceste conditii, fiecare zona de adres bloc de memorie din M ”’. Functia de adresare are expresii multiple, fiind de dim 2, = km: dimB,, rezulté cin =k- m din P poate accesa un forma: \ Fog P' {Ur Pr M' [7a “aeP’, f:P'>M f@ aePoy, fy :Py By jalan a) = | | { fr(@) G€ Poms fy'Pom Bim im zh Aceasta functie de adresare este mai flexibila, deoarece poate Iucra tan. Expresiile tare a un moment dat cu m blocuri de informatie din M” simu ctillor f;” pot fi modificate independent, prin mecanismul de « blocurilor, sub controll unui driver software. Acesta comand comutarea, ese de porturi VO. 4, la comutarea prin cicluri de scriere la adi Observatie: ebuie subliniat realizeaza nici un transfer de informatii i De obicei zona de adrese Pc flor, nu se ii de memorie, are, in spatiul de e poate alege softw: d at plasate Ia adrese succesive Iculatoarele compatibile IBM-PC, zona de loc: ii de Memoria primara 5.5. Memoria expandati Memoria expandati reprezinti o memorie de dim: a aparut cu scopul de a folosi, prin mecanismul de co multa m siuni mari, care mutare de blocuri, mai morie decdt poate adresa direct unitatea central La calculatoarele personale IBM-PC, memoria expandata a fost introdusa prima dati pentru a depasi limita de adresare de 1Mo (20 linii de adres), impusi microprocesoarclor Intel in modul de lucru real, ce rulau cu sistemul de operare MS-DOS. Ulterior, nofiunea a fost pastrati din considerente de compatibilitate software, pentru toate programele DOS Pentru definirea memoriei expandate, in timp au fost utilizate mai larde. Cel mai cunoscut este standardul LIM/EMS (Lotus Intel Expanded Memory Specification), care a avut mai multe versiuni Wollinger, 1991), Mecanismul de implementare a memoriei expandate, definit de LIM/EMS v.3, este urmitorul, fiind reprezentat in figua ~ in spafiul de adrese fizice al UC, situat in harta de memorie, in primul Mo de memorie, in zona rezervatt (vezi figura 5.4), se defineste o z continua de 2’° adrese de memorie (Pc). Aceasta se imp: mici, numite ferestre de pagind (FP), in care, prin mecanismul de comutare blocurilor, vor fi aduse blocuri din memoria expand te in 4 zone mai dim Po = 2', m=4 sirezults dim Ps _ yi dim P,, = dim FR ~ spatiul locajiilor de memorie, rezervat ca memorie expandatl, se imparte in blocuri de dimensiuni mai mici, de /6 Ko, numite pagini (Pag) ici dim B, = dim Pag; = dim Pe, = 16 Ko = 2" 0. Standardul limiteaz’ dimensiunea memoriei expanc unde rezulta numarul maxim de pagini din memoria expandati (n) dimM" _ 8Mo dimB, 16Ko dim M" = 8 Mo Cap. 5. Memoria primari | Memorie ' Paces = extinsa ! Memorie ___| “FFFFF A |” expandata (512 pagini) DEFFTT | ‘po000 H_[-FF RAM VIDEO =| DRAM | 640 Ko 000004 | ig, 5.8. Mecanismul memoriei expandate in orice moment de timp, functia de adresare poate lucra cu 4 pagini de memorie expandata simultan, Driverul softwar EMM (Expanded Memory Mane expandati si primeste apelurile de functii EMS, transmise de ap! o intrerupere software , ce real av’ comutarea pagi nilor, se numeste Acesta_gestionea: memoria aii printe- al Mecanismul de comutare presupune doar un proces de nare a paginilor la anumite zone de adr fel de transfer de informatii e, si nu include nici w a cererea programelor utilizator, paginile pot fi atribuite unor ferestre de pagina. Atunci cand v memorie expandata, el va face ram doreste accesul la 0 locatie de un apel de functie citre pagina corespur r-o fereastra de pagina, in care toare va fi alocatt i sa direct datele solic aplicatia poate at In proc alocate, atunci una dintre dezalocarea paginii resp ul de alocare a paginii, daci toate ferestrele de pagina fevestre va fi el iberata, fe. Apoi, pagina solicitatd la ultima o alocata acestei ferestre de nd, Cap. 5, Memoria primara Deoarece mecanismul de comutare duce frecvent la dezalocarea paginilor din ferestrele de py expandati se memoreazi de obicei date si nu programe. Programele sunt rulate tot in zona de lucru DOS, de 640 Ko. La calculatoarele compatibile IBM-PC, spativ deasupra spatiului de adrese de J Mo, se numeste mem (Extended Memory). Aceasta este definitd de standardui XMS (eXtended Memory Specification), i special, care comut& modu! de tucru al microprocesorului, astfel incitt si poati accesa intreaga memorie primar. De asemenea, zona de memorie plasata intre 640 Ko si I Mo se numeste aria de memorie superioard (UMA = Upper Memory Area), iar blocurile neutilizate din UMA se numese blocuri de memorie superioard (UMB = Upper Memory Blocks). De obicei, calculatorului, iar ferestrele de pagin& nd, in memoria memorie de memorie, situat rie extinsé pentru utilizare, necesiti un driver software 4 din memoria extinsa a ndatd este reze -moria ex; nt rezervate in blocurile de nemorie super Initial, ta microprocesoarele pe 16 biti, implementarea standardului EMS presupunea existenja unei componente hardware, sub forma unei placi xpandat, sia unui driver software, care prime junctii EMS de la aplic memorie expand: Odaté cu aparitia hardware de comutare a fost integr expand: expandate, presupune mai intai accesarea memoriei extinse De aceea, pentru implementarea standardului EMS, in acest caz rh aday ptoare de memorie ¢ lor pe 32. biti roproceso! microprocesor, iar memoria a putut fi rezervatd din memoria extinsa. ins, utilizarea memorici sunt necesare doua drivere software, instalate in aceasta ordine ~ driverul de memorie extinsa (HIMEM.sys), care face posibila accesarea memorie extinse: = managerul de_memorie expandal 4, cernd zone de (EMM386.exe), care _gestioneazi em memoria expandat ie extinsé, dupa necesititi, in plus, in sistemele de operare multitasking, driverul de m Dos, tucru protejat al microprocesorului, pentru a accesa memoria fare cunosc standardul XMS si pot activa sau dezactiva modul de 146 . Memoria primara 5.6. Util zarea memoriei ROM in MP Memoria ROM este utilizatd in MP, cu cay de mici (zeci - sute Ko). Ea contine componentele software, necesare procesorului la alimentarea prima dati sau dup’ RESET, cand memoria de lucru (volatila) nu contine informatii valide. Aceste componente sunt necesare pentru testarea si utilizarea eficient& a resurselor hardware ale calculatorului, precum si pentru incdrcarea sistemului de operare. Ulterior, sistemul de operare poate apela, in ROM, © serie de drivere software, necesare gestionirii resurselor sistemului de calcul La calculatoarele personale, memoria ROM confine patru componente software, ilustrate in figura 5.9. Deoarece cuprinde si componenta BIOS, uneori memoria ROM jemoria BIOS ROM ai este numita J Programul 7 » fe | bootstrap | | Programul | | Componenta pad SETUP | BIOS ware ale memoriei ROM (Power On Sel alimentarea prima dati a ca 1. Componenta POS Test) este un program de culatorul Acest program indeplineste succesiv mai mi autotestare, exect te sarcini: Jor sistemului de cale testarea tuturor omponen 147 Cap. 5. Memoria prim Sarcina cuprinde testarea unit ale, verificarea sumei de control a memoriei ROM, accesarea plicii video si verificarea componentelor ei, testarea memoriei de lucru a sistemult asigurarea bunei funcfionari a diverselor componente hardware; = programarea circuitelor programabile, care pot opera in mai multe , precum gi alte teste specifice pentru moduri de lucru, Aceasti sarcina realizeazi programarea circuitelor temporizator/numaritor, precum yi a tuturor controlerelor din_ sistem: controler de intreruperi, controler DMA, FDC, HDC, controler de tastatur’ pentru comunicatii seriale, paralele gi prin refea ete; = identificarea tuturor dispozitivelor autoconfigurabile, de tip plug & play realizarea hartilor de alocare a resurselor, cum ar fi: memoria, porturile VO, intreruperile interne si exteme, canalele controlerului DMA ete. Erorile detectate in teste pot fi afigate pe ecran, dacd subsistennul video este operational, sau pot fi semnalizate acustic, prin beep-uri in difuzor, respectiv optic, prin palpairi in LED-uri Dacii se restarteazi calculatorul, prin reser software (combinatia de taste Cirl-Alt-Del), numit si reset cald, componeta POST trece peste testul de memorie, care dureaza cel mai mult Versiunile noi ale programului POST verifica toate memoriile ROM instalate in sistem, ce confin componente BIOS suplimentare, Pentru aceasta, cauti in memorie o valoare binard particulara, incepand cu adresa CO000H, si pana la inceputul memorie ROM BIOS, in blocuri de cate 2 Ko. Se considera 0 noua memorie ROM, daca blocul de memorie testat confine, in primii doi octeti, valoarea AA55H. in acest caz, al treilea octet reprezint& r hungimea memoriei ROM respective, exprimatd in blocuri de cate 5. Daca in timpul testarilor se apas4 o anumité tasté, componenta POST pred controlul pro; are a parametrilor sistemului (SETUP), daca nu, la sfirsit se preda controlul urmatorului program. 2. Programul bootstrap loader este programul incrcator al sistemului de operare. Acesta incarci in memoria primar’, sistemul de operare de pe unitate de memorie secundard, iar apoi preda controlul citre SO, lansandu-1 executi Cap. 5. Memoria primara Programul cautd un s d em de operare, succesiv, dintr-o list’ indicata de utilizator prin programul SETUP si memoral in memoria de parametri CMOS. in list pot fi indicate unitati HDD, FDD, CD-ROM, unititi extere conectate prin USB ete. Pentru unitafile cu mai multe partitii logice, cum sunt hard discurile, programul ircltor cauti sistemul de operare doar pe partitia declarata activa unitiqi de memorie secundar in cazul sistemelor de operare foarte mari, cum sunt cele ing, programul incdrcdtor transfer in MP doar © component m a sistemului de operare, pe care o lanseaza in executie. Aceasta modifi modul de lucru al microprocesorului, conform cerintelor de multitas! continua incirearea intreguh i sistem de operare, Programul SETUP este un progt 1m de configurare sau modificare a unor parametti ai calculatorului, Se lanseazi in execujie doar la cererea utilizatorului, in timpul test POST, pr apasarea unei taste particulare (de exemplu, Delete), Parametrii de sistem sunt pastrati intr-o memorie de tip SRAM CMOS, cu consum foarte mic, ce este alimemtata, atét de la sursa calculatorului, cai for. Cand 1 este oprit, CMOS-ul riméne alimentat de la acumulator, pistrandu-si astfel informatiile. Memoria CMOS are 0 capaci octefi) si este accesati prin adrese de port /O. in plus, aceasta confine si un eas de timp real, ce permite actualizarea datei si orei curente, cat timp Sprit. lor realizate de componenta si de la un acumul ulator te de memorare mic& (sute de calculatorul este 4. Componenta BIOS (Basic Input-Output System) reprezint’ un ansambli de subrutine, sub forma unor drivere software, prin intermediul carora pot fi accesate resursele calculatorului, cel putin pané la inc wrearea sistemului de rare. Deseori, aceast component este numiti ROM BIOS (componenta BIOS din memoria ROM), pentru a o diferentia de componenta BIOS a sistemelor de operare multitasking, incdrcata odata cu sistemul de operare, Drivere suplimentare ale componentei ROM BIOS se pot memorii ROM de pe pla 1/0 respective. ile adaptoare, spec 149 Cap. 5. Memoria primark neral, toate plicile adaptoare, care sunt active in proc initializare a calculatorului, dispun de memorii ROM, accesate de unitatea centrald: placa video, placa de sunet, placa de refea ete. Dac’ i té unitati YO, pentru care componenta BIOS dispune de drivere software, atunci aceste resurse nu vor putea fi utilizate, decat dupa incircarea driverelor respective din memoria secundard, fie odata cu sistemul de operare (in timpul initializarii calculatorului), fie ulterior, de catre utilizator sistem e7 Sistemele de operare monotasking (de exemplu, MS-DOS) sunt mult mai simple si folosese componenta BIOS din memoria ROM gi dupa inclreare. Cand dorese accesu! la o resur a sistemului, programele de aplicatie pot accesa direct resursa, da aceasta, sau pot apela o functie a sistemului de operare, pentru accesarea resursei. Daca primeste o astfel de apelare (printr-o intrerupere software) sistemul de operare 0 executi, apeldnd la randul Iui, servieii BIOS din componenta BIOS. dispun de drivere software pentru Sistemele de operare multitasking contin propria componenti BIOS, care este mai ampla gi se incarc& din memoria secundar’, odata cu sistemul de operare. in felul acesta, accesul ta asigurat prin intermediul unui mecanism de protectie, bazat pe nivel prioritate. Aplicafiile nu au acces direct la resursele sistemului, ci doar prin componenta BIOS a acestuia, si primesc a sau nu, in functie de prioritatea pe care o au fat de resursa respectiva. Mai mult, un acces poate duce la inchiderea aplicatiei sele calculatorului este res emplu: Sistemele de operare pe 32 biti Windows (toate incepand cu Win 95) nu utilizeaz componenta ROM BIO: avand integraté propria components BIOS, incarcata odat’i cu sistemului de operare. Tot loader trebuie si acceseze unititile de memorie secundar si, pentru incrcarea SO, programul bootstrap pentru aceasta are nevoie de driverele software respective ROM BIOS. 6 Cap. 5, Memoria primara Enumerati avantaje cons nale ale modularizirii MP, at si in cele multiprocesor. De ce numirul bank-urilor dintr-un modul se aleg puteri ale lui 2? Pentru un modul de memorie de 64 M x 32, determinaji numarul liniilor de adresa gi dimensiunea cuvant Ce capacitate de memorare, exprimatd in octeti, are un modul de memorie de 4 M x 647 Dar daca se exprima in biti? Explicati de ce Ia PC-uri, memoria primard este organizata pe octet desi microprocesorul Pentium poate transfera 8 octeti simultan, Caracterizafi magistralele de date ale modulelor de memorie SIMM si DIMM. Cum ar accesa modulele SIMM, un microprocesor Pentium. Definiti problema de aliniere a operanzilor in memorie. Explicati cum sunt realizate transferurile din memorie, in ca operanzilor aliniati, respectiv nealiniati in memorie. Determinaji daca un operand pe 32 biti este aliniat ci adresa sa de inceput este O9ABC H. Un vector are 8 elemente de 16 biti gi este memorat in MP, incepand cu adresa fizici 0122 H. Vectorul trebuie transferat in MP, incepand cu adresa 0321 H. Analizind problema alinierii operanzilor, s& se determine numérul de cicluri de citire si de scriere in/din memorie. Definiti spatiul adreselor fizice si spatiul locatiilor de memorie. Explicati de ce memoria cache nu este inclusi in spatiul locati memorie M. atat in sistemele monoprocesor, tului memorat. ul memorie, stiind Enumerati proprietatile functici de adresare, Ce se intampli in cazul in care dimensiunile lui P si M sunt diferite? Definii si exemplificati harta de memorie, in harta de memorie de J Mo, memoria video ocupi placa video lucreaza in modul alfanumeric, determin: poate ea memora, Dar pagini de ecran’ Stiind c& dupa RESET, microprocesoarele Intel tree in modul de lucru accesata este FFFFO H, si se determine memoria n executi de aici , pentru MP, diverse h&rti de memorie. accesatd gi sa se explice ce pr Explicati cum se pot obtin IS 19, Memoria primara Un modul de memorie de 256 Mo are 8 bank-uri de dimensiuni egale. S& se determine numérul liniilor de adres pentru adresarea modulului sia bank-urilor. Cate linii de adres realizeazi selectia bank-urilor? Definiti mecanismul de comutare a blocurilor d memorie. Explicati prin ce componenta a functiei de adresare (cu expresie fix sau variabila) va fi accesat un program in timpul executiei sale. Este posibil ca dou adrese diferite si acceseze aceeasi locatie de memorie, prin mecanismul de comutare de blocuri? Cum se poate face functia de adresare mai flexibil Pentru comutarea multipla de blocuri, este posibil ca dous adrese Giferite s& acceseze aceeasi locatie de memorie? in sistemele multitasking este posibil ca mai multe programe s& acceseze blocuri de memorie, prin comutarea multipli de blocuri? Definiti memoria expa nentati utilitatea introducerii ei Explicati mecanismul de implementare a memoriei expandate, prin standardul LIM/EMS v.3 Cu cate blocuri de memorie expanda un moment dat? Dar in total? Explicati procesul de alocare a paginilor de memorie expandati, in ferestrele de pagina. Ce tip de informatii sunt memorate in memoria expandata si de ce? Definiti memoria extins& si aria de memorie superioara, 'e drivere software sunt necesare la implementarea standardului EMS, pentru microprocesoarele pe 32 biti? Explicati componenta POST din memoria ROM si exemplificati operatiile efectuate de aceasta Explicafi cum au loc ciutirile memoriilor ROM suplimentare. Ce informatii se obfin, daca blocul de memorie testat cont trei octefi, valorile AAH, 55H si respectiv 20H. Explicati programul bootstrap loader din memoria ROM si exemplificati operatiile efectuate de acesta. Explicatiprogramul SETUP din memoria ROM si exemplificati operatiile efectuate de acesta. Unde sunt salvati parametrii de sistem? Explicati componenta BIOS din memoria ROM si modul ei de utilizare, in sistemele de operare monotasking, respectiv multitasking, ta si argu i poate lucra o aplicajie DOS la in primi SUB) prelucrare U Ja functia sa gm Subs central (Po). mai multe pra sistem de cal Fung logice, de de nut jerice sa unitatea c diferite (de

Potrebbero piacerti anche