Documente Academic
Documente Profesional
Documente Cultură
(L1A)
2. Explicati cum s-a transat rivalitatea dintre arhitecturile RISC si CISC.
5. Ce reprezinta un sistem de benchmark de tip SPEC si cum este utilizat acesta?
Algoritmul de integrare Monte Carlo are ca scop determinarea numarului pi, prin
intermediului cercului unitar, prin masurarea raportului intre numarul de puncte din
interiorul cercului, respectiv numarul total de puncte. Este deosebit de usor de
implementat, deoarece se poate identifica foarte usor numarul de instructiuni in virgula
mobila efectuate de procesor pentru fiecare numar aleator, generat.Astfel procesorul
consuma trei operatii pentru generarea expresiei
11. Cum se modifica rezultatele produse prin rularea unui test de performanta
pentru procesoare daca se dubleaza memoria instalata a sistemului de calcul?
12. Ce influenta are arhitectura interna a unui procesor asupra rezultatelor unui
test de tip benchmark?
Cu cat numarul de instructiuni pe secunda in cazul unui procesor este mai mare,
cu atat testul de benchmark se va incheia mai rapid ( durata testului va fi mai mica).
Cu cat dimensiunea memoriei interne este mai mare, cu atat putem creste
dimensiunea sistemului liniar (altgoritm Limpack) mai mult, si putem testa rezultatele
performantei pentru diferite valori ale lui n suficient de mari ( in limita capacitatii
memoriei interne) .
2. Cum s-au dezvoltat in ultimii ani magistralele specializate? Dati exemple.
ISA- 16 bit
EISA,
FireWire
USB
PCI
SCSI
AGP.
8. Gasiti un tip de magistrala care nu face parte din aplicatie si realizati o comparatie.
2. Care sunt principalele diferenţe conceptuale între arhitecturile de tip CISC şi
RISC?
9. Care este numărul de sondări ales pentru rularea algoritmului de integrare Monte
Carlo? Explicaţi această alegere.
11. Cum se realizeaza comparatia intre performantele calculatorului curent si cele ale
unui calculator predefinit?
12. Câte moduri de paralelizare ale unui program secvenţial pot exista?
13. Care este creşterea procentuală a performanţei pentru un procesor dual-core obţinută
prin paralelizarea algoritmului Monte Carlo? Dar pentru un procesor quad-core?
In cazul programului din laborator, in cazul neselectarii atribuirii unui task unui
procesor, task-ul va fi lasat in seama planificatorului de procese pentru a fi distribuit catre
un anume nucleu. In cazul in care se va bifa repartizarea, respectivul task deschis,
corespondent unui anumit procesor/nucleu, va rula cu siguranta pe procesorul caruia ii
este destinat.
Structura superscalara cu tehnica de burst sau citire in rafale este folosita incepand
cu microprocesorul 80486 si este corelata cu momentul introducerii in capsula
procesorului a memoriei cache de nivel 1 .
Tehnica burst foloseste aceasta memorie pentru a citi blocuri de instructiuni din
memoria cache ,instructiuni care au fost incarcate acolo din memoria principala in mod
secvential.In aceste mod se citesc dintr-o data fie doua fie patru cuvine in functie de
dimensiunea instructiunii( 32 sau 16 biti). S-a folosit initial o magistrala de 64 biti
ajungandu-se in prezent la 256,412 sau chiar 1024 biti.
6. Cum se poate calcula diferenta de timp (Δ) intre durata totala a unor procese
prelucrate pe loturi si prin multiprogramare? Dar intre multiprogramare si diviziune in
timp?
In cazul diferentei de timp intre durata toatala a unor procese prelucrate pe loturi
si microprogramare, aceasta este data de durata intrarilor si iesirilor fiecarui proces mai
putin o intrare si o iesire.
3 procese
10. Aratati care sunt resursele unei unitati centrale de calcul (CPU) implicate in
fiecare dintre etapele unui proces (intrare, calcul si iesire). Exista procese la poate lipsi
etapa de calcul?
Resursele unei unitati centrale de calcul ( CPU ) implicate in etapa de calcul sunt :
unitatile aritmetico-logice . In cazul operatiilor de intrare respectiv de iesire resursele pot
fi integrate in CPU, sau pot integrate in capsule diferite de cea CPU-ului. Componentele
ce se ocupa cu operatiile intrare/ iesire sunt controlere specializate in gestionarea
operatiilor de intrare/iesire.
Alliant FX/8 ,
Nec SX-6
14. Dati cel putin doua exemple de controlere I/O. Exista si altele in afara de cele
prezentate in lucrare? Care sunt acestea?
3. Care este avantajul folosirii diviziunii in timp fata de celelalte metode?
4. Cum se poate adapta tehnica diviziunii in timp pentru a face ca toate procesele
implicate in executie sa se incheie (aproximativ) in acelasi timp?
5. Explicati care este diferenta intre notiunile de thread si cea de multithread.
Fiecare aplicatie sau program care ruleaza pe sistemul de oprerare este un proces .
Fiecare proces este alcatuit din unul sau mai multe thread-uri .Un thread este un
set de instructiuni sau o parte anume a aplicatiei care se va executa independent in cadrul
programului sau sistemului.Thread-urile sunt entitati responsabile cu multitasking ul in
cadrul unei singure aplicatii.
7. Care sunt modelele de threading suportate de sistemele win32? Realizati o analiza
comparativa a acestora.
a) Modelul thread ului unic (Single thread model)-presupune rularea unui singur
thread la un mom dat.
8. Cum se explica faptul ca utilizand de n ori mai multe resurse in paralel, un
algoritm nu va rula de n ori mai repede?
Utilizand de n ori mai multe resurse in paralel un algoritm nu va rula de n ori mai
repede datorita fenomenului de timp suplimentar(overload) indus prin aplicarea
paralelismului. Acest timp suplimentar apare din urmatoarele cauze:
9. Cum influenteaza durata etapelor de intrare si iesire asupra diferentei () intre
timpii totali obtinuti prin prelucrarea pe loturi si multiprogramare?
Cu cat duratele etapelor de intrare si iesire sunt mai mici cu atat multiprogramarea
se apropie de prelucrarea pe loturi. Cu cat durata operatiilor de intrare este mai mare cu
atat se simpt mai mult avantajele multiprogramarii ( prelucrarea simultana a unei operatii
de calcul si o operatie de I/O).
10. Dati exemple de instructiuni pipe-line care nu parcurg toate cele 5 etape ale
executiei unei instructiuni.
Etapele de fetch, respectiv decodare au loc pentru fiecare instructiune. Pot exista
instructiuni care nu solicita unitatea aritmetico- logica ( instructiunile de declarare a unei
variabile, instructiuni de afisare la consola, instructiuni de citire). Nu toate instructiunile
necesita accesul procesorului la memoria interna ( operanzii se pot afla in registrele
interne ale procesorului ).
11. In cazul simularii pipe-line, identificati dupa schema arhitecturii von Neumann ce
resurse sunt implicate in fiecare din etapele de executie ale unei instructiuni.
12. Care este parametrul esential in aprecierea eficientei unui sistem paralel?
Prezenta unui proces dominant se poate pune in evidenta prin setarea prioritatilor
threadurile in diverse trepte ( minima, subnormala, normala, peste normal si maxima).
2. Discutaţi, comparativ, cele două tipuri de memorii SRAM. Care sunt domeniile
lor de aplicabilitate?
Conform schemei bloc a memoriei SRAM, Circuitul I/O se comporta atat ca intrare de
date( atunci cand dorim sa stocam o data in memorie) cat si ca iesire de date atunci cand citim
o data din memorie. In functie de starea semnalelor CE, WE, OE ce se aplica blocului logic de
control, acesta (blocul logic de control ) seteaza Circuitul I/O fie ca intrare de date fie ca iesire
de date. Spre exemplu daca adresa de pe magistrala de adrese este validata ( CE activ pe 0 ),
semnalul de comanda WE este inactiv (WE=1), iar OE este activ (OE=0), atunci are loc o
citire din memorie, deci Circuitul I/O se va comparta ca un circuit de iesire ( acesta va furniza
pe magistrala de date, data corespunzatoare adresei de pe magistrala de adrese). Daca adresa
de pe magistrala de adrese este validata ( CE activ pe 0 ), semnalul de comanda WE este activ
(WE=0), iar pe magistrala de date este plasata o data, atunci are loc o scriere in memorie, deci
circuitul I/O se va comporta ca un circuit de intrare ( acesta va furniza o data care se doreste a
fi stocata in memorie la adresa existenta pe magistrala de adrese ) .
CBR (CAS Before RAS) este tot o metodă de împrospătare din exterior, prin care
se transmit semnalele şi , activate în această ordine. În acest caz, memoria
dispune de un numărător de adrese intern, pentru indicarea liniei care trebuie
împrospătată, fără a fi nevoie de transmiterea adresei din exterior. De asemenea, perioada
de repetiţie a ciclurilor de refresh este determinată de un ceas de timp real extern.
Timpul de acces la o unitate de memorie (tA) este timpul necesar localizării unei
celule de memorie, pentru transferul de informaţii la/de la locaţia de memorie respectivă.
Acesta reprezintă intervalul de timp calculat din momentul în care o unitate master
lansează o comandă către o unitate de memorie şi până în momentul în care informaţia
este transferată în sensul dorit.
Rata de acces (rA) este inversa timpului de acces, fiind exprimată în cuvinte pe
secundă:
rA = [cuv/s].
Timpul de ciclu la o unitate de memorie (tC) este timpul minim între două
accese succesive şi reprezintă timpul din momentul în care o unitate master lansează o
comandă (COM 1) spre unitatea de memorie şi până când poate lansa o nouă comandă
(COM 2) la aceeaşi unitate de memorie.
rT = [cuv/s].
Intotdeauna este valabila relatia tC > tA, diferenţa lor numindu-se timp de revenire (tR =
tC – tA). Acesta reprezintă timpul minim necesar pentru inactivarea primei comenzi, până
la activarea celei de-a doua. Asadar cu cat timpul de acces este mai mare, conform
inegalitatii tC > tA , timpul de ciclu va fi si el mai mare.
alte cerinţe speciale (de exemplu: accesul dual de pe două magistrale,
reîmprospătarea controlată centralizat, implementarea unor mecanisme de
detecţie a erorilor etc.)
Memoria DRAM (Dynamic RAM) este o memorie volatilă cu acces aleator, care
memorează informaţia în mod dinamic. Este realizată în tehnologie CMOS
(Complementary MOS), cu consum de energie foarte mic. Datorită particularităţilor
constructive ale celulelor de memorie, informaţia 0L este memorată stabil, dar informaţia
1L se pierde în timp şi necesită împrospătarea periodică a memoriei, de unde şi
denumirea acesteia.
Indiferent de modul de realizare, memoria DRAM este mult mai lentă decât
memoria SRAM, din cauza mecanismului specific de memorare a informaţiilor. Timpul
de acces la DRAM este de 2–10 ori mai mare decât la SRAM, şi variază în funcţie de
tipul accesului la memorie.
Astfel, în acces aleator, timpul de acces este mare (zeci de ns), însă scade foarte
mult (în funcţie de tipul memoriei DRAM), dacă se restricţionează accesul în mod
pagină, putând ajunge doar de două ori mai mare decât al memoriei SRAM.
Celula de memorie este mult mai mică decât la memoria SRAM, ceea ce permite
realizarea unor densităţi mari de integrare. Circuitele de memorie DRAM au, prin
urmare, capacităţi de memorare mari, şi implicit un număr mare de linii de adresă.
17. Ordonaţi tipurile de memorii descrise în lucrare după criteriul vitezei de lucru.
In cazul memoriilor dinamice asincrone, in functie de viteza de lucru, cele mai rapide
sunt memoriile tip BEDO DRAM, apoi EDO DRAM, dupa care memoriile tip FPM.
In cazul memoriilor dinamice sincrone, memoriile tip DDR SDRAM sunt mai rapide
din punct de vedere al vitezei de lucru fata de memoriile tip RDRAM.
In cazul memoriilor dinamice sincrone, in functie de viteza de lucru, cele mai rapide
memorii de tip DRDRAM sunt memoriile PC 800, apoi memoriile PC700, dupa care
memoriile PC600.
Memoria cache este realizata din celule SRAM rapide. Aceasta este interpusa intre
microprocesor si memoria RAM, jucand rolul de memorie tampon. Memoria cache trebuie
sa fie suficient de rapida ( timpul de acces sa devina comparabil cu timpul de lucru al
microprocesorului), astfel incat, numarul de stari de asteptare pe care procesorul le
introducea pentru sincronizarea cu memoria RAM, sa scada. Memoriile rapide sunt
realizabile din punct de vedere tehnologic, dar costul lor este ridicat. Sunt cunoscute însă
tehnici pentru combinarea unei memorii rapide de dimensiuni mici cu o memorie mai
lentă de dimensiuni mai mari, pentru a se obţine aproximativ viteza memoriei rapide şi
capacitatea memoriei lente, la un preţ moderat.
Dimensiunea memoriei cache trebuie să fie suficient de mică, astfel încât costul
mediu pe bit al întregului sistem de memorie să fie apropiat de cel al memoriei principale,
şi suficient de mare, astfel încât timpul mediu de acces al întregului sistem de memorie să
fie apropiat de cel al memoriei cache.
5. Definiţi biţii tag, index şi offset, care ajută la formarea adresei de memorie în
cazul mapării directe.
Cei 3 biţi mai puţin semnificativi (offset) identifică un cuvânt (octet) unic în
cadrul unui bloc al memoriei principale ( se presepune ca un bloc de memorie contine 8
octeti).
Câmpul de 7 biţi, numit linie (index), indică numărul blocului, modulo128. Astfel,
blocurile 0, 128, 256, …, 8064 vor fi amplasate în linia 0; blocurile 1, 129, …, 8065 vor
fi amplasate în linia 1, şi aşa mai departe, până la blocurile 127, 255, …, 8191, care vor
fi amplasate în linia 127.
Câmpul de 6 biţi, numit marcaj sau etichetă (tag), are rolul de a identifica în mod
unic blocul din linie. Astfel, blocurile 0, 128, 256, …, 8064 au numerele de marcaje 0, 1,
2, …, respectiv 63.
8. Care dintre metodele de mapare (directă, asociativă, asociativă pe seturi) este mai
eficientă? Argumentaţi.
Maparea asociativa elimina dezavantajul precizat mai sus. Un bloc din memoria
principală se poate încărca în oricare linie, iar marcajul său de 13 biţi se memorează
împreună cu blocul. Pentru a determina dacă un bloc se află în memoria cache, sunt
necesare circuite pentru a compara simultan marcajul său cu marcajele fiecărei linii. În
cazul mapării asociative, există o flexibilitate în privinţa înlocuirii unui bloc atunci când
un nou bloc este încărcat în memoria cache.Principalul dezavantaj al acestei metode îl
reprezintă circuitele complexe necesare pentru a examina marcajele tuturor liniilor din
memoria cache.
Bitul ( dirty data ) este pus pe 0 la incarcarea initiala a blocului in cache. La prima
scriere a acestui bloc, bitul se pune pe 1. Evacuarea propriu-zisa a blocului se face doar
daca bitul de dirty este 1.Practic, prin acest bit se minimizeaza evacuarile de blocuri in
memorie principala, pe baza principiului ca un bloc trebuie evacuat numai daca a fost scris
in cache.
13. Care dintre metodele de înlocuire a blocurilor în memoria cache este mai eficientă?
Argumentaţi.
metoda RW (Random Write) sau de rescriere aleatorie: datele conţinute sunt
rescrise aleator, fără a folosi un anumit criteriu sau algoritm care să determine
care bloc de date va fi rescris;
metoda FIFO (First In – First Out): primul intrat – primul ieşit, adică
primele blocuri de date scrise în memorie sunt rescrise primele;
metoda LRU (Least Recently Used): datele folosite cel mai puţin recent;
blocurile de date care, static, au fost folosite cel mai rar sunt rescrise primele,
cele folosite recent fiind păstrate;
metoda LFU (Least Frequently Used): se înlocuieşte blocul care a fost
utilizat cel mai puţin , adică cel mai rar din punct de vedere statistic.
Metoda cea mai folosită este LRU. Cipul de memorie cache numit TAG RAM va
juca rol de contor static al frecvenţei de apelare a datelor din memoria cache,
determinându-se datele care vor fi rescrise.
14. Care metodă de scriere (depunere în memorie a rezultatelor) modifică informaţiile
din ambele memorii (cache şi RAM)?
Metoda Write Through care utilizeaza traseul invers al citirii datelor, blocurile
fiind depuse mai intai in memoria cache interna, apoi in cache-ul extern si in final in
memoria RAM.
In cazul metodei Write –Thorough toate cele trei memorii vor fi accesate, in cazul
unei operatii de scriere. In cazul metodei Write Back, in cazul in care blocul in care se
realizeaza scrierea se afla in cache, scrierea se face in cache, si nu va mai fii accesata si
memoria RAM. Metoda Post Write utilizeaza un buffer din memoria cache in care se vor
depune blocurile care se doresc a fi scrise , atata timp cat magistrala memoriei nu este
disponibila.
16. Cum se foloseşte tabela asociativă, TA, în cazul metodei Write Through?
Astfel, la fiecare acces la memorie, se va căuta în TA adresa cerută şi, dacă există
o etichetă cu valoarea ABLP, se va furniza adresa blocului de memorie cache care rezultă
din poziţia etichetei respective în TA. Dacă nu există, atunci se va înlocui un bloc din
memoria cache, conform unui algoritm de înlocuire. În cazul de faţă este vorba de
algoritmul LRU (Least Recently Used).
T = TH H + TM M.
TH (hit time)
TM (miss time)
H (hit rate)
M(miss rate)
H = 1 – M.
Gestionarea tranzactiilor in sisteme I/O
(L4A)
IV. urmeaza citirea din tabela vectorilor de intrerupere (TVI) a unei adrese la
care se afla numarul canalului de intrerupere cerut;
VI. rolul final al rutinei sistemului de operare este sa refaca starea procesorului,
incarcand registrele salvate anterior, moment din care sistemul revine la starea si la
procesul care aveau loc inainte de lansarea semnalului IRQ.
Nivelele IRQ cu prioriatatea cea mai mica sunt :IRQ3–IRQ8 ( porturi seriale,
porturi paralele, floppy, ceas de timp real ).
7. Care nivel IRQ are prioritatea mai mare: IRQ3 sau IRQ10? Dar IRQ2 fata de
IRQ9?
IRQ10 este prioritar IRQ3. IRQ2 respectiv IRQ9 apartin aceluiasi nivel de
prioritate, insa cel cu IRQ mai mic este prioritar.
8. La ce folosesc nivelele IRQ? Dati exemple de dispozitive I/O si indicati ce nivel
IRQ poate folosi fiecare.
O posibila utilizare a niveleor IRQ este urmatoarea situatie: in cazul in care doua
dispozitive periferice solicita simultan accesul la microprocesor, microprocesorul va servi
dispozitivul care are un nivel IRQ mai prioritar.
Exemple de periferice :
Tastatura – IRQ1, IRQ4- conectarea seriala a unui mouse, IRQ-14 controler IDE1 pentru
HDD si CDROM.
Practic, dupa cuplarea fizica in slotul PCI liber, urmeaza instalarea driver-ului
placii respective (o actiune software), cu aceasta incheindu-se dotarea sistemului.
Sistemul va recunoaste automat la pornire placa nou instalata, configurand totodata si
canalele DMA, IRQ si adresele I/O necesare.
11. Care sunt cerintele de baza de la care se porneste in proiectarea unui sistem I/O?
Arta proiectarii unui sistem I/O este de a gasi proiectul care sa indeplineasca
obiectivele de cost, dependente si varietate a dispozitivelor, si, in acelasi timp, sa se evite
scaderea performantei I/O. Pentru a evita scaderea performantei, componentele trebuie sa
fie echilibrate intre memoria principala si dispozitivele I/O.
I. enumerarea diferitelor tipuri de dispozitive I/O care se vor conecta la sistem
sau enumerarea magistralelor standard pe care le suporta sistemul;
II. enumerarea cerintelor fizice pentru fiecare dispozitiv I/O, cerintele incluzand
dimensiunea, puterea, conectorii, sloturile disponibile pe magistrala etc.;
niciun disc nu trebuie folosit mai mult de 80% din timp;
niciun brat al discului nu trebuie sa caute mai mult de 60% din timp;
.
15. Cum influenteaza rata de transfer a discului sau a magistralei I/O asupra
performantelor sistemului?
Cu cat rata de transfer ( debitul binar) a discului sau a magistralei I/O este mai
mare cu atat starea de asteptare a procesorului ( care functioneaza cu o viteza mult
superioara dispozitivelor periferice) va avea o durata mai mica. Prin urmare
performantele sisitemului vor creste.
Studiul tehnicilor de transmisiune seriala
(L4B)
1. Care este diferenta dintre transmisiunea sincrona cu caracter de sincronizare si cea
cu semnal de sincronizare?
Un bit de start semnaleaza inceputul fiecarui cadru al unui caracter. Bitul de start
are mereu valoarea 0 (Space), facand de fapt o tranzitie de la semnalul negativ (Mark) la
cel pozitiv (Space) la inceputul fiecarui octet. Durata sa in secunde este reciproca ratei de
baud.
Bitii per caracter (bpc) indica numarul de biti utilizati pentru a reprezenta un
singur caracter. Acest numar nu contine si informatia de sincronizare si paritate.
Un bit de paritate optional urmeaza bitii de date in cadru. Bitul de paritate, daca
este prezent, urmeaza de asemenea logica inversa: 1 pentru voltaje negative si 0 pentru
voltaje pozitive. Acest bit a fost inclus ca o metoda de detectie a erorilor.
Mark este voltajul negativ, iar Space este voltajul pozitiv. Semnalele mai mari de
3 V semnifica transmiterea unui bit de 0, in timp ce semnalele mai mici de –3 V
semnifica transmiterea unui bit de 1. Semnalul „baleiaza” intre +12 V si –12 V, „zona
moarta” dintre +3 V si –3 V avand rolul de a absorbi zgomotul liniei.
Bitii sunt transmisi in logica inversata: adica 1 pentru voltaj negativ si 0 pentru
voltaj pozitiv, si in ordine inversa. Ordinea de transmisiune este de la LSB (Least
Significant Bit) catre MSB (Most Significant Bit). Pentru a interpreta bitii de date dintr-un
cadru, acestia trebuie cititi de la dreapta la stanga si trebuie considerat 1 pentru voltaj
negativ si 0 pentru voltaj pozitiv.
7. Care sunt avantajele tipurilor de modulatie numerica fata de cele analogice?
10. Care credeti ca este tipul de magistrala cel mai raspandit in cazul procesoarelor
actuale ? Justificati .
Cel mai raspandit tip in cazul procesoarelor actuale este magistrala asincrona
deoarece aceasta este independenta de timp iar dispozitivele conectate la o astfel de
magistrala pot fi usor inlocuite cu alte dispozitive mai performante pe masura ce
tehnologia avanseaza.
Scheme de arbitrare a magistralei
(L5B)
Nu pot fi introduse mai multe valori la un moment dat deoarece algoritmul FCFS
nu prefera nici o cerere anume, prima solicitare sosita este acceptata si servita.
Logica folosita este cablata, ordinea prioritatilor tine de ordinea in care sunt
conectate dipozitivele la magistrala.
Momentul 0:
• Perifericul 0 – 1
• Perifericul 1 – 0
• Perifericul 2 – 3
• Perifericul 3 – 2
Momentul 3:
• Perifericul 0 – 2
• Perifericul 1 – 1
• Perifericul 2 – 0
• Perifericul 3 – 3
Momentul 5:
• Perifericul 0 – 3
• Perifericul 1 – 2
• Perifericul 2 – 1
• Perifericul 3 – 0
Momentul 7:
• Perifericul 0 – 0
• Perifericul 1 – 3
• Perifericul 2 – 2
• Perifericul 3 – 1
Momentul 10:
• Perifericul 0 – 1
• Perifericul 1 – 0
• Perifericul 2 – 3
• Perifericul 3 – 2
Momentul 21:
• Perifericul 0 – 1
• Perifericul 1 – 0
• Perifericul 2 – 3
• Perifericul 3 – 2
Momentul 24:
• Perifericul 0 – 2
• Perifericul 1 – 1
• Perifericul 2 – 0
• Perifericul 3 – 3
Momentul 25:
• Perifericul 0 – 3
• Perifericul 1 – 2
• Perifericul 2 – 1
• Perifericul 3 – 0
Deoarece magistrala inca nu este libera, dupa ce aceasta a fost ocupata 3 unitati de
timp de catre perifericul 2 (care a solicitat magistrala in acelasi moment cu perifericul 0 si
a avut prioritate mai mare), a urmat randul perifericului 3 care a facut solicitarea sa inainte
ca perifericul 2 sa isi termine cele 3 unitati de timp, si avand prioritate mai mare fata de
perifericul 0 i-a fost alocata acestuia magistrala.
In cazul structurilor descentralizate fiecare periferic verifica daca poate avea acces
si decide singur.
10. Cum se calculeaza timpul mediu de asteptare pentru un dispozitiv I/O pana la
obtinerea accesului la magistrala?
Nivelul imediat superior nivelului fizic (exceptie facand daca exista nivelul
nanoprogramat) este locul nivelului microprogramat in structura stratificata a nivelurilor
unui calculator.
3. Care este rolul registrelor RTA si RTB din schema masinii microprogramate in
format orizontal? Dar al perechii de registre RDA si RAD?
Aceasta pereche de registre contine operanzii necesari pentru efectuarea unei operatii in
ALU, si isi primesc valoarea din registrele R1-R16.
Perechea RDA si RAD, reprezinta registrul de date (citite din memorie sau ce urmeaza a fi
scrise in memorie) respectiv registrul de adrese.
• Realizarea operatiunilor ALU si ale registrului shift; daca este necesar RAD este
incarcat cu valoarea RTB;
Memoria de microprogram este de obicei o memorie read-only foarte rapida care contine
instructiunile microprogramate.
Acesta are rolul de a adresa urmatoarea microinstructiune in functie de starea caii de date
si de bitii de control ai adresei urmatoare.
Blocul SI: contine 16 porti SI, care permit campului R1 dupa traversarea decodorului R1
sa comande golirea unui registru pe magistrala A si incarcarea sa pe magistrala C.
Blocul NZ: registru de 2 biti care inregistreaza semnalele N si Z la iesirea ALU, cand
aceasta inregistrare este ordonata de decodor.
Decodorul COP: decodorul codului operatiei, pentru fiecare dintre cele 16 coduri de
operatie acesta determina care dintre cele 13 microcomenzi sunt active si care sunt in
repaos.
10. Care sunt criteriile dupa care se decide daca pentru un sistem anume se aplica
formatul orizontal sau formatul vertical al microprogramarii?
16. In ce relatie se afla datele de intrare, in situatia in care este mai avantajos sa se
foloseasca nanoprogramarea in detrimentul microprogramarii ? Dar in situatia in care
nanoprogramarea este mai dezavantajoasa ?
Memoria fizica:
Memoria virtuala:
• Suportul fizic (de obicei HDD), pe care sistemul de operare salveaza zone din
memoria totala disponibila programului pentru a asigura spatii libere in zona de memorie
fizica, destinate zonelor de cod sau de date cu care programul lucreaza in momentul
respectiv;
Dimensiunile memoriei virtuale trebuie sa fie de cel putin doua ori mai mari decat
memoria fizica.
Fenomenul se manifesta la inlocuirea unor segmente initiale cu segmente mai mici decat
cele initiale, fapt care produce gauri in memoria principala, gauri care delimiteaza portiuni
cu segmente
10. Care sunt nivelurile de prioritate in executie ale programelor care opereaza cu
segmente? Unde se regaseste aceasta informatie in cadrul aplicatiei?
• Nucleu SO
• Apeluri ale SO
• Biblioteci dinamice
• Program utilizator
11. Care este diferenta dintre algoritmii LRU si FIFO de inlocuire a paginilor?
LRU contorizeaza numarul de utilizare ale fiecarei pagini eliminand la nevoie cea mai
putin utilizata pagina.
FIFO contorizeaza ordinea in care paginile au fost incarcate si la nevoie elimina prima
pagina incarcata.
12. Considerati ca algoritmul LFU (Least Frequently Used)far putea fi olosit cu succes
in politica de inlocuire a paginilor?
Best fit: Un algoritm care verifica marimile tuturor gaurilor si foloseste gaura cea mai
potrivita pentru marimea segmentului curent. Acest algoritm este mai lent dar combate in
buna parte fragmentarea. – cel mai eficient din punctul de vedere al spatiului de memorie.
First fit: Un algoritm rapid dar mai putin eficient in privinta fragmentarii. Principiul sau
este de a cauta prima gaura indeajuns de mare pentru a incapea segmentul curent. – cel
mai eficient din punctul de vedere al timpului de lucru.
Cand timpul necesar compactarii este mai mic decat pierderile din cauza fragmentarii.