Documente Academic
Documente Profesional
Documente Cultură
2
5.1. Principiile gestiunii informaiei.................................................................................................................................2
5.1.1. Definiii generale................................................................................................................................................2
5.1.2. Interpretarea numelor.........................................................................................................................................3
5.1.2.1. Construirea cii de acces.............................................................................................................................4
5.1.2.2. Structura reprezentrilor. Descriptori..........................................................................................................4
5.1.2.3. Contexte i medii.........................................................................................................................................5
5.1.3. Legarea...............................................................................................................................................................6
5.1.4. Protecia..............................................................................................................................................................7
5.1.4.1. Domenii i drepturi de acces.......................................................................................................................7
5.1.4.3. Problemele proteciei...................................................................................................................................8
5.2. Desemnarea i legarea fiierelor i intrrilor-ieirilor...............................................................................................9
5.2.1. Ci de acces la un fiier......................................................................................................................................9
5.2.2. Desemnarea extern a fiierelor. Cataloage........................................................................................................9
5.2.2.1. Introducere.................................................................................................................................................10
5.2.2.2. Organizarea arborescent..........................................................................................................................10
5.2.3. Legarea fiierelor cu fluxurile de intrare-ieire................................................................................................11
5.3. Legarea programelor i datelor................................................................................................................................12
5.3.1. Etapele de via a unui program.......................................................................................................................12
5.3.2. Funcionarea unui ncrctor............................................................................................................................13
5.3.3. Funcionarea unui editor de legturi.................................................................................................................14
5.3.3.1. Legarea prin substituie.............................................................................................................................14
5.3.3.2. Legarea prin nlnuire..............................................................................................................................17
5.4. Mecanisme de gestiune a obiectelor........................................................................................................................17
5.4.1. Segmentarea.....................................................................................................................................................17
5.5. Exerciii la capitolul 5.....................................................................................................................................19
a) nume nume
b) nume i nume j
c)
..
obiect i obiect j
nume
..
.
Noiunea de descriptor este larg folosit n sistemele de gestiune a fiierelor (v.5.2 i cap.7). O alt utilizare este
realizarea mecanismului de adresare segmentat. Segmentarea este o tehnic elementar de structurare a softului. Putem
spune, c segmentul este un obiect compus, de lungime variabil, reprezentarea n memorie a cruia ocup o suit de
ident.
context
reguli de
lexica interpretare obiect
cale de acces
mediul
Fig.5.3. Contextul de execuie a unui proces
Conform specificaiilor sistemului de operare, identificatorii fiierelor pot sau nu pot continua a fi utilizabili (conform regulilor proprii
de interpretare).
Starea de execuie a unui proces (valoarea obiectelor contextului su) se poate modifica la execuia fiecrei
instruciuni, ns coninutul contextului su (identitatea obiectelor care-l formeaz), se schimb cu o frecven mai mic.
Iat evenimentele principale care pot modifica coninutul contextului unui proces:
n cazul n care mai multe procese partajeaz o procedur, fiecare proces posed un set propriu de obiecte locale,
remanente, globale. Obiectele externe sunt n exemplar unic, ca i textul (invariant) al procedurii.
5.1.3. Legarea
Numim legare procesul construirii unei ci de acces. Acest proces acoper o varietate mare de situaii, care vor fi
analizate din mai multe puncte de vedere: natura relaiei de desemnare, momentul legrii, permanena legturii. Vom
prezenta mai jos i tehnicile principale utilizate.
Legarea obiectelor unui program poate fi efectuat la diferite momente de via a programului n sistem:
1) n momentul scrierii programului. Este cazul unui program scris direct n cod binar cnd fiecare obiect este
desemnat prin adresa absolut a amplasamentului, care-l conine. Un atare program poate fi imediat executat, dar orice
modificare este dificil i conine un risc ridicat de eroare. n practic, unicele obiecte legate la etapa scrierii
programului sunt notaiile universale, care desemneaz constantele.
2) La una din fazele de translatare (asamblare sau compilare). Legtura este definitiv i identificatorii sunt
nlocuii prin adrese absolute. Dezavantajul este c programul nu poate fi deplasat n memorie fr a fi recompilat (dac
nu exist mecanisme de translatare a adreselor). De asemenea, legtura stabilit la translatare nu este dect parial :
identificatorii nu sunt nlocuii de adrese absolute, ci relative ncepnd cu originea programului (deplasare).
3) La o faz de ncrcare i editare a legturilor. Faza ncrcrii are drept scop nlocuirea adreselor relative prin
adrese absolute, fixnd originea programelor n memorie. Faza editrii legturilor are ca scop stabilirea legturii
referinelor externe (s ne amintim, c vorbim despre identificatorii, care desemneaz obiecte construite sau pstrate
independent de programul n cauz). ncrcarea i editarea legturilor pot fi combinate ntr-o singur operaie sau
realizate separat. Algoritmii utilizai sunt descrii n 5.3.
O operaie analogic editrii legturilor este cea a legrii fluxurilor de intrare-ieire cu fiierele sau perifericele. Ca
i editarea legturilor, aceast operaie, descris n 5.2.3.2 poate fi realizat n prealabil sau n timpul execuiei.
4) n timpul execuiei; legtura este numit n acest caz dinamic. Exist mai multe considerente de retardare a
legturii pn la faza de execuie:
informaiile necesare pot fi cunoscute doar la aceast faz, n particular dac obiectele desemnate sunt create
dinamic, fiind, deci necunoscute la momentul compilrii,
calea de acces trebuie modificat n timpul execuiei: este cazul cnd un identificator este reutilizat pentru a
desemna succesiv mai multe obiecte (de exemplu, flux de intrare-ieire reasociat mai multor fiiere diferite),
Cu excepia sistemelor de nlnuire a programelor, numite compile and go n care programele sunt traduse i executate imediat; aceste sisteme
sunt prevzute pentru programe scurte, destinate unei singure execuii.
Domeniile de protecie pot fi definite prin mai multe modaliti; exemplificm cteva mai jos.
un domeniu pentru sistemul de operare, unul pentru fiecare utilizator,
un domeniu pentru fiecare subsistem, care realizeaz o funcie particular,
un domeniu pentru fiecare mediu (definit, de exemplu, de cuplul (procedur, catalog curent)).
Vom gsi n 5.4.2 i 5.4.3 o cercetare mai detaliat a mecanismelor de protecie i cteva exemple de utilizare a
acestora n sistemele de operare.
5.1.4.3. Problemele proteciei
Prezentm succint cteva probleme, legate de implementarea proteciei n sistemele informatice.
1) Protecie ierarhizat
n aceast situaie simpl vrem s protejm un subsistem A contra erorilor sau aciunilor prohibitive, provenite dintr-
un subsistem B, care utilizeaz serviciile subsistemului A, dar nu are vre-un drept asupra lui A. n acelai timp A poate
accesa fr restricii toate informaiile lui B. Subsistemul A este, de exemplu, un sistem de operare, iar B - o aplicaie.
catalogul
(a) (b) utilizatorilor
catalog
rdcina
cataloagele
Corina ... Alex Victor ... Eugen ... utilizatorilor
catalog
doc test doc ... fi_exe
demo
fiier
program
n Pascal
legtur
date calculatorul
program obiect n
adrese relative
(seg_i, d)
Memoria fizic
s d
L
L a
Tabelul segmentelor
nume local
nume
global
a) Tabel unic
c) Tabele locale
b) Tabele locale + tabel central
Fig.5.10. Moduri de organizare ale tabelelor segmentelor
punct de
intrare
proceduri proceduri
date date
registre segment de
de baz legtur
modul apelant modul apelat
n programul unui modul M apelul procedurii cu numrul k a modulului, descris de amplasamentul cu numrul n al
segmentului de legtur este realizat cu ajutorul unei instruciuni call n, k.
1) Permite oare aceast schem realizarea mai multor module care ar avea proceduri comune i variabile globale
proprii? Care sunt avantajele unei atare posibiliti?
2) Descriei detaliat secvena operaiilor, care vor fi executate la apelul unei proceduri externe a unui modul i la
returul din procedur.
call n, k
3) Permite oare aceast schem editarea dinamic a legturilor? Descriei structurile de date necesare i principiul de
realizare.