Documente Academic
Documente Profesional
Documente Cultură
PROGRAMAREA
CALCULATOARELOR
I
LIMBAJE DE
PROGRAMARE
N
INDUSTRIA LEMNULUI
Notie de curs
INTRODUCERE
Suportul de curs reprezint o prim cale de cunoatere a elementelor de baz din tehnica de
programare a calculatoarelor i de utilizare a limbajelor de programare n cadrul disciplinei
fundamentale cu acelai titlu aflat n programa de studiu a studenilor anului I de la facultatea de
industria lemnului.
Cursul de fa va va ajuta la nelegerea i buna utilizare a tehnicii de calcul att sub form de
echipamente individuale sau de modul lor de conectare n cadrul reelelor de calculatoare specifice
ntreprinderilor n care vei lucra, ct i la programarea i realizarea de proiecte. Exist multe
echipamente industriale i insalaii dotate cu tehnic de calcul pentru supravegherea unor procese,
pentru prelucrare mecanic etc. precum i birotica necesar n toate sectoarele de activitate specifice
sectorului de prelucrare a lemnului.
ntr-o prezentare tructurat pe 8 capitole sunt trecute n revist noiunile de fundamentale care
vor fi studiate, pornind de la bazele informaticii, codificarea datelor i sistemele de numeraie din
capitolul 1, la studiul arhitecturii calculatoarelor i componentelor acestora din cadrul capitolului 2,
la studiul princiipilor de baz ale sistemelor de operare i prezentarea unora din cele mai uzuale din
capitolele 3 i 4. Urmeaz un studiul complex al reelelor de calculatoare n capitolul 5 i tratarea
aspectelor generale ale utilizrii pachetelor de programe de birotic aflate n MS Office. n ultima
parte sun prezentate noiunile de baz ale proiectrii limbajelor de programare i particularizri ale
utilizrii limbajului Pascal i C.
Lucrarea realizeaz o trecere rapid n revist a principalelor noiuni teoretice care pot fi
aprofundate prin lecturarea unor titluri de cri tratate n bibliografie i alte materiale i nouti care
apar n acest domeniu cu o rapiditate uimitoare.
Obiectivele acestei discipline sunt de a familiariza studenii i utilizatorii acestui curs cu
echipamentele de calcul, cu arhitectura calculatoarelor i sistemele de operare pentru echipamentele
individuale sau conectate la o reea, precum i cu familiarizarea cu modul de abordarea a rezolvrii
diverselor probleme folosind programarea evoluat culimbaje de programare.
Cunotiinele prezentate vor fi aprofundate i fixate prin participarea activ la orele din cadrul
laboratorului de informatic din facultatea de industria lemnului. Aici vor putea fi realizate
programe i teste cu specificul particular al sectorului de industria de prelucrare a lemnului din care
provin marea majoritate a participanilor la aceste cursuri.
Colectivul facultii de industria lemnului va felicit pentru determinarea de care dai dovad
n abordarea studiului din acest domeniu de activitate, v st la dispoziie pentru a v sprijini i
ndruma pe tot parcursul studiului i v ureaz succes n aceast ncercare la care ai pornit.
Autorul
CUPRINS
Introducere
Capitolul 1 Bazele informaticii
1.1. Informatica
1.2. Conceptele de baz ale informaticii
1.2.1. Informaia
1.2.2. Data
1.3. Sistemul informaional i sistemul informatic
1.4. Codificarea datelor
1.4.1. Codificarea extern
1.4.2. Codificarea intern
1.5. Sisteme de numeraie
1.5.1. Sistemul de numeraie nepoziional
1.5.2. Sistemul de numeraie poziional
Capitolul 2 Arhitectura calculatoarelor personale
2.1. Istoricul apariiei calculatoarelor electronice
2.2. Noiuni generale despre sistemele de calcul
2.3. Clasificarea calculatoarelor electronice
2.4. Arhitectura unui calculator personal
2.4.1. Microprocesorul
2.4.2. Componentele calculatoarelor
2.4.3. Memoria intern
2.4.4. Dispozitive pentru memoria extern
2.4.5. Magistrale i componente interne
2.4.6. Dispozitive periferice
2.5. Interfeele calculatorului
Capitolul 3 Principiile de baz ale sistemelor de operare
3.1. Configuraia sistemului de calcul
3.2. Funciile i componentele unui sistem de operare
3.2.1. Funciile unui sistem de operare
3.2.2. Componentele sistemului de operare
3.2.3. Programe de comand control
3.2.4. Programe de servicii pentru dezvoltarea programelor de aplicaie
3.2.5 Alte programe de servicii
3.2.6. Sisteme de operare la calculatoare personale
3.3. Tehnici de gestiune a lucrrilor la sistemele de calcul
3.3.1. Obiectivele urmrite n gestiunea lucrrilor
3.3.2. Monoprogramarea
3.3.3. Multiprogramarea
3.3.4. Sistemul spooling (Simultaneous Peripheral Operations On Line)
3.3.5. Sisteme TIME SHARING (Sisteme cu timp divizat)
3.3.6. Multiprelucrarea
3.4. Gestiunea resurselor unui sistem de calcul
3.4.1. Gestiunea proceselor i procesoarelor
3.4.2. Gestiunea memoriei
3.4.3. Gestiunea dispozitivelor periferice
3.5. Componenta ROM-BIOS i ntreruperile MS-DOS.
3.5.1. Prelucrarea ntreruperilor
3.5.2. Atribuirea ntreruperilor i prioritii. serializarea ntreruperilor
3.6. Componenta ROM-BIOS i MS-DOS
3.6.1. Elemente componente BIOS
2
1
5
5
7
7
10
11
15
16
18
18
19
19
22
22
25
29
37
38
42
43
47
54
56
63
65
65
67
68
70
71
71
74
75
79
79
80
81
83
83
85
86
87
89
92
94
94
97
97
97
98
99
99
100
100
102
102
104
106
108
109
110
111
113
113
114
115
117
117
118
119
119
120
122
122
126
127
130
136
141
145
147
147
147
148
150
150
154
156
160
161
163
163
165
165
167
179
186
186
188
191
194
195
195
196
197
198
199
201
201
202
203
204
205
207
211
213
213
213
214
218
220
226
230
231
231
231
234
238
242
247
250
CAPITOLUL 1
BAZELE INFORMATICII
1.1
INFORMATICA
informaii alfanumerice,
informaiile logice,
informaiile de tip dat-calendaristic,
- dup nivelul de detaliere al coninutului, informaiile sunt:
informaii analitice, care descriu n detaliu fenomenele i procesele pe care le
exprim i care nu mai pot fi descompuse n alte nivele de detaliu;
informaii sintetice, care rezult din agregarea sau cumularea informaiilor analitice
realizate n timp (lunar, trimestrial, anual etc) i n spaiu (atelier, ntreprindere etc).
- dup forma sa de reprezentare:
1. forma analogic,
2. forma digital.
Pe suportul tehnic informaia se prezint ca o succesiune de valori binare (0 si 1) ordonate
dup un sistem de reguli (cod) si prin urmare introdusa n sistemul de calcul se transmite i se
memoreaz direct.
Clasificarea informaiei dup natura sa:
1. date: numerice, alfabetice, alfanumerice;
2. texte ;
3. documente grafice;
4. secvene audio ;
5. secvene video.
Clasificarea informaiei din punct de vedere al suportului utilizat:
1. informaie aflat pe suporturi tehnice: suporturi magnetice sau optice.
2. informaie aflat pe suporturi grafice: suporturi opace i transparente.
n 1928 R. Hattley introduce noiunea esenial de cantitate de informaie. Cel care a dezvoltat
teoria informaiei a fost, n 1948 C. Shannon, care introduce, ca masur a informaiei entropia
informaional, mrime care msoar gradul de nedeterminare al unui fenomen. Unitatea de
masur pentru aceast mrime a informaiei este informaia elementar.Informaia elementar
reprezint forma cea mai simpl sub care poate fi conceput informaia. Ea este informaia furnizat
prin precizarea unei variante din dou posibile. n teoria informaiei orice informaie, orict de
complex ar fi, poate fi exprimat prin informaii elementare, iar sistemul de calcul va trebui s
utilizeze sistemul de numeraie binar.
Informaia elementr se mai numete i BIT (BInaty digiT), adic una din cele dou cifre
binare 0 sau 1. Bitul reprezint atomul informaiei, nivelul de la care informaia nu mai poate fi
descompus. Biii se grupeaz cte 8 i formeaz un Byte sau un Octet.
Definirea informaiei din punct de vedere ontologic, care face parte din triada informaie energie - materie, care constituie baza existenei tuturor entitilor materiale, biologice, sociale sau
psihologice, subliniaz faptul c orice entitate, natural sau creat de om, conine o anumit
cantitatea de informie, ntr-o anumit structur
Din punct de vedere cibernetic, informaia reprezint cantitatea de noutate pe care o conine
un mesaj pentru fiin uman receptoare. Gradul de noutate depinde de doi factori, gradul de
interes al receptorului fa de mesajul purttor al informaiei i gardul de satisfacere al acestui
interes, dat de coninutul mesajului (parial sau integral).
Din punct de vedere semiotic, al stiinei semnelor, informaia se identific cu componenta
semn din cadrul dihotomiei semn - sens. Relaia semn -sens este vzut ca relaie mesaj-semnificaie
simultan cu relaia dintre semnificant - semnificat. Sensul sufer o codificare natural sau
convenional-uman, transformndu-se prin forma semnelor care devin mesaje, prin interpretarea
semnelor din coninutul mesajului, se ajunge la sensul care a stat la baza construirii mesajului;
transmiterea informaiei se realizeaz sub form digital, pe baza unor coduri convenionale,
unanim acceptate.
Din punct de vedere epistemologic, adic al teoriei cunoaterii tiinifice instrument utilizat
n separarea adevrului de eroare, a adevrului de fals, informaia este dihotomia realitate informaie. Realitatea se prezint sub diferite forme sau fenomene trecute sau actuale, nu i viitoare
9
cu ct cantitatea de informaie este mai mare, posibilitatea de a cunoate realiatatea la care se refer,
crete. Aceasta este dimensiunea cantitativ a cunoaterii umane, cu ct calitatea si fidelitatea
informaiei sunt mai mari, cu att posibilitatea de a cunoate realitatea i aflarea adevrul sunt mai
mari. Aceasta este dimensiunea calitativ a cunoaterii umane.
Valoarea unei informaii este dat de factorii :
fidelitatea informaiei, reprezint cantitatea de adevr pe care o conine puritatea sau
acurateea informaiei, sunt invers proporionale cu cantitatea de eroare coninut,
accesibilitatea informaiei,
eficiena semiotic a informaiei este opus redundanei este expresia economiei de semne
pentru comunicarea unui sens,
efortul pentru obinerea sau crearea informaiei,
efectul produs la utilizatorul de informaie,
operativitatea (viteza)
oportunitatea
durata de via etc.
n vorbirea curent, noiunea de informaie se substituie celei de dat i invers. Ambele sunt
frecvent ntlnite, ele mbrcnd cele mai diverse i banale sensuri, mergnd pn la confundarea
lor. Spre deosebire de continuul i sensurile pe care conceptele de informaie i dat le primesc n
vorbirea curent, lucrrile de specialitate dau acestor dou noiuni o identitate proprie.
1.2.2. DATA
Cuvntul "dat" provine din cuvntul latin datum, care gramatical este participiul trecut al
verbului latin dare, "a da". nc din antichitate propoziiile sau faptele considerate evident adevrate
erau numite "date".Datele iniiale neprelucrate (engl.: data, date brute) sunt, n cel mai larg sens,
numere, litere, imagini i alte forme de date produse de aparate care convertesc mrimile fizice n
simboluri. Aceste date sunt prelucrate apoi de oameni, sau pot fi i introduse n calculatoare cu
scopul de a fi stocate i prelucrate acolo, sau i pentru a fi transmise la alte persoane i calculatoare.
n calculatoarele actuale datele sunt reprezentate intern prin simboluri din cadrul unui
"alfabet" de simboluri permise. Aceast reprezentare intern este de obicei numeric (digital). Cel
mai des ntlnite sunt simbolurile "0" i "1" care, niruite dup anumite sisteme n numr suficient
de mare, pot reprezenta (n mod poate surprinztor) orice date i informaii finite. Aceste 2
simboluri sau cifre constituie aa-numitul alfabet binar.
Informaia primete ntotdeauna atributul domeniului pe care l reflect. Procesul de sesizare,
nelegere i nsuire a informaiilor dintr-un anumit domeniu reprezint un proces de informare.
Informaiile dobndite n urma unui proces de informare ntr-un anumit domeniu, formeaz
cunotinele despre acel domeniu, iar mulimea acestora reprezint patrimoniul de cunotine.
Cunotinele reprezint o nsumare n timp a tuturor informaiilor dobndite ntr-un anumit
domeniu.
Data este forma de reprezentare material a informaiei. Datele reprezint suportul formal al
informaiei care se concretizeaz n cifre, litere, simboluri, coduri i alte semne plasate pe supori
tehnici de date.
Datele reprezint obiectul prelucrrii pentru informatic, materia prim a acesteia i numai
prin asociere cu realitatea pe care o reflect, se poate spune c informatica genereaz informaii.
Datele obinute n urma procesului de prelucrare pot avea calitatea de informaii pentru o
anumit categorie de utilizatori sau rmn simple date dac i pierd calitatea de noutate semantic.
n procesul prelucrrii i utilizrii informaiilor, acestea sunt privite din trei puncte de vedere:
- din punct de vedere sintactic, cnd se urmrete aspectul formal al reprezentrii acestora, n
sensul c datele care se prelucreaz se supun riguros anumitor reguli de validitate;
- din punct de vedere semantic, urmrindu-se semnificaia,nelesul informaiei (coninutul
real al informaiei) ce deriv din datele
prelucrate;
10
- din punct de vedere pragmatic, urmrindu-se utilitatea, adic msura n care sunt satisfcute
cerinele utilizatorilor.
Data constituie o form de reprezentare concret, accesibil a informaiilor. Ca noiune
general, informaia nu poate fi folosit dect dac este exprimat concret, prin intermediul unui
suport. Pentru a face obiectul prelucrrilor, informaiile, trebuie s corespund scopului propus, i
anume trebuie s fie:
veridice -s reflecte fidel fenomenul, evenimentul la care se refer;
precise -s nu lase loc pentru echivoc, pentru interpretri arbitrare;
complete -s aib toate elementele eseniale nelegerii fenomenului;
semnificative -s prezinte un interes real pentru problema n cauz;
oportune -s soseasc la timp, s permit, la nevoie, o intervenie eficient.
Informaiile, n procesul lor de transformare din materie prim n produs finit, vor parcurge
mai multe faze:
- Faza de codificare,
- Faza de generare de date,
- Faza de stocare a datelor,
- Faza de prelucrare a datelor,
- Faza de actualizare a datelor,
- Faza de regsire a datelor,
- Faza de eliminare a datelor,
- Faza de transmisie a datelor.
Fazele parcurse de informaii n procesul lor de prelucrare este ilustrat n cadrul imaginii de
mai jos (fig. 1.1).
o perturbaie aprut la un post de prelucrare poate conduce la transmiterea de erori ctre postul
centralizat i de aici ctre posturile-satelit. Gradul de prelucrare a datelor caracterizeaz nivelul de
dezvoltare a sistemului informaional i implicit a ntregului sistem al ntreprinderii.
Sistemul informaional poate fi abstractizat ca model general format din trei elemente :
-mulimea intrrilor;
-mulimea prelucrrilor;
-mulimea ieirilor.
Sistemul informaional realizeaz legtura dintre sistemul conductor i sistemul condus,
fiind componenta modelatoare a sistemului condus. Prin perfecionarea sistemului informaional
(raionalizare) se urmrete realizarea urmtoarelor deziderate :
mbuntirea calitii informaiei
Circulaia rational a informaiei
Asigurarea legturilor inverse n reglarea sistemului
Finalizarea circuitului informaional printr-o decizie sau aciune
Circulaia eficient a informaiei prin eliminarea paralelismelor de informare i
prelucrare repetat
Sistemul informatic reprezint o component a sistemului informaional n care operaiile de
prelucrare a datelor se realizeaz n mod automat cu ajutorul echipamentelor de calcul i n primul
rnd al calculatoarelor electronice. Structural acest sistem este format din:
-sistemul electronic de calcul (hardware i software);
-programele de aplicaii;
-datele de prelucrat;
-resursele umane i cadrul organizatoric.
Sistemul electronic de calcul este alctuit din dou componente i anume:
-sistemul de echipamente (hardware), care reprezint totalitatea componentelor fizice
folosite pentru culegerea, stocarea, prelucrarea datelor i transmiterea informaiilor rezultate;
-sistemul de operare ( software), format din ansamblul programelor pentru conducerea,
supravegherea i controlul ntregului proces de prelucrare electronic a datelor.
Programele de aplicaii sunt formate din totalitatea comenzilor, instruciunilor sau ordinelor
date sistemului electronic de calcul n vederea rezolvrii unor operaii de prelucrare specifice
anumitor cerine ale utilizatorilor, denumite aplicaii.
Datele de prelucrat sunt constituite din colecii omogene, sub form de fiiere sau baze de
date, ce urmeaz a fi prelucrate de ctre programele de aplicaii prin intermediul sistemului
electronic de calcul.
Resursele umane i cadrul organizatoric cuprind personalul de specialitate i structura
organizatoric corespunztoare (staie, oficiu sau centru de calcul) n vederea realizrii acelor
activiti necesare exploatrii sistemului informatic.
Prelucrarea datelor este un proces prin care acestea sunt folosite n cadrul unor operaii de
generare, validare, calcule, comparare, selectare i grupare n vederea transformrii lor n
informaii.
Procesul de prelucrare automat a datelor nseamn tratarea complex a acestora, ncepnd
cu faza de culegere i terminnd cu cea de transmitere a informaiilor finale obinute, n mai multe
etape:
- Culegerea i nregistrarea datelor n documente primare n vederea reflectrii veridice a
fenomenelor i proceselor economice, precum i asigurarea corectitudinii datelor ce vor fi
introduse n sistemul de prelucrare automat.
- Transpunerea datelor din documentele primare n baza de date presupune conversia
acestora, pe suporturile tehnice (band magnetic, caset magnetic, discuri flexibile,
harddiscuri, discuri magnetopice etc) n vederea realizrii coleciilor de date ce vor face
obiectul prelucrrilor ulterioare.
14
1.4.
CODIFICAREA DATELOR
SISTEME DE NUMERAIE
numeraie nepoziionale (egiptean, roman, chinez etc.) i cele poziionale care au la baz
reprezentarea prin cifre arabe (zecimal, binar, octal, hexazecimal etc).
1.5.1. SISTEMUL DE NUMERAIE NEPOZIIONAL
Sistemul de numeraie nepoziional se caracterizeaz prin lipsa unicitii n scrierea
numerelor, fiind un sistem greoi i neadecvat efectuarii de calcule.
n aceste sisteme exist semne distincte (cifre) pentru fiecare grup de obiecte folosit n
procesul numrrii.
Sistemele de numeraie nepoziionale pot fi aditive sau multiplicative.
Sistemul de numeraie egiptean este un sistem aditiv. Valoarea unui numr se obine prin
adunarea cifrelor dup anumite reguli. De exemplu:
21.237 =
Sistemul de numeraie roman este un sistem aditiv-substractiv. Valoarea unui numr se obine prin
adunarea sau scderea cifrelor dup anumite reguli.
De exemplu: IV = 4, IX = 9, XI = 11, MMCVIII = 2108
Alfabetul sistemului este format din cifrele romane: I, V, X, L, C, D, M. Utilizarea acestor
simboluri nu implic reprezentarea unic a numerelor, simbolurile neavnd o valoare poziional
precis determinat. Sistemul este folosit n special ca numeral ordinal, pentru exprimarea secolelor,
aniversrilor etc i nu poate fi utilizat n prelucrarea automat a datelor.
Tabelul 1.1.
SISTEMUL DE NUMERAIE ROMAN NEPOZIIONAL
Numere
romane
I
II
III
IV
V
VI
VII
VIII
IX
X
Numere Numere
zecimale romane
1
XI
2
XII
3
XIII
4
XV
5
XIX
6
XX
7
XXX
8
XL
9
L
10
LX
Numere
zecimale
11
12
13
15
19
20
30
40
50
60
Numere
romane
LXX
LXXX
XC
C
CC
CD
D
DC
DCC
CM
Numere Numere
zecimale romane
70
M
80
MM
90
MDCCCXX
100
MDCCCXL
200
MDCCCLX
400
MDCCCXC
500
MDCCCC
600
MCM
700
MDCCCCLXI
900
MMVIII
Numere
zecimale
1000
2000
1820
1840
1860
1890
1900
1900
1961
2008
Un sistem multiplicativ este acela n care pentru aflarea valorii unui numr este necesar s
se nmuleasc anumite perechi de simboluri ntr-o manier asemntoare sistemului aditiv
(sistemul de numeraie chinez).
1.5.2. SISTEMUL DE NUMERAIE POZIIONAL
Sistemul de numeraie poziional se caracterizeaz prin faptul c fiecare caracter din
structura numrului are o dubl semnificaie: o valoare individual i o valoare poziional, dat de
rangul ocupat n cadrul numrului. Sistemele poziionale nltur neajunsurile sistemului de
numeraie nepoziional, ceea ce a condus la rspndirea i utilizarea larg a acestora, cptnd o
valoare universal. Sistemele de numeraie poziionale folosesc acelai sistem de reguli de
reprezentare a numerelor; ele difer doar prin alfabetul pe care l utilizeaz i, implicit, prin baz.
19
Baza unui sistem de numeraie poziional este dat de numrul de elemente care formeaz
alfabetul sistemului de numeraie. Un sistem de numeraie poziional n baza b are urmtoarele
caracteristici:
utilizeaz un alfabet cu b simboluri diferite ntre ele numite cifre, cu valori consecutive;
aceeai cifr aezat n poziii diferite ale unei secvene, poate avea valori diferite;
cifra 0 are cea mai mic valoare cnd este aezat singur;
cifra cu valoarea cea mai mare cnd este aezat singur, adic valoarea cu o unitate mai
mic dect baza sistemului, deci n cazul de fat b - 1;
n funcie de poziia lor n numr, cifrele se nmulesc cu puteri cresctoare ale bazei b
obinndu-se dezvoltarea numrului dup puterile bazei.
Reprezentarea general a numerelor n cadrul sistemelor poziionale este dat de expresia:
N=an-1bn-1+an-2bn-2++a0b0+a-1b-1+a-2b-2++a-nb-n
(1.1)
unde:
N -reprezint numrul
n -reprezint rangul (valoarea poziional)
a -reprezint valoarea individual a numrului
b -reprezint baza.
Acest mod de scriere are reguli precise de reprezentare a numerelor, ceea ce permite
abordarea algoritmic a operaiilor de calcul, facilitnd astfel prelucrarea automat a datelor.
Sistemul de numeratie pozitional poate fi:
- binar - alfabetul este format numai din doua cifre, 0 i 1.
- ternar - alfabetul este format din trei cifre:0,1,2.
- cuarternar - format din patru cifre:0,1,2,3.
- octal - format din opt cifre:0,1,2,3,4,5,6,7.
- zecimal - format din zece cifre: 0,1,2,3,4,5,6,7,8,9.
- hexazecimal sunt utilizate simbolurile: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F.
La nivel extern, utilizatorul va folosi sistemul de numeraie zecimal, deoarece este folosit n
exprimarea uzual a datelor numerice. La nivel intern, sistemul de calcul folosete sistemul de
numeraie binar, deoarece acesta modeleaz cel mai bine principiul circuitelor logice, care
constituie elementele fizice ale componetelor sistemelor de calcul. Reprezentarea sintetic a
caracteristicilor sistemelor de numeraie utilizate de sistemele de calcul, folosite n codificarea
intern, este redat n tabelul 1.2:
Tabelul 1.2.
Caracteristicile sistemelor de numeraie poziional
Sistem de
Baz
Alfabet
Utilizare n cadrul calculatorului
numeraie
Zecimal
10
0,1,2,3,4,5,6,7,8,9
Introducere date, redare rezultate
Binar
2
0,1
Reprezentarea intern
Octal
8
0,1,2,3,4,5,6,7
Reprezentarea intermediar
Hexazecimal 16
0,1,2,3,4,5,6,7,8,9,A,B,,F Reprezentarea intermediar
Pentru reprezentarea unitar a datelor n cadrul sistemului de calcul se utilizeaz sistemul
standardizat de reprezentare a datelor, la nivel intern, sistemul ASCII. Codurile ASCII reprezint
secvene binare de 8 poziii pentru fiecare caracter (indiferent de natura lui: numeric, alfabetic, cod
special etc). Ca urmare a posibilitilor de reprezentare pe 8 poziii (8 bii sau un octet), se pot
codifica distinct cele 256 de caractere:
A
10000001
B
10000010
C
10000011
Z
10001011
a
11000001
b
11000010
c
11000011
z
11001011
9
01011001
;
01011111
=
01111110
+
01001110.
Exemple de transformri ale numerelor dintr-o baz de numeraie n alta, este prezentat n
continuare, pe baza ordonrii resturilor de la mprirea ntreag fa de baz:
20
93 |2*46+1
46 |2*23+0
23 |2*11+1
11 |2*5 +1
5 |2*2 +1
2 |2*1 +0
1 |2*0 +1
93|10 =
1 0 1 1 1 0 1 |2
93 |8*11+5
11 |8*1 +3
1 |8*0 +1
93| 10=
1 3 5 |8
93 |16*5+13 ( D )
5 |16*0+5
93|10 =
5 D |16
Echivalena ntre sistemele de numeraie (zecimal, binar, octal i hexazecimal) folosite n
codificarea intern este prezentat n continuare, n tabelul 1.3.
Tabelul 1.3.
Caracteristicile sistemelor de numeraie poziional
Sistemul
zecimal
Sistemul binar
Sistemul
octal
Sistemul
hexazecimal
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
20
30
40
50
93
255
65565
4294967295
0
1
10
11
100
101
110
111
1000
1001
1010
1011
1100
1101
1110
1111
10000
10100
11110
101000
1010010
1011101
11111111
11111111 11111111
11111111 11111111 11111111 11111111
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
24
36
50
62
135
377
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
10
14
1E
2B
32
5D
FF
FFFF (64 kO)
FFFFFFFF (4GO)
21
CAPITOLUL 2
ARHITECTURA CALCULATOARELOR PERSONALE
2.1. ISTORICUL APARIIEI CALCULATOARELOR ELECTRONICE
Prelucrarea automat a informaiei a fost posibil odat cu apariia calculatoarelor electronice.
Prin definiie, un calculator este o main care trebuie s tie s modeleze i s manipuleze informaia.
Pentru calculator, informaia este att materie prim ct i produs finit.
Primele calculatoare au aprut din necesitatea realizrii unui model de lucru cu numerele i
aritmetica lor, pentru a uura calculele numerice prin prelucrarea automat. Chiar i denumirea lui vine
de la verbul acestei aciuni: a calcula (n limba englez: to compute - computer). Pornind de la
prelucrarea informaiei numerice, calculatoarele au fost perfecionate pentru a putea prelucra orice
form de informaie.
Calculatoarele sau sistemele de calcul au avut o rapid evoluie n ultimul secol, urmrind
ndeaproape principalele descoperiri din domeniul electrotehnicii i informaticii. Dac n urm cu dou
- trei secole au fost concepute primele forme de mecanisme i maini de calcul pe baz mecanic, n
ultimul secol sunt cunoscute sisteme de calcul electromagnetice i electronice.
Sistemele de calcul sunt rezultatul dezvoltrii tehnicii i tiinei, implicnd domenii diverse cum
sunt: electronica, automatica, matematicile aplicate, telecomunicaiile.
Oamenii au nregistrat i prelucrat date nc din vremuri preistorice, astfel c n jurul anului 3000
.C, sumerienii foloseau primul dispozitiv pentru reprezentarea numerelor. Dup 2000 de ani,
chinezii, prelund ideea, au construit primul dispozitiv de calcul, care consta dintr-o cutie ce
coninea bile nirate pe srm i montate pe o scndur. Numele dispozitivului era baccus i a fost
preluat n Grecia i Roma antica sub numele de abaccus.
Din Evul Mediu i pn n secolul al XlX-lea, tehnica de calcul a fost legat i condiionat de
cteva mari descoperiri tiinifice. Primul mare matematician Al. Khwarazmi (780-846), creatorul
algebrei, a introdus n matematica arab numerele indiene, care de atunci sunt cunoscute sub
denumirea de arabe. El este autorul primului manual de aritmetic bazat pe principiul valorii
poziiei simbolurilor numerice (cifra unitilor, cifr zecilor, deci sistemul de numeraie zecimal
poziional), prin intermediul crora se pot exprima, fr dificultate, numere orict de mari.
Maina de tiprit inventat de Johann Gutenberg n 1450, care poate fi considerat drept unul
dintre strmoii perifericelor de ieire ale calculatoarelor electronice. n timpul Renaterii, Leonardo
da Vinci (1452-1519) a proiectat o main de calcul cu 13 cifre. Un secol mai trziu, printele
logaritmilor, John Napier (1550-1519) a construit un dispozitiv de calcul denumit Zarurile lui
Napier. Primul calculator mecanic a fost ns realizat de filozoful i matematicianul francez Blaise
Pascal (1623-1662), care a proiecta o main (Pascalina), care putea efectua adunri i scderi.
Acest dispozitiv coninea un ansamblu de roi dinate conectate n serie, cu ajutorul crora se efectuau
operaiile de adunare i scdere i se afiau rezultatele n cele ase ferestre cu care era prevzut
dispozitivul.
n 1671 matematicianul i fizicianul englez Gottfded Wilhelm Leibnitz a construit primul
dispozitiv capabil s efectueze cele patru operaii aritmetice. O alt invenie important o constituie
rzboiul de esut a lui Joseph-Marie Jacquard, care era controlat printr-o serie de cartele perforate,
gurile reprezentnd modelul esturii. Acest dispozitiv reprezint prima main controlat prin informaii
(modelul existent pe cartela perforat) i nu de ctre un operator uman. Matematicianul George Boole
prin lucrrile despre logica simbolic a descris modul de utilizare a valorilor binare pentru
efectuarea comparaiilor i deciziilor logice (astzi codificarea intern a calculatoarelor moderne se
bazeaz pe logica binar - algebra boolean).
O performan de importan deosebit a fost nregistrat abia n anul 1880 prin maina
statisticianului american Herman Hollerith, care a inventat cartela perforat i echipamentul
mecanografic pentru prelucrarea datelor nregistrate pe acest suport. Utilizarea cartelelor perforate
era diferita, fa de cea folosit de Babbage i Jacquard, deoarece cartele nu mai erau destinate
introducerii de instruciuni (programe), ci stocrii unor date. Dispozitivul inventat de Hollerith a fost
22
folosit cu succes la preluarea datelor recensmntului populaiei din SUA, n anul 1890. Hollerith a
beneficiat de avantajele electricitii i a creat primul calculator electromecanic (tabulator).
ntre 1930 i 1946 au avut loc, un numr important de descoperiri tiinifice n domenii ca:
matematic, fizica, inginerie electric i statistic, ceea ce a contribuit la apariia primului calculator
electronic. Haward Aiken, de la Universitatea Harvard, a inventat primului calculator electromecanic,
numit Mark I.
Istoria sistemelor electronice de calcul ncepe abia n anul 1946, cnd John Manehly, fizician la
Universitatea din Pensylvania i J. Prosper Eckert, inginer la aceeai universitate, realizeaz primul
calculator electronic, numit ENIAC.
Evoluia rapid a performanelor i caracteristicilor permite structurarea calculatoarelor
electronice pe cinci generaii.
Prima generaie (1946 - 1955) a fost reprezentat de calculatoare electronice care utilizau un
numr mare de tuburi electronice i din aceast cauz aveau un gabarit mare (30 tone). Viteza de calcul i
capacitatea de stocare a datelor erau foarte mici. Se utilizau, ca suport pentru date, banda de hrtie i
cartelele perforate. Funcionarea sistemelor impunea condiii speciale, necesita un consum de energie
electric ridicat, precum i un volum de munca deosebit pentru exploatarea i ntreinerea sistemelor.
Programarea se efectua la nivel cod maina, utiliznd logica binar, ceea ce reprezenta o munc
extrem de laborioas i specializat. Dificultile ridicate de utilizarea acestor calculatoare le fcea
accesibile numai unui numr restrns de specialiti din domeniul cercetrii i nvmntului.
A doua generaie (1956 -1964) a fost reprezentat de calculatoarele care utilizau tranzistorul n
locul tuburilor electronice. Ca urmare a acestui fapt, performanele sistemelor de calcul s-au
mbuntit: viteza de calcul i capacitatea de stocare au crescut, gabaritul i consumul de energie
electric s-au redus. Au aprut echipamentele periferice i suporturile magnetice pentru stocarea
datelor i primele limbaje evoluate: FORTRAN i COBOL. Comunicarea cu sistemul era
realizat de tehnicieni specializai, care transmiteau calculatorului cerinele programatorilor sub forma
unor programe i livrau rezultatul prelucrrilor.
A treia generaie (1965 - 1970) a fost reprezentat de calculatoarele care utilizau circuitele
integrate, nlocuind tranzistorul. Utilizarea circuitelor integrate a condus la miniaturizarea sistemelor
de calcul, precum i la mbuntirea considerabil a performanelor acestora: creterea vitezei de
calcul i a capacitii de stocare a datelor (utilizarea suporturilor de date de mare capacitate), sporirea
fiabilitii i reducerea costului. Limbajele evoluate de programare au cunoscut o diversificare
foarte mare, iar sistemele de calcul au nceput s fie tot mai mult utilizate, n special n domeniul
economic. Sistemele electronice s-au impus ca indispensabile pentru stocarea i prelucrarea unui volum
mare de date. Utilizarea sistemelor de calcul se fcea n cadrul unor uniti specializate (centre/oficii de
calcul), deservite de specialiti n informatic: analiti, programatori, operatori.
A patra generaie (1971-1990) s-a remarcat prin utilizarea-circuitelor larg i mediu integrate,
ceea ce a condus la o ultraminiaturizare a componentelor i la creterea vitezei de calcul, contribuind
la revoluionarea tehnicii de calcul. Programarea evolueaz spre standardizare i prototipizare,
precum i spre realizarea unor componente fizice care s efectueze anumite funcii realizate pn
la acel moment de programe. Calculatorul se impune rapid n toate domeniile vieii sociale, acest fapt fiind
posibil datorit performanelor microsistemelor de calcul (calculatoare personale), costurilor lor mai
reduse, dar i datorit programelor care facilitau comunicarea utilizatorului cu sistemul de calcul, prin aanumita interfa prietenoas.
A cincea generaie (1990 - pn n prezent) este marcat de creterea considerabil a gradului
de inteligen a componentelor calculatorului (microprocesorul i unitile periferice) i de extinderea
reelelor de calculatoare de la nivel local, la nivel metropolitan i internaional. Calculatoarele i extind
posibilitile, oferind faciliti multiple audio-video (calculatoare multimedia). Comunicarea
calculatorului cu utilizatorul a fost facilitat de apariia interfeei grafice, care este intuitiv i uor de
manipulat. Extinderea utilizrii calculatorului are loc i pe orizontal, calculatorul ptrunznd n casele
oamenilor, devenind util la nivelul individului.
A asea generaie este n experimentri avnd la baz utilizarea bioelectronicii, optoelectronicii
precum i noile cuceriri ale tiinei i tehnologiei, n general i ale informaticii n special.
n cadrul tabelului 2.1 sunt sintetizate cteva date semnificative referitoare la apariia
informaticii i a sistemelor de calcul.
23
Tabelul 2.1.
SCURT ISTORIC AL APARIIEI TEHNICII DE CALCUL
Realizatorul i Dispozitivul sau tehnica de calcul
Anul
30000
.e.n.
3400 .e.n.
3000 .e.n.
2600 .e.n.
260 .e.n.
1450
1614
1621
1642
1802
1830
1844
1867
1885
1890
1896
1904
1926
1931
1943
1944
1945
1946
1948
1949
1950
1958
1959
1959
1960
1962
1963
1963
1965
1967
1971
1972
1973
1973
1974
1974
1976
Oamenii din paleolitic care triau n Europa central nregistreaz numerele crestnd n rbojuri, pe oase
de animale, filde i pietre
Egiptenii dezvolt un simbol pentru numrul 10, simplificnd reprezentarea numerelor mari
Sumerienii foloseau primul dispozitiv pentru reprezentarea numerelor.
Chinezii introduc abacul. Acesta a fost folosit n China pentru realizarea recensmntelor pn n 1982.
Maiaii dezvolt un sistem sofisticat de matematici n baza 20, care include numrul 0.
Johann Gutemberg inventeaz maina de tiprit, strmoul perifericelor de ieire ale calculatoarelor
John Napier (1550-1617) descrie natura logaritmilor. De asemenea, el construiete "Zarurile lui Napier",
un dispozitiv cu vergele gradate, precursorul riglei de calcul
Wiliam Oughtred (1574-1660) inventeaz rigla de calcul, care a devenit nvechit abea dup 350 de ani
Blaise Pascal (1623-1662) inventeaz Pascaline, primul calculator mecanic. Acesta era acionat de mn i
putea s fac numai adunri i scderi.
Joseph-Marie Jacquard (1752-1834) introduce primele cartele perforate la razboaiele de esut din Lyon
Charles Babbage concepe Motorul Analitic, dar moare nainte de finalizarea acestuia,ns conine pentru
prima dat memorie, dispozitiv aritmetic, dispozitiv de comand i un program cu cartele perforate
Samuel Morse a inventat alfabetul Morse, ca prim codificare binar i s-a realizat prima linie de telegraf.
Cristopher Sholes, inventeaz maina de scris
William Seward Burroughs a inventat prima main de adunat cu claviatur, predecesoarea tastaturilor.
Herman Hollerith creeaz sistemul de tabelare electric pentru Biroul de Recensmnt din Statele Unite
ale Americii. Recensmntul dureaz acum doi ani, n loc de opt.
Herman Hollerith nfiineaz Tabulating Machine Company
John Ambrose Fleming a creat prima lamp vidat (dioda lui Edison)
Patentul pentru tranzistorul semiconductor
Konrad Zuse creaz n Germania primul calculator electromecanic cu comand programabil digital de
calcul, care introduce utilizarea sistemului binar i a valvelor, calculator numit Z1.
Britanicii construiesc la British Intelligence Establishment din Bletchley primul calculator electronic,
Colossus (coninea 2000 de tuburi electronice)
Howard Aiken de la Universitatea Harvard i IBM dezvolt calculator electromecanic, complet
automatizat, dirijat prin program cu cartele perforate, denumit MARK 1.
John von Neumann descrie un calculator digital de uz general, cu un program stocat
Universitatea din Pensylvania, realizeaz primul calculator electronic, numit ENIAC (Electronic
Numerical Integrator Analyzer and Computer, Analizator i calculator intergator electronic i numeric).
Electronic Control, prima firm de calculatoare ncepe s construiasc UNIVAC - 1 (UNIVersal
Automatic Computer), pentru Biroul de Recensmnt. Este primul calculator comercializat pe pia
EDSAC (Electrbnic Delay Storage Automatic Computer) realizat la Universitatea din Cambridge
Unitile de band ncep s nlocuiasc cartelele perforate
Control Data Corporation lanseaz calculatorul 1604 al lui Seymour Cray, la 1,5 milioane de dolari.
Este realizat primul calculator tranzistorizat care coninea circa 4000 tranzistoare i 3000 diode i avea o
viteza de lucru de 1 instruciune n 60 microsecunde.
Jack Kilby i Robert Noyce finalizeaz primul circuit integrat, care conine cinci componente pe o singur
bucat de siliciu
CDC-160 este minicalculatorul lansat de firma Control Data, iar IBM-1620 este minicalculatorul lansat de
IBM. 2000 de calculatoare sunt utilizate n Statele Unite ale Americii
Teletype livreaz tastatura i terminalul cu cartele perforate Model 33
Finalizarea codului ASCII (American Standard Code for Information Interchange, Codul american pentru
schimbul de informaii) permite mainilor de la diferii productori s schimbe date ntre ele
Douglas Engelbart primete un patent pentru un dispozitiv de indicare pe ecran de tipul mouse-ului
Digital Equipment Company lanseaz primul minicalculator de succes, PDP-8. Sunt vndute 50000 buci,
IBM construiete prima unitate de disc flexibil
Apare afiajul cu cristale lichide
Apar discurile compacte
Andre Trung Trong Thi a realizat la firma R2E din Orsay n Frana primul calculator numit MICRAL, care
a utilizat un microprocesor I 8088 pe 8 bii.
Sistemul de operare CP/M devine standardul pentru urmtorii opt ani, pn cnd este introdus MS-DOS.
Apar Notepad-urile Post It
Realizarea microprocesorului cu 8 bii: I 8080, realizat de firma Intel
Stephan Jobs i Steve Wozniak prezint primul calculator Apple, la Home Brew Computer Club, cunoscut
mai trziu drept Silicon Valley.
24
2002
2006
2007
2008
n cadrul tabelului 2.2. este realizat prezentare sintetic a generaiilor de sisteme electronice
de calcul i a caracteristicilor acestora.
Tabelul 2.2.
EVOLUIA SISTEMELOR ELECTRONICE DE CALCUL
Generaia/
Caracteristicile constructive
Caracteristicile de utilizare
Utilizatorii
I-a
(1946-1955) /
Generaia
inventatorilor
a II-a
(1956-1963) /
Generaia
tehnologilor
a III-a
(1964-1970) /
Generaia
programatorilor
aIV-a
(1971-1990) /
Generaia
utilizatorilor
aV-a
(1990 - prezent) /
Generaia
utilizatorilor
inteligena artificiala
sisteme expert
interfee grafice
inteligena artificiala
sisteme expert
interfee grafice
tranzistoare
echipamente periferice
suporturi magnetice de date
consum energetic mai mic
fiabilitate mai mare
circuite integrate
miniaturizare
creterea vitezei de calcul
suporturi de date de mare volum
fiabilitate sporit
circuite integrate pe scar medie
i larg - ultraminiaturizare
vitez foarte mare
echipamente periferice variate
microprocesorul element de
automatizare a unor funcii
periferice inteligente
reele de calculatoare
b. Calculatoarele analogice (analog computer) sunt ehipamente alctuite dintr-un set extins de
elemente liniare, amplificatoare operaionale i circuite numerice independente care pot fi
interconectate de ctre utilizator. Calcul analogic (analog computing) reprezint efectuarea unor
operaii matematice continue pentru determinarea evoluiei n timp a soluiei unui sistem de ecuaii,
algebric sau diferenial, folosind calculatorul analogic. Principalul avantaj al calculatorului analogic l
constituie viteza foarte mare de calcul, respectiv de obinere a soluiei cutate, dezavantajul fiind legat
de precizia relativ redus i modalitile complicate de introducere i extragere a datelor. Elementele
de calcul de tip continuu sunt sumatoare, integratoare, multiplicatoare, generatoare de funcii, cu
toate terminalele la dispoziia utilizatorului, ducnd la implementarea unor scheme de calcul complexe.
c. Calculatoarele hibride (hybrid computer) constau din cuplarea unui calculator analogic cu
un calculator numeric. De regul, calculatorul numeric utilizat va fi un calculator de mic
capacitate, dar cu o memorie suficient pentru a pstra datele necesare ce urmeaz s fie prelucrate.
Comunicarea dintre cele dou calculatoare ale unui sistem hibrid se face cu ajutorul convertoarelor
analog-numerice i numeric-analogice. Comunicaia dintre cele dou calculatoare se desfoar pe
trei nivele, respectiv de control (prin fixarea modurilor de operare, a factorilor de scal pentru timp i
prin determinarea strii curente a tuturor elementelor analitice i numerice adresabile), de date
(transfer rapid de date) i de comand. n continuare se vor analiza i descrie numai calculatoarele
numerice, denumite sisteme de calcul electronic, calculatoare electronice sau mai simplu calculatoare.
Un calculator numeric este un dispozitiv automat n care datele reprezentate n binar sub form
discret sunt prelucrate pe baza unui program ce indic o succesiune determinat de operaii, iar
arhitectura unui calculator reprezint descrierea naturii, configurrii i interconectrii componentelor
sale. Arhitectura general a unui calculator respec principiile formulate de John von Neumann n
1946 care pot fi sintetizate astfel:
1. Fiind destinate realizrii de calcule, calculatoarele vor executa cel mai frecvent operaii
aritmetice, ceea ce impune existena unei componente specializate; aceast component se regsete n
arhitectura calculatoarelor moderne sub numele de unitate aritmetico-logic (UAL);
2. Operaiile de calcul se execut n mod secvenial;
3. Necesitatea realizrii unui control al prelucrrilor; acest control este realizat prin unitatea de
comand-control (UCC) care, mpreun cu UAL, formeaz procesorul (unitatea central de prelucrare
-UCP);
4. Necesitatea unei componente avnd funcia de a reine datele i instruciunile specifice
prelucrrii executate; aceast component este reprezentat de memoria intern (MI) sau operativ ce
prezint un caracter volatil (i pierde coninutul o dat cu ntreruperea alimentrii calculatorului cu
energie electric);
5. Necesitatea unei componente care s permit stocarea permanent a datelor; n arhitectura
calculatoarelor aceast component este reprezentat de memoria extern (ME);
6. Neumann precizeaz necesitatea unor "senzori" care s fie capabili s recepioneze
semnalele provenite din exteriorul "mainii", crora le corespund, echipamentele periferice;
7. Necesitatea asigurrii transferurilor dintre memoria intern i memoria extern.
Se poate concluziona c, indiferent de structura constructiv, de sistemul de operare i de
domeniul de utilizare, arhitectura unui calculator asigur realizarea urmtoarelor funcii :
a) funcia de introducere a datelor;
b) funcia de memorare;
c) funcia de prelucrare (aritmetic i logic);
d) funcia de comand-control;
e) funcia de ieire (de redare a rezultatelor prelucrrii).
Fiecare dintre aceste funcii se va realiza prin intermediul uneia sau mai multor componente
hardware specializate.
Unitatea de comand i control (UCC) mpreun cu unitatea aritmetico-logic (UAL)
formeaz unitatea central de prelucrare (UCP) sau procesorul central, iar dac se include i
memoria, acestea alctuiesc unitatea central (UC).
Datele iniiale ce se supun prelucrrii i programul constituit din instruciuni se introduc n
sistemul de calcul prin intermediul unor dispozitive periferice de intrare (DPI/). Prin intermediul
canalelor de intrare/ieire, att datele, ct i instruciunile programului sunt transferate n memoria
intern a sistemului de calcul sub form binar, n locaii identificabile prin adresele la care au fost
26
Pe lng sistemele de calcul monoprocesor, caracterizate prin faptul c realizeaz execuia unei
singure instruciuni la un anumit moment de timp (principiul executrii secveniale a instruciunilor) i
prelucreaz datele ntr-un singur flux de date (arhitectura SISD -Single Instruction Single Data -fluxuri
unice pentru instruciuni i date) exist alte dou categorii de sisteme de calcul:
sisteme de calcul cu arhitecturi paralele (numite sisteme cu arhitecturi Non von Neumann)
care nu respect principiul serialitii ;
sisteme simbolice care asigur realizarea de aplicaii specifice inteligenei artificiale;
sisteme de calcul concepute s realizeze inferene logice (raionamente), neorientate ctre
calculul matematic specific sistemelor de calcul care asigur prelucrarea automat a datelor .
Primele sisteme de calcul au fost monoprocesor, adic prezentau o arhitectur dezvoltat n
jurul unui singur processor, iar ulterior au fost realizate sisteme de calcul multiprocesor. Ideea
multiprocesrii a avut la baz nevoia creterii fiabilitii calculatoarelor.
n realizarea sistemelor de calcul multiprocesor au fost abordate dou strategii:
multiprocesarea asimetric, caracterizat prin existena unui procesor master cu rol
coordonator la nivelul ntregului sistem de calcul, i a unor procesoare slave, a cror funcie
const n executarea independent a unor module ale aceluiai program; procesorul master
coordoneaz i coreleaz toate celelalte procesoare slave. Dezavantajul multiprocesarii
asimetrice const n suprasolicitarea procesorului master;
multiprocesarea simetric, caracterizat prin existena mai multor procesoare cu statut egal.
Sistemele de calcul multiprocesor pot fi clasificate funcie de tipul procesoarelor utilizate n:
sisteme prezentnd ncorporate procesoare specializate pe clase de operaii; aceasta
nseamn c, pe lng procesorul principal, sunt ncorporate procesoare specializate pentru
operaii de intrare-ieire (I/E) sau coprocesoare matematice;
sisteme de calcul prezentnd n cadrul arhitecturii mai multe procesoare independente,
realiznd sarcini de calcul proprii; aceste sisteme de calcul pot fi clasificate n funcie de
tehnica de prelucrare implementat la nivelul procesoarelor n:
a) Sisteme pipeline, caracterizate prin faptul ca mai multe instruciuni executabile (cod main)
sunt ncrcate ntr-o linie complex de prelucrare, urmnd s fie tratate secvenial. Prin
tehnica de pipeline, fiecare instruciune este descompus n una sau mai multe
microoperaiuni, acestea urmnd s fie executate de ctre procesoare diferite, iar rezultatul
prelucrrii la nivelul procesoarelor independente este "asamblat" i transmis exteriorului.
b) Sistemele vectoriale sunt sisteme de tip pipeline caracterizate prin faptul execut un vector
de operaii asupra aceluiai flux de date.
c) Sistemele de tip masiv, care reprezint n arhitectur o singur unitate de control i mai
multe uniti de prelucrare aritmetico-logice, oferind posibilitatea executrii n paralel a
aceleiai operaii asupra mai multor date.
d) Sisteme cu procesoare paralele, caracterizate prin cooperarea procesoarelor la executarea
unor secvene diferite aparinnd aceluiai program.
Progresele realizate n domeniul sistemelor de calcul paralel au dus la o diversitate de soluii.
Caracterizarea acestora se poate realiza prin utilizarea noiunilor de f1ux de instruciuni i flux de date:
SISD (Single Instruction Single Data) sunt sisteme von Neumann (monoprocesor) care se
caracterizeaz prin executarea, ntr-o anumit fraciune timp, a unei singure instruciuni,
prelucrnd un singur flux de date.
SIMD (Single Instruction Multiple Data) sistemul de calcul dispune de multe procesoare
(coordonate de aceeai unitate de control) ce execut aceeai instruciune asupra unor fluxuri
de date diferite, ca n cazul calculatoarelor vectoriale i al masivelor de procesoare. Un
masiv de procesoare este un calculator vectorial implementat ca o mulime de elemente de
prelucrare sincronizate, capabile s ndeplineasc simultan aceeai operaie asupra unor date
diferite. MISD (Multiple Instruction Single Data) nu se regsete n nici o arhitectur a
vreunui sistem de calcul fabricat.
MIMD (Multiple Instruction Multiple Data) n aceste sisteme mai multe fluxuri de
instruciuni opereaz simultan asupra mai multor fluxuri de date.
Aceste sisteme pot prezenta dou variante de arhitectur:
28
dect IBM BlueGene/L, care se afl la Lawrence Livermore National Laboratory din California. Este
destinat soluionrii problemelor militare secrete pentru a se asigura c armele nucleare vor continua s
funcioneze corect pe msur ce se nvechesc. Roadrunner va fi folosit pentru a simula
comportamentul armelor n fraciunea de secund dinaintea exploziei. Va mai fi folosit i pentru a
explora probleme tiinifice mondiale cum ar fi schimbrile climatice. Viteza Roadrunner le va permite
cercettorilor s testeze modelele climatice internaionale cu o mai mare acuratete.
Tabelul 2.3.
Evoluia principalilor parametrii ai supercalculatoarelor
BGW Blue Gene, IBM Thomas J. Watson Research Center, New York (91.29 teraflopi;
40960 procesoare)
New York Blue, Stony Brook/BNL, New York Center for Computational Sciences, New
York (82.161 teraflopi; 36864 procesoare)
Power 575 este un supercomputer produs de IBM, iar noua versiune instalat la Institutul Max
Planck din Germania dispune de un sistem cu rcire cu ap. Schimbul de energie caloric nu se
realizeaz n radiatoare cu rcire cu ap standard, ci prin intermediul Advanced Thermal Packaging, un
sistem de rcire cu lichid dezvoltat de IBM de aproape un an ( imaginai-v 14 noduri cu cte 32 de
procesoare POWER6 care ruleaz constant la frecvena de 5 GHz. O rcire cu aer pentru un asemenea
supercoputer implic hale dotate cu instalaii imense de aer condiionat i un consum ridicat de curent
pentru coolerele specifice pentru procesoare. Un centru de date cu aceleai noduri, dar dotat cu rcire
cu ap, consum cu 40% mai puin energie pentru rcirea n sine.
2. Sistemele de calcul mainframe constituie o categorie aparte de sisteme, situat ntre
supercalculatoare i minicalculatoarc, care opereaz cu viteze foarte ridicate. Alturi de un numr de
uniti centrale de prelucrare, aceste sisteme ntrein uniti principale de intrare, respectiv ieire care
opereaz i ele cu viteze nalte.
Mainframe-urile sunt computere mari i scumpe folosite de instituii guvernamentale i companii
mari pentru procesarea de date importante pe domeniile: statistic, recensminte, cercetare i
dezvoltare, proiectare, prognoz, planificarea produciei, tranzacii financiare .a. Mainframe s-ar putea
traduce cu "dulap principal", ceeace provine de la aspectul exterior al primelor mainframe-uri - ele
artau ca dulapuri uriae de metal. Acum prin mainframe se nelege n primul rnd un calculator mare
compatibil cu modelele de tip IBM System/360, care au aprut pe pia n anul 1965. Actualmente cel
mai modern model de la IBM se numete System z10.
Pe lng aceste mainframe-uri mai sunt considerate drept mainframe-uri i calculatoarele actuale
de tip:
Fujitsu-Siemens: Nova, compatibil cu IBM System z9
Groupe Bull: DPS
Hewlett-Packard: NonStop (provenite iniial de la firma Tandem)
Hitachi: modele compatibile cu IBM System z9
Platform Solutions Inc. (PSI): modele compatibile cu IBM System z9
Unisys: ClearPath
n afar de acestea au mai existat i alte modele de la ali productori care azi nu mai exist sau
nu mai produc mainframe-uri, ca de exemplu de la firmele: Amdahl, Burroughs, Comparex, Control
Data, General Electric, Honeywell, NCR, NEC, NT&T, Oki, RCA, Sperry, Telefunken, Univac,
precum i cele ale unor ri din Tratatul de la Varovia, care au copiat mainframe-uri de la IBM n mod
ilegal. Prin contrast, urmtoarele tipuri de computere nu sunt considerate mainframe-uri:
supercomputerele, computerele de prelucrat vectorii, apoi minicomputerele (de exemplu serverele de
la firmele IBM, SGI, Sun Microsystems i multe altele), precum i computerele personale (de exemplu
cele de la Apple i toate PC-urile de la Acer, Asus, Dell, Fujitsu-Siemens, Hewlett-Packard, Lenovo,
Medion, MSI, Packard Bell, Samsung, Sony, Toshiba i multe altele).
n anii 80, accentul s-a pus pe reducerea consumului de energie i creterea eficienei
mainframe-ului. La acea vreme, IBM a dezvoltat un modul care disipa cldura de la suprafaa chip-ului
n mediul nconjurtor. Pn la 64 de chip-uri puteau fi amplasate pe un astfel de modul.
Aceeai tehnologie a pus bazele mainframe-ului CMOS de astzi. Cu numele de cod Picasso,
IBM a proiectat a treia generaie CMOS, dezvoltnd un sistem de multiprocesare cu 6 procesoare:
fiecare CPU (unitate central de procesare) avea o performan aritmetic de 14 MIPS, sistemul total
avnd peste 70 MIPS. Pn la 32 de astfel de computere puteau fi combinate ntr-o unitate complex.
Primul dintre acestea, IBM 9672, a fost lansat n 1994. IBM a continuat s dezvolte platforma CMOS.
Veniturile pe segmentul mainframe au surclasat veniturile obinute pe segmentul platformelor
bazate pe sistemul de operare Microsoft Windows. Abilitatea mainframe-ului de a rula noi aplicaii
inclusiv aplicaiile Linux i Java reprezint un argument major al succesului continuu pe care l
nregistreaz. Principalele sisteme sunt :
31
IBM System Z9 reprezint cel mai sofisticat server pentru afaceri din lume. Unic n segmentul
serverelor, arhitectura mainframe pe 64 de bii a fost proiectat de la nceput nct s incorporeze
procesoare ce controleaz o varietate de procese specializate.
IBM Global Asset Recovery Services este parte a efortului de a proteja mediul nconjurator
(unitatea IBM de recondiionare i reciclare, se va ocupa de procesarea i dispunerea corespunztoare a
celor 3900 de sisteme recuperate).
Proiectul Big Green consta n software, hardware i servicii eficiente energetic oferite de IBM
i partenerii de afaceri IBM.
IBM System z10 ajut clienii s creeze un nou centru de date clasa enterprise.
Viitoarea generaie de mainframe de la IBM, cu processor pe 64 de bii i tehnologie quad-core,
a fost proiectat de la nceput pentru a fi rspndit i pentru a oferi performan crescut pentru
serverele virtualizate x86, suportnd sute de miliane de utilizatori.
Z10 este echivalentul a 1,500 servere x86, cu un volum mai mic cu 85 % i cu o reducerere a
costurilor de energie cu pana la 85%.
IBM aduce noi capabiliti Master Data Management i Data Warehousing pentru sistemul z.
Acestea vor include serverul Infosphere Master Data Management pentru sistemul z ce permite marilor
business-uri s centralizeze managementul clienilor, produselor i informaiilor din companie.
3. Minicalculatoarele au cunoscut o dezvoltare ncepnd cu 1960 pentru executarea unor
programe de aplicaii specializate, avnd urmtoarele caracteristici generale:
sunt mai mici i mai puin extinse dect supercalculatoarele i sistemele principale;
sunt mai uor de instalat i operat dect sistemele principale;
preul variaz de la cteva mii la sute de mii de dolari;
sunt utilizate n aplicaii multiutilizator, n mainile cu control numeric, automatizri
industriale, prelucrri de texte, precum i pentru transmisii de date ntre sisteme dispersate
geografic, datorit facilitilor oferite n cadrul proceselor de comunicaii.
Numele lor provine din formularea "configuraie minim de calcul". Erau sisteme interactive
(utilizatorii aflai n faa unor terminale se aflau n dialog cu calculatorul) i multiutilizator: la un
moment dat mai multi utilizatori (cteva zeci sau chiar cteva sute) putea folosi calculatorul prin
intermediul terminalelor. Aceast caracteristic impune un sistem de operare (numit RSX) performant,
care s poat gestiona la un moment dat programele mai multor utilizatori i s ofere mecanisme de
protecie a memoriei (s nu se suprapun mai multe programe n aceeasi zon de memorie). n situaia
n care programele utilizatorilor, mpreun cu soft-ul accesat de ele, nu ncpeau simultan n memorie,
erau evacuate temporar pe un disc magnetic (mecanism de swap).
Pentru structurarea informaiilor utilizatorilor aflate sub form de fiiere pe suporturile
magnetice, apare noiunea de director (repertoar de fisiere). Existau doar dou niveluri de directoare,
spre deosebire de directoarele arborescente din UNIX si DOS.
Programarea pe minicalculatoare era mai anevoioas dect pe microcalculatoarele care au aprut
ulterior din cauza unei insuficiente dezvoltri a produselor soft destinate programrii: procesele de
editare, compilare, link-editare i execuie a programelor erau realizate separat, prin aplicaii
independente, care necesitau adesea o cantitate destul de mare de memorie disponibil iar aceast
condiie putea fi adesea mai dificil de ndeplicit n condiiile n care muli utilizatori exploatau
simultan sistemul de calcul.
Minicalculatoarele lucrau pe 16 si 32 de biti. Dintre reprezentanii lor amintim: VAX 8600,
VAX 8650, PDP 11 i calculatoarele romneti CORAL i INDEPENDENT.
Evoluia minicalculatoarelor a condus la sisteme multiutilizator mai performante, care pot fi
exploatate simultan de mai multe sute sau chiar mii de utilizatori acestea sunt referite n literatura de
specialitate sub numele de mainframes. Din punctul de vedere al performanei, ele se apropie cel mai
mult de supercalculatoare, la cellalt pol gsindu-se calculatoarele personale.
4. Serverele au aprut n paralel cu reelele de calculatoare. Reelele permit calculatoarelor s
comunice unul cu celalalt, iar pentru reele mari apare nevoia ca un calculator s ia rolul de server i s
deserveasc alte calculatoare (acestea interacionnd eventual direct cu utilizatorii umani), care i
asum rolul de client.
32
Dup apariia serverelor, reelele s-au dezvoltat i au crescut mai departe, dar minicomputerele,
care erau mai eficiente dect cele personale dar mai ineficiente dect mainframe au disprut sau au
fost absorbite de unele din aceste servere.
Dispozitive de tip server. Cu toate c serverele pot fi construite, din componente obinuite de
calculatoare, este necesar ca pentru operaii de mare amploare, unde conteaz mult viteza de ncrcare,
serverele folosesc configuraii hardware optimizate pentru aceste cerine de server.
Serverele au ncorporate pri mecanice de rezisten-industrial, cum ar fi hard-discurile i
ventilatoarele folosite, fiind de performane deosebite i fiabilitate mare, bineneles la preuri mari.
Aspectul estetic este ignorat, pentru c acestea sunt montate n camere tehnice, i nu sunt vzute doar
de cei ce le ntrein sau le repar. Cu toate c serverele folosesc mult spaiu pe disc, sunt folosite harddiscuri de capacitate mic, pentru mai mult siguran. Viteza microprocesorului este mult mai mic la
un server n comparaie cu un calculator personal. Operaiile de intrare/ieire sunt executate mai rapid
n cazul lipsei interfeei grafice a utilizatorului (GUI), i n aceste cazuri se mrete puterea de calcul n
favoarea altor procese. Serverele trebuie s lucreze n mod continuu i n siguran avnd
ventilatoarele zgomotoase, sisteme centralizate de aer condiionat, pentru a pstra o temperatur ct
mai mic, ca serverele s fie funcionabile. Se folosesc UPS-uri pentru a fi siguri de continuitatea de
alimentare cu energie electric, pentru ca penele de curent s nu provoace stricciuni ireparabile.
Programe pentru servere. Diferena major ntre computerele personale i servere, nu este
partea hardware ci partea de software. Pe servere ruleaz sisteme de operare, care sunt special
proiectate pentru acestea.
Sisteme de operare. Sistemul de operare Microsoft Windows este predominant n rndul
computerelor personale, dar n lumea serverelor, cele mai populare sistem de operare sunt FreeBSD,
Solaris, i GNU/Linux care deriv i sunt asemntoare cu sistemul de operare UNIX. UNIX a fost
proiectat iniial pentru microcomputere i pentru servere, care au nlocuit treptat microcomputerele.
UNIX a fost o alegere logic i eficient ca sistem de operare pentru servere.
Sistemele de operare orientate spre servere, au multe proprieti n comun, care s le fac mai
compatibile cu mediul server, cum ar fi: lipsa interfeei grafice GUI (sau existnd o opiune GUI);
abilitatea de a reconfigura sistemul (hardware i software) n unele cazuri fr oprirea sistemului;
faciliti de a crea copii de siguran (backup-uri) pentru datele importante, la intervale de timp
frecvente si/sau regulate; posibilitatea de a muta date ntre diferite partiii sau dispozitive printr-un
mod transparent pentru utilizator; capaciti flexibile i complexe de lucru n reea; proprieti
(daemoni n UNIX sau servicii n Windows) care fac ca execuia programelor s fie mai eficiente;
sistem de securitate etan, cu utilizatori avansai, protecia datelor i a memoriei.
Cu toate astea, o anumita versiune Windows este mai puin folosit dect cea mai recent
versiune al popularului Mac OS X (acesta este bazat pe UNIX i d acces complet utilizatorilor si la
sistemul de operare UNIX) din familia sistemelor de operare pentru calculatoare personale i unele
sisteme de operare avnd structura de baz mai proprie (cum ar fi z/OS); dar majoritatea serverelor
folosesc sisteme de operare, versiuni ale UNIX sau clonele acestuia. Chiar i n cazul popularului
sistem de operare GNU/Linux de tip UNIX, folosit frecvent pe servere, n aceast configuraie fiind
ideal pentru servere, dar poate fi nesatisfctoare pentru calculatoarele personale, iar o configuraie
care ruleaz ideal pe calculatoarele personale, poate s lase de dorit n cazul serverelor.
Apariia serverelor bazate pe microprocesoare, a facilitat apariia mai multor versiuni ale
sistemului de operare UNIX care ruleaz pe microprocesoare de tip Intel x86, incluznd Solaris,
GNU/Linux i FreeBSD.
Aplicaiile pentru servere, sunt particulare, realizate pentru a executa numai operaii de tip
server, ca i aplicaiile pentru calculatoarele personale sau de tip mainframe care sunt proiectate pentru
mediile respective. Un server care primete numai cereri, folosete aceleai tipuri de aplicaii tot
timpul, nu poate comunica calculatorului care a formulat cererea, despre ndeplinirea cererii.
Servere pe Internet. Aproape toat structura Internetului se bazeaz pe modelul de server client.
Mai multe milioane de servere, toat lumea, sunt conectate la Internet i ruleaz continuu. Majoritatea
serviciilor oferite pe Internet, de servere sunt: Web; Domain Name System; electronic mail sau pot
electronic; file transfer sau transfer de fiiere; instant messaging sau mesagerie instant; fiiere audio
i video, jocuri.
33
calculatoarele de tip IBM PC, care au nregistrat o evolutie tehnologic de-a dreptul spectaculoas,
bazat n principal pe evolutia microprocesoarelor (cele mai cunoscute sunt realizate de firma Intel).
Pentru calculatoarele personale cu performante ridicate, care sunt dotate cu cte un
microprocesor mai puternic si un monitor de calitate nalt, cu facilitti grafice deosebite, se foloseste
uzual denumirea de statii de lucru (workstations). Cele mai cunoscute statii de lucru au fost create de
firmele SUN, Hewlett-Packard si DEC. Statiile de lucru se folosesc uzual pentru aplicatii profesionale,
dezvoltare de soft, probleme care necesit facilitti grafice performante, cum ar fi proiectarea
inginereasc si pot fi conectate n retele de calculatoare.
Primul sistem de operare al microcalculatoarelor a fost MS DOS, care are la baz primul sistem
de operare al microcalculatoarelor, CP/M, mbunttit cu principii din UNIX (cum ar fi structura
arborescent a directoarelor). Datorit mediilor de programare, calculatoarele personale au devenit
instrumente de lucru mai convenabile pentru informaticieni. n plus, mai ales n ultimul deceniu,
produsele soft au evoluat foarte mult, dezvoltndu-si o interfat din ce n ce mai accesibil, care a atras
tot mai mult si utilizatorii neprofesionisti.
Microcalculatoarele sunt siteme de calcul a cror unitate central de prelucrare este
implementat cu unul sau dou microprocesoare. Microprocesoarele sunt circuite integrate monolitice
care implementeaz cea mai mare parte a funciilor unui procesor tradiional, fiind constituite dintr-o
pastil de siliciu (chip) care nglobeaz milioane de tranzistoare - realizat pe baza tehnologiei
siliciului implantat pe rubin n variante MOS (Metal-Oxid-Semiconductor) ca: PMOS, CMOS, NMOS,
HMOS etc.
Memoria este realizat modular, o parte din modulele de memorie fiind alocate utilizatorului ca
zona de lucru (RAM), iar celelalte module memorrii unor programe din software-ul de baz cu care
este echipat microcalculatorul (ROM). modulele de memorie se prezint sub forma unor chip-uri
distincte, avnd o anumit capacitate de stocare,
Controlerele de acces direct la memorie au rolul de a degreva unitatea central de prelucrare de
urmrirea permanent a transferurilor de date realizate ntre memoria intern i memoria extern tratat
ca dispozitiv periferic de intrare/ieire.
Dispozitivele periferice de intrare/ieire sunt cuplate la magistrala microsistemului prin
intermediul interfeelor seriale sau paralele, n funcie de modul n care se realizeaz transferul datelor
(serial sau paralel) care implic supravegherea permanent de ctre unitatea central de prelucrare a
transferului, scznd astfel randamentul acesteia prin meninerea ei n stare activ.
Microcalculatoarele reprezint sisteme de calcul avnd arhitectura construit n jurul
microprocesorului ce are rolul de unitate central de prelucrare. Evoluia microcalculatoarelor a fost
deosebit de dinamic, concretizat prin apariia mai multor subclase de astfel de sisteme de calcul:
1. Microcalculatoarele familiale, aa-numitele Home-Computer, prezentau un microprocesor
pe 8 bii, memorie dinamic de 48Kb, folosind drept monitor televizorul, iar ca dispozitiv al memoriei
externe casetofonul. Programabile n limbajul BASIC, permiteau efectuarea de calcule cu un volum de
date redus (un buget de familie, de exemplu) i, totodat, rularea unor jocuri. Larg rspndite n
deceniul apte, ele au fost oferite de mai multe firme, dintre care, cele mai reprezentative sunt:
Commodore, Sinclair Spectrum,Atari etc.
2. Microcalculatoare semiprofesionale, lansate n juru1 anului 1975, realizate tot cu
microprocesoare pe 8 bii. Se deosebesc, arhitectural, de Home Computer, prin cuprinderea n
configuraie a unor periferice mai pretenioase (uniti floppy disk, imprimanta, uniti de caseta
magnetic, uniti de band magnetic, eventual cuplor de teletransmisie)
3. Microcalculatoare profesionale sau PC-uri caracterizate din momentul lansrii lor pe piaa,
prin utilizarea microprocesoarelor pe 16, 32 i 64 bii, includerea unei uniti de disc WINCHESTER,
destinat stocrii unui volum mare de date, creterea vitezei de prelucrare a datelor etc. Dou au fost
modelele de referin care au marcat evoluia acestei subclase de calculatoare:
PC -Personal Computer (1981) pe 16 bii, lansat de IBM (SUA);
MacIntosh (1984) pe 32 bii, lansat de firma APPLE (SUA).
Strategiile celor dou firme de referin au fost deosebite. IBM a optat pentru o arhitectur
deschis i transparent. n realizarea proiectelor sale, IBM a utilizat circuite integrate produse de
firma INTEL, sisteme de operare create de MICROSOFT, periferice produse de diverse alte firme.
35
Exist dou tipuri de sisteme de operare - Palm OS sau Pocket PC (care mai poart numele de
Windows CE, Microsoft), asigurnd majoritatea facilitilor oferite de sistemele: WINDOWS desktop.
Palm OS are dimensiune mai mic i vitez mai mare de lucru, n timp ce Pocket PC suport mai
uor imaginile grafice sau micile aplicaii de tip Word sau Excel, MP3 sau fiiere de tip Movie, cu
repercusiuni asupra vitezei de lucru.
PDA-urile se pot clasifica i dup modalitatea de introducere a datelor sau de validare a
comenzilor. Cele de tip Handheld (tip de calculator care ncape n mna utilizatorului; printre care
Handheld PC-uri, PDA-uri, Smartphone-uri, pagere inteligente i laptopuri de dimensiuni mici) au o
tastatur n miniatur mpreun cu ecranul LCD preso-sensibil", n timp ce pentru aparatele de tip
Palm folosii un creion" n combinaie cu ecranul care folosete exclusiv un program de
recunoatere a scrisului de mn. Alte versiuni sunt de tip HPA (High Performante Addressing),
reprezentnd un sistem LCD bazat pe o matrice pasiv, care ofer timpi de rspuns rezonabili, dar
continua s aib un contrast sczut Nu se mai fabrici dect pentru dispozitive portabile datorit
scderilor de preuri la matricele active.
PDA-urile poate face schimb de informaie cu alte Pocket PC-uri fr a fi nevoie de cabluri speciale de conectare (tehnologia se bazeaz pe razele infraroii). Windows Mobile 2003 pentru Pocket
PC dispune acum i de suportul Bluetooth (comunicare ntre dou uniti electronice fr a fi nevoie de
o aciune suplimentar a utilizatorului). Firme productoare sunt: HEWLETT-PACKARD, TOSHIBA,
COMPAQ, PHILIPS, Sony, Fujitsu-Siemens, etc.
2.4. ARHITECTURA UNUI CALCULATOR PERSONAL
Ansamblul integrat de componente funcionale care formeaz un tot unitar, reprezint
arhitectura sistemului de calcul. Arhitectura standard a unui microcalculator personal din clasa IBMPC conine: microprocesor, memoria intern, memoria extern, periferice, toate aceste componente
comunicnd prin intermediul magistralei de date i magistralei de comenzi. Pentru componentele ce
formeaz arhitectura standard a microcalculatorului se fac precizri:
Microprocesorul reprezint "creierul" care comand i coordoneaz ntreaga activitate de
prelucrare din cadrul PC-ului.
Memoria intern are rolul de a stoca datele i programele aflate n execuie. nseamn c
procesorul va extrage din locaiile de memorie (uniti elementare de memorie direct adresabile)
instruciunile ce urmeaz s le execute i date le supuse prelucrrii.
Magistrala de date asigur transferul datelor ntre componentele PC-ului (memorie intern,
memorie extern, periferice) i unitatea central.
Magistrala de comenzi asigur transferul comenzilor microprocesorului ctre celelalte
componente ale PC-ului.
Memoria extern este reprezentat de multimea mediilor care permite stocarea permanent a
datelor i programelor (disc fix, discuri floppy, CD-ROM).
Unitile periferice reprezint mulimea componentelor hardware ce permit introducerea datelor
n calculator, precum i redarea rezultatelor prelucrrii, iar cele dou categorii de periferice sunt
periferice de intrare ( tastatur, mouse etc.) i periferice de ieire (monitor, imprimant).
Echipamentul pentru comunicaii include totalitatea dispozitivelor tehnice de conectare,
codificare, decodificare, transmitere i recepie local sau la distan a informaiei utilizate n
activitatea curent. Unele dintre componentele arhitecturii PC-ului se regsesc n interiorul carcasei
unitii centrale: microprocesorul, memoria intern, unitatea/unitile de floppy-disk (pot fi dou),
magistrala de date i magistrala de comenzi, precum i sursa de alimentare, al crui rol este de a
transforma curentul altemativ furnizat de reeaua de 220V n curent continuu.
Aceste componente sunt direct sau indirect (prin conectori) conectate pe placa de baz a PC-ului
numit i mother board. Placa de baz conine microprocesorul, memoria intern, magistralele de
date i comenzi, conectorii de configurare, placa video, controller-ul (placa adaptoare), precum i o
serie de conectori (socluri libere) ce permit realizarea de extensii, cip-uri specializate de tipul:
extensiilor de memorie, placi grafice, placi de modem sau plcile de fax etc.
n procesul prelucrrii, calculatorul realizeaz succesiv anumite cicluri-main, care presupun
parcurgerea mai multor etape. Un ciclu-main prezint dou pri: ciclul instruciunii (I-cycle) i
37
ciclul execuiei (E-cycle), n cadrul fiecrui ciclu executndu-se mai multe faze impuse de executarea
unei singure instruciuni n cadrul unitii centrale de prelucrare. n ciclul instruciunii, unitatea de
comanda-control (UCC) preia din memoria intern o singur instruciune pe care o decodific.
Plaseaz rezultatul decodificrii (codul operaiei) ntr-un registru special i indic unitii aritmeticologice (UAL) ce urmeaz s fac. Specific adresa datelor ce urmeaz s fie folosite n cadrul operaiei
n registrul de adrese. Un registru reprezint o zon (locaie) temporar de stocare, aflat n UAL sau
UCC, pentru instruciuni ale programului sau date de prelucrat ce sunt transferate din memoria intern
n unitatea central pentru a fi prelucrate. n timpul ciclului de execuie, UCC identific datele
necesare prelucrrii n memoria intern, le plaseaz n registrul de date, cere UAL s execute operaia,
stocheaz temporar rezultatul operaiei executate n acumulator i apoi stocheaz rezultatul obinut n
memoria intern. Dupa executarea unei instruciuni, UCC preia spre execuie urmtoarea instruciune
din program i astfel ciclul se reia pentru noua instruciune.
2.4.1. Microprocesorul
Microprocesorul reprezint "creierul" ntregului PC, fiind coordonatorul tuturor operaiilor.
Principalii productori de procesoare au rmas: INTEL, AMD i CYRIX, ntre aceste firme ducnduse o permanent lupt pentru supremaie. De-a lungul timpului au fost realizate mai multe familii de
microprocesoare dintre care amintim:
-familia X86 a lui INTEL, utilizat n realizarea microcalculatorului IBM: 8086, 80286, 80386,
80486, Pentium, PentiumPro, Pentium II, Pentium III, Pentium 4, Celeron, Pentium D, Celeron D,
Core 2 Duo Core 2 Quad i Core 2 Extreme;
-familia 68000 a lui Motorola, utilizat n realizarea microcalculatoarelor ATARI i MacIntosh;
-familia de procesoare DEC Alfa.
Microprocesorul conine dou componente: unitatea de comand-control (UCC) i unitatea
aritmetico-logic (UAL). Unitatea de comand-control reprezint un veritabil "dirijor" al tuturor
prelucrrilor. Rolul su este de a trata instruciunile ce formeaz programul aflat n execuie, emind
comenzi ctre toate celelalte componente ale calculatorului cu scopul realizrii prelucrrilor cerute de
instruciuni. Unitatea aritmetico-logic are rolul de a realiza calculele aritmetice, precum i funciile
logice impuse de programele aflate n execuie i comandate de ctre UCC.
Principalele caracteristici care definesc un microprocesor sunt:
-viteza de lucru;
-capacitatea maxim de memorie pe care o poate adresa;
-setul de instruciuni pe care le poate executa.
Viteza de lucru a microprocesorului este, determinat de o serie de ali factori, i anume:
-frecvena ceasului intern;
-dimensiunea regitrilor interni ai microprocesorului;
-debitul asigurat de magistrala de date;
-existena i dimensiunea memoriei cache;
-tipul constructiv al microprocesorului.
Funcionarea ntregului calculator i, n special, a microprocesorului este coordonat de ceasul
intern. Ceasul intern reprezint un oscilator ce emite pulsuri la intervale de timp egale, bine
determinate. Deci, nu exist nici o legtura ntre ceasul intern i, respectiv, ceasul sistem care
returneaz timpul curent (ora i data), contorizat de memoria CMOS, care, de altfel, pot fi modificate
prin comenzile sistemului de operare.
Microprocesorul conine o component numit decodorul de funciuni care are rolul de a
descompune fiecare instruciune n operaiuni elementare, fiecare dintre operaiunile elementare
identificate urmnd a fi executat n intervalul dintre dou pulsuri de ceas. De altfel, toate
componentele calculatorului i vor coordona activitatea n raport cu pulsurile emise de ceasul sistem.
Un procesor modern (cunoscut i sub denumirea de CPU - Central Processing Unit sau unitate
central de procesare) folosete mai multe tehnologii pentru creterea performanelor:
Frecven mai mare: Cea mai simpl metod de cretere a performanelor unui procesor este
creterea frecvenei de funcionare a acestuia. Din 1971, frecventa de funcionare a procesoarelor a
crescut de aproximativ 25.000 de ori. Creterea frecvenei de funcionare determin i creterea
38
consumului ntr-o oarecare msur contribuie la determin performanele unui procesor, conform
tabelului 2.4.
Tabelul 2.4.
EVOLUIA PROCESOARELOR
Mai multe nuclee : Majoritatea procesoarelor moderne au dou nuclee (Dual Core), dar modele
mai avansate pot avea pn la patru nuclee (Quad Core), cum ar fi procesoarele Core 2 Quad ale Intel
sau Phenom X4 ale AMD. n principiu, fiecare nucleu reprezint un procesor complet. n cazul ideal,
puterea de procesare crete liniar cu umrul nucleelor. n practic, sporul de performan este mai mic
i depinde de fiecare aplicaie rulat. Viitorul promite procesoare cu un numr impresionant de nuclee,
de ordinul sutelor.
Mai mult memorie cache : O memorie cache mare i rapid ajut la procesarea mai rapid a
datelor. Memoria cache este folosit ca i spaiu de stocare temporar pentru cele mai importante
instruciuni ale programelor, sau pentru cele mai frecvent utilizate. Acestea sunt accesate mult mai
rapid (practic instantaneu) de ctre procesor, memoria cache fiind n prezent ncorporat n pastila
procesorului. Programele ruleaz astfel mult mai rapid. Teoretic, cu ct memoria cache este mai mare,
cu att performanele sunt mai bune. Procesoarele moderne folosesc pn la 3 MB de memorie cache
pentru fiecare nucleu, astfel c un procesor quad core poate avea pn la 12 MB de memorie cache.
Circuite mai fine : Productorii folosesc circuite din ce n ce mai fine prin care datele circul n
interiorul procesoarelor. Prin urmare, un numr din ce n ce mai mare de tranzistoare poate fi nglobat
ntrun procesor, permind realizarea de circuite din ce n ce mai complexe, cu performane din ce n ce
mai mari. n plus, pe aceeai suprafa sunt ncorporate mai multe funcii i o memorie cache mai
mare. Circuitele din procesoarele actuale pot avea numai 45 de nanometri lime (un nanometru este 0
milionime dintr-un milimetru; firul de pr are grosimea de 10.000 de nanometri). Procesul de fabricaie
pe 32 nm urmeaz s fie introdus, pentru prima dat, n 2009.
Magistral de date mai rapid: Procesoarele moderne comunic cu memoria sistemului printro magistral de date, denumit i bus". Cu ct frecvena acesteia este mai mare, cu att datele din
memorie sunt accesate mai rapid (rata de transmisie a datelor crete). Spre exemplu, primul procesor
Pentium 4, cu frecvena magistralei de date de 400 MHz (4 x 100 MHz), avea o rat de transfer a
datelor de 3,2 GB/s, n timp ce actualele procesoare Core 2 Duo au frecvena magistralei de date de
1333 MHz (4 x 333 MHz) i o rat de transfer a datelor de 10,66 GB/s.
Instruciuni optimizate : n modelele noi, logica de control este optimizai, astfel c
procesoarele pot executa mai multe operaiuni pe ciclul de ceas sau pot procesa simultan o cantitate
mai mare de date. Ambele situaii se traduc printr-o procesare mai rapid a datelor i, deci, printr-un
nivel superior de performan.
39
Un procesor single-core cu frecven mare de funcionare poate fi mai rapid n anumite aplicaii
dect un procesor multi-core cu frecvena mai mic. Software-ul instalat trebuie s fie capabil s
foloseasc tehnologia multi-core, dar puine programe folosesc eficient puterea oferit de procesoarele
multi-core.
Sistemul de operare trebuie, de asemenea, s fie capabil s foloseasc aceast tehnologie.
Versiunile mai vechi de Windows, cum ar fi Millenium sau 98, nu permit folosirea procesoarelor
multi-core. Windows XP are nevoie de Service Pack 2 sau 3 pentru a scpa de procesele care lucreaz
n background ctre cel de-al doilea core. Cel mai potrivit pentru procesoarele multi-core este
Windows Vista care poate aloca nucleelor suplimentare nu numai procesele ascunse, ci i diferite
programe. Preul: procesoarele de top sunt foarte scumpe: un Core 2 Extreme QX9770 cost n prezent
peste 4000 de lei. Prin urmare, un calculator complet poate s coste, n funcie de configuraie, 6000 de
lei sau chiar mai mult. Pe de alt parte, un procesor Core 2 Duo E8500 ofer un nivel apropiat de
performan (dar are numai dou nuclee), pentru numai 850 de lei. Astfel, poi s construieti un
sistem complet extrem de performant cu numai 2500 - 3000 de lei.
Consumul: ntocmai cum mainile cu motoare puternice consum mai mult benzin, tot aa un
procesor puternic consum mai mult curent. Acest lucru este evident mai ales n full load, unde un
model de top poate s consume pn la 130 de Wai, n timp ce modelele mai lente se mulumesc cu un
maxim de 45-65 de Wai.
Cldura: mai mult performan nseamn mai mult cldur degajat i, implicit, un zgomot
mai mare generat de ventilatorul care trebuie s rceasc procesorul. Zgomotul produs de
ventilatoarele de mici dimensiuni poate fi deosebit de suprtor. Procesoarele moderne produc n
timpul funcionrii o cantitate foarte mare de cldur, care trebuie disipat de pe o suprafa mic.
Raportat la suprafa, multe procesoare produc mai mult cldur dect o plit electric. i, pentru c
procesoarele nu pot suporta temperaturi mai mari de 90 de grade Celsius, are nevoie de un sistem de
rcire eficient. Acesta este format dintr-un ventilator i un radiator care sunt montate n contact direct
cu procesorul. Principalii productori de procesoare, AMD i Intel folosesc un sistem de numerotare
care descrie schimbrile de performan n cazul unui anumit model. n principiu, cu ct numrul este
mai mare, cu att mai rapid este un anumit procesor. Astfel, un Core 2 Duo E8200 dispune de dou
nuclee care funcioneaz fiecare la frecvena de 2,66 GHz, iar E8400 are dou nuclee la 3,0 GHz.
AMD folosete un sistem care nu trdeaz frecvena de funcionare. Astfel, Athlon64 3800+
funcioneaz la frecvena de 2,4 GHz. 3800+ nseamn la fel de eficient ca i un procesor la frecvena
de 3,8 GHz". n ultima vreme ns, chiar i AMD a abandonat acest sistem de numerotare pentru
procesoarele sale recente. Phenom X3 8650 are, astfel, trei nuclee care funcioneaz la frecvena de 2,3
GHz, n timp ce Phenom X4 9850 are patru nuclee cu frecvena de 2,5 GHz.
n spatele denumirii comerciale a procesorului, adesea se ascund nume de cod diferite. Astfel,
avem procesoare Core 2 Duo Conroe" i Core 2 Duo Wolfdale". Productorii folosesc denumirile de
cod pe durata dezvoltrii produsului pn cnd denumirea comercial rmne definitiv. Pentru
specialiti, aceste denumiri dezvluie tehnologia folosit pentru fabricarea procesorului. Astfel, un
model Conroe" folosete tehnologia de fabricaie pe 65 nm, avnd 4 MB de memorie cache.
Succesorul acestuia, Wolf-dale" este fabricat pe 45 nm i dispune de 6 MB de memorie cache.
n acest moment, Intel se afl n faa AMD din punct de vedere tehnologic. Cel mai rapid
procesor Intel este n mod evident mai performant dect cel mai rapid procesor AMD. Dar i mai
scump: n cazul procesoarelor quad-core, Intel are ase modele mai scumpe de 3000 de lei. Pe de alt
parte, cel mai scump procesor AMD cost doar 700 de lei. Dac nu foloseti computerul dect pentru
Internet, email i programe Office, poi s cumperi un calculator complet cu numai 1000 - 1500 de lei
dac alegi un model cu procesor AMD.
Procesoarele folosesc socluri speciale, diferite pentru fiecare model de procesor, fiind mai
rspndite urmtoarele modele de socket-uri:
socket 478: pentru procesoare Pentium 4 i Celeron;
socket 775: succesorul socket-ului 478, este folosit pentru procesoare Pentium 4, Celeron,
Pentium D, Celeron D, Core 2 Duo Core 2 Quad i Core 2 Extreme.
socket 754 i 939: ambele au fost folosite de AMD pentru procesoarele Athlon64 i Sempron. n prezent nu se mai produc procesoare pentru aceste socket-uri.
40
socket AM2: a fost introdus de AMD ca nlocuitor al socket-ului 939. Este folosit pentru
procesoare din familia Athlon64 i Sempron de ultim generaie.
socket AM2+: difer foarte puin de socket-ul AM2, astfel c procesoarele AM2 pot fi
montate ntr-un socket AM2+ i viceversa.
Noile procesoare ns, cum ar fi cele din gama Phenom, ruleaz mai rapid de pe un socket
AM2+. Poi afla ce soclu folosete placa de baz a calculatorului tu citind n manualul computerului
sau al plcii de baz. Dac PC-ul este mai vechi,este foarte posibil s nu se mai produc procesoare
compatibile cu acesta.
Procesorul acceseaz memoria intern (RAM) pentru a extrage datele de prelucrat i
instruciunile pe care trebuie s le execute. Cum decalajul dintre viteza de lucru a microprocesorului i
viteza de lucru a memoriei interne este considerabil, microprocesorul este nevoit s introduc nite
cicluri de ateptare n plus, numite wait-state, pentru a citi sau scrie date din/n memoria intern.
Pentru a se elimina acest inconvenient, se introduce ntre microprocesor i memoria intern o memorie
rapid numit memoria cache care are rolul de a fi mai direct legat cu microprocesorul dect memoria
RAM i asigur, reducerea la minimum a timpului de ateptare a microprocesorului i eliberarea la
maximum a bus-ului memoriei.
Memoria intern este diferit de memoria cache, cea intern este o memorie DRAM (Dynamic
Random Access Memory), iar memoria cache, mult mai rapid, este de tip SRAM (Static Random
Access Memory), cu un timp de acces de 12 ns. Din memoria intern se va ncarca n memoria cache,
la o singur operaie de citire, nu o singur instruciune, ci un "bloc" de instruciuni ce urmeaz a fi
prelucrate apoi de procesor. Pe lng faptul c este foarte rapid, memoria cache este i mai
"inteligent" dect memoria intern. Prin controller-ul su sunt identificate instruciunile cele mai
utilizate de ctre procesor i reinut adresa lor (precum i o copie a acestora) din memoria RAM,
astfel nct, cnd procesorul solicit o anumit adres, mai nti se verific dac ea se afl n cache i
numai atunci cnd nu este gsit, adresa este transferat mai departe prin magistral la memoria RAM.
n cazul PC-urilor ce lucrau sub sistemul de operare MS-DOS (monotasking) se folosea un cache
de nivel 1 (L1) direct integrat n processor, iar lucrul sub mediul WINDOWS presupune un volum
mare de date preluat de procesor, ceea ce a determinat adugarea unui cache de nivel 2 (L2) situat ntre
procesor i memoria intern. PC-urile actuale dispun de ambele niveluri de memorie cache, intern i
extern. Majoritatea procesoarelor dispun de un cache intern de 8KB sau 16 KB, iar memoria imediat
extern (de nivel 2) de 128, 256, 512, 1024 KB i chiar 4 sau 6 MB.
Exist o memorie cache de nivel L3 ca o extra memorie a procesoarelor care au memoria L2,
fiind situat pe placa de baz.
n realizarea procesoarelor s-au aplicat n timp dou tehnologii diferite, n funcie de setul de
instruciuni implementate, tehnologiile CISC i RISC.
Tehnologia CISC (Complex Instructions Set Computer), prima utilizat, a promovat ideea
dezvoltrii de calculatoare ale cror procesoare s includ instruciuni din limbaje de nivel nalt.
Aceste procesoare sunt capabile s interpreteze peste 400 de instruciuni.
Tehnologia RISC (Reduce Instructions Set Computer) a fost utilizat pentru prima dat la
realizarea arhitecturii SPARC propus de firma SUN Microsystems. INTEL 8086 coninea 29000 de
tranzistori, putea adresa 1 MB de memorie, lungimea cuvntului era de 16 bii, frecvena de ceas fiind
de 4,7 MHz, iar viteza de calcul realizat era de 0,75 MIPS (milioane de instruciuni pe secund).
Acum se ncheie prima generaie de microprocesoare, cu I8088 i I8086 i ncepe seria X86.
n anul 1982 este lansat microprocesorul INTEL 80286, exponentul generaiei a doua de
microprocesoare, caracterizat prin frecvena de ceas cu valori ntre 6 i 25 MHz, memorie adresabil
de 16MB, viteza de calcul de 2,66 MIPS, dotat cu un bus de adrese de 24 de bii, care nltura"
limitarea de l MB de memorie adresabil a lui 8088 / 8086 (i crea una nou la 16 MB), i cu un set
extins de instruciuni care promitea rularea mai multor aplicaii n paralel (multitasking).
n 1985 apariia lui 80386DX a marcat trecerea la 32 de bii att a core-ului, ct i a bus-ului,
mrind astfel considerabil viteza procesorului n calculele cu numere mari i permind nu doar
apariia aplicaiilor pe 32 de bii, ci i adresarea unei zone de memorie de 4 GB, trecndu-se la
generaiei a treia de microprocesoare. Corectarea adus arhitecturii prin completarea setului de
instruciuni de lucru n modul protejat deschide drumul sistemului de operare multitasking i multiuser.
41
Generaia a patra, marcat prin apariia n 1989 a lui 486, aduce reproiectarea nucleului Intel cu
unele mbuntiri. Arhitectura CISC, pe care se bazeaz x86, are instruciuni diferite ca numr de pai
i complexitate. includerea pe cip a 8 KB de memorie tampon (cache), a dus la o scdere a timpilor
mori n care procesorul atepta dup memoria principal, iar integrarea on-die a coprocesorului
marcheaz apariia unui nou criteriu de selecie a procesoarelor: performana n virgul mobil. O alt
inovaie important este folosirea multiplicatorului (fixat), care permite procesorului s ruleze la
frecven dubl (486DX2) sau chiar tripl (486DX4) fa de frecvena plcii de baz, aducnd un spor
considerabil de performan, dar i o nou problem: limea redus a bus-ului procesor-chipset.
Procesorul care a definit a cincea generaie - Pentium (P5 - 1993, P54 -1995) - a beneficiat de o
lime dubl a bus-ului extern de date (64 bii) i de dublarea motorului de execuie. Aceasta nseamn
c Pentium este primul procesor (x86) superscalar, capabil sa execute concomitent mai multe
instruciuni. n 1987, Intel lanseaz noua versiune de Pentium (P55) cu suport MMX (MultiMedia
eXtension), permind procesarea de ctre o singur instruciune a blocuri mari de date.
Procesorul Pentium Pro (P6 - 1995), care avea s deschid generaia a asea, a aprut iniial
pentru piaa de servere i staii de lucru high-end. Procesorul avea on-die ntre 256 KB i 1 MB de L2
cache i 16 KB de L1 cache, ambele opernd la frecvena procesorului - mult peste cei 16 KB de L1
cache pe care i avea n 1998 Intel lanseaz o versiune nou a Pentium II care are procesul de producie
redus la 0,25 de microni i folosete un FSB de 100 MHz. Spre sfritul anului 1999 Intel lanseaz o
nou versiune a lui Pentium III, numit Coppermine, produs n noua tehnologie de 0,18 microni, cu un
cache L2 de 256 KB, inclus pe pastila de siliciu.
n 1999 AMD lanseaz procesorul Athlon, primul din generaia a aptea, bazat pe un nucleu
nou extrem de eficient. Spre sfritul anului 2002, Intel prezint noul Pentium 4 3,06 GHz, (nucleu
Northwood), cu suport pentru o tehnologie HyperThreading, iar procesorul apare ca un dublet Pentium
4 n SMP (Symmetric MultiProcessing). Rezultatul este un sistem mai rapid i cu timpi de rspuns
mult mai mici n cazul efecturii unor operaiuni ce folosesc intens procesorul.
Urmtoarea generaie, a opta este realizat n ultima perioad i se bazeaz pe procesoarele cu
2, 3, 4, 6 sau 8 nuclee de procesoare ncorporate ntr-unul. Nu toate nucleele (core) sunt activate i
utilizate i utilizate nc.
Pentru procesoarele ultimelor generaii de sisteme de calcul sunt utilizate tehnologii de fabricaie
i miniaturizare a componentelor elecronice la 0,18, 0,25 i 0,35 microni (firul de pr are 25 de microni,
adic de 100 de ori mai mult). Din 2002, cu nucleul Thoroughbred s-a trecut la a doua generaie de Athlon
XP, cu tehnologia de fabricaie de 0,13 microni. Prin trecerea la tehnologia de 0,13 microni i tehnologia
Hyper-Threading, s-au lansat noile procesoare Prescott de la Intel, cu numele Pentium 4E (iniial au
fost 5 variante diferite) i cu alte dou procesoare: Pentium 4 EE i Pentium 4 "Northwood" la 3,4
GHz. De la nceputul anului 2004 nucleul Prescott a reprezentat trecerea la procesul de fabricaie de
0,09 microni. Cnd Intel a lansat procesorul Prescott (toat lumea se atepta la Pentium 5, dar iat c
cei din Santa Clara n-au considerat c este cazul s fac i o astfel de schimbare), cu scopul nlocirii
vechiul core" Northwood. n cadrul tendinelor de miniaturizare productorii de procesoare i propun
s ajung la litografia de 65 nm (nanometri), cu o frecven de lucru de 10 GHz i un consum de cca.
0,85 V i la litografia de 20 nm, cu 20 GHz i 0,7 V n 2008-2009.
2.4.2. Componentele calculatoarelor
n interiorul calculatorului personal se gsesc urmtoarele componente:
1. Sursa de alimentare: Toat electricitatea intr n calculatorul prin aceast cutie protejat, din
metal, n interiorul ei, un transformator convertete curentul care provine de la prizele standard n
tensiuni i fluxuri de curent necesare pentru diferitele componente al calculatorului. Toate celelalte
componente, de la placa de baz pn la hard disc, primesc curent prin intermediul conductorilor ce
sunt cuplai n conectori protejai din plastic.
2. Carcasa: De regul din metal sau plastic, carcasa (sau asiul) protejeaz componentele interne
ale caiculatorului de praf i lovituri.
3. Discul flexibil: Discurile flexibile, asemenea discurilor Zip sau Jaz, ofer cantiti mai mari de
spaiu flexibil de stocare dect dischetele. Adesea, ele nu sunt suficient de rapide pentru a rula
42
programe de o manier satisfctoare, dar permit arhivarea documente vechi sau utilizate rar i s
efectueze backup-ul datelor curente.
4. Unitatea CD-ROM, folosete o raz laser pentru a citi date dintr-o spiral de crestturi i
zone plate aflate pe un strat al unui disc compact, asemntoare cu discurile compacte muzicale.
Majoritatea programelor sunt distribuite, pe CD-uri, care pot conine aproximativ 650MB de date
(700MB, iar mai recent 800MB).
5. Unitatea CD-ROM/DVD, apare tot mai des la noile calculatoare personale, un DVD (digital
versatile disk) ia locul unui CD-ROM. DVD-ul folosete, de asemenea, un laser pentru a citi date de pe
un disc care arat precum un disc compact obinuit. Dar datele sunt mai compacte i sunt stocate pe
mai multe straturi de pe disc, oferind discului DVD o capacitate de stocare de 8 pn la 17 GB, adic
informaii care, dac ar fi pe hrtie tiprit, ar umple zece camionete. Unitile DVD pot citi, de
asemenea, CD-ROM-uri.
6. Unitatea de band, este o unitate de band de backup nu furnizeaz accesul aleatoriu necesar
pentru operaiunile zilnice de stocare. Unitile de band sunt folosite pentru a efectua, de o manier
necostisitoare, backup-ul hard disc-urilor de mare capacitate, din motive de securitate.
7. Hard discul, este principalul depozit - sub forma unor nregistrri magnetice pe platane dure
i subiri - al programelor i documentelor, coninnd fiierele sistem care permit calculatorului s
porneasc.
8. Unitatea de dischet: Majoritatea dischetelor conin 1,44 MB de date, echivalentul a 500 de
pagini de text tiprit. Unitatea de dischet reprezinta metoda de efectuarea de copii de rezerv ale
fiierelor, n czul n care se ntmpl ceva cu fiierele originale de pe hard disc.
9. Controlerele IDE: De regul construite pe placa de baz, sunt dou sloturi IDE care
furnizeaz conexiuni pentru cablurile care trimit semnalele ce controleaz unitatea de dischet, hard
discul i unitatea CD-ROM.
10. Slotul de extensie AGP: Portul de grafic accelerat furnizeaz plcilor grafice 3D un acces
rapid la memoria principal a calculatorului personal.
11. Slotul de extensie PCI (peripheral component interconnect, interconectare componente
periferice) sunt concepute pentru plci care folosesc tehnologia Plug and Play, un design hardware
care permite plcilor s se adapteze automat la calculatoarele personale.
12. Placa video: Transform informaiile din imagini n diferii cureni electrici necesari pentru
afiarea unei imagini pe monitor.
13. Placa de sunet, conine circuitele pentru nregistrarea i reproducerea de sunete multimedia.
14. Memoria RAM: Memoria cu acces aleatoriu este o colecie de microcipuri n care
calculatorul stocheaz programe i date n timp ce le folosete. Atunci cnd calculatorul este oprit,
coninutul memoriei RAM se pierde.
15. Real-time clock este un cristal care vibreaz n aceast component, stabilind ritmul,
sincronizeaz activitatea tuturor celorlalte componente.
16. CMOS, este un tip special de cip de memorie care folosete o baterie de mici dimensiuni
pentru a pstra informaiile despre configuraia hardware a calculatorului personal chiar i atunci cnd
calculatorul este oprit.
17. Sistemul de intrare/ieire de baz (BIOS): Dac procesorul este creierul calculatorului
personal, sistemul de intrare/ieire de baz este inima lui. Este format din unul sau dou cipuri care
definesc personalitatea (sau individualitatea) calculatorului.
18. Bateria CMOS-ului: Arareori are nevoie de ncrcare, dar se recomand crearea unui fiier
backup al informaiilor coninute n cipul CMOS.
19. Microprocesorul, este o colecie ngust i complex de tranzistori aranjai astfel nct s
poat fi folosii pentru procesarea datelor.
20. Heat sink: Deoarece microprocesoarele produc mult cldur, un heat sink este folosit
pentru a disipa cldura, astfel nct, componentele interne ale cipului nu se topesc.
21. Ventilatorul, atrage aer rece deasupra componentelor sensibile la cldur din interiorul
carcasei. Trebuie verificat funcionarea corect a ventilatorului.
22. Porturile USB (universal serial bus) sunt o soluie la lipsa de ntreruperi i resurse de sistem
a calculatoarelor personale i permite programelor s se conecteze direct la dispozitivele periferice.
43
23. Portul mouse-ului, numit port PS2, este standard pentru calculatoarele personale mai noi.
Calculatoarele personale pot utiliza un mouse care se conecteaz la un port serial.
24. Portul tastaturii: Tastaturile sunt de regul separate de locul unde este adpostit unitatea
central de prelucrare i se conecteaz la un mini-port. La sistemele mai vechi, conectarea tastaturii se
poate face printr-un port de dimensiuni mai mari, rotund i cu cinci pini.
25. Portul paralel, este folosit pentru conectarea unei imprimante, dar i unele discuri i alte
dispozitive periferice pot fi ataate la acest port.
26. Porturile seriale: Majoritatea calculatoarelor personale au dou porturi seriale. Un calculator
personal poate avea patru porturi seriale, dar ntr-un anumit moment nu pot fi folosite dect dou.
27. Conexiunile plcii de sunet: Mufele externe de pe placa de sunet permit conectarea unui
microfon, boxe sau o surs de sunet extern.
28. Modem-ul, conecteaz calculatorul personal cu o linie telefonic, astfel nct se pot accesa
servicii de informaii i Internet-ul.
2.4.3. Memoria intern
Memoria intern reprezint o component important a microcalculatorului, avnd rolul de a
stoca date i programe. La rndul su, memoria este format din dou componente, prezentnd
caracteristici funcionale i constructive diferite: memoria intern i memoria extern.
Memoria intern, care face parte alturi de microprocesor din unitatea central, se caracterizeaz
prin capacitile relativ reduse de stocare (n raport cu memoria extern), dar are o vitez de acces la
date foarte mare. Rolul ei este de a stoca, la un anumit moment, programe ale sistemului de operare
(acestea se ncarc n memoria intern n momentul pornirii calculatorului), programe de aplicaie i
datele supuse procesului de prelucrare. Constructiv, memoria intern este format din circuite
electronice. Memoria extern are rolul de a stoca n mod permanent date i programe.
Ea se caracterizeaz prin capacitatea de stocare deosebit de mare, dar o vitez mult mai mic de
acces la date. Ea comunic cu unitatea central prin intermediul magistralei de date i nglobeaz hard
disc-ul, discurile floppy, banda magnetic, CD ROM-ul etc.
Microcalculatoarele ce lucreaz sub unele sisteme de operare (nu este cazul sistemului de
operare MS DOS) utilizeaz memoria virtual, care reprezint pari ale discului hard, utilizate pentru a
simula memoria intern (RAM). Se realizeaz astfel stocarea unor zone masive de memorie RAM ntrun fiier pe disc (swap file), eliberndu-se astfel memoria RAM real, ce poate fi utilizat acum pentru
alte lucrri. La nevoie se poate realiza restaurarea, n RAM- ul real, a memoriei salvate pe disc. Apelul
la memoria virtual se justific n cazul PC-urilor care nu dispun de suficient memorie RAM.
Memoria intern poate fi considerat ca a doua component a calculatorului n ordinea
importanei dup procesoare.
Fizic, memoria intern este compus din circuite integrate ce pot prezenta tehnologii constructive
diferite, asigurnd particulariti n ceea ce privete natura accesului la datele stocate.
Elementele ce caracterizeaz memoria intern sunt:
1. Capacitatea (dimensiunea) memoriei interne msurat n KB. Aceast caracteristic este,
bineneles, dependent de microprocesorul folosit. Oricum, performanele microcalculatorului cresc
exponenial o dat cu sporirea dimensiunii memoriei interne.
2. Timpul de acces reprezint intervalul de timp necesar unui circuit de memorie s localizeze
un bit de informaie. Un alt parametru este reprezentat de timpul maxim de rspuns, reprezentat de
intervalul de timp ce se scurge din momentul n care se primete de la procesor comanda de citire i
momentul n care depune pe magistrala de date valoarea citit (similar pentru operaia de scriere).
Timpul maxim de rspuns se msoar n nanosecunde (ns) i depinde de tehnologia de construcie a
cipurilor de memorie.
3. Modul de organizare i adresare. Memoria intern este organizat sub forma de locaii de
memorie (de dimensiuni egale) n care sunt memorate cuvinte de n bii (n = 8). Rezult deci c ntr-o
locaie de memorie poate fi stocat un octet. Octetul este cea mai mic unitate adresabil. Unitatea
adresabil imediat urmtoare este cuvntul. El este format din 2, 4 sau 8 octei (cuvntul de 8 octei
este ntlnit n cazul supercalculatoarelor: ex. CRAY).
44
Un calculator utilizeaz dou tipuri fundamentale de memorie: RAM (Random Access Memory memorie cu acces aleator) i ROM (Read Only Memory -memorie permind doar operaii de citire).
Aceste dou tipuri de memorie se deosebesc att constructiv, ct i din punct de vedere al funciei pe
care o ndeplinesc.
Memoria RAM este alcatuit din circuite integrate foarte mici, fiind organizat sub forma unei
matrice de celule de memorie, fiecare celul stocnd un bit. Datele stocate se regsesc rapid prin
indicarea rndului i coloanei la intersecia crora se afl celula. Memoria RAM servete la stocarea
datelor i programelor aflate n curs de execuie. Permite efectuarea att a operaiilor de scriere, ct i a
celor de citire i este o memorie volatil, adic i pierde coninutul o dat cu oprirea calculatorului.
Memoria ROM (Read Only Memory) este o memorie permanent i permite-numai operaii de
citire. La nivelul ei sunt implementate programe de firm (firmware) ce ofer informaii fundamentale
pentru calculator: programul de test al componentelor calculatorului ( executat n momentul pomirii
sistemului de calcul), programul BIOS (Basic Input Output System), reprezentnd sistemul de baz
pentru operaii intrare-ieire etc.
Dac cipurile de memorie ROM sunt programate doar de firma productoare i nu pot fi
terse/modificate de ctre utilizator, exist variante de memorie ROM ce pot fi
programate/reprogramate de utilizator (stocnd binenteles alte tipuri de informaie):
PROM (Programmable Read Only Memory): reprezint o memorie permanent
programabil o singur dat de ctre utilizator. Se realizeaz pe acelai mediu fizic ca i ROMul (pastila de siliciu), dar odat programat de utilizator informaia nu mai poate fi tears;
EPROM (Erasable Programmable Read Only Memory): memorie permanent
programabil ce poate fi tears i reprogramat de ctre utilizator;
EEPROM (Electrically Erasable Programmable Read Only Memory): memorie
permanent ce poate fi reprogramat n mod repetat de ctre utilizator.
Memoria de tip RAM. Exist dou tehnologii utilizate n realizarea memoriei RAM, dinamic
i static: DRAM (Dynamic RAM) i SRAM (Static RAM).
Tehnologia DRAM este cea mai folosit n arhitecturile actuale pentru realizarea memoriei
principale a calculatorului, permind stocarea temporar a datelor i programelor aflate n execuie.
Apelativul de RAM dinamic provine de la necesitatea remprosptrii de sute de ori pe secund a
coninutului su, acest lucru datorndu-se faptului c fiecare celul de memorie este conceput ca un
mic condensator ce stocheaz sarcina electric. Tipurile de memorii DRAM utilizate la ora actual
sunt: FPM (Fast Page Mode), EDO (Extended Data Out), SDRAM (Synchronous DRAM).
Caracteristica comun a acestor tipuri de memorie RAM este prezentat de facilitatea de a lucra n
pagini de memorie. O pagin de memorie reprezint seciunea de memorie disponibil prin selectarea
unei adrese de rnd. Modulele de memorie RAM de tip FPM i EDO erau utilizate pentru procesoarele
generaiilor patru, cinci i ase, dar prezint dezavantajul modului de lucru asincron.
n implementarea hard a memoriei interne s-a renunat la ideea cipurilor de memorie individuale,
promovndu-se utilizarea unor module de memorie SIMM (Single de In-Line Memory Modules) ce
sunt tratate ca un cip de memorie la capacitate foarte mare. Alt soluie pentru modulele de memorie o
reprezint DIMM-ul (Dual In-Line Memory Modules), care a fost utilizat iniial n cazul sistemelor
MacIntosch i apoi pentru PC- uri ce prezint pe placa de baz socluri corespunztoare. Dup cum i
arat i numele, DIMM este echivalentul unei perechi de SIMM-uri, dar folosete mai puin spaiu.
SRAM-ul folosete tot un sistem matriceal de reinere a datelor, dar n raport cu DRAM-ul este
de cinci ori mai rapid, de dou ori mai scump i de dou ori mai voluminoas. De aceea este folosit
pentru realizarea memoriei cache. Conceptual, SRAM-ul este diferit de DRAM, deoarece este gndit
ca un circuit bistabil (Inchis/deschis), fiind astfel mai rapid dect DRAM-ul.
Utilizarea memoriei RAM. Sistemul de operare MS-DOS gestioneaz doar primul megaoctet
de memorie RAM. Acest prim megabyte de memorie este structurat n dou pri distincte, avnd
roluri diferite: memoria convenional (ce ocupa primii 640Kb) i memoria superioar (ocupnd
spaiul rmas pn la limita de 1MB). Limita dintre (memoria convenional i memoria superioar
poart numele de bariera DOS
Rolul memoriei convenionale (numit i memorie inferioar) este de a stoca datele i
programele aflate n execuie. Cum executarea programelor de aplicaie nu se poate realiza fr
45
utilizarea programelor care formeaz sistemul de operare, nseamn c o parte din acestea din urm se
vor stoca n aceast zon. Este vorba de procesorul de comenzi (Command.com) al crui rol este de a
interpreta comenzile DOS i de a le lansa n execuie, de rutina BIOS, precum i de o serie de
programe numite drivere al cror rol const n asigurarea comunicrii sistemului de operare cu unitile
periferice (deci va exista un driver pentru imprimant, unul pentru scanner, unul pentru mouse etc.).
Memoria superioar (High Memory) este rezervat sistemului de operare MS-DOS. Primii
128 Kb formeaz memoria RAM video ce reine semnalele electronice care conin imaginea a ceea ce
se afieaz pe ecran. n realizarea memoriei RAM video se utilizeaz tehnologia VRAM sau WRAM.
VRAM -Video Random Access Memory -este o memorie video cu acces aleator. Este volatil i face
parte din sistemul video al calculatorului, alturi de procesorul video i de magistrala utilizat.
Imaginea pe care o stocheaz -text sau grafic- urmeaz a fi afiat de o plac special numit adaptor
video. Datorit timpilor de acces destul de mari ce caracterizeaz cipurile memoriei ROM BIOS (de pe
placa de baz i plcile adaptoare), unde sunt stocate multe din driver-ele cele mai utilizate, se
utilizeaz metoda ROM Shadowing (duplicarea memoriei ROM). Aceast metod, permite ca
programele aflate n memoria lent ROM s fie mutate n memoria RAM (superioar), mult mai
rapid. Duplicarea se realizeaz prin utilizarea unitii de gestiune a memoriei (MMU -Memory
Management Unit). n zona memoriei superioare pot ramne neutilizate unele zone ce pot servi pentru
ncrcarea unor drivere de dispozitive periferice n vederea eliberrii unei pri a memoriei
convenionale.
Memoria extins (XMS) reprezint zona de memorie aflat peste grania celor 1MB de
memorie. Cnd procesorul lucreaz n mod real, el poate accesa doar primul megabyte de memorie.
Pentru a accesa memoria aflat peste aceast limit (de 1MB) procesorul trebuie s lucreze n mod
protejat (mod de lucru implicit pentru procesoarele moderne). La calculatoarele prezentnd procesoare
286 i 386SX, limita memoriei extinse ajunge la 16MB, iar n cazul procesoarelor 386DX, 486 i
Pentium, pn la 4GB.
Zona de memorie nalt (High Memory Area), ocup primii 64K din memoria extins i poate
fi utilizat pentru a ncrca drivere de dispozitive periferice i programe rezidente n memoria
conventional. n cazul sistemului de operare MS-DOS, prin ncrcarea unui driver XMS (de exemplu
Himem.sys) i completarea fiierului config.sys cu linia DOS = HIGH se poate muta nucleul
sistemului de operare n HMA. Se elibereaz astfel 45KB n zona memoriei convenionale ce pot fi
pui la dispoziia programelor de aplicaie.
Memoria expandat (Expanded Memory Specification -EMS), ca i memoria extins, nu poate
fi folosit pentru rularea programelor, ci doar pentru stocarea temporar a acestora. Spre deosebire de
memoria convenional sau memoria extins, memoria expandat nu poate fi accesat direct de
procesor. Memoria CMOS (Complementary Metal-Oxide Semiconductor), este o memorie RAM mai
deosebit. Ea permite citirea i scrierea informaiilor stocate i are caracter nevolatil. Ea consum mult
mai puin dect celelalte memorii RAM i este alimentat n mod permanent de o baterie (chiar cnd
calculatorul este oprit). Acest lucru face ca timp de 2-3 ani informaia s fie pstrat chiar dac
sistemul nu va fi pornit. Ea conine o serie de informaii deosebit de importante: tipul monitorului,
tipul i mrimea discurilor, data i ora curent etc.
n figura 2.2. este prezentat schematic memoria intern a unui sistem de calcul
voltajului inductiv produs atunci cnd un magnet permanent (disc-platanul), este aflat sub influena
unui modul electromagnetic (capul citire/scriere).
La formatarea discului, fiecrui sector i sunt create (asociate) zone suplimentare necesare
controller-ului pentru numerotarea sectoarelor i pentru identificarea nceputului i sfritului de
sector. Unitatea de transfer dintre periferic i memoria tampon a calculatorului este reprezentat dintrun grup de sectoare numite uniti de alocare sau clustere. Dimensiunea clusterelor se stabilete la
formatare.
Formatarea HDD-ului reprezint un proces n care se realizeaz definirea structurii fizice i
logice a suportului. Formatarea se realizeaz n trei etape:
formatarea fizic sau formatarea de nivel inferior (low-level formatting);
partiionarea
formatarea logic sau formatarea de nivel superior (high-level formatting).
Formatarea fizic este etapa la care pistele discului sunt mprite n sectoare i se scriu
informaiile n zonele ce preced sau succed fiecare sector, adic intervalul inter-sector i intervalul
inter-piste. Cei 512 octei la nivelul fiecrui sector, ce vor fi utilizai n procesul stocrii datelor, vor
primi valori fictive sau secvene de test. Numrul de sectoare definite la nivelul fiecrei piste este
determinat de tipul de unitate HDD i de interfaa folosit de controller.
Noile uniti HDD se caracterizeaz prin implementarea unei tehnici de nregistrare zonat
(metoda de nregistrare pe zone se numete Multiple Zone Recording) care presupune gruparea
cilindrilor pe zone consecutive (de la axul central spre exterior), numrul sectoarelor definite la nivelul
cilindrilor dintr-o zon fiind mai mare dect cel din zona precedent. Acest lucru se datoreaz faptului
c pistele aflate spre exterior sunt mai lungi. Limitrile impuse de BIOS cer ca unitatea HDD s se
comporte n relaia sa cu sistemul ca i cnd ar prezenta acelai numr de sectoare pe oricare dintre
piste, acest lucru fiind posibil prin utilizarea unor algoritmi de translatare integrai la nivelul controlerului. Se pot defini 10 astfel de zone.
Partiionarea reprezint procesul de segmentare logic a HDD-ului n discuri logice numite
partiii (identificate prin indicativul lor D, E, F etc.). Fiecare partiie poate fi utilizat deci ca o unitate
HDD distinct i deci se poate realiza instalarea de sisteme de operare diferite la nivelul fiecrei partiii
(disc logic). Fiecrui sistem de operare i este specific un anumit sistem de fiiere. n cazul sistemelor
de operare specifice PC-urilor sunt caracteristice trei sisteme de fiiere:
FAT (File Allocation Table -Tabela de alocare a fiierelor) -este recomandat din motive
de compatibilitate i reprezint sistemul de fiiere standard pentru sistemele de operare DOS, OS/2 i
WINDOWS NT. Accept nume de fiiere din maxim 8 caractere (i o extensie de 3 caractere). FAT 32
este un nou gestionar de fiiere pentru WINDOWS '95, '98, Me i XP, cu avantajul oferit fa de
FAT16 (caracteristic pentru sistemul de operare MS-DOS) c gestioneaz hard-disk-uri ce depesc
capacitatea de 2 GB fr s fie necesar partiionarea acestuia.
HPFS (High Performance File System) reprezint sistemul de fiiere de tip UNIX accesibil
numai sub OS/2 i WINDOWS NT . Numele fiierelor pot avea pn la 216 caractere, iar mrimea
volumelor este de maxim 8GB.
NTFS (Windows NT File System). Este tot un sistem de fiier de tip UNIX, dar accesibil
numai sub sistemul de operare Windows NT, XP i Vista.
Trebuie subliniat faptul c indiferent de sistemul de fiiere, softul de partiionare scrie un
program special folosit pentru pornirea calculatorului (boot) i o tabel de partiii, pe primul sector de
disc (sectorul de boot).
Formatarea logic reprezint etapa n care are loc o organizare a partiiei n conformitate cu
cerinele sistemului de operare.
n cazul partiiilor FAT structura discului este rezentat n figura 2.3.
Zona BOOT se regsete la nivelul primului sector (sector 0) al partiiei MS- DOS i stocheaz
programul ncrctor al sistemului de operare. Informaia stocat aici este deosebit de valoroas i se
refer la: dimensiunile sectoarelor, numrul sectoarelor pe disc, numrul de sectoare pe pist,
dimensiunea unui cluster etc.
Zona FAT (Tabloul de alocare a fiierelor) reine informaia privitoare la modul de alocare a
spaiului disc. Unitatea de eviden este clusterul (format din 2-16 sectoare ). Din motive de securitate
un disc poate conine 2 zone FAT .
Zona ROOT.Dir (directorului rdcin) stocheaz informaiile privitoare la intrrile n
directorul rdcin (fiiere i subdirectoare ): numele fiierelor/subdirectoarelor; tipul, dimensiunea,
data i ora crerii/actualizrii fiierelor etc.
Zona utilizator reprezint spaiul pus la dispoziia utilizatorului pentru stocarea fiierelor.
Unitile HDD se leag de magistrala calculatorului prin intermediul unei interfee sau controler.
Interfaa cu HDD poate asigura conectarea a 2 sau 4 HDD-uri. Cele mai eficiente controlere sunt cele
integrate n placa de baz, i asigur cel mai rapid transfer al datelor i sunt configurate din BIOS.
Dintre principalii productori sunt de menionat Western Digital, HITACHI, Maxtor, Seagate,
Samsung, etc., care utilizeaz interfee SATA 150, ATA 133, Ultra ATA 100 .a. La ora actual HDDurile prezint capaciti de ordinul zecilor pn la 250, 400, 500 GB i 1000 GB (1TB). Hitachi a
anunat un hard disk de 3,5" cu 2 Terabytes pentru 2009.
Printre noutile intervenite n acest domeniu este de menionat nregistrarea magnetic
perpendicular, tehnologie revoluionar care mrete semnificativ capacitatea de stocare a HDDurilor realizat de Toshiba Corporation. Metoda se bazeaz tot pe stocarea datelor n bii ncrcai
magnetic, ns, spre deosebire de tehnologia clasic, n care acetia sunt dispui longitudinal (orizontal)
pe suprafaa discului, de aceasta dat biii sunt dispui n plan vertical, perpendicular pe suprafa.
Spaiul ocupat este mult mai mic, iar capacitatea de stocare a discului este mai ridicat, un platan de 1,8
inch poate fi ridicat pan la 40 de GB. Primele produse ale companiei sunt HDD-urile MK4007GAL (40
GB la o grosime de 5mm) i MK8007GAL (80 GB-cea mai mare capacitate de stocare atins la un
factor de form de 1,8 inch), care vor fi folosite pentru dispozitivele portabile de genul music playerelor. Densitatea de nregistrare pe cele dou drive-uri este de 206 megabii pe milimetru ptrat, cu 37%
mai mare dect n cazul HDD-urilor actuale. Acesta este un suport de stocare holografic, ce pstreaz
datele ca holograme tridimensionale, este confecionat dintr-un material fotopolimer WORM, are o
grosime de 1,5 mm i este plasat ntre dou discuri transmisive de plastic de 130 mm diametru.
b) Unitile de disc flexibil (floppy disk);
Inventarea unitii de disc floppy, n 1967 este atribuit echipei de ingineri condus de Allan
Shugart de la laboratoarele IBM din San Jose. Constructiv, unitatea floppy este format din
urmtoarele componente fizice:
-capetele de citire/scriere);
-dispozitivul de acionare a capetelor de citire/scriere;
-motorul de antrenare a dischetei (suportului);
-placa logic.
Primele uniti floppy disk au fost "simpl fa", deci puteau lucra doar pe una din feele
dischetei. Acum exist doar uniti "dubl fa" ce prezint dou capete de citire/scriere. Cele dou
capete nu sunt plasate simetric (pe aceleai piste) pe cele dou fee.
Motorul de antrenare a dischetei asigur rotaia dischetei la o turaie 300 sau 360 de rotaii pe
minut (majoritatea unitilor au o funcie de 3 rotaii/min).
O clasificare a acestor suporturi poate fi fcut utiliznd urmtoarele criterii:
a) Dimensiunea dischetei:
-dischete de 8 inch (primele aprute);
-dischete de 5 ;
-dischete 3 .
b) Dup numrul de fee utilizate Configuraiile calculatoarelor personale prezint urmtoarele
capaciti ale dischetelor de 5 i ale celor de 3 :
-discheta simpl fa (single side- SS);
-discheta dubl fa (double side- DS).
Primele dischete aprute au fost simpl fa, astzi nu sunt utilizate dect cele dubl fa.
50
pentru o performan ridicat de stocare, dar i elemente band pentru capacitate, economie i refacere
n caz de dezastru. Stocarea pe disc poate varia ntre 2,8 TB i 3,8 TB n condiiile unor costuri
reduse cu 50%, cu stocarea pe band furnizat prin integrarea bibliotecilor ADIC Scalar i Storage Tek
L-Series. Configuraiile single-library pot atinge o capacitate nativ de 2,823 TB i 5,599 TB cu
compresie normal.
UNITI DE STOCARE ELECTRONIC
Memoria FLASH Dup cum am artat, memoria este volatil, informaia dispare o dat cu
oprirea calculatorului; astfel a aprut necesitatea existenei memoriei secundare, care s stocheze datele
permanent. A aprut ns o alt problem, referitoare la viteza mic de acces la un dispozitiv de stocare
a datelor secundar, cum este un disc, o rat de transfer care este semnificativ mai mic dect viteza de
acces a calculatorului la memoria intern. Pare de neimaginat c datele vor putea fi memorate cndva
ntr-un chip de memorie nevolatil (RAM nevolatil). O speran n acest sens a aprut n forma
memoriei flash nevolatile. Chip-urile flash sunt utilizate n telefoanele celulare, camerele digitale i
MP3 player. Chip-urile memoriilor flash sunt produse n pachete asemntoare crilor de credit i
necesit foarte puin energie. Sunt ntlnite sub denumirile de CompactFlash card i SmartMedia card
i ajung pn la 16 GB.
UNITI DE STOCARE OPTIC
Unitatea pentru CD-ROM (CD-ROM unit): realizat pentru a citi discurile de tip CD-ROM
(Compact-Disc Read Only Memory). Ele pot conine urmtoarele tipuri de informaii: date, muzic,
secvene video. Informaiile de pe un disc CD-ROM au un caracter permanent i nu pot fi terse.
Exist mai multe tipuri de uniti CD-ROM: CD-Read Only Memory care permit doar citirea CDurilor, CD-Read Write ReWrite care permit att citirea ct i scrierea sau rescrierea pe CD-uri. Exist
CD-uri pe care inscripionarea se realizeaz n mod ireversibil (CD-Recordable) dar exist i CD-uri pe
care inscripionarea se poate realiza de mai multe ori (CD ReWritable).
Unitatea pentru discuri DVD (Digital Video Disk): urmtoarea generaie de discuri CD-ROM
sunt DVDurile, care permit stocarea i redarea filmelor. Acest tip de unitate a fost lansat pe pia
recent i necesit o plac special i software aferent pentru a putea fi utilizat.
Unitatea de msur standard pentru viteza de transfer este KB/sec. Aplicaiile care folosesc
tehnica video, animaia i sunetul necesit viteze mari de transfer al datelor. De aceea sunt preferate
unitile CD asigurnd viteze de transfer de la150KB/sec, pentru primele tipuri de CD-ROM, la 55-66
MB/s pentru CD i la 88 MB/s (pentru DVD 8x) sau 177 MB/s (pentru DVD 16x).
Timpul de acces (prezint aceeai semnificaie ca i n cazul hard disk- ului) este de 350ms
(milisecunde). Poziionarea mecanismului de citire ntr-o zon situat spre centrul CD-ului va necesita
un timp de acces mai mic dect n cazul unei citiri dintr-o zon plasat spre exteriorul CD-ului.
Formatul utilizat n nregistratea datelor pe CD este CLV Constant Linear Velocity (Vitez
Liniar Constant). Aceasta nseamn c densitatea de nregistrare a datelor, e o constant pe toat
suprafaa suportului. La citire/nregistrare cu viteza liniar constant rotaia discului este variabil,
micorndu-se sau accelerndu-se n funcie de poziia informaiilor astfel nct fluxul de date s
ramn constant. Mai este utillizat i metoda CAV Constant Angular Velocity, folosit la
majoritatea unitilor noi i rapide. Metoda CAV implic o vitez de rotaie fix a discului, viteza de
transfer variaz, astfel nct datele din zona exterioar a discului sunt transferate la o rat mult mai
mare, fa de datele nregistrate la interiorul discului.
CD -ROM-ul este o "dezvoltare informatic" a tehnologiei de realizare a CD-DA (CD Digital
Audio). Discul are un diametru de 5 inch i este acoperit cu o pelicul metalic format dintr-un aliaj
de aluminiu, prezentnd proprieti reflectorizante. Pelicula metalic retine informaia i este acoperit
de un alt strart cu rol protector.
Informaia este nregistrat la nivelul pistei sub form de spiral ce pornete dinspre exteriorul
spre centrul discului. n procesul nregistrrii datelor este utilizat laserul, contactul acestuia cu
suprafaa discului conducnd la producerea unor mici caviti (pits) de mrimi variabile n alternan
cu spaii plate (lands). Citirea informaiei de pe disc are la baz principii optice. O raz laser de putere
mic este dirijat spre suprafaa discului, fapt ce va determina reflectarea acesteia. Intensitatea razei
reflectate depinde de zona de disc cu care a luat contact -zona prezentnd caviti sau zona plat. Un
52
receptor optic capteaz lumina reflectat i deosebete zonele ce au determinat o reflectare puternic a
luminii de cele n care lumina a fost slab reflectat sau chiar deloc reflectat (pit), trimind apoi
semnalele electrice ctre microprocesor spre a fi "traduse" n date sau sunete.
Pentru inscripionarea datelor se folosesc tehnicile de compresie i combinare a informaiilor,
ADPCM (Adaptive Delta Puise Code Modulation) tehnic de compresie audio ce se bazeaz pe
encodarea diferenelor dintre valorile eantioanelor, acestea fiind n general mici i necesitnd un
numr mai redus de bii i Blue Book care este un standard pentru combinarea informaiilor audio i a
datelor pe un acelai CD. Cunoscut i ca CD-Extra i CD-Plus.
CD -ROM XA (Extended Architecture), CD -ROM cu arhitectur extins, respect standardul
High Sierra i aduce ca noutate utilizarea n procesul de nregistrare a tehnicii de ntreesere. Aceasta
face ca sunete, imagini fixe, imagini video s poat fi stocate n alternan. Unitile Compact Disk Digital Audio (CD -DA) pot citi date i nregistrri audio, iar primul sector conine informaia ce
permite identificarea tipului de nregistrare.
Un CD -ROM stocheaz informaia analogic (sunetele) n form digital, structurat n trei zone:
a) zona Lead-In (plasat spre centrul discului), coninnd tabela de materii;
b) zona datelor efective;
c) zona Lead-Out (ocup ultimul mm de disc).
O secund de sunet necesit 75 de sectoare, la nivelul discului existnd ntre 270000 -330000 de
sectoare a cte 2352 octei fiecare.
CD I (CD -interactiv) combin imagini video, imagini animate i sunet de calitate superioar.
Unitatea CD-I nu este un simplu perireric, ci un adevrat calculator, coninnd un procesor
MOTOROLA, o memorie RAM (1MB) i un sistem de operare CD-RTOS (Compact Disk Real Time
Operating System), fapt ce determin incompatibilitatea cu sistemele MS -DOS.
Foto CD sau unitile foto CD permit vizionarea pe televizor sau pe monitorul PC-ului a
imaginilor fotografice nregistrate pe CD-audio, ct i pe foto CD-uri.
Unitile DVD (Digital Video Disk) asigur performane audio i video full-motion remarcabile,
incluznd tehnologia full-CAV, unitatea DVD este compatibil cu discurile CD-ROM, CD-RW care
pot fi citite cu viteze foarte mari. Timpii de acces asigurai de unitatea DVD sunt de 210 ms pentru
mediile DVD i 130 ms pentru mediile CD-ROM. DVD nseamn digital versatile sau video i permite
stocarea a peste 2 ore de secvene video ( capacitatea de stocare fiind de 4,7GB, iar n cazul ultimei
versiuni de 17GB). Acest suport poate nlocui cu succes CD -ROM-ul pentru arhivri de date sau
pentru distribuia de soft i a mediilor distractive. ncepnd cu anul 1998, multe sisteme sunt livrate cu
unitate DVD-ROM ca echipament standard n locul unitilor CD-ROM.
La nceputul anilor '90, cteva companii au nceput s lucreze la dezvoltarea unui format care s
nlocuiasc btrnul CD. Misiunea lor era s creeze un disc similar ca dimensiuni cu CD-ul, dar cu o
capacitate de stocare mult mai mare.
DVD-R este un mediu care suport o singur scriere, similar cu CD-R.
DVD-RW reprezint versiunea reinscriptibil a lui DVD-R. Supotnd pn la 4,7GB de date, un
mediu DVD-RW poate fi inscripionat de pn la 1000 de ori. In 1997 a fost anunat un nou standard,
DVD+RW, care iniial putea stoca 3 GB, ns a creascut la 4,7 GB.
DVD-RAM este tot un mediu reinscriptibii, ns spre deosebire de DVD-RW, care ofer acces
secvenial la date, acesta permite acces aleator. Un mediu DVD-RAM poate fi scris de pn la 100.000
de ori. Productorii DVD+ i DVD- s-au unit sub standardului DVD-Dual, n timp ce conservatorii,
susintori ai formatelor DVD- i DVD-RAM, s-au organizat sub formatul DVD-Multi.
Acum exist trei standarde predominante DVD-R/-RW, DVD+R/+RW i DVDR/RW.
Formatul HD-DVD (High Definition High Density-DVD) va dispune de o capacitate de stocare de
patru ori mai ridicat. Discul optic de 4,7 inch poate stoca conform acestui standard pn la 20 GB de
date (pe o singur fa), n comparaie cu cei 4,7 GB ai discurilor existente n present. Formatul a fost
dezvoltat n principal de companiile Toshiba i NEC. Formatul cu cei mai muli susintori este Bluray Disc, o soluie pentru nregistrrile video de nalt definiie. Sony a dezvoltat n paralel i formatul
Professinal Disc, iar compania britanic Plasmon a lansat un format propriu numit UDO (Ultra
Density Optical), - adresat pieei arhivrii i stocrii datelor. Dei cele patru formate sunt incompatibile
tehnic, ele realizeaz un salt mare n privina capacitii de stocare a datelor datorit utilizrii
tehnologiei de inscripionare cu laser albastru. Lumina albastr sau violet are o lungime de und de
53
400 nm, deci mai scurt dect cea roie (630-650nm), care este utilizat acum n sistemele CD i DVD.
Drept urmare raza laser las urme mai mici pe suprafaa discului, deci fiecare bit de informaie va
ocupa un spaiu mai mic, iar capacitatea de stocare a discului crete semnificativ. Pentru a atinge o
capacitate de 45GB pe o fa a unui layer se preconizeaz s se utilizeze laserele UV (ultraviolet).
n continuare sunt prezentate cteva detalii tehnice i specificaii fizice ale actualelor i
modelelor noi de DVD-uri n tabelele 2.5. i 2.6.
Tabelul 2.5.
Detalii tehnice i specificaii fizice pentru DVD-uri
Nume COD
Structura
DVD-5
DVD-9
DVD-10
DVD-18
DVD-R
DVD-RAM
Capacitate [GB]
4, 7
8,54
9,4
17,08
3,95 / 7,9
2,6 / 5,2
Tabelul 2.6.
Caracteristici pentru DVD-uri din generaia urmtoare
Format
Profunzime
a datelor
Culoare
laser
Capaciti
dublu strat
HD-DVD-9
AOD
0.6 mm
0.6 mm
Red(650nm)
Blue(405nm)
0.6 mm
Blue(405nm)
11 Mbps
na/8.5G (ROM)
15G / 30G (ROM). 36 Mbps
20G/40G (recordable)
17G / na
25.05 Mbps
0.1 mm
0.1 mm
Blue(405nm)
Blue(405nm)
Blue-HD-DVD-1
Blu-ray
DVD-2
27G / 50G
17G/na
36 Mbps Blue-HD
31.59 Mbps
microprocesoare 8086 i 8088. Au urmat plcile de baza care au folosit procesoare 80286, 80386,
80486 i Pentium.
Exist dou versiuni de magistrale ISA deosebite prin numrul de bii de date ce pot fi transmise
simultan pe magistral (versiunea pe 8 bii i versiunea mai nou pe 16 bii). Magistrala ISA permite
un transfer la viteze mici de 8 Mhz, necesitnd dou pn la opt perioade de ceas pentru transferul
datelor. Rata de transfer - pentru versiunea ISA pe 16 bii - maxim este de
16MB/sec, dar n realitate se ridic doar la jumtate, de aceea acest tip de magistral limiteaz
performanele pe majoritatea sistemelor.
EISA (Extended ISA) reprezint o ncercare de a extinde ISA pe 32 bii. Fa de arhitectura ISA
pe 16 bii, permite mai multe extensii cu mai puine conflicte ntre plcile adaptoare. EISA utilizeaz
tehnologia busmastering-ului ce permite unei plci de extensie de a scrie i citi direct n i din
memorie, fr a necesita vreun timp de ceas al procesorului. Aceast tehnologie se bazeaz pe un cip
special (cipul ISP Integrated System Peripherial) ce permite unei plci cu opiunea de control total
magistralei, putnd astfel executa operaii foarte rapid. Magistralele cu arhitectura ISA i EISA
prezint dezavantajul c frecvena lor de tact nu corespunde vitezei mult mai mari a procesorului.
VL Bus (VESA -Video Electronics Standard Association -Local Bus) iniial gndit pentru
plcile video, a fost extins pentru toate plcile adaptoare. Prezint ca avantaj posibilitatea negocierii
directe cu microprocesorul i memoria i lucreaz la o vitez de ceas de 40- 50 MHz. Local bus-ul,
fiind proiectat pentru o magistral de 32 bii, realizeaz viteze de transfer mari, iar controller-ele
pentru VL Bus sunt capabile s administreze patru hard disk-uri.
PCI (Peripheral Component Interconnect) reprezint cel mai performant standard de bus
local. Limea bus-ului este de 64 bii, la o frecven de tact de 33 (66) MHz. Realizeaz multiplu
busmastering pe aceeai magistral (mai multe controllere pot rula n acelai timp), autoconfigurare,
permite integrarea de maxim 8 funcii la nivelul unei singure plci.
Magistrala PCMCIA este specific sistemelor laptop i notebook, crora le asigur
extensibilitate, aa cum prezint i sistemele desktop. Plcile de extensie PCMCIA au dimensiunea
unor credit card-uri. Conectorii lor permit plci de extensie de memorie, plci de fax/modem, plci de
reea local etc. Un tip particular de plac PCMCIA l reprezint Zoomed Video Port care asigur o
decompresie i o citire rapid a fiierelor video foarte mari.
Magistrala procesorului, reprezint calea de comunicaie ce asigur transferul datelor ntre
unitatea central de prelucrare i magistra a principal (magistrala I/O) i au ntre unitatea central i
memoria cache. Este o magistral rapid, compus din circuite electrice pentru date, adrese i control.
n cazul sistemului Pentium, magistrala procesorului prezint 64 linii de date, 32 linii de adres,
precum i linii de control asociate. Viteza maxim de transfer a magistralei, numit i lrgime de
band, este de 528 m/s, dar efectiv ea este cu 25% mai mic.
Magistrala memoriei, asigur transferurile informaiilor ntre unitatea central i memoria
RAM. Fizic este implementat printr-un set de cip-uri dedicate i asigur viteze mult mai mici dect
cele nregistrate de magistrala procesorului (deoarece dispune de mai puine linii de date).
Conectorii de extensie. Magistrala I/O permite, prin conectori, adugarea de dispozitive noi
calculatorului pentru a-i extinde posibilitile. Se pot astfel introduce controllere de hard disk,
adaptoare video, precum i o serie de dispozitive mai specializate, plcile de sunet sau plcile de
interfa pentru uniti CD-ROM.
PLACA DE BAZ
Cea mai important componenta a unui calculator este placa de baz (PCB), care trebuie s in
cont de platforma dorit, tipul memoriei ce va fi folosit i de viitoarele mbuntiri ce urmeaz a fi
fcute pe termen mediu i lung. Se pot defini trei categorii de plci de baz ce pot constitui o alegere n
cazul unui utilizator individual.
Plcile integrate asigur compatibilitatea ntre componente. Aceste plci beneficiaz de obicei
de controlerele video i de sunet integrate sau la includerea unui modem. Gama de procesoare
suportate este mai mic dact a celorlalte plci, capabilitile de overclocking fiind extrem de limitate.
A doua categorie, i cea mai rspndit, este cea a plcilor de nivel mediu. Acestea nu
beneficiaz de controler video integrat, lasnd alegerea plcii video la ndemna utilizatorului. Toate
plcile existente pe pia ofer un controler audio integrat, acesta putnd fi dezactivat n cazul n care
55
dorii s apelai la o plac de sunet specializat. Numrul sloturilor PCI variaz ntre 5 i 6, destul
pentru aproape toate plcile de extensie pe care utilizatorul le-ar putea achiziiona ulterior.
A treia categorie este constituit din plcile dedicate staiilor de lucru, destinate aplicaiilor
profesionale, care ofer suport pentru dou procesoare, iar plcile includ i faciliti cum ar fi controler
de reea sau SCSI i multe sloturi PCI. Exist cteva caracteristici de care trebuie s se in cont cnd
se alege placa de baz potrivit.
Componentele electronice ale plcii de baz ndeplinesc majoritatea funciilor unui calculator:
ruleaz programe, fac calcule, aranjeaz biii care vor fi afiai pe ecran. Placa de baz conine cele mai
importante elemente ale unui PC, cele care i definesc funciile i posibilitile de extindere, cum ar fi
microprocesorul, cipul BIOS, memoria, sistemul de stocare masiv, sloturile de extensie i porturile.
BIOS. Pentru a funciona, calculatorul are nevoie de un program; un program simplu chiar i
pentru pornire i pentru a putea ncrca i citi programe. Sistemul primar de intrare/ieire (Basic
Input/Output System - BIOS) este un set de rutine permanent nregistrate, care asigur sistemului
caracteristicile operaionale fundamentale, inclusiv instruciunile care i spun calculatorului cum s se
autotesteze la fiecare pornire. n calculatoarele mai vechi, sistemul BIOS stabilete ce poate face
calculatorul fr s ncarce un program de pe disc i modul n care calculatorul va reaciona la
instruciuni specifice, care fac parte din programele stocate pe disc. Sistemele de operare moderne
nlocuiesc automat codul BIOS cu propriile programe, imediat dup iniializarea PC-ului. n
majoritatea situaiilor, codul BIOS este folosit numai pentru iniializarea i testarea calculatorului la
pornire, apoi cedeaz locul altor produse software, care fac adevrata munc.
Circuitele de suport de pe placa de baz fac legtura ntre microprocesor i restul calculatorului.
Un microprocesor, dei este creierul unui calculator, nu este un calculator n sine (dac ar fi fost, ar fi
purtat alt nume - de exemplu, calculator). Ca s fie adus la via, microprocesorul are nevoie i de alte
circuite: ceasuri, controllere i convertoare de semnal. Fiecare dintre aceste circuite de suport are
propriul mod de a reaciona la programe, contribuind astfel la funcionarea general a calculatorului. n
calculatoarele actuale, toate funciile tradiionale ale circuitelor de suport au fost nglobate n cipseturi, circuite integrate de dimensiuni relativ mari.
Sloturile de extensie. Aa cum sugereaz i numele, sloturile de extensie ale unui PC permit
extinderea capacitii acestuia prin montarea unor plci suplimentare, inteligent numite plci de
extensie. Sloturile sunt spaii din interiorul unitii de sistem cu socluri sau conectoare speciale, care
permit conectarea plcilor de extensie. Sloturile de extensie ale calculatoarelor notebook permit
conectarea unor module de dimensiunea unui card care ndeplinesc aceleai funcii ca i plcile de
extensie. Standardele respectate de sloturile de extensie dintr-un PC determin att tipul plcilor care
pot fi instalate, ct i performanele acestora.
Cipsetul - este inima plcii de baz i necesit o atenie deosebit nainte de achiziie. El este
responsabil pentru tipurile de componente care vor fi suportate de placa de baz.
Arhitectura plcii, se refer la modul n care sunt plasate componentele pe PCB, spaiul liber
din jurul socketului procesorului (un factor important pentru utilizarea unui cooler mai mare), spaiul
liber de lng sloturile PCI (pentru plcile de extensie cu lungimi mari).
Sloturile (4, 5 sau 6 sloturi PCI) sunt suficiente pentru viitoarele plci de extensie pe care
urmeaz s le folosii.
Suportul hardware trebuie ales funcie de modele viitoarelor versiuni ale componentelor ce
urmeaz a fi utilizate. Cu ct suportul oferit este mai generos, cu att mai bine pentru viitorul upgrade.
Un aspect foarte important este legat de posibilitatea de dezactivare a controlerelor integrate pe plac.
Manualul de utilizare realizat de productori de renume, cum ar fi Abit, Asus, Epox sau MSI,
ofer soluii la o larg varietate de probleme ce pot aparea n procesul de instalare.
2.4.6. DISPOZITIVE PERIFERICE
Echipamentele periferice reprezint dispozitive care asigur interfaa dintre utilizator i
calculator. Ele permit, pe de-o parte, introducerea datelor programelor i comenzilor, iar pe de alt
parte, redarea rezultatelor prelucrrii. Dup funcia pe care o ndeplinesc, perifericele se clasific n:
-periferice de intrare, reprezentnd multimea echipamentelor permind introducerea datelor,
programelor i comenzilor;
56
dispozitiv. Unitatea de msura este dpi (dots per inch -numr de puncte pe inch). Principiul de
funcionare este urmtorul: n interiorul scanner-ului exist o surs de lumin. Lumina este proiectat
pe documentul supus citirii, iar razele reflectate de acesta sunt receptate de senzorii fotosensibili i
convertite n tensiune electric preluat de PC prin intermediul unui convertor. Pot fi citite prin
intermediul unui scanner documente, texte, semnturi, imagini alb-negru sau color, inclusiv fotografii,
informaia analogic fiind convertit n form digital.
La ora actual, piaa ofer o larg varietate de scannere: scanner de mn, scanner cu tractor
(realizeaz tractarea imaginii de scanat prin faa senzorilor), scanner orizontal (flatbed), scanner
holografic, cititoare de bare de cod. Rezoluia acestor dispozitive poate fi de 100, 300, 600, pn la
1200 dpi.
Cititorul de bare de cod este o combinaie de scanner de mn i OCR i este destinat n
principal citirii de etichete speciale, permind identificarea unui produs i/sau a preului acestora.
Scanner-ului cu tractor (de tip sheetfed) i se alimenteaz foile prin rotie motorizate hrtia ctre
capul scanner-ului. Sunt conceute s ncap ntre tastatur i monitor.
Caractere scrise de mn pot fi citite de mainile care pot citi caracterele scrise de mn,
regulile privitoare la mrime, ntregime si lizibilitate a scrisului de mn sunt foarte stricte.
Microfonul
Dezvoltarea aplicaiilor multimedia a determinat utilizarea microfonului ca dispozitiv de intrare.
Microfonul se regsete ca dispozitiv de intrare n configuraia standard chiar i a sistemelor de tip
laptop. Sistemele de recunoatere a vocii reprezint un dispozitiv de intrare care permite recunoaterea
unui numr finit de sunete izolate, cuvinte, fraze, "vocabularul" gestionat fiind de aproximativ 1000 de
cuvinte. Recunoaterea se face prin compararea undei sonore ( convertite n bii) a unui cuvnt rostit
de utilizator cu "amprentele" sonore memorate.
Voice input - introducerea datelor prin intermediul vocii. Vorbirea cu un calculator, cunoscut
ca voice input sau recunoaterea vorbirii, reprezint o alt form de preluare a datelor de intrare.
Dispozitive de recunoatere a vorbirii accept cuvntul rostit printr-un microfon i l transform ntr-un
cod binar (0 i 1) ce poate fi neles de ctre calculator. Exist dou mari ntrebuinri ale acestei
faciliti. Una este s dai calculatorului comenzile ce trebuie s le execute rostind pur si simplu aceste
comenzi, cum ar fi o aplicaie n particular, deschiderea unui fiier, sau mutarea la o locaie specific in
fiier. O a doua ntrebuinare este s introducei volume mari de text, cum ar fi n cazul dictrii unei
scrisori sau redactrii unui raport. Utilizatorii clasici sunt cei cu handicap fizic, cei cu mini ocupate
sau prea murdare pentru tastatur, i cei fr acces la tastatur.
PERIFERICE DE IEIRE
Monitorul este cel mai important echipament periferic de ieire, el asigurnd legatura dintre
utilizator i calculator. Comenzile i datele introduse de la tastatur, precum i rezultatele prelucrrii i
mesajele calculatorului sunt afiate pe monitor. Monitorul reprezint unul dintre componentele
sistemului video al calculatorului, cel de-al doilea element component fiind reprezentat de adaptorul
video(numit i plac video sau plac grafic).
Caracteristicile tehnice ale monitoarelor sunt urmtoarele:
-definiia;
-rezoluia;
-numrul de culori;
-dimensiunea monitorului;
-capacitatea de afiare;
-numrul dimensiunilor n care afieaz;
-tipul plcii video;
-rata de mprosptare;
-alte caracteristici.
Orice imagine/caracter afiat/afiat pe ecran este realizat printr-o mulime de puncte numite
pixeli. Dimensiunea (diametrul) unui pixel reprezint definiia monitorului. Cu ct aceast valoare
este mai mic, cu att imaginea este mai clar. Valoarea standard a definiiei este de 0,28 mm.
Rezoluia reprezint numrul de pixeli afiabili pe toat suprafaa ecranului. Cu ct numrul lor
este mai mare, cu att imaginile au mai multe detalii. Pentru monitoarele color, n definirea rezoluiei
59
se face referire i la parametrul numit dot pitch (distana ntre puncte). Aceast distan poate fi
cuprins ntre 0,25 i 0,52 mm.
Monitoarele pot fi monocrom sau color. n cazul monitoarelor color, numrul de culori ce pot fi
afiate este determinat de tipul plcii grafice ( ca, de altfel, i rezoluia).
Placile adaptoare (video) dispun de memorie proprie. Cu ct rezoluia este mai mare i cu ct
afiarea se realizeaz prin mai multe culori, cu att este mai mare memoria necesar plcii adaptoare.
O alt caracteristic a monitoarelor este dimensiunea monitorului, masurat prin diagonala sa.
Diagonala monitorului poate varia ctre 12 inch pentru monitorul monocrom i 42 inch n cazul
monitoarelor color. Dimensiunile cele mai utilizate sunt de 17, 19, 24 inch. Dimensiunea monitoarelor
n cazul noilor configuraii de PC oferite de pia tinde s se fixeze la 24 inch. n cazul portabilelor,
monitoarele SVGA prezint 17 inch, In timp ce pentru standardul XGA 13,3".
Monitoarele sunt fabricate att n stil portrait (pagin ntreag - prezentnd nalimea mai mare
dect laimea), ct i n stil landscape (dubl pagin- este potrivit pentru urmrirea simultan a dou
pagini alturate). Capacitatea de afiare a monitorului este dat de numrul de linii i coloane afiabile.
Ecranul clasic permite afiarea a 24 de linii i 80 de coloane. Exist monitoare permind afiarea a 24
linii i 40 de coloane sau, n cazul monitoarelor de la EGA n sus, pot afia n mod text pn la 60 de
linii i 132 de coloane. Un caracter este generat la intersecia unei linii cu o coloan, utiliznd o
matrice format din 5 x 7 puncte sau 7 x 9 puncte. Pe lng monitoarele clasice permind afiarea n
dou dimensiuni, exist i monitoare 3D (trei dimensiuni). Redarea imaginii n trei dimensiuni se poate
realiza prin polarizarea luminii, utiliznd ochelari speciali sau holografic.
Cele mai cunoscute standarde pentru plcile video sunt pezentate n tabelul 2.8.
Tabelul 2.8.
Standarde pentru placi video
Rata de mprosptare a imaginii reprezint numrul de imagini afiate pe secund i deci viteza
cu care se realizeaz remprosptarea imaginii.
60
Frecvena afirii (baleiajul vertical) este controlat de un dispozitiv numit Digital Analogic
Converter (DAC) al crui rol este de a transforma datele tocate n memoria video ntr-un semnal
analogic afiat pe monitor. Frecvena de baleiere trebuie s fie adecvat persistenei, astfel nct
imaginea de pe ecran s tremure ct mai puin, deloc chiar. Viteza de baleiere este cuprins ntre 60 i
200 Hz, cea mai frecvent fiind cea de 70 MHz, ceea ce nseamn ca imaginea este remprospatat pe
ecran de 70 de ori pe secund. n realizarea monitoarelor se pot utiliza mai multe tehnologii:
Tehnologia cea mai utilizat este cea a tubului catodic, folosit i n cazul televizoarelor.
Tubul catodic const dintr-un tub cu vid realizat din sticl, prezentnd la unul din capete un tun de
electroni, iar la celalalt ecranul acoperit cu fosfor. Tubul emite un fascicul de electroni de mare vitez
care lovesc ecranul, iar fosforul care-l acoper strlucete genernd astfel lumina receptat de utilizator
pe ecran.
Tehnologia utilizat n cazul monitoarelor realizate pentru calculatoare laptop (ecrane
plate) este fie cea bazat pe afiare cu cristale lichide (LCD -Liquid Cristal Display), fie cea bazat pe
plasm (GDP - Gas Plasma Display), Plasma Display Panel (PDP) este considerat de specialiti
monitorul mileniului trei. Productorii se ambiioneaz s realizeze PDP-uri cu diagonala de 21" i
rezoluie de 1280 x 1024 aducndu-le astfel n zona aplicaiilor pentru staii de lucru.
Noile tehnologii propuse privesc monitoarele plate numerice (DFP Digital Flat Panel). Acestea
sunt ecrane realizate pe principiul cristalelor lichide (LCD), numai c nu mai prezint convertizorul
analogic/numeric care astzi le este indispensabil pentru a funciona cu plcile grafice ale PC-ului.
Afiarea caracterelor pe ecran se poate realiza: normal, blinking (clipitor), pe niveluri de
luminozitate, video -invers.
Monitoarele pot funciona n dou moduri:
-scroll (liniile noi tastate apar la baza ecranului i text defileaz ca la maina de scris); .
-paginat ( dupa completarea unui ecran cu informaie se nlocuiete cu un altul).
Cele mai cunoscute firme productoare de monitoare sunt: IBM, Mitsubishi, NEC, Sony.
Imprimanta
Reprezint un periferic de ieire opional a crui funcie este de a tipri pe hrtie rezultatele
prelucrrii.
Principalele caracteristici ale unei imprimante sunt:
-rezoluia;
-viteza de tiprire;
-memoria imprimantei;
-limbajul de control al imprimantei;
-capacitatea de emulare;
-numrul de fonturi;
-dimensiunea hrtiei utilizate;
-modalitatea de alimentare cu hrtie;
-cromatica rezultatului listrii;
-fiabilitatea.
Rezoluia se msoar in dots per inch (dpi), deci n numr de puncte tiprite pe un inch, cu
precizarea c rezoluia pe orizontal nu este ntotdeauna egal cu cea pe vertical. Ea este determinat
de metoda folosit pentru imprimare i poate prezenta urmtoarele valori: 300, 600, 720 dpi, iar n
cazul imprimantelor profesionale, 1200 dpi (sau chiar rezoluii de 2400 x 600 dpi).
Viteza de tiprire realizat de imprimanta este determinat de o serie de factori cum ar fi:
motorul su, dimensiunea memoriei imprimantei, de procesor, complexitatea paginii de tiprit. Viteza
se msoar fie n caractere pe secund (cps), n pagini pe minut (ppm) i poate varia ntre 1-16 ppm.
Procesorul determin procesul de transformare a unui fiier n formatul accesibil imprimantei, proces
numit rasterizare.
Dimensiunea memoriei imprimantei este un parametru deosebit de important n cazul
imprimantelor laser, i aceasta deoarece numrul i complexitatea desenelor ce urmeaz a fi tiprite pe
o pagin sunt proporionale n mod direct cu dimensiunile memoriei imprimantei.
Capacitatea memoriei unei imprimante laser este, de obicei, de 5l2K, dar poate s ating 3MB
pentru rezoluii de 600dpi sau chiar mai mult.
61
63
CAPITOLUL 3
PRINCIPIILE DE BAZ ALE SISTEMELOR DE OPERARE
3.1. CONFIGURAIA SISTEMULUI DE CALCUL
Un sistem de operare este o colecie organizat de programe de control i serviciu, stocate
permanent ntr-o memorie principal sau auxiliar,specifice tipurilor de echipamente din
componena sistemului, avnd ca sarcin optimizarea utilizrii resurselor, minimizarea efortului
uman de programare i automatizarea operaiilor manuale n ct mai mare msur, n toate fazele de
pregtire i exploatare a componentelor sistemului de calcul.
Sistemul de operare ofer o interfa ntre programator i sistemul de calcul, concretizat ntrun interpretor al comenzilor utilizatorului exprimate cu ajutorul unui limbaj de comand.
Unul din conceptele cheie ale oricrui sistem de operare este procesorul. Un proces este de
fapt un program n execuie. El poate crea unul sau mai multe subprocese numite procese fiu, se
poate afla n anumite stri, se poate sincroniza cu alte procese, poate comunica cu alte procese etc.
Dintre conceptele implementate pentru creterea performanelor i mrirea eficienei utilizrii
resurselor sistemelor de calcul, un rol important l-a avut multiprogramarea. n sistemele cu
multiprogramare, la un moment dat, n memorie se afl ncrcate mai multe procese care
concureaz, pe baza unei scheme de prioriti, pentru accesul la anumite resurse ale sistemului.
Cnd o resurs este retras unui proces ea poate fi imediat alocat altui proces care o solicit.
Un alt mecanism este multitasking-ul. Acesta const n multiprogramarea a dou sau mai
multe procese avnd un obiect comun. Aceste procese pot comunica ntre ele i i pot sincroniza
activitile.
Interfaa dintre sistemul de operare i programele utilizatorului (numite i lucrri) este
asigurat de o colecie de instruciuni extinse ale sistemului de operare numite apeluri sistem.
Folosind apelurile sistem, un program utilizator poate crea, utiliza i terge diverse obiecte
gestionate de un sistem de operare.
Unele din cele mai importante obiecte gestionate de un sistem de operare sunt procesele i
fiierele.
Un fiier este un ir de caractere terminat printr-o marc de sfrit de fiier. El poate fi stocat
pe disc, n memorie.
Sistemul de operare ofer apeluri sistem pentru lucrul cu fiiere: creare, tergere, citire, scriere
etc. Fiierele pot fi grupate ntr-un catalog i pot fi caracterizate de anumite atribute (proprietar,
dimensiune, data ultimului acces n scriere, coduri de protecie etc).
Caracteristicile unui sistem de operare sunt:
1) modul de introducere a programelor n sistem;
2) modul de planificare a proceselor;
3) numrul de programe prezente simultan n memorie;
4) modul de utilizare a resurselor;
5) numrul de utilizatori ce pot folosi sistemul n acelai timp.
Dup modul de introducere a lucrrilor (programelor) n sistem, se disting
sisteme de operare seriale ce accept introducerea lucrrilor de la un singur
dispozitiv de intrare,
sisteme de operare paralele ce admit introducerea lucrrilor de la mai multe
dispozitive de intrare, precum i
sisteme de operare cu introducerea lucrrilor de la distan.
Dup modul de planificare a lucrrilor pentru execuie, exist
sisteme de operare orientate pe lucrri ce admit ca unitate de planificare lucrarea
alctuit din unul sau mai multe programe succesive ale aceluiai utilizator, precum i
sisteme de operare orientate pe proces care admit ca unitate de planificare procesul.
65
(procesorul) este alctuit din una sau mai multe uniti aritmetico-logice, un set de registre
(memorie rapid) ce pstreaz temporar datele precum i o unitate de comand.
ntr-o form simplificat, structura unui calculator este format din:
- UC - unitatea de comanda sau microprocesor, care controleaz prin intermediul unor
dispozitive ntreaga activitate a calculatorului.
Dispozitivele de baz ale UC ar fi urmatoarele:
- DAL - dispozitiv aritmetico-logic i este definit ca fiind reuniunea unor componente
electronice care tiu s efectueze o operaie aritmetico-logic sau de alt natur.
- DC reprezint dispozitivul de comand numit i procesor, care decodific, interpretez
comenzile sau instruciunile furnizate calculatorului i d sarcini altor dispozitive.
- DM reprezint dispozitivul de memorare care conine asa numitele registre n care sunt
memorate informaii i rezultate relative la programul care se executa la un moment dat de
ctre calculator.
acest deziderat se numete ncrctor. Dac aceast component lanseaz automat execuia
programului dup ncrcarea n memoria intern, ncrctorul este de tip Load and Go.
Pentru deschiderea meniurilor, declanarea unei comenzi se realizeaz prin folosirea tastaturii
(tehnica barei selectoare-dreptunghi evideniat pe ecran cu alt culoare sau tehnica literei de
identificare-litera de identificare subliniat) sau mouse-ul.
Interfaa realizat grafic cu ajutorul simbolurilor (pictogramelor). In acest tip de interfa
instruciunile se dau calculatorului prin intermediul unor simboluri care sugereaz conceptul, de
exemplu o component a calculatorului, aplicaie, parametru, etc. Aceste interfee folosesc metoda
de trage i plaseaz (drag and drop) prin care obiectele reprezentate prin pictograme pot fi copiate
sau mutate. Utilizatorul trebuie n acest tip de interfa s cunoasc pictograma care reprezint
aplicaia. Sisteme de operare cu interfaa realizata grafic sunt din familia Windows sau Linux.
ncrcarea sistemului de operare n memoria intern a calculatorului. La nceputul fiecrei
sesiuni de lucru trebuie ncrcat n memoria intern nucleul sistemului de operare (conine
programele necesare gestionrii resurselor calculatorului). Sistemul de operare se livreaz pe suport
magnetic sau optic, mpreun cu calculatorul. Suport conine un program de dimensiuni mici numit
ncrctor, situat la nceput de suport, i programele aferente nucleului sistemului de operare.
n memoria tip ROM exist un program numit prencrctor utilizat pentru iniializarea
lucrului cu calculatorul. La pornire, programul prencrctor iniializeaz echipamentele periferice,
identific configuraia calculatorului, caut sistemul de operare pe un suport magnetic, ncarc n
memoria intern programul ncrctor de la nceputul suportului i l lanseaz n execuie.
3.2.3. Programe de comand control
Sisteme de operare sunt alctuite n principal, din dou categorii de programe:
- programe de comand-control avnd rolul de coordonare i control al tuturor funciilor
sistemului de operare;
- programe de servicii care sunt executate sub supravegherea programelor de comandcontrol, utilizate de programator pentru dezvoltarea aplicaiilor.
Programele de comand-control cunoscute i sub numele de monitoare, supervizoare sau
executive, coordoneaz activitatea celorlalte componente ale sistemului de operare.
Cele mai frecvent utilizate componente ale supervizorului sunt ncrcate n memoria intern nc de
la generarea sistemului de operare, fiind pstrate n memoria intern pe tot parcursul execuiei
aplicaiilor de ctre sistemul de calcul; aceste programe se numesc rutine rezidente, formnd
nucleul sistemului de operare; celelalte componente rmn n memoria extern fiind apelate i
executate numai atunci cnd sunt solicitate de ctre nucleul sistemului de operare ( se numesc rutine
tranziente) asemenea oricrui program de aplicaie.
Dispozitivele periferice de intrare/ieire trebuie s fie alocate aplicaiilor care le solicit,
datele solicitate fiind transferate n memoria intern sub controlul sistemului de gestiune a
intrrilor/ieirilor.
Programele de comand control ndeplinesc trei funcii majore:
a. administrarea resurselor fizice ale sistemului de calcul;
b. planificarea, lansarea i urmrirea execuiei aplicaiilor;
c. depistarea i tratarea evenimentelor deosebite ce apar n timpul execuiei unei aplicaii.
3.2.4. Programe de servicii pentru dezvoltarea programelor de aplicaie
Programele de servicii se execut sub controlul programelor de comand control ca orice
program de aplicaie, avnd n componen programe care faciliteaz dezvoltarea programelor de
aplicaii respectiv programe utilitare de interes general. Principalele programe de care dispune orice
sistem de operare pentru dezvoltarea unui program de aplicaie sunt: editoarele de texte,
translatoarele de limbaje, editoarele de legturi, ncrctoarele i depanatoarele.
1. Editoare de texte
Un editor de texte este un set de programe ce ofer posibilitatea introducerii, editrii, i
tipririi de texte sub forma unor fiiere ASCII. Editoarele de texte au ca activitate principal,
71
crearea i editarea de texte; mpreun cu hardware-ul, furnizeaz calea de urmat pentru vizualizarea,
memorarea, editarea i regsirea textelor create. Proiectanii editoarelor au prevzut pentru cele mai
frecvente funcii, un sistem de Help ce const n informaii minime afiate la monitor referitor la
modul de lucru al funciei.
Numele fiierului, pagina curent, linia i coloana n care se afl cursorul, sunt permanent
afiate pe monitor n vederea orientrii utilizatorului; textul poate fi memorat pe suport magnetic, se
poate refolosi i modifica dup necesiti.
Editoarele de texte sunt componente ale sistemului de operare cu cea mai mare frecvena de
utilizare, existnd astzi o mare varietate datorit serviciilor aduse pentru a degreva utilizatorul de
sarcini elementare cum sunt: desprirea n silabe, alinierea textelor, paragrafelor, titlurilor,
sublinierea unor poriuni din text, cutare unui ir de caractere i editarea acestuia, indexarea
documentului, realizarea cuprinsului, etc.
Observaii: procesorul de texte poate produce fiiere ASCII numai dac include opiunea out
of ASCII text; limbajul Java folosete caractere ASCII reprezentate pe 16 bii (caractere Unicode) ce
include caracterele ntlnite la majoritatea limbilor strine.
2. Translatoare de limbaje
Translatoarele de limbaje sunt componente ale programelor de servicii care traduc programe
surs(PS) scrise de utilizator ntr-un limbaj de programare, n programe obiect(PO), a cror
instruciuni n limbaj main sunt recunoscute i executate de sistemul de calcul.
Translatoarele de limbaje se divid n dou categorii:
1) compilative care realizeaz numai traducerea PS PO; acestea pot fi:
asambloare - programe de servicii care traduc programe surs scrise n limbaje de
asamblare specifice fiecrui sistem de calcul (masm, tasm);
compilatoare - programe de servicii care traduc programe surs scrise n limbaje
evoluate, universale (Pascal, C);
2) interpretative - care odat cu compilarea realizeaz i execuia programului (Basic).
Spre deosebire de asambloare, compilatoarele creeaz o form intermediar arborescent a
instruciunilor din programul surs astfel:
- orice variabil este un nod terminal al arborelui;
- orice operator creeaz un arbore binar a crui ramur stng este primul operand, iar cea din
dreapta este al doilea operand.
(5) Generarea codului aloc zone de memorie pentru pstrarea datelor n timpul execuiei,
aloc registre i produce codul obiect.
(6) Gestiunea structurilor de date reprezint o colecie de proceduri care creeaz i
actualizeaz baza de date cu care lucreaz celelalte faze; n baza de date se gsesc tabelele
identificatorilor, a constantelor, a constructorilor, a cuvintelor cheie, a procedurilor standard,
care uneori sunt nglobate ntr-o unic tabel de simboluri.
(7) Tratarea erorilor este realizat de o colecie de proceduri ce sunt activate cnd se
depisteaz o eroare n program; utilizatorul primete mesaje de diagnostic iar compilatorul
continu analiza sintactic pentru a depista alte erori.
O succint abordare comparat a translatoarelor de limbaje conduce ctre urmtoarele
aspecte mai semnificative:
- asamblorul este determinat de limbajul main specific fiecrui sistem de calcul, iar
compilatorul este specific unui limbaj de programare independent de sistemul de calcul;
- compilatorul ofer posibilitatea scrierii de programe pentru orice sistem de calcul ce dispune
de compilatorul respectiv;
- asamblorul translateaz o definiie simbolic a programului surs ntr-o singur definiie din
programul obiect, n timp ce compilatorul o poate translata n mai multe definiii din
programul obiect;
- interpretorul este util n special, la controlul proceselor industriale ce se desfoar n timp
real, ns interpretarea este mai lent dect compilarea;
- execuia repetat a unui program este facilitat de compilator care realizeaz translatarea o
singur dat, n timp ce interpretorul l translateaz de fiecare dat.
Exist componente ale sistemului de operare ce sunt concepute ca programe generalizate care,
n funcie de necesitile utilizatorului se pot adapta pentru a realiza un grup de funcii; aceasta se
realizeaz n faza de asamblare, prin intermediul unui macrolimbaj care asigur generarea
secvenelor de program (PS i PO) specificate. Macrolimbajul folosete macroinstruciuni care sunt
instruciuni ale PS, care asigur prin intermediul comenzilor, inserarea n PS a secvenei de
instruciuni n locul unde a aprut macroinstruciunea.
Macroasamblorul este componenta programelor de servici a sistemului de operare care
trateaz macroinstruciunile, avnd ca activiti de baz:
- recunoaterea macrodefiniiilor indicate prin MACRO, ENDM;
- memorarea definiiilor macroinstruciunilor de care are nevoie pentru a le expanda la un apel
macro;
- recunoaterea apelului macroinstruciunii cu secvena de instruciuni corespunztoare.
- nlocuirea macroinstruciunii cu secvena de instruciuni corespunztoare.
3. Editorul de legturi
Structura extern a unui PS este alctuit din seciune, segment i program.
Seciunea este o unitate de program independent constituit dintr-o secven de definire a
datelor i o secven de instruciuni, ce asigur posibilitatea comunicrii cu alte uniti ale PS.
Definirea datelor i procedurilor servesc att propriei seciuni ct i altor seciuni.
Compilatorul asigur pe lng generarea codului obiect i informaii de legtur ntre seciuni:
- informaii de identificare (nume seciune, punctul de intrare);
- informaii de legtur.
Structura unei seciuni dup compilare conine Numele seciunii, Punctul de intrare,
Dicionarul de legtur i Codul obiect.
Dicionarul de legturi rezult n urma determinrii de ctre compilator, a elementelor de
comunicaie specificate n fiecare seciune a PS, coninnd dou tipuri de simboluri:
- externe - nedefinite n seciune, cu adresa necunoscut;
- interne - definite n seciune, dar referite din exteriorul acesteia.
Segmentul este o succesiune de seciuni ntre care au fost rezolvate legturile coninnd:
- numele segmentului;
- punctul de intrare n segment;
73
comenzi. Ultima versiune este MS-DOS 7 sub interfeele grafice Windows. Sistemul de operare
MS-DOS a fost proiectat n principal, s execute un singur program pentru un singur utilizator.
2) Digital Research Corporation a introdus cteva versiuni noi, incluznd DOS Concurent
care suporta execuia mai multor programe n acelai timp (DR-DOS).
3) Apple DOS a fost introdus pe PC-urile de tip Apple, care se bazeaz pe microprocesoare
diferite dect cele folosite de IBM, deci incompatibil cu clasele de PC-uri de tip IBM; iniial a fost
destinat pentru un singur utilizator care execut un program la un anumit moment.
Un sistem de operare mult mai puternic este Macintosh DOS proiectat s fie utilizat pe PCuri de tip Apple /Macintosh DOS (implementat cu microprocesor Motorola 68040) ce permite
multiprogramare i memorie virtual. Apple Computer a lansat generaia de sisteme de operare
constituit din Mac OS 8 i Rhapsody. Mac OS 10.5 sau OS X Leopard (denumire comercial), a
cincea generaie a sistemului de operare OS X, a pregtit 300 de noi faciliti. Una dintre cele mai
ateptate deopotriv de ctre utilizatorii tradiionali de Mac ct de ctre cei ai Windows - dar fani ai
elegantelor produse Apple - se numete Boot Camp. Aceasta permite instalarea Windows XP sau
Vista pe un computer Macintosh cu procesor Intel, alturi de sistemul de operare OS X Leopard.
4) Interfeele grafice WINDOWS sunt orientate pe ferestre; utilizatorul poate lansa
concomitant mai multe aplicaii, fiecare n fereastra ei, precum i efectuarea schimbului de
informaii ntre acestea. Se consider ca apariia sa marcheaz momentul n care calculatoarele IBM
i compatibile, au putut egala facilitile de utilizare i viteza calculatoarelor din gama Macintosh.
Windows 3.11. for Wokgroups, spre deosebire de Windows 3.1., dispune suplimentar de
faciliti pentru lucru n reea a grupurilor de utilizatori conectai; acetia pot efectua transferuri de
date, mesaje, informaii prin simpla selectare i activare a unor comenzi i funcii disponibile.
Windows NT (New Tehnology) a fost proiectat n ideea compatibilitii cu interfeele
grafice precedente, Windows 3.1. i Windows 3.11. for Workgroups. Are posibilitatea
implementrii att pe platforme Intel i pe platforme bazate pe microprocesoare RISC.
Windows 95 (Chicago) spre deosebire de versiunile precedente, ncearc s fie un
compromis de sistem de operare ce lucreaz pe 32 de bii; ncorporeaz majoritatea facilitilor
regsite la celelalte interfee grafice, adugnd i altele noi. Este util doar n aplicaii pe 32 de bii,
chiar dac pstreaz compatibilitatea cu aplicaiile pe 16 bii.
Windows 98 (Memphis)este un sistem de operare complet integrat cu Internetul,
constituindu-se ca un suport pentru noile tehnologii hardware i pstrnd compatibilitatea cu
Windows 95 fa de care apare ca un upgrade.
Windows 2000 este un sistem de operare de reea, proiectat pentru organizaii de orice
dimensiune, ofer siguran sporit i costuri mai reduse pentru aplicaii i servicii derulate prin
Internet. Windows 95/98 i NT sunt combinate n Windows 2000, pentru aplicaii profesionale,
multimedia, jocuri, cu o mare amprent asupra securitii datelor. Windows este considerat
ncepnd cu versiunea 98, ca un sistem de operare destul de stabil.
Windows Millennium Edition (Windows Me) extinde Windows 98 Second Edition cu
elemente preluate din Windows 2000, pentru mediul pe 32 bii, pentru segmentului home-user.
Windows XP este generaia celui mai rspndit sistem de operare din lume, bazat pe
tehnologia NT pentru staiile de lucru. Windows XP Professional integreaz punctele forte ale
versiunii Windows 2000 - securitatea crescut, administrabilitatea i fiabilitatea cu cele mai bune
caracteristici de business ale Windows 98 i Windows Me - Plug and Play, interfaa cu utilizatorul
uor de folosit i serviciile inovative de suport. Windows XP Home Edition cu noul nucleu
Windows, ofer fiabilitate i stabilitate calculatorelor de acas.
Windows 2003 este un sistem de operare destinat serverelor i este bazat pe tehnologia
Microsoft.NET. Windows Server 2003 R2 aduce:
management simplificat al serverelor din sucursale;
costuri reduse pentru managementul spaiului de stocare;
platform Web bogat;
virtualizarea serverelor la costuri reduse;
management mbuntit al identitii i al accesului.
76
Windows Vista este ultima versiune a sistemului de operare Microsoft Windows, proiectat
sub numele de cod Longhorn. Windows Vista are sute de noi proprieti i capaciti, cum ar fi o
modern interfa grafic i un stil vizual nou numit Aero, tehnologia de cutare mbuntit, noi
unelte multimedia, precum i sub-sistemele complet remodelate de reea, audio, imprimare i afiare
(display). Windows Vista este comercializat n 35 de versiuni lingvistice, ntre care i una n limba
romn. Noi n Windows Vista sunt i dou structuri pentru tastatur, Romn (Legacy) i Romn
(Programatori), care conin caracterele i cu virgul n loc de vechiul standard Windows cu
sedil ( i ).
Windows Server 2008 este noua versiune a sistemului de operare destinat lumii
profesionale disponibil n patru varinate (fara a contoriza dualitatea 32 / 64 bits). Windows Server
2008 poate fi uor transformat ntr-un sistem de operare pentru desktop, vine default cu Powershell,
o soluie de virtualizare integrat, mai puine guri de securitate datorit SP1.
Windows Server 2008 este cel mai avansat sistem de operare Windows Server de pn
acum, conceput sa stea la baza urmatoarei generatii de retele, aplicatii si servicii web. Ca urmare a
alegerilor tehnologice facute in perspectiva anilor urmatori, arhitectura SeniorERP este configurata
pentru a oferi avantaje pe termen lung:
Server de aplicatie SeniorERP hostat in IIS 7.0 + Windows Process Activation Service
(WAS) si .Net 3.0
Server baze de date: SQL Server 2005
Client Windows: smart client, .Net 3.0, cu actualizare automata prin ClickOnce
Client mobile: smart client .NET CF 2.0
Portal E-Commerce integrat cu SeniorERP, realizat utilizand ASP.NET 2.0
Platforma de colaborare + publicare BI: Sharepoint 3.0
Platforma de comunicare SeniorERP bazata integral pe Windows Communication
Foundation (WCF)
ntre restul atuurilor aduse de Windows Server 2008 se numara si Internet Information
Services 7.0, Terminal Services RemoteApp, noi protocoale TCP/IP si Read-Only Domain
Controller.
5) OS/2 (Operating System / 2) a fost introdus n 1988 de IBM i Microsoft, dorind s preia
avantajele microprocesoarelor I 80286 i I 80386 pentru seria de microcalculatoare IBM PS/2 pe 32
bii. Este un sistem de operare multitasking, fiind capabil a adresa 16 M memorie intern; necesit
1,5 M memorie intern i hard disc; versiunile construite n jurul microprocesorului I 80386 sunt i
multiutilizator (maxim 16 utilizatori simultan). Dei spaiul adreselor fizice este de 16 M, prin
mecanismul memoriei virtuale spaiul adreselor virtuale poate accesa pn la 32 MB. OS/2
pstreaz majoritatea comenzilor MS-DOS n special pentru operaiile cu fiiere i periferice.
Pentru a permite micarea intre aplicaii a utilizatorului, OS/2 dispune de o interfa PM
(Presentation Manager) orientat pe ferestre pentru introducerea comenzilor, selectarea taskurilor ce
se vor executa, gestiunea taskurilor i altele; PM dispune de dou programe de comand control:
controlul pentru configurarea porturilor, culorilor ecranului i setului de caractere, etc.;
utilitar pentru fiiere ce permite deplasarea prin arbori de directori, mutare, copiere, tergere
de fiiere i subdirectori, modificarea atributelor, sortarea i alte operaii.
Versiunile recente OS/2 Warp i OS/2 Warp Connect solicit cel puin un sistem AT 386 cu
4 M de RAM (OS/2 Warp) respectiv 8 M de RAM (Warp Connect).
OS/2 Warp este un sistem de operare ce controleaz aciunile calculatorului, dar este i o
interfa grafic utilizator (GUI-Graphical User Interface), care permite comanda calculatorului,
prin selectarea de simboluri vizuale. Dintre facilitile disponibile la OS/2 Warp se pot enumera:
lucrul cu mai multe programe (multitasking);
interfaa sistemului Warp este uor de neles, de memorat;
programele livrate cu Warp au aspecte grafice i de operare similare (pachetul Bonus
Pak)
OS/2 Warp faciliteaz conectarea la Internet (CIM)
77
Bonus Pak include un procesor de texte, un program de tip foaie electronic de calcul
(spredsheet), generator de diagrame, Sistem de Gestiune a Bazelor de Date (SGBD), generator de
rapoarte; utilitare pentru accesoriile: plci audio, fax / modem, video, etc.
6) UNIX a fost iniial creat pentru minicalculatoare, pentru a mri disponibilitile
sistemului: memorie virtual, multiutilizator i multitasking; rescris n limbajul C, a fost portabil pe
o gam mai larg de sisteme de calcul: mainframes, microcalculatoare, de unde i unul din marile
sale avantaje. Actualmente, sistemele de operare UNIX sunt proiectate de mai multe firme
specializate, ceea ce a condus la existenta mai multor versiuni cum sunt: AIX, SCO-ODT, HP-UX,
SOLARIS, Digital, UNIX, IRIX, Linux, .a.
Trsturile principale ale sistemului de operare UNIX sunt:
Sistemul de fiiere structurat pe mai multe niveluri, ceea ce permite mai multor utilizatori s
lucreze cu acelai calculator n acelai timp (multiuser);
Orice utilizator curent poate solicita execuia mai multor programe n acelai timp
(multitasking);
Un program utilizator poate s transmit rezultatele sale altui program;
Utilizatorul poate redirecta rezultatele programului su de la un dispozitiv periferic la altul;
Interpretor de comenzi i un limbaj adecvat, cunoscut sub denumirea de Shell;
Folosete un limbaj structurat, C, pentru programarea sistemelor;
Includerea unor componente pentru editarea textelor i formatarea lor pentru tiprire;
Utilizarea de tehnici evoluate pentru conectarea sistemelor de calcul care opereaz sub
UNIX sau alt sistem de operare;
Nu impune vreo limit la eventualele modificri determinate de specificul aplicaiei.
Linux a fost dezvoltat ca o versiune distribuit gratuit de UNIX, UNIX fiind unul dintre cele
mai utilizate sisteme de operare n lume, mult timp standardul pentru staii de lucru de nalt
performan i servere mari. Pentru c UNIX este un produs comercial, el trebuie cumprat pentru
fiecare platform pe care ruleaz. Licenele pentru versiunile UNIX pentru PC-uri sunt destul de
scumpe i de aceea, n tentativa de a face UNIX-ul disponibil fr costuri pentru cei care vor s-l
experimenteze.
Una dintre primele astfel de versiuni ale UNIX-ului a fost Minix, scris de Andrew
Tanenbaum. Cu toate c Minix nu avea un set foarte mare de caracteristici, a fost un mic sistem de
operare ce putea fi folosit pe PC-uri. Pentru a extinde Minix-ul, un numr de programatori au
nceput dezvoltarea unui sistem de operare mai puternic care s profite de avantajele arhitecturii
microprocesorului I 80386. Unul din primii proiectani ai acestui sistem cunoscut ulterior sub
numele de Linux, a fost Linus Torvalds de la Universitatea din Helsinki. El a lansat o prim
versiune a Linux-ului n 1991.
Linux nu se bazeaz pe o singur versiune de UNIX, ci este o consolidare a celor mai bune
caracteristici ale BSD UNIX i System V. BSD UNIX a fost dezvoltat i implementat la
Universitatea din California (Berkeley) ncepnd din anul 1997. Cteva lansri majore au crescut
puterea lui BSD UNIX. Compania AT&T care a realizat prima versiune de UNIX, a continuat
propria dezvoltare producnd o serie de versiuni UNIX numite System III, System IV i System V.
Linux folosete prima lansare a lui BSD UNIX numit 4.4 BSD ca baz i preia cteva alte
caracteristici din ultima lansare a versiunii System V, numit System V Release 4 ( SVR4 ).
Linux este un sistem de operare complet multitasking i multiuser care se comport ca
sistemele de operare UNIX n termenii comportamentului nucleului i a suportului pentru
periferice. Linux are toate trsturile UNIX-ului, plus cteva extensii recente care i-au adugat mai
multa flexibilitate .
Unele servicii software furnizate chiar de nucleu, au proprieti similare, prin urmare au fost
abstractizate n clase. De exemplu, diferitele protocoale de reea au fost abstractizate ntr-o singur
interfa de programare numit BSD socket library. Fiierele de sistem virtuale (Virtual File System
-VFS) abstractizeaz operaii legate de fiiere i fiecare sistem de fiiere are propria implementare.
Pentru a face ca Linux-ul s fie acceptat la scar larg, el suport un numr de sisteme de fiiere
78
inclusiv cele compatibile cu DOS i OS/2. Sistemul iniial de fiiere propriu al Linux-ului numit
ext2fs proiectat pentru o utilizare optim a discului.
Linux-ul este ideal pentru dezvoltare de aplicaii i experimentare cu noi limbaje. Diferite
compilatoare, inclusiv C, C++, Fortran, Pascal, Modula-2, LISP, Ada, Basic i Smalltalk vin prin
distribuirea software-ului. Multe dintre compilatoarele Linux-ului, instrumente, debuggere i
editoare provin de la proiectul GNU Free Software Foundation.
7) Open VMS, iniial denumit VMS ( Virtual Memory System ), a fost conceput n 1976 ca
un sistem de operare pentru noua linie de calculatoare pe 32 de bii a firmei DEC (Digital
Eguipment Corporation), numit VAX (Virtual Address eXtension ). Primul model VAX ( 11/780 )
a fost denumit Star, de aici i numele de cod Starlet pentru sistemul de operare VMS, nume care se
pstreaz i astzi ca nume pentru biblioteca sistem ( STARLET.OLB). Versiunea actual a
sistemului de operare este Open VMS 7.2. Open VMS este un sistem de operare pe 32 de bii cu
suport pentru multitasking, multiprocesor i memorie virtual.
Ultima versiune (OpenVMS V7.2-1) include suport pentru COM V1.1 pentru OpenVMS,
canale de fibre optic pentru conectarea dispozitivelor de stocare, suport pentru multe din
standardele importante cum ar fi OSF/Motif i OSF Distributed Computing Enviroment (DCE),
Java i Microsoft Distributed Component Object Model (DCOM).
3.3. TEHNICI DE GESTIUNE A LUCRRILOR LA SISTEMELE DE CALCUL
Unul dintre obiectivele utilizrii eficiente a sistemelor de calcul este acela de a executa un
volum ct mai mare de lucrri, cu o configuraie minim (termenul de lucrare desemneaz
activitile declanate de solicitarea unor prelucrri cu ajutorul sistemelor de calcul).
n acest scop se analizeaz componenta hardware (din punct de vedere al costului, ca msur
a utilizrii eficiente a volumului de lucrri ce trece prin system ntr-o perioad dat de timp) i
software (un program este bun dac rspunde cerinelor informaionale pentru care a fost realizat,
utilizeaz un spaiu minim de memorie intern i un timp de execuie ct mai redus).
Rolul principal al sistemului de operare este s mbunteasc eficiena utilizrii resurselor
sistemului de calcul. Componentele sistemului de operare, sunt astfel proiectate nct s utilizeze
ct mai eficient fiecare resurs a sistemului de calcul: timpul unitii centrale de prelucrare, spaiul
de memorie intern i extern, registre, dispozitive periferice de intrare/ieire i altele.
Pentru aprecierea performanelor unui sistem de calcul se pot utiliza o serie de indicatori:
- volumul de lucrri intrate n sistem;
- timpul petrecut n sistem;
- timpul de rspuns ca diferen ntre momentul servirii cererii i emiterea ei;
- accesibilitatea sistemului;
- fiabilitatea sistemului;
- costul serviciilor prestate.
Unii indicatori sunt n conflict, astfel c o cretere a performanelor unui indicator se
realizeaz pe seama scderii performanelor altui (altor) indicator(i); exemplu: creterea volumului
de lucrri din sistem implic o cretere a timpului petrecut n sistem de ctre fiecare lucrare i
implicit la creterea timpului de rspuns; verificrile de securitate mresc timpul de prelucrare.
3.3.1. Obiectivele urmrite n gestiunea lucrrilor
Una dintre funciile majore ale unui sistem de operare este de a optimiza utilizarea tuturor
resurselor unui sistem de calcul: timp unitate central de prelucrare, spaiu de memorie intern,
canale, registre, dispozitive periferice de intrere/ieire, biblioteci, programatori, utilizatori, rezultate
ale prelucrrii.
Cu o planificare foarte riguroas este posibil apropierea de ncrcarea maxim a unitii
centrale de prelucrare i a procesoarelor de intrare/ieire (canale). Chiar i n acest caz ns, sunt
79
meninute neocupate alte resurse ale sistemului de calcul: memoria intern, memoria extern,
dispozitivele periferice de intrare/ieire.
La stabilirea unei modaliti de planificare a lucrrilor trebuie cunoscute foarte precis
obiectivele, uneori subiective i contradictorii, de realizare simultan a urmtoarelor activiti:
execuia unui volum ct mai mare de lucrri n unitatea de timp, dac se ruleaz lucrri cu timp
redus de execuie, reducerea timpilor de ateptare ai unitii centrale de prelucrare, dac se execut
lucrri cu volum mare de calcule i numr redus de operaii de intrare/ieire, ncrcarea
dispozitivelor periferice la capacitate maxim, cnd se execut lucrri cu volum mare de operaii de
intrare/ieire i volum redus de calcule. Se observ c unele obiective se exclud prin natura lor.
Se poate aprecia n general, c pentru stabilirea unei strategii de planificare a execuiei unor
lucrri n condiiile impuse de limitrile hardware, se vor urmri obiectivele:
- maximizarea ratei de ieire a lucrrilor;
- minimizarea timpului mediu de rspuns;
- servirea unui numr ct mai mare de utilizatori, ntr-un timp acceptabil;
- reducerea costurilor pentru serviciile prestate;
- posibilitatea execuiei unor lucrri cu prioritate (printr-un cost mai ridicat);
- ncrcarea echilibrat a unitii centrale de prelucrare i a sistemului de intrare/ieire;
- folosirea cu un randament ridicat a spaiului de memorie intern i extern;
- distribuirea prelucrrii unui program, prin mprirea acestuia n sarcini mai mici (taskuri) ce
se pot executa n paralel (multitasking);
- integrarea unui numr ct mai mare de utilizatori (clieni) la procesorul central (server).
3.3.2. Monoprogramarea
Monoprogramarea este o tehnic de gestiune a lucrrilor ce presupune execuia secvenial a
lucrrilor solicitate a se prelucra pe un sistem de calcul.
Caracteristicile acestei tehnici se concretizeaz n urmtoarele aspecte:
- planificarea lucrrilor se realizeaz strict secvenial ntr-o ordine prestabilit;
- fiecare lucrare are la dispoziie toate resursele sistemului de calcul n momentul execuiei;
- fiecrei lucrri i se asociaz un singur proces la un moment dat, astfel c pe durata
operaiilor de intrare/ieire (care dureaz mult comparativ cu durata de execuie a unitii centrale
de prelucrare), unitatea central de prelucrare ateapt terminarea acestor operaii, conducnd la
creterea duratei de execuie a lucrrilor.
Obiectivul urmrit n cadrul acestei tehnici l constituie reducerea timpului mediu petrecut de
lucrare n sistem.
Execuia lucrrilor n monoprogramare
Un program solicit pe parcursul execuiei operaii de intrare/ieire; operaiile sunt
supervizate de ctre un procesor de comunicaii numit canal, care transfer coninutul ntre
memoria intern i dispozitivele periferice de intrare/ieire.
Dac unitatea central de prelucrare ntlnete o instruciune de citire, atunci iniiaz execuia
unui proces de intrare ctre procesorul de comunicaie, continund-i activitatea de prelucrare fr a
se interfera cu activitatea canalului. Procesele de intrare/ieire fiind mai lente, unitatea central de
prelucrare va atepta transferal datelor solicitate n vederea prelucrrii lor ulterioare; dac procesul
de intrare s-a ncheiat, unitatea central de prelucrare va fi sesizat de canal printr-o ntrerupere.
Sincronizarea activitilor dintre unitatea central de prelucrare i procesorul de comunicaie
este redat n fig. 3.6.
Pentru aprecierea eficienei utilizrii acestor procesoare ( CPU, DMAC), se calculeaz
randamentul de utilizare (n % ):
(3.1.)
(3.2.)
80
Fig. 3.6. Sincronizarea activitilor dintre unitatea central de prelucrare ( CPU ) i procesorul
de comunicaie ( DMAC ) n monoprogramare
t1 - momentul iniierii de ctre CPU a unei operaii de intrare;
t2 - momentul n care CPU are nevoie de datele solicitate de la dispozitivul periferic de
intrare, pe care nu le are deoarece nu s-a terminat operaia de citire;
t3 - se termin operaia de citire i se reia execuia programului de ctre CPU cu datele
solicitate;
t4 - momentul ncheierii execuiei programului.
3.3.3. Multiprogramarea
Timpul de inactivitate al CPU impus de perioadele de ateptare poate fi redus substanial dac
n memoria intern ar putea coexista simultan mai multe programe ce pot solicita CPU atunci cnd
aceasta ateapt terminarea unei operaii de intrare/ieire pentru lucrarea curent n execuie.
Multiprogramarea este o tehnic de gestiune a lucrrilor pe sistemele de calcul prin care
sunt plasate mai multe lucrri simultan n memoria intern iar CPU comut ntre ele; din punct de
vedere conceptual, multiprogramarea implic simultaneitatea a "n" procesoare pe un singur
procesor sau existena a "n" procesoare virtuale n cadrul unui singur procesor.
Caracteristicile de baz ale acestei tehnici const n:
- existena simultan a mai multor lucrri n memoria intern;
- existen unui mecanism de trecere de la un program la altul astfel ca randamentul
sistemului s fie ridicat;
- existena unui mecanism de protecie ntre lucrri care s permit execuia fiecreia, fr
afectarea celorlalte lucrri existente n memoria intern;
- existena unui mecanism pentru gestiunea resurselor fizice i logice solicitate de ctre
lucrrile n execuie (echipamente periferice, informaii, etc.).
Obiectivul urmrit n multiprogramare l constituie maximizarea volumului de lucrri care
trec prin sistem i minimizarea timpului petrecut de o lucrare n sistem.
Multiprogramarea se poate aprecia ca o dezvoltare a sistemului de operare, iar folosirea
partajat a CPU de ctre lucrri, ca o execuie concurent (n realitate, partajarea este realizat pe
intervale distincte).
Planificarea execuiei lucrrilor
Sistemele de calcul ce utilizeaz tehnica multiprogramrii sunt prevzute cu o component a
sistemului de operare numit monitor de planificare a lucrrilor, care alege dintr-un grup de
programe n ordinea sosirilor, pe acelea potrivit crora timpul neocupat al CPU s fie minim; exist
o limit pentru numrul de lucrri ce pot fi executate simultan funcie de memoria afectat
utilizatorilor.
Procesul de planificare are dou funcii distincte:
- asigurarea prioritii;
- alocarea resurselor care utilizeaz prioritatea.
Algoritmii de planificare presupun c lucrrile sunt ordonate pe baz de prioritate, sub forma
firelor de ateptare. Alegerea unui anumit algoritm se va face dup obiectivele urmrite;
Dintre algoritmii frecvent utilizai n multiprogramare se menioneaz:
81
STF (Shortest proccessing Time First) - lucrarea cu cel mai scurt timp de prelucrare este prima
executat, urmrete minimizarea timpului de trecere prin sistem a lucrrilor ce dureaz puin;
LTF (Longest proccessing Time First) - lucrarea cu cel mai lung timp de prelucrare este
prima executat, urmrete reducerea timpului total de execuie a lucrrilor;
SMF (Smallest Memory requirment First) - lucrarea ce necesit cel mai mic spaiu de
memorie este prima executat;
LMF (Largest Memory requirment First) - lucrarea ce necesit cel mai mare spaiu de
memorie este prima executat;
FIFO (First Input First Output) - lucrrile sunt executate n ordinea lansrii n execuie;
LIFO (Last Input First Output) - lucrrile sunt executate n ordinea invers lansrii n
execuie;
Round-Robin sau planificarea circular, fiecare lucrare avnd alocat o cuant de timp
(interval de 1-10 ms), dup care controlul este comutat la urmtoarea lucrare.
Sincronizarea activitii CPU cu activitatea procesorului de comunicaie
Sincronizarea activitii CPU cu activitatea procesorului de comunicaie este redat n fig. 3.7.
presupunnd existena a trei programe ncrcate n memoria intern (P1,P2,P3) la un moment dat,
ce sunt executate de CPU conform algoritmului Round-Robin.
stations) plasate local sau la distan; elementele globale ce definesc aceste sisteme sunt tehnica
divizrii timpului i multiplexarea resurselor ntre mai muli utilizatori independeni; termenul de
multiplexare semnific partajarea resurselor sistemului astfel nct se creeaz mai multe procese,
fiecare utilizator avnd senzaia c sistemul i aparine integral (practic, se comut sau se
multiplexeaz n timp, de la un utilizator la altul).
n time-sharing CPU este partajat pe baz de cerere, planificarea execuiei urmrind
obinerea unui timp de rspuns minim; lucrrile nu au prioriti prestabilite, astfel c acestea trebuie
s fie executate ntr-o manier dinamic. Multiplexarea resurselor ntre procese necesit existena
unei componente a programelor de comand-control capabil s trateze o larg gam de ntreruperi.
Utilizatorii sunt aleatori, se schimb n orice moment, lucreaz programe diferite, se
conecteaz/deconecteaz la/din sistem independent unii de alii utiliznd perioade de timp diferite
pentru execuia lucrrilor.
Trsturile eseniale ale acestei tehnici constau n:
- protecia memoriei, prin care programele utilizatorilor trebuie s fie protejate ntre ele pentru
a nu permite accesul neautorizat, fiecare program fiind limitat la spaiul su de memorie;
- independena utilizatorilor, prin care se stabilete o cuant de timp pentru fiecare utilizator;
dac programul nu s-a terminat n acest interval de timp, este returnat n memoria extern i
plasat la sfritul firului de ateptare, ncrcndu-se alt program n memoria intern, .a.m.d.
- alocarea resurselor pentru programele utilizatorilor este efectuat de monitorul rezident n
memoria intern (monitor de time-sharing): spaiu de memorie intern, timp CPU, tratarea
cererilor de ntrerupere de la terminale, etc.;
- alocarea memoriei interne se realizeaz printr-o tehnic de alocare i control a micrii
paginilor ntre memoria intern i cea extern.
Caracteristici hardware solicitate implic:
- memorie intern de capacitate mare i CPU rapid pentru asigurarea unui timp minim de
rspuns (volum mic de migrri ntre memoria intern i cea extern, respectiv comutarea
rapid ntre programe);
- ceas de timp real care s genereze ntreruperi pentru comutarea CPU de la un program la
altul;
- memorie extern cu acces direct n care o soluie ar fi cuplarea n paralel a memoriei externe
la CPU i terminale, ceea ce implic transferul ntre memoria extern i terminale
independent de activitatea CPU;
- sistem de comunicaie transferul informaiilor ntre CPU i terminale, linii de comunicaii,
modemuri, concentratoare i multiplexoare;
- terminale i CPU adecvate.
Caracteristici software
Caracteristicile software sunt realizate n principal de monitorul de time-sharing care
gestioneaz resursele ntregului sistem:
- alocarea i comutarea CPU dup timpul alocat pe baza unui algoritm de planificare a
execuiei stabilit astfel nct s se asigure:
- reducerea timpului de rspuns;
- minimizarea timpului necesar comutrii ntre procese;
- posibilitatea lansrii n execuie a oricrui proces care ateapt, lansare ce se execut n
funcie de prioriti;
- ncrcarea echilibrat a sistemului;
- stabilirea locului fiecrui program n firul de ateptare, n funcie de prioritate;
- alocarea spaiului de memorie intern: zona de memorie i adresa unde se ncarc fiecare
program;
- tratarea ntreruperilor prin analiza motivului ntreruperii care va determin aciunea ce se
ntreprinde n continuare;
- gestiunea fiierelor prin care se determin locul unde sunt memorate coleciile de date,
regsirea lor rapid, parola de protecie .a..
84
1) sisteme cu CPU identice care sunt determinate de modul n care CPU partajeaz memoria:
memorie unic pentru CPU cuplate n care mai multe CPU partajeaz o memorie;
memorie proprie pentru fiecare CPU din sistem.
Legturile dintre memoria intern i CPU se pot realiza n urmtoarele variante:
- legtur matriceal (cross bar) prin intermediul unui sistem de comunicaie, cererile
neservite fiind plasate ntr-un fir de ateptare gestionat prin hardware sau software;
- legtur prin canale multiple - procesoarele partajeaz o cale unica pentru fiecare memorie;
- legtur printr-un singur canal folosit partajat - interfaa dintre toate CPU i memoria
intern .
2) sisteme cu CPU diferite care presupun existena unui numr de CPU periferice care
lucreaz n paralel cu CPU principal; pot fi organizate sub form de:
- arie de procesoare (processor array) care implic divizarea unui program n activiti
independente ce se pot executa simultan pe CPU existente n configuraie;
- conduct (pipe) ceea ce permite operarea direct asupra unui ir de vectori (pipeline)
elementele irului fiind reprezentate de CPU;
- puternic conectate, caracterizate de o cretere a volumului de lucrri executate datorit
controlului direct exercitat de CPU din configuraie asupra resurselor;
- slab conectate, care pot partaja: sistemul de comunicaie, volumele de memorie cu acces
direct, programele de servici prin care componenta software dintr-un sistem comunic cu
componenta software din alt sistem, pentru cereri de partajare a resurselor; nu exist un control
asupra resurselor unui procesor exercitat de alt procesor.
Planificarea execuiei lucrrilor n multiprelucrare depinde de modul de conectare al
sistemelor, existnd urmtoarele variante:
1) planificarea n cazul sistemelor diferite se poate realiza:
- manual, fr nici o planificare, doar cu comutarea de la un procesor la altul;
- prin urmrirea ncrcrii echilibrate a sistemelor, dac sunt slab conectate i au CPU proprie;
2) planificarea n cadrul sistemelor master/slave n care toate resursele sunt disponibile tuturor
CPU; n acest caz, memoria intern i dispozitivele periferice de intrare/ieire sunt alocate la
procese nu la CPU, iar CPU sunt asigurate s execute procesele de ctre modulul de planificare a
execuiei proceselor (sisteme puternic conectate). n cazul tehnicii de planificare master/slave, o
CPU master reine starea tuturor proceselor din sistem i planific activitatea tuturor CPU slave.
3) planificarea n cazul sistemelor omogene. n aceast situaie, CPU sunt tratate ca CPU
slave, avnd loc o planificare descentralizat; se creaz o list n memoria intern ce conine numele
proceselor i starea lor, fiind permis oricrei CPU s acceseze aceast list.
3.4. GESTIUNEA RESURSELOR UNUI SISTEM DE CALCUL
Componenta hardware a sistemelor de calcul necesit existena unui sistem de operare care s
poat gestiona resursele hardware, concomitent cu asistarea utilizatorului pe timpul pregtirii i
lansrii n execuie a lucrrilor sale. Programele de comand-control ale sistemului de operare sunt
constituite din programe care coordoneaz i controleaz resursele hardware (memoria, CPU,
canalele, dispozitivele periferice) i informaiile (programe, date), ndeplinind astfel rolul sistemului
de operare de a asigura utilizarea eficient a resurselor i de a rezolva conflictele aprute n
competiia dintre utilizatori.
Pentru gestionarea resurselor programele de comand-control ale sistemului de operare
trebuie s realizeze urmtoarele activiti:
- evidenierea fiecrei resurse;
- adoptarea unei strategii pentru determinarea n orice moment crui proces s-i aloce resursa,
ct din resurs, la ce moment de timp i cuanta de timp alocat;
- s aloce resursele, iar la terminarea activitii s le dezaloce.
n acest scop, programele de comand-control ale sistemului de operare au fost grupate n 4
categorii, corespunztor funciilor ndeplinite:
86
rezultat depinde de ordinea i viteza de execuie a activitilor, sistemul este nedeterminat i n acest
caz se vor introduce restricii de prioritate (grad de preceden);
2) interblocarea proceselor apare atunci cnd dou sau mai multe procese ateapt un timp
nedefinit ntr-un fir de ateptare circular, ca alt proces s renune la preteniile de utilizare a unei
resurse; interblocarea poate fi nlturat prin mecanisme cum sunt:
- prealocarea resurselor partajate;
- alocarea controlului n avans de execuie;
- organizarea secvenial a cererilor i ierarhizarea resurselor pe nivele astfel nct atunci cnd
un proces a dobndit resursele de la un anumit nivel, poate solicita resurse numai de la un nivel
superior;
- excluderea mutual a proceselor prin care anumite activiti vor fi programate astfel nct s
nu poat fi n execuie n acelai timp (de exemplu, READ i WRITE).
Sincronizarea proceselor
Sincronizarea proceselor include mecanisme prin care anumite procese vor fi oprite la un
moment dat, pn ce apar anumite evenimente ce se afl sub controlul altei activiti. Problema
sincronizrii apare datorit partajrii resurselor n legtur cu alocarea proceselor pentru execuie i
comunicaia ntre procese care genereaz dou aspecte:
- apariia condiiei de competiie ntre procese care se ivete atunci cnd planificarea unor
procese pentru execuie devine critic deoarece parametrii pentru planificarea execuiei provin din
calcule diferite;
- tendina de a obine resursa de ctre procese ar putea genera interblocarea acestora.
Mecanismele de sincronizare pentru coordonarea i comunicarea ntre procese includ
urmtoarele posibiliti:
1) bii de ateni. Prin aceast modalitate, orice resurs partajat de "n" procese va dispune de
un bit de atenie "lock-bit" folosindu-se convenia:
lock-bit = 0 - resursa este disponibil;
lock-bit = 1 - resursa este n folosin.
nainte ca un proces s aib acces la un procesor, acesta va verifica starea lock-bit-ului: dac
lock-bit = 0 atunci este permis acestui proces s aib acces la procesor, iar la terminarea
execuiei va trece lock-bit-ul n starea iniial 0; dac pe parcursul execuiei un alt proces va solicita
procesorul, acesta va gsi lock-bit-ul n starea 1, el fiind trecut n starea de ateptare pn cnd lockbit-ul devine 0.
2) mecanisme de ateptare i semnalizare. Inconvenientul sincronizrii proceselor prin lockbit const n continuarea secvenei de testare a lock-bit-ului pentru comutarea din starea 1 n starea
0; n acest sens, o variant de utilizare mai eficient a procesorului n sensul reducerii timpului de
ateptare i de ciclare o constituie plasarea procesului ntr-o list de procese blocate alturi de alte
procese. Atunci cnd procesorul alocat unui proces ncheie execuia, acesta va introduce un semnal
de legtur (pointer) prin care unul din procesele blocate din lista celor care ateapt, este sesizat c
resursa pentru care a fost blocat a devenit liber; n acest moment, procesul care ctig competiia
este trecut din lista de procese blocate, n lista proceselor gata de execuie, urmnd s fie din nou
planificat pentru reluarea execuiei din punctul n care a fost ntrerupt.
3) calculul semafoarelor prin operaiile P i V. P i V sunt primitive care opereaz pe
semafoarele S constituite din variabile ce iau valori ntregi (nu numai 0 i 1). Mecanismul se
desfoar astfel:
P(S): decrementeaz valoarea lui S cu 1 i dac S <= 0 atunci ateapt;
V(S): incrementeaz valoarea lui S cu 1 i dac S <= 0 atunci semnal.
4) comunicarea direct de tip SEND/RECEIVE. Mecanismele de sincronizare anterioare
realizeaz comunicaii indirecte. Sincronizarea se poate realiza i ntr-o manier direct, prin
intermediul primitivelor SEND (Proces1, mesaj) i RECEIVE(Proces2, mesaj).
88
5) cutii potale. Cutiile potale sunt constituite din zone tampon din memoria dinamic,
tratat ca dispozitiv periferic de intrare/ieire. Fiecare activitate creeaz o cutie potal cu informaii
ce pot fi extrase de celelalte activiti nainte de lansarea n execuie.
Gestiunea procesoarelor
Gestiunea procesoarelor presupune asigurarea procesoarelor la procesele create; aceast
activitate se desfoar la dou nivele:
1) planificarea lucrrilor, la care se decide care lucrri vor fi executate i care va fi prima
lansat n execuie;
2) alocarea procesorului la procese.
n acest scop exist module specializate ale programelor de comand-control ale sistemului de
operare, ce realizeaz o serie de activiti:
Modulul pentru planificarea lucrrilor ndeplinete urmtoarele activiti:
- evidenierea strii tuturor lucrrilor sesiznd care dintre lucrri solicit servicii;
- alegerea disciplinei prin care vor intra lucrrile n sistem: prioriti, resurse solicitate,
ncrcarea echilibrat, etc.;
- alocarea resurselor necesare lucrrii planificate: memorie intern, extern, dispozitive
periferice, CPU;
- dezalocarea resurselor la terminarea execuiei lucrrii.
Modulul de planificare a lucrrilor creeaz unul sau mai multe procese pentru lucrarea
considerat n momentul trecerii din starea de pregtire n starea de execuie, stabilind totodat i
modul de comunicaie ntre procese; cu alte cuvinte, aloc resursele fizice disponibile la procese, n
scopul utilizrii eficiente a sistemului de calcul, prin simularea unei maini virtuale pentru fiecare
proces i un sistem de faciliti ce permit proceselor concurente s realizeze o excludere mutual
din regiunile critice i s comunice cu alte procese.
Modulul pentru planificarea procesoarelor decide care dintre procese va dispune de
procesor, n ce moment i care este cuanta de timp alocat:
- evideniaz starea tuturor proceselor (componenta traffic controller);
- decide procesul care va dispune de procesor i pentru ct timp (processor scheduller);
- aloc procesorul la procese, ceea ce implic actualizarea coninutului registrelor
procesorului care s reflecte starea curent;
- dezalocarea procesorului atunci cnd cuanta de timp acordat a expirat sau procesul trebuie
s atepte datorit unei ntreruperi cum ar fi solicitarea unei operaii de intrare/ieire. n acest
caz e necesar salvarea coninutului registrelor procesorului, n vederea pstrrii strii la care a fost
ntrerupt, pentru rencrcarea la reluarea execuiei din punctul n care a fost ntrerupt.
Pentru planificarea lucrrilor la nivelul procesorului se ntlnesc dou tipuri de sisteme:
1) sisteme nepreemptive n care fiecare activitate se execut pn la execuia complet; n
acest caz, procesorul va executa cererea cea mai prioritar din sistem pn la terminarea
execuiei, chiar dac pe durata execuiei apar cereri mai prioritare n sistem;
2) sisteme preemptive sunt sistemele n care cererile se pot afla n diverse etape ale execuiei;
la un moment dat sistemul execut o singur activitate, dar dac apare o cerere cu prioritate
mai mare, execuia curent este ntrerupt i trecut n ateptare.
3.4.2. Gestiunea memoriei
Sistemele de calcul includ diverse dispozitive de memorare organizate n final pe dou nivele:
memoria intern i memoria extern.
Gestiunea memoriei are rolul de a decide cum trebuie organizat informaia pe cele dou
nivele i cnd trebuie transferat informaia ntre acestea; tehnicile de gestiune a lucrrilor
(multiprogramare, multitasking, time-sharing,etc) implic existena unor metode eficiente pentru
gestiunea memoriei: tehnici de alocare dinamic i memoria virtual.
89
adresa virtual ai. La terminarea ntreruperii (care lanseaz n execuie algoritmii de transfer,
plasare i reamplasare) ft(ai) va fi nenul, avnd loc o nou iniiere a activitii ntrerupte.
Dispozitivul de translatare este redat n fig.3.9.
REZIDENT. Algoritmii vor determina transferul paginii corespunztoare din memoria extern n
memoria intern, actualiznd totodat i MTP, dup care procesorul refer din nou adresa.
Organizarea la nivel de pagin ofer avantajul c un program se poate executa fr a avea
toate paginile ncrcate n memoria intern, ele putnd fi ncrcate pe msur ce devin necesare n
prelucrare, deci o utilizare mai eficient a memoriei i totodat, o protecie mai sigur a informaiei.
3. organizarea la nivel de segment, mparte spaiul de memorie n blocuri de dimensiune
variabil, numite segmente (pot fi module de program sau anumite structuri de date).
Adresa virtual referit de procesor const din numele segmentului S i numele cuvntului din
segment C; adresa de memorie unde ncepe segmentul S reprezint adresa de baz R, iar prin D se
specific dimensiunea segmentului. Adresa real determinat prin R+C se obine dac registrul de
buffer conine adresa extras din memoria tabelei de segmente, efectundu-se i comparaia dintre C
i D; dac R = 0, atunci se vor declana cei trei algoritmi.
4. organizarea la nivel de segment-pagin
Organizarea la nivel de segment-pagin divide adresele virtuale i adresele fizice n segmente,
iar segmentele n pagini, n vederea fructificrii avantajelor celor dou metode de organizare:
- paginarea, care ofer implementarea simpl i cel mai sigur mijloc de protecie a
informaiei;
- segmentarea, care satisface ntr-o mai mare msur cerinele programatorului prin divizarea
n segmente, deci innd seama de logica programului.
n cadrul acestui mod de organizare, exist o singur tabel de segmente i un numr de tabele
de pagini egal cu numrul de segmente.
Atunci cnd procesorul refer o adres virtual, acesteia i se asociaz:
- adresa virtual a segmentului S;
- adresa virtual a paginii n segment CP;
- adresa virtual a cuvntului din cadrul paginii CC; iar registrul de acces segment este setat.
Prin S din RV se caut n MTS; dac se gsete o adres, aceasta este reprezentat prin:
- R - adresa tabelei de pagini;
- D - dimensiunea segmentului exprimat n pagini i introdus apoi n registrul de buffer.
Prin intermediul lui R din registrul de buffer se selecteaz o tabel de pagini din MTP;
componenta CP din registrul de adrese i R din registrul de buffer, permit extragerea din tabela de
pagini a cuvntului indicat prin CP din RV; cuvntul selectat are Q bii i reprezint una din
paginile reale din memoria intern, fiind introdus n RM unde vine i componenta CC care indic
adresa real a cuvntului n pagin. Dac nu se gsete prin S din RV nici o intrare n MTS, atunci
segmentul virtual adresat nu are corespondent n memoria intern, deci registrul de REZIDENT este
setat i se declaneaz algoritmii de transfer din memoria extern n memoria intern a segmentului
solicitat actualizndu-se i memoria tabelei de segmente. Accesul n MTP se realizeaz prin
poziionarea registrului de acces la pagin pe 1, iar componentele Q i CC sunt introduse n RM.
La proceselor concurente, gestiunea memoriei ntre mai multe procese poate fi analizat prin :
- limitarea frecvenei transferului de date i programe;
- conservarea execuiei programelor din memoria intern, n timp ce alte programe sunt n
ateptare n memoria extern;
- transferul datelor i programelor din memoria intern atunci cnd procesele le solicit.
3.4.3. Gestiunea dispozitivelor periferice
O mare pondere din arhitectura sistemelor de calcul este deinut de echipamentele de
intrare/ieire (denumite dispozitive periferice), fapt care implic o atenie deosebit acordat
utilizrii lor eficace. Dei evoluia continu n domeniul facilitilor (mai ales a vitezelor de
execuie) a condus la multe mbuntiri, continu s existe diferene mari ntre viteza dispozitivelor
periferice i vitezele la care opereaz CPU i memoria intern, ceea ce motiveaz introducerea
canalelor de intrare/ieire i a procesoarelor specializate n operarea cu unitile de control ale
dispozitivelor periferice.
92
- un canal de intrare/ieire poate fi utilizat n mod partajat de dou CPU folosind un controller
pentru canalul de intrare/ieire- situaie ntlnit la sistemele de calcul exploatate n multiprelucrare;
- o unitate de control poate fi partajat ntre mai multe canale, pentru acelai dispozitiv
periferic exist mai multe ci de acces, iar doua CPU partajeaz aceeai unitate de control;
- dispozitivele periferice de intrare/ieire pot fi partajate ntre mai multe uniti de control ataate la
diferite canale de intrare/ieire ale aceleiai CPU sau la canalele mai multor CPU.
Gestiunea dispozitivelor periferice trebuie s ndeplineasc urmtoarele funcii:
- evidena strii tuturor dispozitivelor periferice sub forma blocurilor unitilor de control
asociate pentru fiecare dispozitiv periferic;
- introducerea unei discipline pentru a determina crui proces i este alocat dispozitivul
periferic, pentru ct timp i la ce moment, n funcie de natura proceselor, de viteza
dispozitivului periferic i modul lui de funcionare;
- alocarea dispozitivului periferic, a unitii de control i a canalului pentru proces;
- dezalocarea la nivelul procesului.
Utilizarea eficient a dispozitivelor periferice se realizeaz cu ajutorul unor metode hardware
i a unor module specializate ale sistemului de operare.
Gestiunea dispozitivelor periferice prin metode hardware se poate realiza prin:
1) operarea dispozitivului periferic independent, fr asistena canalului sau unitii de
control;
2) disciplina buffer care implic existena unui buffer pentru date n dispozitivul periferic sau
al unitii de control, ce ar permite unui dispozitiv periferic lent s lucreze independent de canal;
3) ci de acces multiple, concretizate n mai multe ci de acces pentru fiecare dispozitiv
periferic. Driverele pentru gestiunea dispozitivelor periferice vor ine evidena cilor de acces i
or determina ruta liber pentru servirea unei cereri de intrare/ieire la dispozitivul periferic solicitat;
4) multiplexarea canalului prin execuia unor programe de canal multiple, ceea ce nseamn o
implementare hardware a multiprogramrii pentru programele de canal.
Gestiunea dispozitivelor periferice de ctre sistemul de operare este realizat de urmtoarele
module specializate:
1) controlorul traficului de intrare/ieire (I/O Traffic controller) care are rolul de a evidenia
informaiile de stare pentru fiecare dispozitiv periferic, furniznd informaii mecanismului prin care
un dispozitiv periferic poate fi alocat sau nu. n acest scop, construiete un bloc de control pentru
dispozitivul periferic, unul pentru unitatea de control i unul pentru canal;
2) planificatorul operaiilor de intrare/ieire (I/O Scheduller) care conine algoritmul privind
strategia utilizat pentru alocarea canalului, a unitilor de control i a dispozitivelor periferice;
3) manipulatorul dispozitivelor periferice de intrare/ieire (I/O Devices Handler) are rolul de
a crea programul de canal pentru execuia funciei dorite, executnd fizic operaia respectiv;
4) dispozitive periferice utilizate partajat (Shared Devices) sunt partajate ntre mai multe
procese concurente, ceea ce implic:
- interferena cererilor din partea proceselor;
- protecia mpotriva acceselor neautorizate.
5) dispozitive periferice virtuale sunt dispozitive periferice ce pot fi convertite pentru a putea
fi utilizate partajat prin sistemul Spooling.
3.5. COMPONENTA ROM-BIOS I NTRERUPERILE MS-DOS.
3.5.1. Prelucrarea ntreruperilor
Conceptul de ntrerupere
n cadrul procesului de execuie al unui program CPU trebuie s asigure urmtoarele funcii:
- evidenierea strii n care se afl i asigurarea unui mecanism de schimbarea strii;
- asigurarea nlnuirii automate a instruciunilor;
- asigurarea comenzilor necesare execuiei unei instruciuni.
94
operare, iar nivelul 3 este nivelul cea mai mic tutel. Nivelul privilegiat este un atribut de protecie
alocat la toate segmentele prin software-ul sistemului, aceasta determinnd care proceduri pot
accesa segmentul, n timp ce drepturile de acces sunt implementate hardware.
Codul sistemului de operare i segmentele de date plasate la cel mai privilegiat nivel (nivel 0)
nu pot fi accesate prin programe de alt nivel privilegiat, fiecare program putnd accesa date la un
nivel identic sau mai mare.
ntreruperile i excepiile sunt cazuri speciale de transfer al controlului ntre programe.
O ntrerupere este generat de un eveniment independent de programul n curs de execuie, n
timp ce excepiile sunt rezultate direct din programul n curs de execuie, aprnd atunci cnd o
instruciune nu poate fi executat complet n mod normal. Pentru localizarea ntreruperii, CPU
asociaz fiecrei surse de ntrerupere un numr, numit vector de ntrerupere cu rol de adres n
IDT.
Tabela de descriere a ntreruperilor (IDT) definete dirijarea acestora pentru fiecare tip de
ntrerupere; aceast tabel poate fi localizat oriunde n spaiul adreselor fizice, ea fiind accesat n
memoria real prin adrese ce sunt pstrate n registrul tabelei de descriere a ntreruperilor (IDTR).
Fiecare intrare n tabela de descriere a ntreruperilor conine adresa planificatorului de
ntreruperi. Erorile de execuie care genereaz excepiile refer o intrare n tabela de descriere a
ntreruperilor ce se poate identifica prin bitul 1 n codul de eroare. Acest bit este setat pe 1 dac
ntreruperea a fost Nivel 3Nivel 2Nivel 1Nivel 0, cauzat de un eveniment extern
programului (flagul TF=1).
Excepiile au totodat i rolul de a detecta faulturile sau erorile de programare produse de
utilizarea operanzilor sau a nivelurilor privilegiate; ele nu pot fi mascate, avnd fixai vectorii n
primele 32 de ntreruperi. De exemplu, ncercarea de a viola protecia cauzeaz o excepie care, ca
orice fault este dirijat de programul care a generat-o dac aceasta este o ntrerupere, respectiv de
un alt program, dac este o intrare n tabela de descriere a ntreruperilor.
Clase de ntreruperi la PC uri
Sistemul de ntreruperi la PC este realizat cu ajutorul unui controlor de ntreruperi (standard
8259 A), existnd mai multe niveluri de ntreruperi situate fie pe magistrala sistemului, fie pe placa
de baz a CPU.
PC din gama IBM sau compatibile manevreaz urmtoarele clase de ntreruperi:
1) ntreruperi ale microprocesorului grupate pe tipuri de ntreruperi, fiecrui tip fiindu-I
atribuit un cod dup care se identific;
2) ntreruperi iniiate hardware sunt cauzate de evenimente externe activate pe dou linii:
INTR (INTerrupt Request) i NMI (Non Maskable Interrupt-pini de ntrerupere ai
microprocesorului):
- dac linia INTR este activ, CPU execut anumite activiti n funcie de indicatorul de
validare al ntreruperii (IF);
- dac linia NMI este activ, ntreruperea anun producerea unor evenimente critice, iar CPU
le d imediat controlul; evenimentele ce utilizeaz intrarea NMI sunt nemascabile, iar evenimentele
care utilizeaz intrarea INTR sunt calificate ca ntreruperi posibil de inhibat (mascabile).
3) ntreruperi iniiate software sunt produse explicit de instruciuni de ntrerupere sau sunt
rezultatul unor condiii de excepie ce previn programul asupra continurii execuiei; sunt
ntreruperi nemascabile.
O instruciune INT (INTerrupt) genereaz o ntrerupere imediat dup execuia sa. Tipul de
ntrerupere este codificat n instruciune anunnd CPU care rutin de tratare a ntreruperii s o
execute. Dac este setat bitul TF, CPU genereaz o ntrerupere dup execuia fiecrei instruciuni;
aceasta se numete execuie pas cu pas (step by step) constituindu-se ntr-un instrument deosebit de
util pentru testarea i depanarea programelor.
ntreruperile software sunt fixate la orice PC din gama IBM sau compatibil, ele fcnd parte
din programele BIOS-ului.
96
4) ntreruperile DOS sunt disponibile numai sistemului de operare MS-DOS; rutinele de tratare
a acestor ntreruperi gestioneaz operaii de baz, lucrul cu fiierele, gestionarea memoriei, .a.
5) ntreruperile Basic sunt folosite numai dac n memoria ROM, interpretorul Basic este activ.
6) ntreruperile de adres se gsesc sub forma vectorilor de ntreruperi, n tabela vectorilor de
ntrerupere i conin adresele diferitelor tabele din memorie, nefiind asociate cu rutinele de tratare a
ntreruperilor; trei tabele sunt mai semnificative:
- tabela de iniializare video;
- tabela de baz a discului;
- tabela de caractere grafice.
7) ntreruperile folosite de programe utilizator care de regul, au un interval rezervat.
3.5.2. Atribuirea ntreruperilor i prioritii. Serializarea ntreruperilor
Iniial, microprocesoarele familiei Intel X86 aveau opt ntreruperi incluse pe controlerul
standard Intel 8259 A numerotate de la 0 la 7, cu prioriti n ordine descresctoare numerelor
atribuite (NMI, IRQ0, IRQ1,..., IRQ7); existau doar dou linii de semnal dintre care una era folosit
de ntreruperea nemascabil NMI (eroare de paritate a memoriei sau provenit de la coprocesorul
matematic), iar cealalt era folosit de ntreruperile IRQ n funcie de prioritatea asociat.
Ulterior, la modelele AT numrul liniilor de semnal s-a dublat prin introducerea unui nou
controler Intel 8259 A legat n cascad cu primul controler, la ntreruperea IRQ 2 care a fost
redistribuit liniei IRQ 9, modificndu-se i prioritile.
Magistralele PCI nu folosesc controlerul de ntreruperi AT, avnd integrat propriul controler
care include patru linii de ntrerupere (patru linii a cte opt bii), neimpunnd limite n modul de
folosire al semnalelor de ntrerupere datorit n principal software-ului.
Majoritatea PC - urilor actuale bazate pe microprocesoare Pentium, pentru a pstra
compatibilitatea cu microprocesoarele Intel precedente, includ plci ISA/PCI, legtura cu
microprocesorul realizeazndu-se pe magistrala PCI printr-un cip de legtur PCI-magistrala local
a microprocesorului, n timp ce legtura cu magistrala ISA se realizeaz printr-un cip de legtur
ISA/PCI care include un standard de serializare a ntreruperilor IRQ pentru magistrala PCI.
Standardul de serializare IRQ se bazeaz pe un semnal special IRQ SER ce codific
ntreruperile IRQ; printr-un ciclu IRQ SER se trimit informaii despre starea tuturor ntreruperilor
din sistem (durata unui ciclu este de 4 - 8 cicluri de ceas), acesta fiind divizat n cadre ce includ cte
trei cicluri de ceas. Un cadru codific starea unei ntreruperi.
3.6. COMPONENTA ROM-BIOS I MS-DOS
3.6.1. Elemente componente BIOS
Sistemul driverelor de intrare/ieire de baz - BIOS (Basic Input Output System) rezident n
memoria ROM, conine urmtoarele elemente:
- programe de test pentru resursele sistemului din configuraia standard;
- program de ncrcare a nregistrrii ce conine ncrcarea sistemului de operare pe disc;
- proceduri pentru tratarea cererilor de ntrerupere externe.
- proceduri pentru comanda i controlul execuiei operaiilor de intrare/ieire la nivel fizic,
pentru dispozitivele periferice din configuraia standard.
Programele de test pentru resursele din configuraia standard se execut automat odat cu
pornirea sistemului realiznd urmtoarele activiti:
- testarea sumar a microprocesorului care include testarea registrelor accesibile utilizatorului
i a cilor de date;
- testarea i programarea canalului DMA (Direct Memory Acces) i a contorului programabil
ce particip la realizarea operaiei de remprosptare a memoriei interne;
97
CAPITOLUL 4
PRINCIPALELE SISTEME DE OPERARE
4.1. GENERALITI
La pornirea calculatorului, este efectuat un autotest care controleaz memoria RAM, ncearc
s identifice fiecare dispozitiv de stocare conectat, i verific dac exist o imprimant conectat la
sistem i starea acesteia (nchis sau deschis). Aceste secvene de instruciuni sunt stocate n BIOS
(Basic Input Output System), ntr-o memorie ROM al crui coninut nu poate fi alterat. Versiunile
mai noi de BIOS-uri au incluse funcii suplimentare, cum ar fi detecia automat a diverselor
dispozitive periferice ce exist n sistem (Plug And Play), autodetecia tipului de hard-disk introdus
n calculator etc. BIOS-ul reprezint interfaa ntre echipamentele hardware ale calculatorului
(resursele de baz ale sistemului: disc, tastatur, display, memorie etc.) i sistemul de operare.
Un sistem de operare este un complex de programe care permite exploatarea unui sistem de
calcul prin intermediul BIOS-ului, asigurnd executarea lanurilor de sarcini ale sistemului.
Sistemul de operare furnizeaz i un set de funcii standard, care pot fi utilizate de aplicaii pentru
comunicarea cu BIOS-ul, i deci implicit cu resursele hardware ale calculatorului. n cursul
utilizrii calculatorului, sistemul de operare are datoria de a informa despre buna funcionare a
dispozitivelor periferice. Sistemul de operare gestioneaz operaiile de intrare i ieire, prin
monitorizarea i controlarea fluxului de date i a programelor n execuie, este responsabil de
alocarea resurselor sistemului, atribuirea de resurse hardware diverselor programe i funcii, pentru
a asigura funcionarea eficient a calculatorului.
Sistemul de operare este cel care determin numrul de utilizatori ce pot obine acces la
calculator i la resursele sale, n acelai timp. Dup numrul de utilizatori ce pot lucra la un moment
dat pe sistem, se pot diferenia sisteme de operare monoutilizator i multiutilizator. Dup numrul
de task-uri, sau programe, pe care le poate rula un utilizator la un moment dat, sistemele de operare
pot fi mprite n sisteme monotasking i multitasking. Sistemul de operare este conceput pentru a
lucra pe o anumit arhitectur hardware. De exemplu, un sistem de operare proiectat pentru un
calculator Macintosh nu va funciona pe un PC compatibil IBM. Astfel, sistemele de operare sunt
dedicate unei anume structuri hardware. Exist i sisteme de operare care funcioneaz pe mai multe
tipuri de platforme hardware (Windows NT, XP sau VISTA pe Intel x86 i DEC Alpha; SUN
Solaris pe Intel x86 sau SPARC; Linux pe x86, SPARC, DEC Alpha, Macintosh; etc.).
Toate sistemele de operare conin o interfa cu utilizatorul, ce reprezint modalitatea prin
care utilizatorul introduce comenzi sau lanseaz aplicaii. Partea exterioar (shell) a sistemului de
operare este cea care preia comenzile de la utilizator, i le transfer ctre nucleul (kernel) sistemului
de operare, care aloc n acel moment un loc n lanul de execuie al sarcinilor din sistem. n funcie
de sistemul de operare, interfaa cu utilizatorul poate fi bazat pe grafic sau poate fi numai n mod
text. Dac nucleul permite accesul la resursele sistemului aparent simultan (prin tehnici de timesharing) pentru mai muli utilizatori, atunci sistemul de operare se numete multitasking. Sistemul
de operare, n aceste caz, comut sarcinile (task-urile) care trebuie executate pe procesor, ndeajuns
de repede pentru a crea senzaia de simultaneitate a execuiei. n caz contrar, pe sistemele
monotasking, nici un alt proces nu poate fi lansat pn la terminarea celui aflat n curs de execuie.
Exemple de sisteme de operare:
MS-DOS este produs de firma Microsoft, pentru platforme x86, este monotasking,
monoutilizator, i are interfaa cu utilizatorul n mod text.
Windows XP sau VISTA produs de firma Microsoft, multitasking, monouser i
multiutilizator, interfa grafic coninut n nucleul sistemului.
Familia UNIX sunt sisteme de operare multitasking, multiutilizator. Interfaa cu
utilizatorul este la baz text, ns toate variantele sunt dotate i cu sistem grafic. Exist
pentru mai toate platformele hardware, n funcie de productor: Linux, SUN Solaris, HPUX (HP), AIX (IBM), IRIX (SGI), DEC Unix, SCO Unix.
100
VMS, OpenVMS produs de firma DEC, multiutilizator, multitasking. VMS-ul are interfa
cu utilizatorul n mod text, OpenVMS-ul n mod grafic.
n concluzie, un calculator funcioneaz datorit sistemului de operare instalat, i anume prin
interaciunea sa cu resursele hardware ale calculatorului.
n cadrul unei interfee bazate pe text, numit mediu alfanumeric, utilizatorul tasteaz
comenzi pentru a da instruciuni calculatorului. Sistemele de operare ale calculatoarelor personale
utilizeaz interfee cu linii de comand, care permit introducerea de la tastatur a unei comenzi la un
moment dat. Linia de comand conine un prompter, care informeaz utilizatorul c sistemul este
pregtit s primeasc comenzi sau instruciuni. Dup fiecare instruciune scris, utilizatorul trebuie
s apese tasta Enter pentru a demara prelucrarea comenzii respective. MS-DOS-ul, care este un
exemplu de sistem de operare n mediu alfanumeric, accept i prelucreaz instruciunile pe baza
unei biblioteci de instruciuni inclus n sistemul de operare. n mod analog, se pot lansa n execuie
i comenzile i programele externe sistemului de operare. Exist i anumite programe de interfaare
cu mouse-ul al sistemului de operare MS-DOS (cum ar fi NORTON COMMANDER), care permit
utilizatorului s lanseze comenzi cu ajutorul mouse-ului.
UNIX-ul este de asemenea un sistem de operare cu o interfa n mod text.
n figura 7.1.a. este prezentat ecranul unei astfel de interfee n mod text, exemplul ales fiind
o linie de comand MS-DOS.
Interfeele grafice au aprut ca urmare a cererii din partea utilizatorilor pentru un mediu uor
de exploatat, i care s aib i posibilitatea afirii unor grafice pe ecran. Primul sistem care utiliza
o interfa grafic a fost sistemul Lisa, care a fost apoi adaptat pentru calculatoare Macintosh. Acest
sistem a suferit numeroase mbuntiri pn n prezent, dar a fost cel care a generat apariia
interfeelor grafice n lumea PC-urilor. Interfaa grafic iniial numit Finder, utiliza mici
pictograme pentru reprezentarea programelor sau comenzilor. Pentru a da o comand sistemului de
operare, utilizatorul indic o pictogram i efectueaz un clic (sau dublu clic) pe mouse. O alt
posibilitate de a da comenzi este efectuarea de selecii din meniuri, aflate ntr-o aplicaie ce se
substitue shell-ului sistemului de operare.
a.
b.
c.
d.
Figura 4.1. Interfaa text a MS DOS; b. interfaa grafic Windows XP;
c. ecran al interfeei grafice CDE; d. ecran al interfeei grafice KDE
Din 1985 a aprut sistemul Microsoft Windows, care nu era un sistem de operare, ci un mediu
grafic pentru MS-DOS. Un mediu grafic reprezint mai puin dect un sistem de operare, deoarece
funcionarea sa se bazeaz pe existena unui asemenea sistem. Din 1995 a lansat Windows 95, care
101
este mai mult dect un mediu de operare, incluznd i funcii ale sistemului MS-DOS n mediul
integrat Windows, lucru preluat i de versiunile ulterioare, pn astzi (fig 4.1.b).
Pentru sistemele Unix, care folosesc medii bazate pe text, au fost create diverse interfee
grafice care se instaleaz peste sistemul de operare. Exist multe tipuri de interfee grafice pentru
aceast familie de sisteme de operare, majoritatea dintre ele fiind grupate sub denumirea generic
de X-Windows. O caracteristic deosebit, a acestor sisteme de interfa grafic, este faptul c
permit executarea unei aplicaii sau comenzi pe un calculator aflat la distan i obinerea
rezultatului grafic pe un terminal local. Un exemplu rspndit pentru Unix-urile de firm (HP-UX,
Ultrix, Solaris, etc.) este CDE. n figura 4.1.c este prezentat un ecran al interfeei grafice CDE
pentru Solaris. Pentru Linux, interfeele grafice sunt numeroase, datorit aspectului academic i
free software al acestui sistem de operare. Fiecare interfa are specificaii proprii, i nu sunt toate
compatibile ntre ele. Cel mai rspndit sistem grafic este fvwm i, n ultimii ani, KDE. Un ecran
al interfeei KDE este prezentat n figura 4.1.d.
4.2. SISTEMUL DE OPERARE MS-DOS
MS-DOS (MicroSoft Disk Operating System) este un sistem de operare monoutilizator,
monotasking, monoprocesor, ce funcioneaz pe microcalculatoarele dotate cu procesoare Intel
8088 i succesoarele acestuia (80286, 80386, 80486, Pentium etc.). Acest sistem de operare a fost
inclus n alte sisteme de operare, cum ar fi: Windows 95/98/Me/NT/2000/XP/2003/Vista/2008 i
Novell NetWare.
Proiectanii sistemului de operare MS-DOS s-au inspirat din sisteme de operare CP/M,
unanim acceptat pe microcalculatoarele pe 8 bii i UNIX.
De la CP/M, MS-DOS a mprumutat ideea independenei fa de echipament, realizat prin
introducerea BIOS-ului (Basic Input Output System), numele unor comenzi (ERASE, DIR, TYPE
etc.), parial modul de organizare a informaiei pe disc etc.
De la UNIX s-a mprumutat structura arborescent a sistemului de fiiere, nlnuirea
unitilor de alocare pe disc ("clusters") ale unui fiier, ideea folosirii propriului interpretor de
comenzi ( Shell ) etc.
Caracteristicile principale ale sistemului de operare MS-DOS sunt :
- lucreaz cu un singur utilizator, rulnd un singur program la un moment dat (sistem de
operare monouser - monotasking );
- proceduri avansate de detecie a erorilor;
- dispozitive de intrare / ieire independente, MS-DOS asignnd un nume de fiier rezervat
fiecrui echipament de intrare / ieire;
- realocabilitatea complet a programelor, fiind posibil rularea aceluiai program de la mai
multe adrese de ncrcare;
- structur de fiiere eficient i rapid;
- contabilizarea datei i timpului.
4.2.1. Structura sistemului de operare MS-DOS
Sistemul de operare MS-DOS este structurat pe trei nivele:
BIOS (Basic Input Output System);
Nucleul;
Shell-ul (COMMAND.COM).
Ultimele dou componente reprezint sistemul de operare propriu-zis i sunt realizate de
firma Microsoft.
n principal, componenta BIOS (componenta fizic) conine un set de programe care asigur:
autotestarea la punerea sub tensiune, operaie denumit POST (Power-On Self Test). n
acest test procesorul se autoverific i apoi verific timer-ul sistemului i memoria RAM.
n acest moment, dac gsete vreo eroare, se trimite un mesaj ctre monitor. Dac se
102
ntlnesc erori ce nu pot fi afiate pe monitor, ele sunt semnalizate sub form de sunete.
Dup POST se transmite un sunet i pe acran apar mesaje de ncrcare a sistemului de
operare odat ce bootstrap a nregistrat terminarea activitilor POST;
suportul software pentru dispozitivele periferice standard n felul acesta izoleaz
sistemul de operare de ceea ce este specific hardware-ului (componenta BIOS conine
codurile apelurilor de sistem pentru citirea i scrierea de la adresele absolute de pe disc,
pentru citirea unui caracter de la tastatur sau pentru afiarea unui caracter pe ecran);
rutina pentru iniializarea sistemului;
programul de ncrcare a primului sector logic de pe discul flexibil sau hard disc.
La pornirea calculatorului se pornete ncrctorul bootstrap care este localizat n cipul BIOS.
Acesta asigur testarea componentelor hardware ale calculatorului i ncrcarea sistemului de
operare n memoria RAM.
Exist dou modaliti de pornire a calculatorului:
Pornirea la rece (cold-boot);
Pornirea la cald (warm-boot), care se realizeaz prin apsarea tastelor Ctrl+Alt+Delete.
Pornirea la rece implic urmtorii pai:
1) Sursa de curent se iniializeaz; chipset-ul plcii de baz ateapt pentru semnalul
Power Good din partea sursei;
2) BIOS ROM procesorul localizeaz programul de boot (iniializare) al BIOS-ului;
3) POST BIOS-ul ruleaz secvena POST. Dac apare vreo eroare major, procesul de boot
se oprete;
4) Video BIOS-ul caut programul BIOS pentru placa video i l execut pentru iniializarea
plcii video;
5) Alte dispozitive BIOS BIOS-ul caut programe BIOS pentru alte echipamente BIOS (hard
disk) i le execut;
6) Ecranul de pornire BIOS-ul afieaz ecranul de pornire;
7) Memoria BIOS-ul testeaz alte componente ale calculatorului i un test de memorie;
8) Hardware BIOS-ul testeaz sistemul pentru a gsi componentele hardware (de exemplu
hard-discuri);
9) Plug and Play Configurarea dispozitivelor Plug and Play;
10) Ecranul de configurare BIOS-ul afieaz un sumar al configuraiei hardware a
sistemului;
11) Discul de boot BIOS-ul caut un disc de boot pe baza secvenei de iniializare;
12) Boot record BIOS-ul caut primul dispozitiv de boot din secven pentru MBR (Master
Boot Record) de pe un disc hard sau VBS (Volume Boot Sector) de pe o dischet floppy;
13) SO BIOS-ul ncepe s iniializeze sistemul de operare, moment n care acesta preia
controlul de la BIOS;
14) Eroare dac BIOS-ul nu gsete un dispozitiv de iniializare n cadrul secvenei de boot,
va afia un mesaj de eroare i va bloca sistemul.
Componenta BIOS este furnizat de constructor i nu de firma Microsoft, fiind localizat n
memoria ROM (Read Only Memory) n blocul de 64 KB, chiar sub limita de 1 MB a spaiului de
adresare. Procedurile BIOS sunt apelate prin intermediul vectorilor de ntreruperi i nu prin apeluri
directe, ceea ce permite constructorilor schimbarea mrimii i a amplasrii procedurilor BIOS.
Fiierul IO.SYS (IBMBIO.COM n versiunile IBM) este un fiier ascuns, care exist n toate
sistemele MS-DOS. Se utilizeaz la iniializarea calculatorului i ofer o interfa cu BIOS-ul
pentru apelurile de proceduri.
Nucleul sistemului de operare poate accesa serviciile BIOS-ului prin intermediul procedurilor
din IO.SYS. Existena acestui fiier permite o izolare mai bun a nucleului de componenta hardware.
De exemplu, nucleul nu trebuie s cunoasc ce vector de ntrerupere corespunde unui serviciu BIOS
dat, aceast informaie fiind regsit prin fiierul IO.SYS.
103
dimensiunea de 512 octei. Capul de citire/scriere al unitii de disc se mic de la o pist la alta n
timp ce discul se rotete, permind astfel capului de citire/scriere s gseasc locul din / n care
trebuie s citeasc sau s scrie.
Fiecare volum logic (o unitate fizic ntreag cum este discul flexibil, sau o partiie hard) este
"vzut" ca o secven continu de sectoare logice, ncepnd cu sectorul logic 0. Discul fix (hard
disk-ul) poate fi mprit n mai multe partiii logice, care pot fi utilizate ca discuri independente.
Orice fiier conine unul sau mai multe sectoare. n sistemul de operare MS-DOS, nu este
necesar ca un fiier s ocupe un spaiu contiguu pe disc (sectoarele fiierului respectiv s fie situate
unul dup altul), gestiunea spaiului pe disc fcndu-se prin intermediul tabelei de alocare a
fiierelor - FAT (File Allocation Table).
Discul este mprtit n 4 zone:
- BOOT - zon n care se gsete programul de ncrcare al sistemului de operare, localizat
n sectorul logic 0 al discului flexibil, sau n sectorul logic 0 al partiiei DOS active,
- DIR - zon n care se gsete directorul rdcin, organizat sub forma unui tabel, fiecare
intrare n tabel (linie din tabel), de 32 de octei, coninnd toate informaiile despre un fiier. De
exemplu, n octeii 0-7 ai intrrii corespunztoare unui fiier se gsete numele (filename) fiierului,
n octeii 8-10 extensia fiierului, n octeii 22-23 timpul la care a fost creat sau modificat ultima
dat fiierul, n octeii 24-25 data crerii sau ultimei modificri a fiierului, n octeii 26-27 numrul
primului cluster al fiierului, n octeii 28-31 dimensiunea fiierului n octei etc. Directorul
rdcin are un numr limitat de intrri, depinznd de tipul discului:
- 112 - pentru discurile flexibile de 320, 360 i 720Kb;
- 224 - pentru discurile flexibile de 1,2 i 1,4Mb;
- 512 - pentru hard disk-uri.
Un subdirector este un fiier care conine o asemenea tabel, cu structura dat mai sus,
numrul de intrri n tabel nefiind limitat.
- FAT - zon n care se gsete tabela de alocare a fiierelor. Pentru siguran, se pstreaz
dou copii ale tabelei de alocare a fiierelor, astfel nct atunci cnd una din tabele este distrus, se
poate folosi cealalt tabel, prevenindu-se pierderea informaiei de pe tot discul, prin distrugerea
informaiei de alocare a discului din FAT.
- FILE - zon n care vor fi plasate fiierele de pe disc. La nceputul acestei zone se gsesc
fiierele sistem IO.SYS i MSDOS.SYS, care ocup i primele dou poziii n directorul rdcin.
MS-DOS mparte spaiul pe disc n uniti de alocare sau cluster-e. Numrul de sectoare
coninute ntr-un cluster depinde de tipul i capacitatea discului magnetic. Orice intrare n director
(n directorul rdcin sau ntr-un subdirector) conine 32 de octei. O intrare n FAT conine 2
octei (FAT16) n cazul discurilor hard i 1,5 octei n cazul discurilor flexibile.
Pentru a specifica complet un fiier, identificatorul de fiier, format din nume i extensie,
trebuie completat cu numele unitii de disc i numele subdirectorului n care se afl fiierul. De
fapt se specific o cale de acces (path), indicndu-se modul de parcurgere al arborelui de
subdirectoare, de la directorul rdcin la subdirectorul n care se gsete fiierul.
Calea de acces se specific prin scrierea numelor de subdirectoare n ordine, desprite de
caracterul "\". Directorul rdcin se specific tot prin caracterul "\".
Numele unitii de disc, pe care se gsete fiierul, poate fi A sau B n cazul discurilor
flexibile, i C sau o alt liter, pentru discul fix sau o partiie logic pe discul fix.
Astfel, identificatorul complet al unui fiier este :
[d:][path]filename[.ext]
unde:
d - este numele unitii de disc pe care se afl fiierul,
path - este calea de acces din directorul rdcin n subdirectorul unde se afl fiierul,
filename - este numele fiierului,
ext - este extensia fiierului.
Elementele din parantez sunt opionale, deci pot s lipseasc. Sistemul de operare MSDOS
ine evidena a dou valori: disc implicit i director curent, care pot fi modificate cu ajutorul
105
comenzilor MS-DOS, i care nlocuiesc primele dou cmpuri din identificatorul complet de fiier,
atunci cnd acestea nu sunt specificate.
Directorul curent este directorul unde MS-DOS caut fiierele al cror identificator de fiier
a fost introdus fr specificarea directorului n care se gsesc fiierele respective. n afar de nume,
extensie, mrime fiier, data i ora ultimei modificri, informaii de regsire a fiierului pe disc etc.,
n intrarea din director corespunztoare unui fiier se memoreaz i atributele fiierului (codificate
n octetul numrul 11 din intrare), care pot fi:
- R - Read only - fiierul nu poate fi dect citit, i nu poate fi modificat sau ters.
- A - Archive - utilizat de comenzile BACKUP, RESTORE, XCOPY, pentru a marca dac
fiierul a fost sau nu procesat de ctre o comand anterioar.
- S - System - precizeaz faptul c fiierul aparine sistemului de operare, i nu trebuie utilizat
n operaii curente.
- H - Hidden - determin neafiarea numelui fiierului la comanda DIR, i face ca fiierul s
nu fie disponibil la comenzile COPY, DEL etc.
Modificarea atributelor unui fiier se poate face cu comanda ATTRIB, care poate modifica
numai primele dou atribute, precum i cu ajutorul interfeelor grafice utilizator NORTON
COMMANDER, XTG, PCSHELL, DOSSHELL.
MS-DOS simplific operaiile de intrare/ieire cu diferite echipamente periferice, asignnd un
nume de fiier rezervat fiecrui echipament de intrare/ieire. Deci, fiecare echipament de intrare/
ieire este "vzut" ca un fiier cu un nume special. De exemplu, fiierul cu numele CON reprezint
consola sistemului (ansamblul tastatur - ecran), fiind posibil afiarea unui text pe ecran prin
scrierea textului respectiv n fiierul text CON, n acelai fel n care se scrie un text n oricare alt
fiier text.
Aceste nume rezervate nu pot fi folosite ca nume de fiier obinuit, ele avnd un neles
special pentru sistemul de operare, care rezerv identificatorii respectivi pentru echipamentele de
intrare/ieire. Acestea sunt :
- CON - pentru consola sistemului;
- AUX sau COM1 - pentru interfaa serial de comunicaie numrul 1;
- COM2, COM3, COM4 - pentru interfeele seriale 2, 3, 4;
- PRN sau LPT1 - pentru prima imprimant (interfa) paralel;
- LPT2, LPT3, LPT4 - pentru interfeele paralele 2, 3, 4;
- NUL - pentru un echipament inexistent (fictiv), folosit de obicei pentru testarea programelor.
4.2.3. Lansarea sistemului de operare
La punerea sub tensiune, se execut instruciunea de la adresa fizic FFFF0H, pentru
sistemele cu microprocesor I8086 (FFFFF0H la I80286, i FFFFFFF0H la I80386 i I80486), unde
se gsete un salt necondiionat n ROM-BIOS-ul calculatorului; acea parte din BIOS-ul sistemului
de operare rezident n memoria ROM a calculatorului. Programul din aceast memorie efectueaz
urmtoarele actiuni:
- scrie i citete toat memoria RAM pentru depistarea eventualelor erori;
- testeaz componentele principale ale sistemului: discurile, tastatura etc.;
- citete microcomutatoarele (switch-urile) la calculatoarele IBM PC/XT, sau memoria CMOS
la celelalte variante de calculatoare IBM, pentru a determina configuraia curent: dimensiunea
memoriei RAM existente n sistem, numrul i tipul unittilor de disc, tipul interfeei grafice etc.
Dup toate aceste operaii, programul din ROM-BIOS ncarc programul ncrctor al
sistemului de operare (secvena BOOT), din sectorul 0, pista 0, faa 0 a primei uniti de disc
flexibil, dac exist un disc sistem n aceast unitate, dac nu ncarcarea secvenei BOOT
realizndu-se din sectorul logic 0 al partiiei DOS active, de pe discul fix. Un disc sistem este un
disc care conine secvena BOOT, mpreun cu cele 3 fiiere care compun sistemul de operare.
106
a.
b.
c.
d.
Figura 4.3. a. Lansarea MS-DOS din Windows 95/98; b. Lansarea MS-DOS din Windows XP;
c. Lansarea MS-DOS din meniul run; d. fereasra prompteru-lui DOS.
1. Se execut clic stnga pe butonul Start din bara de sistem sau apsm combinaia de
taste Ctrl + Esc i ne deplasm cu sgeat n sus i apoi se alege opiunea Shut Down.
2. Selectm butonul radio cu opiunea Restart in MS-DOS mode i apsm OK.
107
- Memoria extins - este zona de memorie situat dincolo de 1Mb, pe care MS-DOS o
folosete pentru anumite scopuri precise: instalarea unui RAM-disc, operaii BIOS etc. Aceast
memorie este folosit n modul protejat al procesoarelor x86 sub sistemele Windows i OS/2.
4.2.5. Procesorul de comenzi
Procesorul de comenzi COMMAND.COM asigur interfaa ntre utilizator i sistemul de
operare, prelund de la tastatur o linie de comand terminat cu caracterul ENTER, pe care o
depune ntr-un buffer intern, n vederea analizei i execuiei comenzii respective.
Primul cuvnt din linia de comand reprezint numele comenzii, i trebuie s fie numele unei
comenzi interne sau numele unui fiier cu extensia EXE, COM sau BAT, urmtoarele cuvinte din
linia de comand fiind parametrii comenzii respective.
Procesorul de comenzi accept, ca parametri n linia de comand, nume generice de fiier. Un
nume generic de fiier este un identificator de fiier care conine caracterele ? i *.
Caracterul ? se echivaleaz cu un singur caracter, n timp ce caracterul * se echivaleaz cu un
ir de caractere. Aceste caractere se folosesc n cadrul numelui (filename) i al extensiei de fiier.
Exemple:
PROG*.* - specific toate fiierele din directorul curent de pe discul implicit, al cror nume
de fiier ncepe cu irul de caractere PROG, continu cu orice ir de caractere, i au orice extensie.
B:FYLE?.C - specific toate fiierele din directorul rdcin al discului B, al cror nume
ncepe cu FYLE, se continu cu orice caracter (dar numai un singur caracter), i care au extensia C.
Caracterele de control acceptate de COMMAND.COM sunt urmtoarele:
CTRL-C sau CTRL-BREAK - ncheie execuia comenzii curente,
CTRL-ALT-DEL - rencarc (relanseaz) sistemul de operare,
CTRL-P - determin trimiterea informaiilor afiate pe ecran i la imprimant, pn cnd este
tastat urmtorul caracter CTRL-P,
F3 - scoate din buffer linia de comand sau restul liniei de comand anterioare,
F1 - scoate din buffer urmtorul caracter al liniei de comand executate anterior,
F2 C - scoate din buffer caracterele liniei de comand anterioare, pn la ntlnirea
caracterului C.
Ultimele trei caractere de control sunt utile atunci cnd s-a greit o comand, nefiind necesar
tastarea din nou a ntregii comenzi.
Tot n cadrul liniei de comand, se mai pot folosi i urmtoarele caractere speciale:
> - redirecteaz ieirea unui program de la ecran (CON) ctre un fiier sau alt dispozitiv de
intrare/ieire. Dac fiierul exista anterior, se va pierde vechiul coninut.
>> - redirecteaz ieirea unui program de la ecran ctre un fiier sau un alt dispozitiv de
intrare/ieire. Dac fiierul exist, noile informaii sunt adugate la sfritul fiierului.
< - redirecteaz intrarea unui program la un fiier sau alt dispozitiv de intrare/ieire, n locul
tastaturii (CON), programul prelund datele de intrare dintr-un fiier i nu de la tastatur.
| - cupleaz ieirea unui program cu intrarea altui program.
Exemple:
DIR A: >FILE - listeaz coninutul directorului rdcin al discului A, dar nu pe ecran, ci n
fiierul text FILE, care poate fi vizualizat ulterior, de exemplu cu comanda TYPE. Vechiul coninut
al fiierului FILE se pierde, dac fiierul FILE exista anterior pe disc.
DIR >> FILE - listeaz coninutul directorului curent de pe discul implicit, adugnd
informaiile la sfritul fiierului FILE, dac acesta exista anterior pe disc.
TYPE FILE.DAT | PROG - programul PROG va prelucra informaiile de ieire ale comenzii
TYPE FILE.DAT, coninutul fiierului text FILE.DAT va reprezenta intrarea programului PROG.
PROG < FILE - programul PROG va prelua datele din fiierul FILE, i nu de la tastatur.
Procesorul de comenzi COMMAND.COM are trei pri:
- partea rezident
- partea temporara
109
- partea de iniializare
Partea rezident se afl permanent n memorie, n zona de nceput a memoriei, deasupra
tabelei vectorilor de ntrerupere. Ea conine codul pentru procesarea comenzilor Ctrl-C i CtrlBreak, codul pentru trararea erorilor i codul pentru ncrcarea prii temporare cnd este necesar.
Partea temporar este cea care recepioneaz comenzi de la tastatur i care conine codul
comenzilor interne. Ea este ncrcat imediat sub limita de 640 kB a memoriei RAM. Dac
programul de aplicaie este mare, el poate s elimine partea temporar a COMMAND.COM din
memorie. n acest caz, la terminarea execuiei programului de aplicaie, partea rezident va
rencrca partea temporar.
Partea de iniializare este ncrcat n memorie numai n timpul procesuIui de ncrcare a
sistemului de operare. Ea conine codul pentru execuia lui AUTOEXEC.BAT. Acest fiier
realizeaz ultima parte a iniializrii MS-DOS-ului. Partea de iniializare este eliminat din memorie
dup ce AUTOEXEC.BAT este apelat.
Procesorul de comenzi COMMAND.COM accept trei tipuri de comenzi:
- comenzi interne
- comenzi externe
- comenzi de tip batch (indirecte)
Comenzile interne (sau intrinseci) sunt cele al cror cod este coninut n COMMAND.COM,
DIR, COPY, REN, DEL sunt exempIe de comenzi interne.
Comenzile externe sunt cele ale cror cod se afl pe disc, sub forma unor fiiere .EXE sau
.COM. Toate programele de aplicaie sunt ncrcate i executate sub form de comenzi externe.
Chiar MS-DOS are n componen programe cum ar fi CHDSK sau FORMAT, care sunt executate
ca i comenzi externe.
Att comenzile interne ct i comenzile externe ncarc programul specificul n zona de
memorie numit TPA (Transient Program Area) i apoi trasfer controlul primei instruciuni din
program. Odat ce execuia programului este terminat, codul aflat n TPA nu mai este valid.
Comenzile de tip batch sau comenzile indirecte se refer la fiiere de tip text (cu extensia
.BAT) care conin mai multe comenzi. Acest fiier este interpretat utiliznd un interpretor din partea
temporar a COMMAND.COM. Interpretorul citete fiecare linie din fiier i apoi execut comanda
corespunzatoare liniei citite.
Cnd o comand este introdus de ctre utilizator, COMMAND.COM ncearc mai nti s
gseasc un program intern cu numele respectiv. Dac detecia intern eueaz, atunci ncearc s
detecteze n calea curent un fiier cu numele respectiv i cu extensia .COM, .EXE sau .BAT (n
aceast ordine). Dac i aceast detecie eueaz, atunci COMMAND.COM afieaz mesajul "Bad
Command or File Name".
Dac un fiier cu numele specificat i extensia .EXE sau .COM este detectat, atunci
COMMAND.COM utilizeaz funcia EXEC a lui MS-DOS pentru a ncrca programul i a-i
transfera controlul. Cnd execuia programului este terminat, partea temporar a
COMMAND.COM este ncrcat din nou iar controlul revine sistemului de operare prin
intermediul COMMAND.COM.
Spre deosebire de sistemele de operare mari, MS-DOS pierde aproape tot controlul sistemului
pe durata execuiei unui program (programul are la dispoziie toate resursele calculatorului),
componente MS-DOS care rmn n control n timpul execuiei unui program sunt rutina de ceas
(care ntrerupe periodic programul aflat n execuie, pentru actualizarea timpului i datei
sistemului) i sistemul de ntreruperi al tastaturii (care permite s a se acioneze combinaia de taste
Ctrl-Break pentru a opri execuia programului i a permite revenirea n sistemul de operare).
4.2.6. Crearea fiierelor de comenzi. Fiierul AUTOEXEC.BAT.
Un fiier lot de lucrri (fiier batch) este un fiier text ce conine una sau mai multe comenzi
DOS, care se execut mpreun. Aceste fiiere de tip batch trebuie s aib extensia BAT. Pentru
executia fiierului batch, se introduce de la tastatur numai numele fiierului, fr extensie.
110
De fiecare dat cnd este lansat sistemul de operare, dup ce se ncarc fiierul
COMMAND.COM, acesta preia controlul i ncearc ncrcarea unui fiier de comenzi, numit
AUTOEXEC.BAT, din directorul rdcin de pe discul din care a fost ncrcat sistemul, fiier care
conine comenzile ce se doresc a fi executate automat, de fiecare dat la lansarea sistemului de
operare.
Avantajele utilizrii programelor batch constau n:
-automatizarea unor procese de prelucrare, sporindu-se astfel viteza de execuie a lucrrilor;
-"personalizarea" comenzilor, realizndu-se atingerea obiectivelor propuse, precum i
proiectarea unor prompter-e i mesaje dorite.
ntr-un fiier de comenzi putem include orice comand MS-DOS (executabil de la prompt),
precum i un set de comenzi gndite special pentru acest tip de fiiere. Comenzile specifice
fiierelor batch sunt:
CALL -apeleaz un alt program batch pe care l lanseaz n execuie;
ECHO -afieaz mesaje pe ecran i suprim la dorin afiarea comenzilor programului batch
ce se execut;
FOR -execut repetat o comand pentru un grup specificat de fiiere;
GOTO -determin executarea unui salt ntr-un punct al programului marcat printr-o etichet;
IF -execut o comand n funcie de ndeplinirea unei condiii;
PAUSE -oprete temporar execuia programului batch; reluarea execuiei se va face prin
aciunea oricrei taste.
REM -permite intorducerea unor comentarii n cadrul programului;
SHIFT -modific valoarea unor parametri n cadrul programului batch.
4.2.7. Comenzile sistemului de operare MS-DOS
Comenzile sistemului de operare MS-DOS se mpart n 6 categorii:
1. Comenzi pentru lucrul cu directori dintre care amintim :
APPEND - permite programelor s deschid fiiere de date dintr-un director oarecare ca i
cum aceste ar face parte din directorul curent.
CD - afieaz sau schimb directorul curent.
DIR - afieaz lista fiierelor i subdirectoarelor unui director.
DELTREE terge o structur de fiiere i directori (sub Windows nu mai este activ).
MD - creaz un director.
PATH - seteaz o cale de cutare pentru fiierele executabile.
RD - terge un director.
TREE - afieaz structura de directoare a unui disc.
2. Comenzi pentru lucrul cu fiiere :
ATTRIB - afieaz sau schimb atributele unui fiier.
BACKUP - salvarea unuia sau mai multor fiiere de pe un disc pe altul.
RESTORE - reface fiiere salvate cu comanda backup.
COMP - compar coninutul a dou fiiere.
COPY - copiere de fiier sau grupuri de fiiere ntr-o alt locaie. Comanda poate fi folosit i
pentru combinarea fiierelor, respectiv concatenarea.
DEL - terge fiierul (fiierele) specifacat.
FASTOPEN - permite localizarea mai rapid a fiierelor, crescnd viteza aplicaiilor ce
lucreaz cu multe fiiere.
FIND - filtru DOS ; caut un ir de caractere ntr-un fiier sau ntr-un grup de fiiere.
MORE - execut o ieire pe monitor afind cte un ecran.
PRINT - depune un fiier text n coada de ateptare la tiprire; fiierul va fi tiprit pe
imprimant cnd i va veni rndul; ntre timp, uitlizatorul poate executa alte comenzi MS-DOS.
111
SHARE - permite partajarea fiierelor ntre mai muli utilizatori, cnd se lucreaz n reea.
SORT - citete o intrare , ordoneaz datele i scrie rezultatele pe ecran sau ntr-un fiier poate
fi folosit ca un filtru nlnuit cu alt comand.
RENAME - schimb numele unui fiier sau unui grup de fiiere.
TYPE - afieaz coninutul unui fiier text.
UNDELETE - Reface fiierele terse cu comanda DEL.
XCOPY - copiaz fiiere i directoare incluznd subdirectoarele acestora.
3. Comenzi pentru lucrul la nivel de discuri :
CHKDSK - afiaz un raport de stare al discului referitor la ocuparea acestuia i la erorile
logice ntlnite n tabela de alocare a fiierelor (FAT)
DISKCOPY - copiaz coninutul unui disc floppy pe un alt disc formatat sau neformatat
DISKCOMP - compar coninutul a dou discuri floppy compararea se face pist cu pist
numrul de sectoare pe pist se determin analiznd primul disc specificat
FDISK - lanseaz programul de configurare a harddiscului n format utilizabil de MS- DOS
FORMAT - formateaz un disc i creaz pe el tabela de alocare a fiierelor (FAT) precum i
directorul rdcin; programul detecteaz i marcheaz unitile de alocare (CLUSTERS),
defecte i poate crea programul ncrctor (BOOT) pentru un disc sistem; el poate copia pe
disc, la cerere, fiierele sistem IO.SYS, MSDOS.SYS i COMMAND.COM.
JOIN - conecteaz o unitate de disc la o cale specificat de pe o alt unitate, crendu-se o
singur structur de directoare pentru cele dou uniti. Unitile nu vor mai fi denumite
astfel prin litere distincte.
LABEL - creaz, schimb sau terge o etichet de volum pe disc.
MSAV program antivirus.
SCANDISK program de verificare a starii discului.
SYS - copiaza fiierele sistem precum i interpretorul de comenzi.
UNFORMAT - reface un disc ters cu o comand FORMAT sau reorganizat cu RECOVER
reface tabela de partiii a unui harddisc.
VERIFY - verific corectitudinea operaiilor de scriere pe disc.
VOL - afieaz eticheta de volum disc i numrul de serie dac exist.
4. Comenzi pentru interfaa cu utilizatorul :
CLS - golire ecran i poziionare cursor n poziia 0,0
HELP - afieaz informaii ajuttoare despre comenzile disponibile ale MS DOS
PROMPT - schimb prompturile MS-DOS de pe linia de comand
5. Comenzi pentru fixarea unor parametrii de lucru :
COMMAND - pune n funciune un nou procesor de comenzi.
DATE - afieaz sau seteaz (schimb) data curent.
KEYB - permite schimbarea modului de afiare a datei i orei curente, a monedelor naionale
precum i schimbarea seturilor de caractere.
MEM - afieaz memoria folosit i cea ramas liber n sistem precum i starea programelor
existente n memorie.
MODE - este utilizat pentru redirectarea imprimantei paralele ctre un port serial.
MSD program de diagnostic (de ntreinere).
RECOVER - recupereaz toate cluster-ele nedistruse ale fiierului specificat i marcheaz
cluster-ele defecte n FAT, pentru a preveni alocarea ulterioar a acestora.
SET - echivaleaz irul de caractere desemnat prin nume, cu irul de caractere desemnat prin
parametru. Aceste echivalri sunt folosite de programele din sistem.
TIME - afieaz timpul sistemului i permite setarea ceasului.
VER - afieaz versiunea MS -DOS folosit.
112
b) Descriere
Fiier simplu ("ordinary file")
Director
Fiier bloc ("block special")
Fiier caracter ("character
special")
Fiier legtur ("link")
Fiier de memorie partajat
("shared memory")
Fiier pipe ("named pipe")
Fiier semafor ("semaphore")
Fiiere caracter (c )
Identific un dispozitiv;
Reprezint caractere de I/O;
Pot identifica porturi seriale, paralele (terminale, imprimante).
Fiiere de legtur simbolic (l)
Sunt fiiere pointer ctre alt fiier existent;
Sunt de regul folosite pentru a oferi un alias altui fiier.
Fiiere de memorie partajat (m)
Permit mai multor programe s acceseze un spaiu comun de memorie;
Folosite de regul de programele de aplicaii.
Fiiere pipe (p)
Folosite pentru a transmite date ntre comenzi sau programe.
Fiiere semafor (s)
Folosite pentru sincronizarea proceselor active concurente;
Folosite de programele de aplicaii.
Fiecare fiier prezint un i-nod care conine urmtoarele informaii:
-proprietarul fiierului (u; d);
-grupul de utilizatori cruia i aparine proprietarul (gid);
-drepturile asupra fiierului;
-tipul fiierului specificat n cadrul i-nod-ului astfel:
d -director
-fiier obiinuit
p -pipe
c -fiier special de tip caracter
b -fiier special de tip bloc etc.
-data crerii;
-data ultimei modificri;
-data ultimului acces;
-lungimea fiierului etc"
Chiar dac pe disc mai exist spaiu disponibil pentru stocarea de date, n momentul n care
toate i-nod-urile au fost utilizate nu se mai pot crea noi fiiere.
Fiierele prezint un nume format din maxim 14 caractere i opional extensie.
Specificarea unui grup de fiiere se poate realiza utiliznd metacaracterele: ? , * (wildcard-uri).
Directoarele sunt vectori de legturi (link-uri). Ele permit asocierea unui nume de fiier la un
i-nod. Structura unui link este:
-bit-ul care prin valoarea 0 sau 1 indic faptul c link-ul este liber sau ocupat;
-numele fiierului;
-i-nod-ul asociat fiierului.
Un director conine cel putin dou link-uri:
a) primul este . care reprezint un link la i-nod-ul directorului nsuii;
b) al doilea este .. care reprezint link-ul la directorul printe.
Fiierele nu sunt incluse n directoare. Directoarele gestioneaz nite pointeri (numrul de inod) spre fiierele propriu-zise, asociindu-le. De aceea, pot lista link-uri multiple la un acelaii inod, n acelaii director sau n directoare diferite.
Operaiile asupra fiierelor impun specificarea numelui de fiier, la nivel fizic, se opereaz
prin i-nod. Astfel, pentru a crea un fiier, trebuie s i se aloce acestuia un i-nod i apoi definit un
link. n urma comenzilor de tergere a fiierelor, se produce de fapt tergerea link-urilor i deci
decrementarea numrului de referin (bit-ul devine 0). n cazul n care fiierul "ters" nu este
deschis de nici un proces n acel moment blocurile sale de date sunt trecute pe lista blocurilor libere.
Spre deosebire de sistemul de operare MS-DOS unde exista un singur director curent, n cazul
UNIX-ului fiecare proces are un director curent.
116
UNIX System V Release 4, cunoscut de regul sub denumirea de SVR4 sau V.4, deriv din
modelul original dezvoltat la Bell Laboratories, cunoscut mai trziu sub numele de UNIX Systems
Laboratory (USL) i vndut apoi ctre SCO (Santa Cruz Operation) i
Berkeley Software Distribution (BSD) versiunea 4.4., variant cunoscut sub denumirea de
4.4 BSD. Exist ns o mare varietate de sisteme de operare UNIX, majoritatea acestora fiind
similare deoarece sunt bazate pe standardul SVR4. Celelalte varieti sunt bazate pe BSD. UNIX a
devenit o marc nregistrat (deinut de The Open Group www.opengroup.org), de aceea fiecare
productor de UNIX i-a ales propriul nume. Spre exemplu, versiunea de UNIX a firmei Sun se
numete Solaris, a firmei IBM se numete AIX iar a firmei Hewlett Packard se intituleaz HP-UX.
n tabelul 4.2. sunt prezentate o serie de implementri UNIX, platformele hardware pe care
acestea activeaz precum i vnztorii produselor. Aceste variante de UNIX sunt concepute s
ruleze pe platformele hardware specifice firmelor care le-au dezvoltat. Unele variante ns ruleaz
pe mai multe platforme hardware; spre exemplu, Solaris ruleaz att pe staii de lucru Sun ct i pe
staii cu microprocesoare Intel i pn la computere de tip mainframe i supercomputere.
Diferite implementri de UNIX
Tabelul 4.2.
Implementarea
UNIX
A/UX
AIX
HP-UX
Linux
NextStep
OSF/1 i Ultrix
SCO OpenServer
Solaris
UNIXWare
Platforma hardware
Macintosh
Staii i mainframe-uri IBM,
RS/6000
Staii HP RISC
Intel x86
Intel 486 sau Pentium, Next
Staii DEC VAX i Alpha
Intel 486 sau Pentium
Staii Sun Sparc i Intel x86
Intel 486 sau Pentium
Vnztor
Apple Computer
IBM
Hewlett-Packard
Corporation
Shareware
Next Computer
Digital Equipment
Santa Cruz Operation
SunSoft
Novell
Ultimul sistem de operare derivat din kernelul UNIX l reprezint Linux-ul, conceput s
ruleze pe microprocesorul Intel de la staii de lucru ieftine (chiar i 386!) pn la servere
performante. Linux-ul a devenit foarte popular printre specialitii entuziati ai computerelor n
necesitatea gsirii unui sistem de operare stabil i ieftin.
4.4. SISTEMUL DE OPERARE LINUX
4.4.1. Arhitectura sistemului de operare Linux
Sistemul de operare Linux a fost dezvoltat ca o versiune distribuit gratuit de UNIX, acesta
fiind unul dintre cele mai utilizate sisteme de operare n lume, mult timp standardul pentru staii de
lucru de nalt performan i servere mari. Pentru c UNIX este un produs comercial, el trebuie
cumprat pentru fiecare platform pe care ruleaz.
Licenele pentru versiunile UNIX pentru PC-uri sunt destul de scumpe i de aceea, n tentativa
de a face UNIX-ul disponibil fr costuri pentru cei care vor s-l experimenteze, un numr
important de sisteme UNIX pentru domeniul public au fost dezvoltate de-a lungul anilor.
Una dintre primele astfel de versiuni ale UNIX-ului a fost Minix, scris de Andrew
Tanenbaum. Cu toate c Minix nu avea un set foarte mare de caracteristici, a fost un mic sistem de
operare ce putea fi folosit pe PC-uri. Pentru a extinde Minix-ul, un numr de programatori au
nceput dezvoltarea unui sistem de operare mai puternic care s profite de avantajele arhitecturii
microprocesorului I 80386. Unul din primii proiectani ai acestui sistem cunoscut ulterior sub
numele de Linux, a fost Linus Torvalds de la Universitatea din Helsinki. El a lansat o prim
versiune a Linux-ului n 1991. O versiune comercial, aproape fr nici un bug, a fost lansat pentru
programatori n martie 1992.
119
Mandriva Linux, fost Mandrake Linux, o alt distribuie uor de utilizat, orientat spre
piaa desktop, creat de compania francez Mandriva.
Debian GNU/Linux, una din distribuiile cele mai vaste de pe Internet, coninnd un numr
uria de pachete. Inventatorii managerului de pachete apt i al pachetelor deb.
Gentoo Linux, o distribuie orientat spre performane i optimizri maxime. Notorie pentru
timpul foarte lung necesar instalrii (majoritatea pachetelor se compileaz i optimizeaz pentru
sistemul pe care se face instalarea - de aici viteza mare a sistemelor Gentoo instalate, nu se copiaz
ca n cazul celorlalte distribuii) i pentru instalarea dificil dar i pentru managerul de pachete i de
sistem foarte avansat (portage).
Slackware Linux, o distribuie axat pe servere, una din cele cu istoria cea mai lung, notorie
pentru moto-ul "Pstreaz-l simplu", ducnd la lipsa multor unelte de configurare simplificat, dar
i la o vitez mare de lucru, posibilitate de a-l instala pe hardware mai vechi, i la o simplitate n
organizarea sistemului.
NimbleX, o distribuie versatil, fabricat in Romania i bazat pe Slackware care ruleaz
direct de pe CD, USB sau chiar i LAN. Partea cea mai atractiv a sa este faptul c, dei este mic,
NimbleX-ul are o interfa grafic puternic i frumoas i o mulime de programe incorporate
pentru navigarea pe Internet, editarea de documente, ascultarea muzicii, rularea filmelor etc.
Knoppix, o distribuie complet care ruleaz direct de pe CD, nu instaleaz absolut nimic pe
hard disk, putnd fi folosit att pentru cltorii sau demonstraii ct i pentru diagnosticri de
sistem, reparri, recuperri de date etc.
Slax, o alt distribuie care ruleaz direct de pe CD, dar de data asta capabil s ncap pe un
flash drive de 256 MB.
Ubuntu, o distribuie orientat spre utilizatorul obinuit, foarte popular prin faptul c este
foarte aerisit, uor de utilizat i configurat, dar n acelai timp puternic i stabil. n prezent
formeaz o ntreag familie de distribuii strns nrudite: Kubuntu (folosete KDE), Xubuntu
(folosete Xfce), Edubuntu (orientat spre educaie).
RedHat Linux - una din cele mai cunoscute distribuii, acum orientat exclusiv spre piaa
serverelor i spre mediul de afaceri. A dat natere proiectului Fedora Core.
PCLinuxOS uur de instalat - ideal pentru nceptori.
Cele mai multe din distribuiile de mai sus pot fi descrcate legal i gratuit de pe siturile
respective. Anumite distribuii vnd manuale, sau seturi complete CD + manuale + suport tehnic +
documentaie aferent.
a.
b.
c.
d.
e.
f.
Fig 4.5. Distribuii Linux, a. Red Hat; b. Debian; c. Mandriva; d. Slackware; e. Ubuntu; f. Kubuntu
121
n Linux fiecare utilizator are un director personal care se numete Home (casa) unde i poate
ine documentele (asemntor lui My Documents din Windows).
a.
b.
Figura 4.6. a. Interfaa grafic GNOME; b. managerul de fiiere Nautilius
Modul de lucru cu Nautilus este asemntor modului de lucru cu Windows Explorer i
prezint cteva particulariti:
fiierele i directoarele pot fi vizualizate ca iconuri sau ca list;
n cazul vizualizrii sub form de list se pot face sortri dup nume, mrime, tip sau
data modificrii;
crearea unui nou director se face cu comanda New Folder din meniul File;
selecia fiierelor se face cu clic sau CTRL+clic;
copierea sau mutarea fiierelor sau a folderelor se face prin metoda clasic (Cut/Copy i
apoi Paste);
nu se poate vedea arborele de directoare ca n Windows Explorer;
dispune de un toolbar asemntor celui din Internet Explorer (cu butoanele Back,
Forward, Up, Stop, Reload, Home), deci funcioneaz ca un browser;
directoarele se deschid implicit prin dublu clic (se poate configura s deschid
directoarele prin clic);
se poate alege dintr-o multitudine de iconuri pentru a reprezenta un tip de fiier;
se pot pune semne de carte la directoare (bookmarks) pentru a uura accesarea lor
(asemntor cu semnele de carte puse paginilor Internet).
Efectund un dublu clic pe iconului Start Here de pe desktop se va deschide tot Nautilus, dar
de data aceasta permite accesul la anumite programe care configureaz interfaa grafic.
n GNOME exist meniuri locale. Printr-un clic dreapta ntr-o zon liber de pe desktop se
deschide un meniu care permite printre altele:
simplificarea accesului la discheta sau CD-ROM (n Linux este mai dificil de accesat
aceste periferice deoarece ele trebuie, n prealabil montate folosind o comand special);
crearea unui shortcut folosind comanda New Launcher din meniul local.
n rubrica Name se specific numele shortcut-ului, programul care va fi lansat n execuie se
scrie n rubrica Command sau se alege folosind butonul Browse.
Iconul shortcut-ului se alege dintr-o multitudine de iconuri folosind butonul No Icon.
Taskbar-ul (Panel) are acelai rol ca taskbar-ul din Windows i conine elementele:
icon pentru accesarea meniului principal (palarie roie) -echivalentul butonului Start din
Windows;
un toolbar asemntor lui Quick Launch din Windows care conine:
-shortcut ctre browser-ul de Internet implicit (Mozilla) - Echivalentul lui Internet
Explorer;
-shortcut ctre programul de e-mail implicit (Ximian Evolution) echivalentul lui
Outlook Express;
-shortcut ctre procesorul de texte din suita Open Office.org echivalentul lui
Microsoft Word;
123
-shortcut ctre programul de prezentri din suita Open Office.org echivalentul lui
Microsoft Power Point;
-shortcut ctre programul de calcul tabelar din suita Open Office.org echivalentul lui
Microsoft Excel;
-shortcut catre programul Print Manager;
cele patru ecrane virtuale;
zona n care apar numele programelor care se execut;
data i ora.
Implicit sunt patru ecranele virtuale i sunt aezate n dou grupuri de cte dou (numerotarea
se face de la stnga la dreapta i de sus n jos). Dac butonul corespunzator primului ecran virtual
este apsat, nseamn c este n prim plan. Numai un singur ecran virtual poate fi n prim plan la un
moment dat. Meniul local corespunztor taskbar-ului se deschide (clic dreapta ntr-o zon liber) i
permite: adaugarea de noi shortcut-uri (Add to Panel) i modificarea proprietilor (Properties) :
-stabilirea poziiei pe ecran (sus, jos, stanga, dreapta);
-stabilirea mrimii iconurilor;
-activarea autoascunderii;
-stabilirea culorilor i a transparenei.
Meniul principal (Main Menu) permite lansarea n execuie a tuturor programelor instalate
n interfaa gratic GNOME (nu toate programele instalate n GNOME pot fi lansate n execuie din
KDE i invers). Fiind vorba de interfee grafice diferite, programele sunt scrise ori pentru a
funciona din GNOME ori pentru a funciona din KDE.
Programele sunt organizate n grupuri, la fel ca n Windows. Diferena const n numele i
numruI grupurilor i al programelor. Dac n Windows exist numai cteva grupe de programe
(Accesories, Games, StartUp), n fiecare din cele dou interfee grafice din Linux Red Hat se poate
spune c s-a fcut risip de programe (adic sunt oferite programe - gratuit).
Grupurile de programe din GNOME sunt:
Accessories: conine diferite programe de interes general;
Games;
Graphics: programe pentru grafic;
Internet: utilitare necesare lucrului n Internet;
Office: conine suite de birou gen Microsoft Office;
Preferences: permite configurarea interfeei grafice;
Programming: instrumente pentru programatori;
Sound & Video: utilitare multimedia;
System Settings: permite configurarea sistemului de operare ;
System Tools: diferite instrumente necesare lucrului cu sistemul de operare.
Pe lng grupuri de programe, in Main Menu se gsesc i programe, ca:
Help: deschide browser-ul numit help care permite rsfoirea documentaiei;
Home Folder: are acelai rol ca iconul root's Home de pe desktop (deschide Nautilus);
Network Servers: permite accesarea serverelor din reea;
Run Program... : lansarea n execuie a unui program, identic cu RUN din
Windows.
Search for Files : are acelai nume n Windows XP i se numete Find Files n Windows.
Interfea grafic KDE
Dup ce s-a realizat autentificarea prin introducerea corect a numelui de utilizator i a
parolei, primul ecran al interfeei grafice KDE care va aprea va fi Desktop-ul (fig. 4.7.a.). Acesta
este mpri n dou zone. Prima, si cea mai mare, este spaiul de lucru, un spaiu virtual unde i de
unde se pot accesa i scrie fiiere, aplicaii, etc. n acest spaiu se gsesc iniial cinci pictograme:
Start Here, Home, Floppy, CD/DVD-Rom i Trash.
Efectund dublu clic pe pictograma Start Here, se lanseaz n execuie aplicaia Konqueror,
(fig. 4.7.b.).
124
a.
b.
Fig. 4.7. a. Interfaa grafic KDE; b. Directorul virtual Start-Here.
Managerul de fiiere permite accesul imediat la anumite aplicaii (Applications), configurri
(Preferences), setri ale serverului sau setri ale sistemului (Server Settings, respectiv System
Settings) prin intermediul zonei din dreapta. n zona din stnga acestei ferestre, conform
preferinelor proprii, se acceseaz la directoarele existente pe disc, sau se pot audia sau viziona un
fiier media, accesa reeaua LAN sau Internet-ul, etc., accesul la aceste faciliti fcndu-se prin
intermediul pictogramelor laterale aflate in extremitatea stng a ferestrei.
Accesnd pictograma Home de pe spaiul de lucru, o fereastr a aceluiai browser, Konqueror,
se va deschide, afind coninutul directorului utilizatorului curent, n cazul de fa, numele
utilizatorului fiind Home (fig.4.8.a.)
a.
b.
c.
Fig. 4.8. a. Konqueror utilizat ca manager de fiiere; b. Opiunile meniului K Menu;
c. Spaiul Panel al interfeei KDE (Zona de control a spaiilor de lucru)
Pictograma Thrash este utilizat pentru a accesa directorul n care sunt stocate fiierele i
directoarele care au fost terse. Este permis restaurarea acestor fiiere i directoare sau tergerea
lor permanent de pe disc.
A doua zon, cunoscut ca i panoul (panel), ce conine mai multe zone cu pictograme:
125
comand i s memoreze sintaxa comenzilor deoarece acestea sunt afiate sub form de opiuni pe
ecranul monitorului. Totodat, interfaa dintre utilizator i calculator este mai prietenoas, deoarece
utilizatorul nu mai trebuie s scrie multe comenzi, atenia sa fiind concentrat permanent la ce se
ntmpl pe ecranul monitorului. Avantajele au fcut ca sistemul de operare MS-DOS s fie nlocuit
treptat cu sistemul de operare Windows.
Deschiztor de drumuri a fost firma Macintosh care n 1984 a introdus n lumea PC-urilor
conceptul GUI (Graphical User Interface) prin intermediul creia comunicarea utilizator-calculator
a devenit mai prietenoas. Firma Microsoft preia i dezvolt conceptul GUI i n anul 1985 apare pe
pia sistemul Windows 1.0.
Numele de Windows (ferestre) vine de la faptul c fiecare program se execut ntr-o fereastr
distinct. Fereastra este o zon de form dreptunghiular ce apare pe ecran. Pe suprafaa ecranului
pot exista mai multe ferestre, fiecare fereastr corespunznd unui anumit program.
Windows reprezint un sistem de programe i comenzi conceput i dezvoltat pe un mediu de
interfa grafic de utilizator (GUI Graphical User Interface) care se pot selecta, instala i executa
pe calculatoare personale, n funcie de configuraiile hardware disponibile i de cerinele
utilizatorilor.
Simbolurile grafice (denumite pictograme) sunt mici desene sugestive ale unor elemente cu
care opereaz sistemul Windows, nsoite de un text explicativ afiat sub desene. Alturi de
pictograme, Windows include i alte forme de prezentare grafic: butoane, casete de dialog, bare de
navigare.
De la prima versiune denumit Windows 1.0 (1985), s-a ajuns astzi la utilizarea curent a
interfeelor Windows 95/98, Windows 2000, Windows Millenium, Windows XP, Windows 2003,
Windows Vista i Windows 2008.
4.5.1. Interfaa grafic Windows
Interfaa grafic Windows ncepnd cu Windows 95, pune la dispoziia utilizatorului un
mod specific de aranjare, vizualizare i activare a programelor. Pentru familiarizarea cu acest mod
de operare, se vor prezenta conceptele de baz cu care se opereaz: Fereastr, Meniu, Caset de
dialog, Buton, Desktop, Pictogram, Clipboard.
Fereastra este conceptul central al aplicaiilor Windows. Fiecare aplicaie Windows are
asociat o fereastr. Fereastra este o suprafa dreptunghiular care individualizeaz activitatea
curent desfurat de calculator ca urmare a unei comenzi sau a unui program lansat de operator.
Exist mai multe tipuri de ferestre:
de navigare, prin intermediul crora se pot investiga un grup de aplicaii, cum este de
exemplu fereastra asociat pictogramei My Computer;
de aplicaie, specifice programelor executabile;
document, ferestre de lucru utilizate pentru crearea unui document, de exemplu n
Word sau a unei foi de calcul n Excel; ele apar n interiorul ferestrei de aplicaii;
de dialog, cum este fereastra Run din meniul butonului Start, ferestre utile pentru
introducerea unor informaii de control necesare executrii unor aplicaii.
O fereastr afiat pe ecran conine o serie de elemente standard prin intermediul crora sunt
posibile o serie de operaii:
deplasarea unei ferestre pe spaiul de lucru;
redimensionare readucerea ferestrei la dimensiunile iniiale;
minimizare ascunderea temporar a ferestrei i plasarea pictogramei asociate pe bara
de taskuri sau pe linia de stare;
maximizare afiarea ferestrei la dimensiunile maxime ale ecranului;
defilarea coninutului ferestrei n plan vertical sau orizontal;
nchiderea ferestrei i implicit a aplicaiei.
n fig. 4.9. este prezentat o fereastr Windows i elementele constitutive ale acesteia.
127
2. bara de titlu care permite mutarea ferestrei ntr-o alt poziie pe spaiul de lucru; Bara de
titlu conine numele ferestrei n partea stng i cele trei butoane de lucru (minimizare, maximizare,
nchidere) n partea dreapt.
3. butonul de minimizare;
4. butonul de maximizare
, respectiv restaurare
;
5. butonul de nchidere Close
6. meniul principal;
7. toolbar (bara cu instrumente) conine un set de pictograme pentru cele mai uzuale comenzi
folosite pe durata sesiunii de lucru cu un anumit program i nlocuiete utilizarea tastelor
funcionale, a combinaiilor de taste hot keys sau short cuts.
Bara de instrumente poate fi vizualizat i completat cu seturi suplimentare de pictograme
fa de cele standard, seturi asociate unor proceduri de operare complexe; seturile de pictograme
sunt extrase dintr-o bibliotec proprie fiecrui program; opional, utilizatorul poate s-i insereze
prin tehnica click & drag diverse pictograme pentru anumite comenzi apelnd la meniul Tools,
opiunea Customize, pentru a-i personaliza bara de lucru;
8. bara de defilare;
9. bara de stare;
10. col pentru redimensionarea ferestrei.
128
a.
b.
Fig. 4.10. a. Meniuri orizontale i verticale; b. Caset de dialog cu butoane
Casetele de dialog nsoesc comenzile care intr n meniu i sunt urmate de trei puncte de
suspensie; exist mai multe tipuri de casete de dialog grupate astfel:
casete de text;
casete cu liste;
casete cu opiuni exclusive;
129
casete de validare;
casete cu pagini de opiuni.
Casetele de text se utilizeaz atunci cnd utilizatorul introduce explicit de la tastatur o
comand sau parametrii comenzii sub forma unui ir de caractere. Un exemplu l constituie caseta
comenzii Run din meniul butonului Start.
Selecia unei opiuni se face cu un clic pe caseta cu liste. Dac lista conine un numr de
opiuni care nu ncap n chenarul casetei sunt puse la dispoziie butoanele de defilare pentru
parcurgerea listei nainte sau napoi (listele se mai numesc i liste derulante). Derularea unei liste se
poate face i acionnd butonul Browse pentru rsfoirea listei, existnd opiuni asemntoare celor
utilizate de programul Explorer sau pachetul de programe Norton. Casetele cu opiuni exclusive
conin opiuni care se exclud reciproc; n consecin, se va marca cu un clic punctul din stnga
opiunii dorite.
Spre deosebire de casetele cu opiuni exclusive, casetele de validare conin un set de opiuni
din care pot fi active la un moment dat mai multe, toate, sau nici una dintre ele. Opiunile selectate
i deci active, sunt marcate cu o bif de selectare n partea stng.
Windows i programele care ruleaz sub Windows pot afia pe ecran un grup de mai multe
pagini de opiuni suprapuse. Fiecare pagin are o etichet n partea superioar cu numele paginii,
dar la un moment dat numai o singur pagin este activ (cea afiat prima pe ecran). Cu un clic pe
eticheta unei alte pagini, pagina curent este nlocuit cu pagina selectat ce devine pagina activ.
Butoanele au form dreptunghiular ncadrate de un chenar, avnd n interior un text
autoexplicativ. Butoanele pot fi acionate cu un clic, Enter sau tasta Space.
Exist urmtoarele tipuri de butoane:
butoane de comand, care declaneaz execuia operaiei selectate;
butoane de opiuni care permit selectarea modului de continuare a procesului de
prelucrare i sunt:
butoane radio;
butoane de marcare sau de validare (check).
Clipboard-ul este o zon de memorie RAM ce permite transferul de informaii, secvene de
text, imagini grafice, poriuni i chiar un ecran ntreg de la o aplicaie la alta sau de la un document
la altul n cadrul aceleai aplicaii, constituindu-se ca una din facilitile prelucrrii multitasking.
Informaiile sunt plasate automat n Clipboard atunci cnd se execut comenzile Copy, Cut sau s-a
acionat tasta PrtScr. Inserarea informaiilor aflate n zona Clipboard ntr-un alt text se realizeaz
prin comanda Paste. Comenzile Edit, Cut, Paste se afl n meniul Edit al programelor sub Windows.
Pictograma (Icon) este un mic desen simbolic asociat unui obiect Windows, obiect ce poate fi
o component hardware, un director, un fiier, un program executabil, un grup de programe sau de
fiiere; desenul este nsoit i de un text, care denumete pictograma respectiv.
Exist patru tipuri de pictograme:
program;
fiier/director;
calculator;
component hardware.
Executnd un dublu clic pe o pictogram de program, programul va fi ncrcat n memoria
RAM i lansat n execuie; dac se acioneaz cu un clic pe o pictogram de director, pe ecran se va
afia cuprinsul directorului respectiv. Un clic pe pictograma unui fiier echivaleaz cu comanda de
lansare n execuie a aplicaiei asociate fiierului.
4.5.2. Sesiunea de lucru Windows
Prin sesiune de lucru se nelege perioada de timp n care un utilizator se gsete n dialog cu
sistemul de calcul pe durata unei aplicaii. Sesiunea de lucru poate fi considerat i perioada de timp
n care un utilizator folosete individual un calculator care este conectat la o reea. Pentru a deschide
o sesiune de lucru se pornete calculatorul. Sistemul execut automat procedura de autotestare a
130
a.
b.
Fig. 4.12. a. Meniul Start cu principale opiuni ;
b. Meniul Programs cu opiunile structurate n cascad
Prin executarea unui singur clic pe pictograma butonului Start, pe suprafaa de lucru se
afieaz meniul Start (fig. 4.12.a.)
Opiunile meniului Start sunt urmtoarele:
Programs/All programs;
Documents/My Recent Documents;
Settings;
Find/Search;
Help and Support;
Run;
132
Log Off
Turn Off Computer
Opiunile Programs, Documents, Settings i Find/Search sunt organizate structural sub form
de meniu tip cascad, astfel c prin marcarea i glisarea la dreapta cu mouse-ul, se poate trece la
opiunile situate pe alte niveluri ierarhice.
Opiunea Programs afieaz grupurile de programe care pot fi lansate n execuie. n opiunea
Programs, grupurile de programe se afieaz ca pictograme de directoare, iar programele se afieaz
cu pictogramele specifice. Din caseta cu opiuni, utilizatorul poate lansa n execuie orice program
existent n calculator. De exemplu, dac utilizatorul dorete s lanseze n execuie programul Media
Player (fig. 4.12.b.) va proceda astfel:
un clic pe butonul Start;
se poziioneaz indicatorul mouse-ului succesiv pe opiunile Programs, Accessories,
Entrertainment i Media Player;
un clic pe Media Player, dup care pe ecranul monitorului va apare fereastra de dialog
Media Player.
Cu opiunea Documents, utilizatorul poate regsi rapid documentele recent folosite; dup
activarea opiunii, din lista afiat se va selecta numele documentului care dorete s se deschid.
Deschiderea documentului selectat va fi precedat de lansarea automat n execuie a
programului folosit pentru prelucrarea lui. De exemplu, dac documentul a fost prelucrat cu
procesorul de texte Word, atunci va fi lansat n execuie procesorul de texte Word i apoi deschis
documentul respectiv.
Din opiunea Settings utilizatorul poate s stabileasc condiiile de lucru pentru folosirea
resurselor sistemului n funcie de cerine.
Astfel, cu Control Panel se poate efectua configurarea sau reconfigurarea sistemului, prin
adugarea i eliminarea unor componente hardware (cu Add New Hardware) i software (cu
Add/Remove Programs).
Cu opiunea Find/Search se poate cuta i localiza rapid orice fiier existent pe disc, fr a
cunoate unde se gsete i numele exact: din lista afiat se va alege File or Folders dup care
utilizatorul este ateptat s introduc numele fiierului sau o parte din nume.
Opiunea Help permite utilizatorului s foloseasc sistemul de asisten software care poate fi
rsfoit dup trei criterii de clasificare:
Contents, Index i Find; Contents prezint domeniile mari de informaii (topics-uri), Index
clasific informaiile n ordine alfabetic, iar Find permite cutarea de informaii n acces direct,
prin specificarea termenului sau operaiei pentru care se solicit explicaii.
Cu opiunea Run utilizatorul poate s lanseze imediat n execuie programe specificnd
numele programului n caseta afiat, sau numele unor documente care dorete s le deschid.
Utilizatorul are posibilitatea s adauge sau s elimine programe n cascad arborescent a
meniului butonului Start.
Bara de taskuri plasat iniial n partea de jos a ecranului i conine pe lng butonul Start:
pictogramele programelor folosite frecvent (se pot activa ulterior cu un simplu clic)
programele ale cror ferestre au fost minimizate temporar n timpul sesiunii de lucru;
totodat, se poate comuta de la un program aflat pe bara de taskuri, la alt program.
ora exact i butonul de control al volumului plcii de sunet
Proprietile barei de taskuri pot fi modificate astfel nct acesta s fie: afiat permanent sau
ascuns (hidden), dar poate fi afiat poziionnd indicatorul mouse-ului pe marginea de jos a
suprafeei de lucru sau apsnd combinaia de taste Ctrl + Esc;
De asemenea, bara de taskuri poate fi redimensionat prin mrirea nlimii, trgnd n sus de
marginea superioar cu mouse-ul i poziionat cu ajutorul mouse-ul n orice parte a ecranului.
Orice program aflat n execuie i orice document deschis se afieaz cu butonul propriu pe
bara de lucru (fig. 4.13.). Ele pot fi activate cu un clic, fereastra acestuia fiind afiat pe suprafaa
de lucru ca fereastr curent. La rndul ei, orice fereastr poate fi minimizat executnd un clic pe
butonul de minimizare sau nchis cu un clic pe butonul de nchidere.
133
a.
b.
Fig. 4.14. a.. Fereastra de dialog Run; b. Fereastra Windows Explorer
nchiderea unui program i cedarea controlului sistemului de operare se face fie printr-un clic
pe butonul de nchidere al ferestrei, fie apelnd comanda Exit disponibil n meniul File al fiecrui
program, respectiv comanda Close din meniul sistem asociat ferestrei.
Windows Explorer poate fi considerat programul utilitar cel mai folosit pentru managementul
fiierelor i a directoarelor.
Pentru lansarea n execuie a programului utilitar Windows Explorer se poate proceda n mai
multe moduri:
executnd un clic pe pictograma Windows Explorer afiat pe bara de scurtturi
(Quick Launch) pe bara de taskuri n dreapta meniului Start;
deschiznd meniul Start, selectnd Programs, apoi Windows Explorer, dac bara de
scurtturi nu este creat;
folosind My Computer pentru a avea acces pe discul si calea unde se gsete fiierul
executabil corespunztor (C>:\Windows\ Explorer.exe)
Dup lansarea n execuie, se afieaz fereastra Windows Explorer (fig. 4.14.b.), care
asemntor oricrei ferestre de aplicaie, conine bara de titlu, bara de meniuri, bara cu instrumente
de lucru i bara de stare.
134
Caracteristica esenial a ferestrei Windows Explorer este divizarea n dou panouri (stnga i
dreapta).
Panoul din stnga permite:
prezentarea schematic a unitilor de discuri i directoarele de pe suprafaa de lucru,
existente n calculator sau n alte calculatoare (dac se lucreaz n reea) i deplasarea
(navigarea) rapid prin structura de directoare;
afiarea unei imagini a structurii directoarelor;
copierea sau mutarea de documente prin alunecare i fixare.
n panoul din stnga, toate obiectele existente pe suprafaa de lucru sunt afiate cu pictograma
specific i cu numele corespunztor.
Unele obiecte au n faa pictogramei semnul + sau semnul . Semnul + (plus) menioneaz c
obiectul respectiv este afiat sub form restrns, coninnd cel puin un director, iar semnul
(minus) arat c obiectul este afiat sub form expandat. Executnd un clic pe semnul +, obiectul
se va afia expandat, iar cu un clic pe semnul , obiectul se va afia sub form restrns.
Panoul din dreapta este cel mai folosit pentru efectuarea de operaii obinuite cu documente:
copiere, deschidere, tergere i alte operaii. n acest panou sunt afiate n detaliu dosarele care au
fost selectate n panoul din stnga.
n panoul din dreapta se afieaz n detaliu coninutul directorului selectat n panoul din
stnga; coninutul poate fi afiat cu pictograme mici sau mari sau ca o list simpl sau detaliat, n
funcie de pictograma selectat pe bara de unelte de lucru dintre ultimele patru pictograme. De
asemenea, n acest panou se pot executa i alte operaii
folosind celelalte pictograme sau opiunile din bara de meniuri (File, Edit, View, Tools, Help).
Dac numrul obiectelor existente pe suprafaa de lucru este mai mare dect spaiul de afiare
(pe vertical) disponibil pe panou sau dac limea panoului nu este suficient de mare pentru
afiarea n ntregime a structurii sau coninutului unui director selectat, atunci pe panoul respectiv
apar automat barele de derulare (pe vertical sau orizontal) cu cele dou butoane de derulare;
pentru a vizualiza n ntregime coninutul unui panou, se fixeaz indicatorul mouse-ului pe unul din
cele dou butoane de derulare i executnd clic pe butonul din stnga, se poate deplasa coninutul
panoului cu cte un rnd sau o coloan n direcia respectiv; deplasarea se poate face i prin fixarea
indicatorului mouse-ului pe bara de derulare, executnd clic pe butonul din stnga i trgnd
mouse-ul n direcia dorit.
Suprafaa de afiare a celor dou panouri se poate modifica, mrind sau micornd limea
unui panou fa de cellalt panou. n acest scop, pe bara vertical care separ cele dou panouri se
fixeaz indicatorul mouse-ului, se ateapt pn cnd acesta se transform ntr-o sgeat dubl, se
apas butonul din stnga i inndu-l apsat se trage
mouse-ul n direcia dorit; dup ce s-a obinut suprafaa de afiare n mrimea dorit, se
elibereaz butonul mouse-ului.
Bara de meniuri conine alturi de elementele de meniu comune tuturor ferestrelor i elemente
specifice:
trecerea direct la un alt director;
schimbarea directorului curent cu cel de origine;
determinarea unui disc sau un director din reea s se comporte ca i cum ar fi local;
operaii de decupare, copiere, respectiv de adugare a unui document sau director;
anularea ultimei operaii efectuate;
tergerea obiectului selectat;
afiarea ferestrei cu proprietile obiectului selectat;
execuia comenzilor de sortare i afiare documente din fereastr (afiare cu
pictograme mari sau mici, afiare sub form de list simpl, respectiv afiare sub
form de list detaliat).
Bara de stare situat n partea de jos a celor dou ferestre, furnizeaz informaii despre
numrul obiectelor selectate (directoare, fiiere), spaiul de memorie pe disc ocupat de obiecte i
spaiul de memorie disponibil.
135
a.
b.
Fig. 4.15. a. Interfaa Windows XP; b. Proprietile barei de stare i ale meniului Start
Interfaa specific Windows XP poate fi schimbat cu interfaa clasic Windows din caseta de
proprieti a meniului Start i din pagina Display properties din Control Panel.
Configuraia directoarelor se face din Control Panel cu noi opiuni, spre deosebire de
versiunile anterioare n care setrile se fceau prin intermediul Windows Explorer. Tot n Control
Panel (fig. 4.16.a.) a fost introdus rubrica Scanners and Cameras ce confirm orientarea Windows
XP spre partea de multimedia.
Scanerele i camerele video sunt mai uor de instalat sub Windows XP i se pot configura
astfel nct s lanseze anumite programe specificate de utilizator cnd se scaneaz o imagine.
Windows XP suport ultimele standarde n materie de echipamente hardware.
Windows XP prezint o serie de nouti n legate de multimedia. Astfel, Media Player
prezint o serie de caracteristici noi, avnd integrat un sistem de cutare a fiierelor n tot PC-ul, cu
posibilitatea de a selecta anumite fiiere (de muzic sau filme) fr a le mai deschide unul cte unul
sau director cu director. Design-ul este mult mbuntit permind alegerea unor skin-uri, dar i a
unor vizualizri mai interesante. Suportul pentru skin-uri a fost mbuntit, adugndu-i-se codecuri noi (dei nc nu poate reda nici un format Real Media) i un egalizator cu diverse module de
vizualizare, apropiindu-se din acest punct de vedere de player-ele cu mai mare impact pe pia
(WinAmp sau Sonique). Dar aspectul cel mai important este posibilitatea de a face CD ripping n
format WMF (Windows Media Format). Fiierele obinute sunt n general cu 3-5 % mai mici dect
cele n format MP3, la aproximativ aceeai calitate.
Internet Explorer 6 este inclus n Windows XP n ciuda procesului anti-trust n care unul din
capetele de acuzare era interconectarea dintre browser-ul Internet i sistemul de operare. Ultima
versiune conine numeroase elemente care ar aduga un plus de eficien paginilor Web, dac
designerii se vor decide s utilizeze instruciunile HTML suplimentare. O alt opiune util este
posibilitatea de a face o vizualizare a paginilor Web nainte de imprimare. Aceast vizualizare, nu
funcioneaz prea bine cu paginile ce conin elemente de Java Script.
137
Tehnologia IntelliSense ncorporat n Internet Explorer salveaz timp prin efectuarea unor
operaii de rutin n mod automat, cum ar fi: completarea adresei de Web i a formularelor n locul
utilizatorului, detectarea automat a strii reelei i a conectrii.
a.
b.
Fig. 4.16. a. Control Panel n Windows XP; b. System Restore din Windows XP
Cnd se scrie o adres de Web (n Address bar) folosit frecvent, este pus la dispoziie o list
de adrese similare din care se poate alege adresa dorit. Dac o adres a unei pagini de Web este
greit, Internet Explorer caut o adres similar, ncercnd s gseasc adresa corect.
Folosind Content Advisor, se poate selecta ca anumite elemente ale paginilor de Web s nu
poat fi vizionate folosind caracteristicile paginii selectate, caracteristici care au fost definite de
Comitetul PICS (Platform for Internet Content Selection). Folosind zonele de securitate, se pot
defini anumite niveluri de securitate pentru diferite arii de Web pentru a mri protecia PC-ului.
Dac se viziteaz un site de pe Web care a fost scris n mai multe limbi, Internet Explorer
ncrca automat setul de caractere necesar pentru ca respectiva pagin de Web s poat fi vizionat
corect n respectiva limb ce a fost solicitat.
Microsoft Windows poate actualiza PC-ul n mod automat, prin cutarea ultimelor nouti
referitoare la pachetele i componentele sale, fr perceperea unor taxe suplimentare. Windows
determin care actualizri sunt necesare sistemului pe care este instalat i informeaz prompt de
fiecare dat cnd o astfel de actualizare devine accesibil.
Actualizarea automat are loc doar dac PC-ul este conectat la Internet i dac Windows-ul a
fost nregistrat la Microsoft. Pentru aceast operaie, se va selecta din meniul Start, opiunea
Settings, urmat de Control Panel, de unde se lanseaz fereastra de dialog System, n care exist
Automatic Updates.
n ceea ce privete stabilitatea, Windows XP este cel mai stabil sistem de operare din familia
Windows, cderile de sistem fiind mult mai rare i erorile mult mai puin criptice. ns metodele
folosite pentru obinerea unui plus de stabilitate las de dorit i i au dezavantajele lor.
n primul rnd, Microsoft a rupt definitiv legturile cu trecutul i a eliminat MS-DOS din
Windows. Se mai poate nc intra n modul linie de comand, ns nu se mai poate iniializa PC-ul
n mod MS-DOS doar folosind Emergency Boot Disk, metod care nu las suficient memorie
liber pentru rescrierea BIOS-ului sau alte astfel de operaii care necesit rularea doar din linia de
comand.
n plus, Windows XP nu permite ca o aplicaie s scrie ceva n fiierul Autoexec.bat sau alte
fiiere mai vechi de sistem; cnd se ntmpl acest lucru, nlocuiete coninutul cu propriile sale
instruciuni considerate mai sigure. Astfel, driverele de MS-DOS nu mai funcioneaz cum trebuie,
iar unele jocuri sau programe de MS-DOS nu merg dect n fereastr.
Opiunea System Files Protection este una dintre noile modaliti de prevenire a cderilor
sistemului, prin plasarea unor restricii software n ceea ce privete suprascrierea DLL-urilor
Windows-ului sau a altor fiiere de sistem de importan vital. Cnd un program reuete totui s
suprascrie un fiier de sistem, modulul de protecie care funcioneaz n background, va nlocui
fiierul cu cel din CAB-urile Windows-ului. Singurul dezavantaj este un spaiu ocupat de sistemul
de operare pe disc mai mare.
138
Cea mai important opiune preluat din Windows 2000 este System Restore care face un
backup al fiierelor din sistem n mod automat la fiecare 10 ore de funcionare sau la cererea
utilizatorului (fig. 4.16.b.). Dac prin instalarea unui nou hardware a unui nou program Windows
XP sau o alt aplicaie ce a fost instalat n prealabil funcioneaz precar, System Restore poate
ajuta la rezolvarea acestei probleme pri restaurarea PC-ului la o stare de funcionare anterioar
declanrii problemei. n acelai timp cu ndeprtarea problemei n cauz, sunt protejate toate
fiierele create pe perioada cuprins ntre momentul de restaurare i momentul apariiei problemei.
Pstrarea evidenei se realizeaz prin intermediul unor salvri ale informaiilor eseniale, denumite
puncte de restaurare (restore points) sau puncte de verificare (checkpoints).
Uneori se pot terge accidental sau pot fi corupte fiiere vitale pentru funcionarea unor
programe. Pentru ndeprtarea acestor neregulariti, ar fi nevoie de o eventual reinstalare a
programelor, instalare care nu asigur 100% revenirea la statutul sistemului deinut anterior
deteriorrii programului respectiv. System Restore este capabil s restaureze n ntregime partiiile
tuturor discurilor; numrul punctelor de restaurare depinde de intensitatea activitii, de mrimea
partiiei pe care se afl Windows i de spaiul care a fost alocat pentru crearea punctelor. System
Restore se prezint sub forma unui calendar, uurnd astfel alegerea unui punct dorit. n acest scop
este necesar doar selectarea ultimului moment n care sistemul nu se confrunta cu probleme.
Avnd n vedere c numrul punctelor variaz i n funcie de intensitatea activitii, pentru o
zi pot exista mai multe puncte de restaurare sau nici unul. Tipuri de puncte de restaurare sunt
urmtoarele:
Sistemul iniial de puncte de verificare, care este creat imediat ce PC-ul este pornit dup
instalare Windows XP sau la prima pornire a unui nou PC. Selectnd acest sistem, nu se vor
restaura programele instalate n perioada cuprins ntre instalarea Windows-ului i momentul
efecturii restaurrii i nici un fiier creat de utilizator n aceeai perioad de timp. Dac System
Restore va avea nevoie de spaiu pe disc, el va elimina orice alt punct, pstrndu-l doar pe cel
iniial.
Puncte de verificare sistem. System Restore creeaz n mod regulat puncte de verificare,
chiar dac nu au avut loc modificri importante. Aceste puncte de verificare create automat, se fac
la fiecare 10 ore de funcionare continu i la fiecare 24 ore. Dac PC-ul nu este folosit o perioad
mai mare de 24 ore, System Restore va crea nu nou punct de verificare. Selectnd un astfel de punct
de verificare, programele vor reveni la starea lor precedent.
Puncte de verificare ce poart denumirea unui program. La fiecare instalare a unui nou
program ce folosete Installshield i Windows Installer, System Restore creeaz un punct de
verificare. Selectnd un astfel de punct de verificare, programul instalat va fi ters mpreun cu
toate referirile, iar programele care au fost modificate prin instalare vor reveni la starea lor
precedent. Dac instalarea unui program nu folosete formele precizate mai sus, se poate restaura
de la un punct de verificare anterior instalrii acestuia.
Puncte de verificare ntocmite automat de Windows referitor la actualizri. Dac se
efectueaz o actualizare a Windowsului, System Restore creeaz de asemenea un punct de verificare
naintea instalrii actualizrii. Acest punct va fi creat doar la instalare i nu la copierea actualizrii.
Punctele astfel create pot servi situaiilor n care actualizrile cauzeaz un conflict cu alte programe
sau componente.
Puncte de verificare create manual. Utilizatorul poate crea n orice moment puncte de
verificare ce poart denumiri definite de acesta. Astfel de puncte sunt utile cnd se anticipeaz
efectuarea unui numr mare de modificri ce pot afecta stabilitatea sistemului.
n orice moment se pot anula efectele unei restaurri; anularea se face automat doar atunci
cnd System Restore eueaz n restaurarea unui anumit punct de verificare.
Protecia fiierelor se poate realiza i prin File Signature Verification care identific fiierele
ce nu corespund din punctul de vedere al semnturii i furnizeaz urmtoarele informaii: nume,
locaie, data modificrii, tipul fiierului i versiunea.
Cu opiunea de hibernare, PC-ul poate fi stins n siguran, chiar dac sunt deschise fiiere
nesalvate. Cnd sistemul este repornit, totul revine la starea n care a fost nainte de a fi oprit.
139
Hibernarea poate fi configurat s nceap dup un anumit numr de minute n care PC-ul nu a fost
folosit. n aceast stare, PC-ul est ferit de degradare fizic deoarece se comport din aproape toate
punctele de vedere ca i calculator oprit.
Opiunea Standby este folosit ndeosebi pentru conservarea energiei, fiind util sistemelor
portabile ce folosesc baterii sau acumulatoare. Spre deosebire de hibernare, Stanby-ul oprete doar
discul i monitorul, plasnd sistemul ntr-o stare de consum minim de energie. Singura avertizare
este aceea c Stanby-ul nu salveaz coninutul memoriei astfel nct la o mic ntrerupere de curent,
informaiile din memorie se pierd instantaneu. Aadar, este recomandat ca nainte de intrarea n
Stanby, toate fiierele deschise s fie salvate.
Windows XP mbuntete sistemul de Help incluznd numeroase programe de asisten de
tip wizard printre care se numr i Home Networking, destinat celor care i instaleaz o reea
acas (ntre camere, ntre apartamente sau ntre blocuri). Wizard-ul creeaz o dischet cu
configuraia, dischet ce poate fi folosit pentru a include n reea un alt calculator. Wizard-ul
Network Connection asist n crearea conectrilor prin telefon la Internet, n reeaua local etc. Se
pot seta protocoalele i serviciile necesare pentru fiecare conectare n parte, avnd mai mult control
asupra configurrilor calculatorului pentru lucrul n reea.
Exist ncorporat n sistem i un Internet Connection Wizard care asist la setarea unui
Internet Provider i instalarea software-ului necesar. Directorul My Network Places conine locaiile
cel mai recent vizitate.
Cnd se lucreaz ntr-o reea, se pot afla uor resursele reelei care se folosete. Folosind
facilitatea Search For People, se pot localiza persoane n Windows Address Book.
Interconectarea PC-ului cu scannere i camere foto digitale se face prin intermediul
protocolului WIA (Windows Image Aquisition); pentru o camer digital compatibil, permite
managementul imaginilor fr ca acestea s fie transferate pe calculator, iar procesul de scanare este
mult simplificat de prezena unui Wizard.
Windows XP include Outlook Express 6.0 pentru citirea i gestionarea e-mail-ului. Sistemul
conine i diferite faciliti pentru trimiterea, recepionarea, direcionarea ctre imprimant sau
monitor, a fax-urilor. Organizarea conferinelor pe internet se poate face cu programul Microsoft
NetMeeting.
Includerea MSN Messenger-ului permite interaciunea utilizatorilor pentru o serie de jocuri
on-line. Exist o serie de servicii sau de site-uri la care accesul se poate face prin intermediul unui
.NET passport care poate fi creat utiliznd un cont existent pe Microsoft Hotmail sau prin
intermediul MSN Messenger i a unei legturi la Internet.
Folosind Windows XP, exist mai multe posibiliti de conectare a calculatorului la o reea:
cuplarea la un alt calculator folosind o conectare direct prin cablu; conectarea direct
prin cablu reprezint o legtur a porturilor de I/O a dou calculatoare, legtur realizat
cu un singur cablu i nu prin modem-uri sau alte interfee.
legarea la o reea privat folosind un modem, un adaptor ISDN (Integrated Services
Digital Network)
legarea la o reea folosind o conectare VPN (Virtual Private Network). VPN reprezint o
extensie a unei reele private care cuprinde legturi ncapsulate, criptate i autentice, cu
reelele publice sau private de pe Internet.
Pentru conectarea la un LAN (Local Area Network), sunt necesare urmtoarele resurse:
software-ul client care conecteaz calculatorul la un server.
software-ul de service care asigur accesul la resursele reelei;
protocolul de reea care reprezint limba n care comunic calculatorul pe reea. Pentru a
comunica unul cu cellalt, calculatoarele trebuie s foloseasc acelai protocol (de
exemplu, TCP/IP).
Dac PC-ul este legat fizic la o reea n timpul operaiei de Setup, Windows XP detecteaz
automat placa de reea i instaleaz driver-ul cel mai apropiat de cerinele plcii dac nu chiar cel al
plcii.
Cnd se activeaz Network Connection Wizard se afieaz urmtoarele opiuni:
140
Dial-up ctre o reea privat prin intermediul unui modem i a unei linii telefonice, sau
printr-o linie ISDN; opiunea se poate folosi pentru a realiza transferuri de pe reeaua de
la locul de munc;
Dial-up ctre Internet prin intermediul unui modem i a unei linii telefonice, sau printr-o
linie ISDN. Se poate folosi aceast opiune pentru a conectarea la un ISP (Internet
Service Provider);
Conectarea la o reea privat prin Internet poate folosi ISP pentru conectare la o reea
privat, prin care se creeaz o conectare prin intermediul unei VPN, prin Internet ntre
calculatorul de acas i reeaua de la locul de munc.
4.5.4. Sesiunea de lucru Windows VISTA
Windows Vista este ultima versiune a sistemului de operare Microsoft Windows, proiectat
sub numele de cod Longhorn i lansat n noiembrie 2006 pentru variantele destinate firmelor
comerciale, i ianuarie 2007 pentru variantele destinate utlizatorilor obinuii. Windows Vista are
noi proprieti i capaciti, cum ar fi o modern interfa grafic i un stil vizual nou numit Aero,
tehnologia de cutare mbuntit, noi unelte multimedia, precum i subsistemele de reea, audio,
imprimare i afiare (display). Windows Vista este comercializat n 35 de versiuni lingvistice, ntre
care i una n limba romn.
Windows Vista lanseaz experiene revoluionare n utilizarea calculatorului, care sunt
captivante vizual, sunt concepute intuitiv i schimb modul n care este utilizat calculatorul. Se pot
organiza i cuta mai eficient informaiile. Se pot "vedea" fiierele i aplicaiile ntr-un mod intuitiv.
Designul intuitiv al sistemului Windows Vista ajut la navigarea eficient pe calculator.
Utiliznd noul meniu Start din Windows Vista, se poate utiliza noul cmp Cutare
instantanee din colul stnga jos. Pe msur ce se tasteaz un cuvnt sau o fraz asociat cu
elementele cutate, Windows Vista caut instantaneu n numele de fiiere, n proprietile fiierelor
(denumite metadate), i chiar n informaiile din fiiere i afieaz dinamic rezultatele corelate.
Meniul Start poate cuta aplicaii, documente, muzic, filme, mesaje e-mail, evenimente din
calendar i chiar contacte.
Meniul Start face rapid i facil vizualizarea i navigarea prin toate aplicaiile instalate pe
calculator. Cu meniul Start din Windows XP trebuie c parcurgei meniuri n cascad pentru a lansa
o aplicaie.
n Windows Vista, explorerele sunt instrumentele principale de cutare, vizualizare i
administrare a informaiilor i resurselor, cum sunt documentele, fotografiile, dispozitivele,
coninutul Internet i chiar setrile din Panoul de control. Oferind o experien vizual i funcional
complex, Explorerele din Windows Vista sunt concepute pentru a permite administrarea
informaiilor, cu flexibilitate i control optim. Acest lucru este realizat prin fluidizarea meniurilor, a
barelor de instrumente, a navigrii i a Panourilor de detalii ntr-o singur interfa.
Explorerele includ un panou de navigare att foldere tradiionale, ct i noile Foldere de
cutare, o bar de comand care afieaz sarcinile relevante contextual, o caset Cutare instantanee
disponibil n orice moment, pictograme live ale fiecrui fiier i un Panou de detalii, care ofer
informaii detaliate despre fiiere
Panoul de navigare din fiecare Explorer a fost reconceput pentru a face mai simpl navigarea
pe calculator i gsirea rapid a elementelor cutate. Vizualizarea prestabilit din Panoul de
navigare are o serie de legturi care duc ctre Explorerul de documente, Explorerul de fotografii sau
Explorerul de muzic. Exist o legtur Cutri care permite s vizualizarea Folderelor de cutare
de pe calculator.
Folderele tradiionale i coninutul acestora au o adres specific pe unitatea hard-disk. n
contrast, un Folder de cutare, este o cutare salvat care ruleaz instantaneu n momentul n care
facei clic pe ea. Foldere de cutare pot organiza automat fiierele n mod logic, fr a le muta la
alte locaii de pe calculator i se pot vizualiza fiierele n diverse moduri, fr probleme cu privire la
141
locaia fiierelor. Este posibil i vizualizarea tradiional, sub form de arbore, selectnd controlul
folderelor din partea de jos a panoului.
Noua bar de comand afieaz sarcinile relevante pentru fiierele afiate ntr-un anumit
Explorer. De exemplu, Explorerul de documente conine sarcini ale barei de comenzi relevante
pentru documente, iar Explorerul de muzic, conine sarcini din bara de comenzi relevante fiierelor
muzicale. Spre deosebire de Windows Explorer din Windows XP, bara de comenzi i panoul de
navigare sunt disponibile simultan.
Noua funcionalitate scalabil Pictograme live mbuntete pictogramele generice din
versiunile anterioare de Windows oferind o previzualizare a componentelor unui anumit fiier fr a
deschide efectiv fiierul.
Pentru orice fiier selectat, Windows Vista afieaz un set complet de proprieti ale fiierului
n Panoul de detalii, nlocuind caseta de dialog Proprieti. Pentru aplicaiile i formatele de fiiere
acceptate care au aceast caracteristic activat, Panoul de detalii poate oferi o modalitate rapid de
"previzualizare" a fiierului fr a-l deschide n aplicaia asociat.
Spre deosebire de versiunile de Windows anterioare, Windows Vista ofer dou interfee
pentru utilizator diferite: o interfa "elementar" pentru sistemele entry-level i o interfa mai
dinamic denumit Windows Aero. Interfaa elementar a fost actualizat i fluidizat pentru a
permite lucrul cu programele i fiierele mai uor.
Windows Aero dezvolt experiena elementar a utilizatorului i ofer cea mai avansat i
performant experien desktop de la Microsoft. Pentru a utiliza Aero este nevoie de un calculator
cu o plac video compatibil.
Un element nou al experienei Aero este efectul translucid al Aero Glass, care ofer reflexii
dinamice i animaii clare.
Dou caracteristici noi din Aero, Windows Flip i Windows Flip 3D, ofer o modalitate
nou de a administra cu ncredere ferestrele de pe desktop, pentru a le putea vedea ntr-un mod
uimitor, dar convenabil. Aero Glass creeaz o fereastr cu adevrat transparent, concentrat
asupra coninutului, dar care v permite totui s urmrii celelalte ferestre de pe desktop. n
Windows Vista, ferestrele sunt dinamice. Cnd este minimizat, o fereastr va fi animat subtil la o
anumit locaie din bara de sarcini, fcnd mai uoar localizarea sa ulterior.
Cu Windows Aero, miniaturile live din bara de sarcini arat coninutul ferestrelor deschise,
fie c sunt n background sau sunt minimizate n bara de sarcini. Cnd oprii mouse-ul deasupra
titlului unei ferestre din bara de sarcini, se poate vedea coninutul "live" al acelei ferestre, fr a fi
necesar s o aducei n prim-plan.
a.
b.
Figura 4.17. a. Interfaa Windows Aero b. Meniul START
Windows Flip este o actualizare a caracteristicii cunoscute sub numele de ALT+TAB n
versiunile anterioare de Windows. Cu Aero, Windows Flip prezint miniaturi live ale ferestrelor
142
deschise n locul pictogramelor generice, fcnd mai facil identificarea ferestrei pe care o cutai.
Aceast nou caracteristic permite chiar s minimizai toate ferestrele de pe desktop.
Cu Aero, Windows Flip 3D creeaz o vizualizare a ferestrelor deschise ntr-o stiv
tridimensional, pe desktop. Utiliznd tasta cu sigla Windows n combinaie cu tasta TAB, putei
parcurge ferestrele deschise pentru a localiza i selecta rapid fereastra dorit.
Cnd utilizai Windows Aero, ferestrele deschise parcurg mai lin ecranul cnd le mutai sau le
redimensionai. Nu exist artefacte de micare, laten sau efecte de "scurgere" care erau n trecut
vizibile n special n cazul ferestrelor care afieaz coninut dinamic, cum sunt filmele. Utiliznd
Aero se reduc problemele anterioare legate de driverul pentru grafic. Cu interfaa elementar
Windows Vista i cu Windows Aero se pot gsii organiza rapid informaiile pe desktop i derula
activitile cu productivitate crescut. Cu sistemul de stocare inovator din Windows Vista, se pot
marca i personaliza fiierele cu proprieti.
Folderele de cutare reprezint cutri care sunt rulate instantaneu cnd facei clic pe ele.
Windows Vista este livrat cu cteva foldere de cutare preconfigurate, cum ar fi Documente recente
i toate ataamentele care v arat toate fiierele de pe calculator care sunt ataate la e-mailuri.
Folderele de cutare colecteaz toate fiierele corelate n foldere preconfigurate sau foldere create
personalizat.
Cutarea instantanee este contextual - optimizeaz rezultatele pe baza activitii curente, fie
c sunt cutate applet-uri din Panoul de control, fiiere cu muzic din Windows Media Player sau
fiiere i aplicaii din meniul Start. Pentru a cuta un anumit fiier, mesaj e-mail, contact,
eveniment, o aplicaie sau o adres Internet favorit, deschidei meniul start i ncepei s tastai n
cmpul Cutare instantanee. Pe msur ce tastai, Windows Vista caut i afieaz instantaneu
elementele corelate, fie c este vorba despre aplicaii, adrese internet favorite, documente media,
contacte, evenimente din calendar sau mesaje e-mail.
Cutarea instantanee este evideniat n colul dreapta sus al fiecrei ferestre Explorer:
Explorer de documente, Explorer de muzic, Explorer de fotografii i noul Explorer de cutare. Ca
i n cazul meniului Start, nu trebuie dect s tastai cteva litere pentru ca cele mai relevante
rezultate s fie afiate rapid. Dac rezultatele afiate nu sunt ceea ce cutai, cutarea instantanee c
ofer acces facil la instrumente care v pot ajuta s creai cutri mai exacte sau putei s cutai pe
Internet utiliznd motorul de cutare dorit.
Funcia de cutare este de asemenea activ n colul dreapta sus al Panoului de control din
Windows Vista. Tastai un cuvnt sau o fraz asociat cu sarcina pe care vrei s o ndeplinii i n
Panoul de control vor fi filtrate cele mai relevante opiuni disponibile pentru realizarea sarcinii. De
exemplu, dac tastai "schimbare rezoluie ecran" n cmpul de cutare instantanee, vor fi afiate
rapid toate controalele corelate cu schimbarea rezoluiei monitorului.
Funcia Cutare instantanee este de asemenea activ n Windows Photo Gallery i n
Windows Media Player. Oriunde vedei cmpul de cutare, ncepei s tastai i vei gsi cu uurin
ceea c cutai, rapid, exact i n contextul n care cutai.
Pentru detalii suplimentare despre cutrile dintr-un Explorer, se utilizeaz panoul de filtrare
avansat pentru a crea o cutare cu mai multe criterii. Se pot aduga filtre suplimentare, inclusiv
cuvinte cheie i intervale de date. Cnd s-a creat o cutare util, este uor s o salvai sub forma
unui folder de cutare nou, pentru ca mai trziu s putei repeta instantaneu acea cutare printr-un
simplu clic.
n cazul n care conectai uniti externe independente la calculatorul pe care este instalat
Windows Vista, n scopul stocrii, backup-ului sau arhivrii, coninutul acestor uniti va fi de
asemenea afiat n rezultatele cutrii. Adugai unitile la indexul de cutare i cnd creai un
Folder de cutare nou, coninutul unitilor va fi inclus n rezultate.
Explorerele din Windows Vista extind beneficiile cutrilor pe desktop la urmtorul nivel,
combinnd cutrile instantanee i posibilitatea de a organiza automat coninutul pe baza
proprietilor, cum ar fi numele de fiiere, tipurile de fiiere, autorul sau cuvintele cheie descriptive
(sau "etichetele") pe care le putei asocia cu fiierele.
143
funcie de telefon. Una dintre cele mai mari schimbri a viitorului Windows Seven este aa numitul
Recover Center care va aprea n panoul de control al sistemului de operare. Cu acest program,
utilizatorii vor fi capabili s repare Windows-ul sau fiierele care au fost afectate, spre exemplu, de
un virus, fr s mai fie necesar reinstalarea. Un alt plus l reprezint faptul c niciun fel date nu
vor fi afectate de reparaii.
Microsoft va lansa DirectX 11 nainte de apariia noului sistem de operare Windows 7.
Microsoft pare s fi ajuns la aceast decizie la presiunea unor nume mari din industria jocurilor,
care vor s integreze n noile apariii elemente din noul API (cum ar fi tesselation).
n figura 4.18 sunt prezentate ferestre i sigla Windows 7 cunoscute din prezentrile recente.
a.
b.
c.
d.
Figura 4.18. a. Interfaa Windows 7, b. Sigla Windows 7, c. Fereastra START, d. Control Panel.
Unul din inginerii Microsoft, a fcut o demonstraie cu Windows 7 - care se vrea a fi urmaul
lui Vista. De fapt Windows 7 este n momentul de fa un sistem de operare gol care ruleaz n
mod text i are doar 13 servicii pornite printre care i un mini-server http. Aceasta versiune
demonstrativ se instaleaz doar pe 25 MB pe hard disk i consum doar 40MB de memorie.
Versiunea alfa va fi diponibil dezvoltatorilor n cadrul Professional Developers Conference
(PDC) care se va desfaura n luna octombrie. Microsoft a confirmat c Windows 7 va fi disponibil
pe piaa n 2010. Conform informaiilor existente pn n prezent, Windows 7 va utiliza acelai
kernel ca i Vista, ceea ce reduce considerabil riscul unor ntrzieri majore n cadrul proiectului i
evitarea unor probleme de compatibilitate dintre Vista i Windows 7. Eforturile sunt cu att mai
intensificate cu ct problemele legate de Vista au constituit nite pai napoi pentru Microsoft.
Prezentarea anterioara a lui Windows 7, cea din mai, a fost considerat, mult prea scurt i
fr prea mare importan, din moment ce compania nu a rspuns la ntrebri.
146
CAPITOLUL 5
REELE DE CALCULATOARE
5.1. GENERALITI
O reea de calculatoare este alctuit dintr-o colecie de calculatoare interconectate printr-un
mediu fizic de comunicaie, care a evoluat de la cablul telefonic la transmisia prin satelit (engl.:
computer network). Comunicarea fizic ntre calculatoarele din reea ofer utilizatorului individual
avantaje deosebite, de la schimbul reciproc de mesaje la accesul de oriunde i oricnd la resursele
hardware i software ale reelei, respectiv:
- accesul la baze de date aflate pe alte calculatoare;
- folosirea unor programe aflate n alt loc dect pe propriul hard disc;
- utilizarea n comun a unor echipamente hardware conectate la reea.
De obicei e nevoie i de msuri de restricie/siguran a accesului.
Reea este gruparea de calculatoare denumite noduri centrale (NC), care comunic pe canale
de transmisie centrale (CTC) la care se conecteaz calculatoarele utilizatorilor, alctuind nodurile
utilizator (NU) care comunic pe canale de transmisie utilizator (NTU).
Metodele de conectare sunt n continu dezvoltare i deja foarte diverse, ncepnd cu tot felul
de cabluri metalice i de fibr optic, cabluri submarine i terminnd cu legturi prin unde radio
cum ar fi WLAN, WiMAX sau Bluetooth, prin raze infraroii ca de ex. IrDA sau chiar prin
intermediul sateliilor. Foarte rspndit este metoda Ethernet, termen care se refer la natura fizic
a cablului folosit i la tensiunile electrice ale semnalului. Cel mai rspndit protocol de comunicare
n reelele Ethernet se numete CSMA/CD ("Carrier Sense Multiple Access / Collision Detection").
Dac drept mediu fizic sunt utilizate undele radio, atunci reeaua se numete reea fr fir (wireless).
5.2. TIPURI DE REELE DE CALCULATOARE
Tipurile de reele se difereniaz n funcie de anumite criterii.
La modul cel mai general, ele se clasific dup urmtoarele criterii:
a) aria geografic n care opereaz;
b) tehnologia de comunicare.
Aria geografic n care opereaz o reea depinde de distana maxim dintre dou noduri ale
reelei. Astfel se pot distinge:
- reele locale ( LAN - Local Area Network);
- reele academice (CAN - Campus Area Network)
- reele metropolitane ( MAN - Metropolitan Area Network);
- reele pe arie extins (WAN - Wide Area Network);
- reele pe arie de extindere foarte mic (PAN - Personal Area Network).
Reelele relativ mici, de exemplu cu cel mult cteva sute de calculatoare n aceeai cldire
legate ntre ele direct, se numesc Local Area Network (LAN). O reea de tip LAN dar fr fir (prin
unde radio) se numete WLAN (Wireless LAN). Reea academic (Campus Area Network) este o
reea de calculatoare asemnatoare cu cea de tip LAN dar ea se extinde pe zone geografice mult mai
restrnse. Aceast reea se poate de considerat ca o form a reelei metropolitane, configurat dup
necesiti academice. n cazul unei universiti o reea CAN, poate face legtur dintre diferite
cldiri a campusului care poate include: departamentele academice, bibliotec universitar
reedinele studenilor. CAN este mai mare dect reelele locale LAN dar mai mici dect WAN, n
unele cazuri. Reelele CAN au fost create cu scopul de a facilita studenii la accesul liber la reeau
internet i la resursele universitii. Reele de mare ntindere geografic, de exemplu ntre 2 orae,
pe o ar, un continent sau chiar pe ntreaga lume, se numesc Wide Area Network (WAN). Reelele
particulare de tip WAN au fost iniial foarte costisitoare. La ora actual ns, cele mai multe
conexiuni de tip WAN folosesc ca mijloc de comunicaie Internetul (GAN= Global Area Network) 147
acesta este universal i public, deci nu foarte controlabil de ctre un utilizator. PAN nseamn
Personal Area Network - o reea de foarte mic ntindere, de cel mult civa metri, constnd din
aparatele interconectabile pe care o persoan le poart cu sine, ca de exemplu telefon mobil, player
MP3 sau aparat de navigaie portabil.
Tehnologia de comunicare separ reelele n dou categorii:
- reele fr comutare;
- reele cu comutare.
1. Reelele fr comutare sunt reele n care nodurile sunt conectate prin echipamentele
specializate cunoscute sub denumirea de canale de comunicaie. Pe aceste canale se ntlnesc
dou tipuri de legturi:
- legturi punct la punct (unicast): un emitor i un receptor;
- legturi multipunct sau difuziune (broadcast sau multicast): un emitor i mai muli
receptori.
Legtura punct la punct conecteaz dou noduri la un canal de comunicaie.
Legtura multipunct conecteaz mai multe noduri la un nod central prin partajarea aceluiai
canal de comunicaie. Nodul central asigur i rezolvarea conflictelor de acces pe canalul comun.
2. Reelele cu comutare pot fi la rndul lor:
- reele cu comutare fizic (de circuite);
- reele cu comutare logic.
a) comutarea de circuite sau comutarea fizic asigur selectarea i rezervarea unui canal
fizic de transmisie care rmne, conectate pe o perioad de timp proporional cu durata apelului.
b) comunicarea logic este de dou feluri:
- comutare de mesaje;
- comutare de pachete.
Comutarea de mesaje este tehnologia prin care mesajul, care se mai numete cadru sau frame,
este transmis de la surs la destinaie ca o entitate unic. Mesajul tranziteaz unul sau mai multe
calculatoare intermediare pn la destinaie, traseul fiind stabilit pe baza unor algoritmi de dirijare.
Comutarea de pachete fragmenteaz un mesaj n uniti numite pachete. Pachetele conin
n antetul lor informaii care permit refacerea mesajului la destinaie n condiiile n care pachetele
au fost dirijate aleatoriu pe traseele gsite libere.
5.3. MODELUL DE COMUNICAIE N SISTEMELE DE DATE
Analiza noiunilor legate de reelele de calculatoare presupune clarificarea unor aspecte legate
de suportul de comunicaie necesar. Vehicularea informaiilor transmise de ctre o sursa ctre o
destinaie, indiferent dac acestea sunt operatori umani sau maini, presupune o abordare complex
i o viziune de ansamblu multidisciplinar. Reeaua de calculatoare reprezint un ansamblu de
calculatoare interconectate prin intermediul unor medii de comunicaie, asigurndu-se n acest fel
utilizarea n comun, de ctre un numr mare de utilizatori, a unor resurse fizice (hardware), logice
(software i aplicaii de baza) i informaionale (baze de date) de care dispune ansamblul de
calculatoare conectate. Prin noiunea de lucru n reea se va nelege conceptul de interconectare a
unor echipamente de calcul care partajeaz resurse.
Resursele pot fi date (baze de date), aplicaii (programe de editare texte, programe de gestiune
a stocurilor etc.), periferice (imprimante, scannere etc.). Tehnicile utilizate n transmiterea
informaiilor se refer la totalitatea mijloacelor i metodelor de transmisie eficient i de protejare a
informaiei mpotriva perturbaiilor. Modelul unui sistem pentru transmiterea informaiei este
prezentat n figura 5.1.
liniei poate fi evitat dac se utilizeaz circuite pe patru fire (sau separearea benzilor de
frecvena n cazul transmisiunilor modulate).
-transmisia simultana de la A ctre B i de la B ctre A se numete transmisie full-duplex
sau simplu duplex. De multe ori un canal full-duplex utilizeaz circuite distincte din
punct de vedere fizic (pe patru fire, de exemplu, cte o pereche pentru fiecare sens) dar
exista i posibilitatea unei transmisii full-duplex i pe un circuit fizic comun (de exemplu
prin divizarea spectrului de frecvena, creandu-se un canal de transmisie i un canal de
recepie sau prin utilizarea de radiaii optice cu lungimi de und diferite n cazul
comunicaiilor prin fibra optic).
Un caz particular l constituie transmisia de tip echoplex pe canale full-duplex, care const n
retransmisia napoi a caracterului recepionat, efect similar cu ecoul.
Echoplexarea este util pentru detectarea i corectarea erorilor. De exemplu, caracterele
tastate de la o tastatur pot fi verificate prin vizualizare pe un monitor, prin redirecionarea lor de
ctre echipamentul receptor (ecou).
STP (Shielded Twisted-pair) nseamn c fiecare pereche de fire este protejat printr-un
nveli. Tot cablul (toate perechile de fire) au un nveli protector adiional. Cablurile STP sunt de
aceea mult mai puin sensibile la perturbri. Datele pot fi tranferate cu rate mari i pe distane mari.
Ecranarea (Screened). Att UTP ct i STP exist i n versiunea Sc, care nseamn c sunt
protejate adiional toate perechile de fire printr-un ecran (screen) din metal au cu o folie de metal
(Foiled Twisted Pairs) ce realizeaza ecranajul, att din exterior ct i din interior. Notaiile acestor
cabluri sunt ScUTP/FTP i S/STP.
Cablurile torsadate sunt standardizate prin performanele pe care trebuie s le asigure i nu
prin parametri fizici. n acest sens sunt definite mai multe categorii de performan. Acest fapt este
un avantaj important deoarece, indiferent de productor, ne ateptm la performane similare pentru
cabluri din aceiai clas. Principale organisme cu atribuii n domeniul standardizrii (ANSI, FCC,
EIA) au definit standarde pentru cablare sau pentru elemente de infrastructur dar i categorii de
performan pentru cabluri.
Atunci cnd cablurile TP se folsesc pentru a conecta dou echipamente este necesar ca cele
dou perechi pentru transmisie respectiv recepie s fie inversate (transmisia unuia s ajung la
recepia celuilalt), rezultand cablul cross-over (inversor).
Atunci cnd se folosesc echipamente dedicate de interconectare inversiunea respectiv este
realizat n interiorul echipamentului (hub, switch) cablul folosit fiind de tip 1:1 (straight through,
cablu direct). Echipamentele moderne au capacitatea de a determina singure perechea emitoare
respectiv receptoare, funcie numit Auto-sensing, Auto-MDI/MDI-X, Universal Cable Recognition
sau Auto-uplink. n afara cablurilor menionate exist i varianta roll-over (inversare n oglind).
Cablurile UTP sunt mprite pe diferite categorii, oferind informaii despre propritile
cablurilor. La cele mai multe categorii sunt folosite patru perechi de fire rsucite.
Exist numeroase tipuri de cabluri torsadate, dou dintre acestea fiind mai importante pentru
reele. Cablurile UTP din categoria 3 sunt formate din dou fire izolate mpletite mpreun. O
variant mai performant de astfel de cabluri este categoria 5. Sunt similare celor din categoria 3
dar au mai multe rsuciri pe centimetru i ar trebui s fie izolate cu teflon, rezultnd de aici o
interferen redus i o mai bun calitate a semnalului pe distane mari (tabelul 5.1.).
Tabelul 5.1.
Comparaie ntre caracteristicile diferitelor categorii de cabluri torsadate UTP
Elemente de legatura. Pentru legarea cablurilor twisted-pair la hub, respectiv la placa reelei,
sunt folosite steckere/cuple RJ-45 (Registered Jack), ca n figura 5.3.b., aseamntoare cu cele de
telefon (RJ-11), sunt ns ceva mai mari i conin opt pini de cabluri n loc de patru.
Caseta de distributie (Patch-panel) folosesc la preluarea, legarea i mprirea cablurilor,
ofer o posibilitate simpl, confortabil, structurat de a organiza centralizat un numr mare de
conexiuni. Elementele de legatur la cablurile de tip 1 i 2 sunt denumite cupla MIC (Media
Interface Connector). Tipul 3 folosete RJ-45 si RJ-11.
2. Cablul coaxial subire (thinnet) (coax) const dintr-un nveli protector care mbrac dou
elemente conductoare: un fir de cupru mbrcat ntr-un material izolator i o folie metalic (sau o
151
plas) ce acioneaz ca al doilea fir din circuit. Acest al doilea element este folosit pentru a reduce
interferenele externe. Este cablul cu cea mai bun ecranare, ns nu prea se mai folosete (cu
excepia reelelor vechi). Circuitele n cablu coaxial permit o vitez de propagare ridicat care
variaz foarte puin cu frecvena, ceea ce implic existena unor distorsiuni de ntarziere reduse. n
cazul transmisiunilor binare, debitul binar scade cu creterea distanei datorit atenurii semnalului
electric. Lungimea maxim de propagare este limitat prin standardele de comunicaie de timpul de
propagare, cu precdere n cazul comunicaiilor bazate pe cerere i rspuns.
a.
b.
Figura 5.3. Cablul torsadat UTP a. cablu; b. cuple RJ-45.
Avantajul cablurilor coaxiale const n oferirea posibilitii unor comunicaii de band larg
pe distane relativ mari echipamentele fiind conectate la o magistral unic folosind conectoare
adaptoare n forma de T. Aceste conectoare fac ca sistemele conectate s apar ca fiind, unul dup
altul, n cascad (figura 5.4.b).
Mediul de comunicaie se comport ca un ghid de und i din acest motiv trebuie asigurat
adaptarea de impedana la capetele liniei (folosind conectoare de capt sau terminatoare) dar i la
nivelul punctelor de inserare a echipamentelor de date. Ele a fost folosite iniial ca medii de
transmisie dedicate pentru reelele de date tip Ethernet, dar treptat au fost nlocuite cu medii de
transmisie mai performante.
a.
b.
Figura 5.4. Cablul coaxial a. cablu; b. cuple BNC.
Principalele dezavantaje ale acestui cablu care a dus la nlocuirea sa aproape total sunt
urmatoarele: este relativ fragil i fr o rezisten mecanic deosebit, are un cost ridicat, o
dimensiune a cablului semnificativ (grosime de 1 cm sau mai mult n funcie de tip) i nu n
ultimul rnd dificulatile de a asigura adaptarea de impedan a magistralei de comunicaie. Lipsa
adaptrii de impedan determin fenomene de reflexie i refracie a undelor electromagnetice.
Pentru adaptare la capetele liniei de comunicaie se folosesc conectoare de capat sau terminatoare.
n cazul cablurilor coaxiale utilizate n retelele locale (Ethernet) comunicaia are loc
alternativ n cele dou sensuri, fiind astfel de tip semiduplex.
Conectorul folosit de acest tip de cablu se numete BNC (British Naval Connector sau
Bayone-Neill-Concelman)
3. Fibra optic reprezint mediul ideal pentru reelele de mare vitez i ntindere medie i
mic datorit unor avantaje certe date de caracteristicile sale de transmisie. Este nesesar o gama
larg de produse n domeniul sistemelor bazate pe fibre optice: cabluri de fibr optic cu diferite
performane, conectoare specifice, adaptoare, amplificatoare, elemente auxiliare, scule i truse de
scule necesare realizrii i ntreinerii sistemelor i nu n ultimul rnd echipamente de testare
specifice.
152
Cablul cu fibr optic este format dintr-un fir de material sticlos numit miez, acoperit cu un
nveli numit manta. Proprietile de difracie ale celor dou medii de sticl sunt diferite. La exterior
ele sunt protejate de un nveli de protecie.
Fibrele optice pot avea o gam variat de forme, dimensiuni i domenii de lungimi de und
transportate. Tipic un cablu cu fibre optice are structura din figura 5.5.
a.
b.
c.
d.
Figura 5.5. Cablul cu fibre optice a, b cablu; c. conector; d. seciune.
Axa central a fibrei este ocupat de ctre un mediu optic pur care are capacitatea de a
transporta n siguran radiaia luminoas pe distane mari. Cablurile optice conin grupuri de dou
sau mai multe fibre. Deoarece fascicolul luminos se propag de la o sursa ctre receptor, rezult c
o fibr poate transporta informaia ntr-un singur sens. Pentru o transmisie duplex sunt necesare cel
puin dou fibre. n cazul n care se utilizeaz lungimi de und diferite, dou radiaii luminoase pot
clatori pe aceiai fibr cu condiia ca elementele opto-electronice utilizate la emisie i recepie s
aib capacitatea de a le separa, ceea ce presupune costuri suplimentare. Mai multe fibre alcatuiesc
un cablu optic.
Fibra optic este mediul care asigur transmiterea luminii, modulat la o anumit frecven.
Comparativ cu alte medii de transmisie, fibra optic este cea mai costisitoare, dar nu este
susceptibil la interferene electromagnetice i n plus asigur rate de transfer mult mai ridicate
decat celelalte categorii de medii.
Cablul fibr optic const n dou fibre de sticl mbrcate separat ntr-un nveli de plastic
(materialul se numete Kevlar). Cele dou fibre formeaz inima acestui mediu de transmisie, sticla
din care sunt realizate avand un grad ridicat de refracie.
Sursa de lumin pentru cablul de fibr optic este o diod luminescent; iar datele sunt
codificate prin varierea intensitii luminii. Exist dou tipuri de cabluri cu fibre optice: mod unic
(single mode) i multimod (multimode). Primul tip are diametrul mai mic, este mai scump i
transmite semnale la distane mai mari.
Fibrele optice folosesc ca purttor de informaie radiaia electromagnetic din spectrul vizibil
14
10 - 1015 Hz. Ele permit o mult mai larga lrgime de band i o capacitate net superioar altor
medii de transmisie. Distana maxim de transmisie a informaiei optice depinde de atenuarea
fasciculului luminos. Aceast atenuare depinde la rndul ei de dou elemente:
- calitatea radiaiei luminoase emise (lungime de unda, putere, coeren), fiind utilizate trei
lungimi de unda: 850 nm, 1300 nm, 1500 nm,
- calitatea fibrei optice i a mbinrilor acesteia.
Performana de a transporta radiaia luminoas la distane mari este determinat de nivelul de
atenuare al fibrei, care a evoluat continuu de la 500 1000 dB/km n 1966 la 0.158 dB/km la 1550
nm prin 1986. Atenuarea depinde i de lungimea de und a radiaiei luminoase utilizate, cele mai
bune performane obtinndu-se n banda de 1550 nm.
153
a.
b.
c.
d.
e.
f.
g.
Fig. 5.6. Topologia reelelor
a. inel, b. mesh, c. stea, d. linie, e. arbore, f. conectare total, g. magistral
Topologia BUS este tipul de topologie de reea n care toate nodurile reelei sunt conectate la
un mediu comun de transmisie care are exact dou terminaii (endpoints), toate datele care sunt
transmise ntre noduri n reea este transmis n cursul acestei magistrale comune de transport i de
mediu n aa msur ca s fie primite de ctre toate nodurile din reea, aproape simultan (fr a ine
seama de ntrzieri rspndite). Cele dou terminaii care fac parte din magistrala comuna de
transport i sunt oprite n mod normal, cu un dispozitiv care se numete terminal (terminator).
Dispozitivul respectiv absoarbe energia care rmne n semnal astfel prevenind reflectarea sau
propagarea semnalului n direcia opus, care poate provoca interferen sau chiar poate duce la
degradarea semnalului.
Topologia BUS este cel mai simplu mod de a conecta mai muli clieni, dar au adesea
probleme cnd doi clieni doresc simultan s transmit date pe aceiai magistral. Astfel sistemele
care folosesc arhitectura de reea de tip magistral au proiectate nite scheme pentru evitarea
coliziunilor de date pe magistrala comun, cel mai des este folosit metoda Carrier Sense Multiple
Access (CSMA) care controleaz resursele partajate a magistralei comune fiind un protocol Media
Access Control (MAC) n care un nod nainte de a transmite informaia pe magistrala comun
verific prezena altui trafic de pe mediul comun de transmisie.
Exist urmtoarele topologii de baz:
topologia magistral,
154
topologia inel i
topologia stea.
Pe baza acestora se construiesc actual reele cu topologii complexe.
Topologia magistral BUS, se caracterizeaz prin aceea c toate nodurile (staiile) reelei
sunt interconectate total, un nod putnd comunica cu oricare din celelalte noduri ale reelei (fig.
5.7.a.). Transmisia se face folosind un singur canal fizic numit magistral BUS.
Gestiunea comunicrii n reea o asigur server-ul, care este de regul un PC mai performant
dect staiile de lucru.
Avantajele topologiei BUS:
Uor de implementat i de extins,
Necesit mai puin lungime de cablu dect reelele stea,
Sunt bine adaptate pentru reele temporare i mici care nu necesit viteze mari, n plus
se poate uor de configurat,
Sunt mai puin costisitoare deoarece se folosete numai un cablu.
a.
b.
c.
Fig. 5.7. Topologia reelei, a. magistral, b. stea (Star); c. Stea extins (Extended Star)
Dezavantajele topologiei BUS:
Lungimea cablului este limitat i la fel numrul de staii,
Dac exist probleme cu cablul, toat reeaua se oprete,
Costurile de ntreinere pot fi mari pe o perioad lung de timp,
Performana scade dac sunt conectate prea multe calculatore,
Este necesar terminaia corect a semnalului,
Capacitatea de ncrcare semnificativ (fiecare tranzacie trebuie s ajung la destinaie)
Lucreaz mai bine cu un numr limitat de noduri,
Este mai lent dect alte topologii,
Dac un calculator se defecteaz atunci toat reeaua se oprete.
Topologia inel RING se caracterizeaz prin aceea c o staie de lucru este conectat doar cu
staiile vecine. Transmiterea datelor n cadrul inelului se face unidirecional (topologia este
cunoscut i sub numele de topologie TOKEN RING).
O astfel de reea este vulnerabil deoarece dac una din staii se defecteaz, reeaua nu mai
este funcional. Deficiena se elimin prin includerea unui dispozitiv numit HUB cu funcia de
repetor al mesajelor care circul de la staia surs la staia destinaie. Prin aceast modificare
topologia inel devine topologie stea-inel.
Presupune conectarea tuturor echipamentelor pe un singur cablu de comunicaie. Transmisia
se deruleaz ntr-un singur sens i este controlat de server.
Pachetul de date circul ntr-o singur direcie i nu pot fi coliziuni de date. Datorit fluxului
ntr-un sens unic, topologia este perfect adaptata fibrelor optice. Fiecare calculator recepioneaz
datele predecesorului sau le verifica i le transmite amplificat ctre calculatorul urmtor. Fiecare
calculator din reeaua inelar are un predecesor i un urma univoc.
Acest topologie prezint urmatoarele dezavantaje:
Dac se defecteaz un post de lucru, comunicaia se ntrerupe n ntreaga reea;
Dac se rupe cablul de comunicaie se blocheaza reeaua, dar defeciunea poate fi uor
localizat.
155
izolarea dispozitivelor: Fiecare dispozitiv este izolat inerent de ctre legtura (link) care se
conecteaz la nodul central. Acest lucru face izolarea dispozitivelor individuale destul de simplu, i
permite deconectarea lui n orice moment de la nodul central. Aceast procedur de izolare previne
orice eec non-centralizat care va afecta toat reeaua.
Dezavantajele topologiei stea sunt:
Primul dezavantaj este dependena sistemului cu privire la funcionarea nodului central.
n timpul ce eecul unei legturi individuale duce numai la izolarea unui singur nod, pe
cnd defeciunea nodului central duce la perderea legturii dintre toate nodurile.
Scalabilitatea i performana reelei tot depind de nodul central. Marimea reelei este
limitat de numrul de conexiuni pe care nodul central poate s le suporte. Traficul dintre
un nod i nodul central este izolat de celelalte, dar dac un nod din reea ocup o parte
semnificativ din capacitatea de procesare a nodului central atunci celelalte noduri pot s
se confrunte cu scderea performanei a reelei.
Topologia arborescent (tree) este constituit din mai multe nivele ierarhice de noduri (huburi, concentratoare) la care sunt conectate gazdele, rezultnd o structur de tip arbore. Avnd n
vedere c de multe ori peste o structur arborescent de noduri funcioneaz o topologie logic de
tip inel, uneori acest topologie este numit inel-stea (ierarhic).
Topologia Mesh reprezint o reea total conectat, care este destinat pentru transportarea
datelor, instruciunilor i servicii de transport voce prin nodurile de reea. Datorit acestei topologii
putem dispune de conexiuni continue chiar dac exist legturi deteriorate sau blocate.
Reelele mesh fr fir (wireless) este cea mai frecvent topologie folosit n zilele de azi.
Aceste reele au fost dezvoltate iniial pentru aplicaii militare, dar au fost supuse unei evoluii
semnificative n ultimii zece ani. Progresul echipamentului de transmisuni de date a permis reelelor
mesh s ofera un larg spectru de servicii cum ar fi client-access, servicii backhaul. Nodurile mesh
au devenit mai performante unele modele pot suporta mai multe cartele radio, fiecare opernd la
diferite frecvene.
Topologii complexe se obin prin plasarea unor elemente de interconectare suplimentare (huburi) pentru optimizarea performanelor reelei. Se pot astfel meniona:
a) topologii cu nlnuire daisy chain care se obin prin conectarea serial a hub-urilor de
interconectare a grupurilor de staii de lucru ale unei reele mari. Topologia Stea extins - Extended
Star, se obine prin cuplarea mai multor reele n topologia stea (fig.5.7.c.).
b) topologii ierarhice care pot fi n varianta inele-ierarhice, varianta ierarhic-stea sau alte
combinaii de topologii ierarhice.
5.4.3. Tehnica de transmisie
Tehnica de transmisie este o caracteristic absolut inginereasc dependent i de mediul de
transmitere. Se pot utiliza dou metode de transmisie: n band de baz i n band larg. Tehnica
de transmisie n band larg este mai complex i asigur viteze mari.
156
Transmisia informaiei ntre o surs i una sau mai multe destinaii presupune transferarea
datelor, ntr-un format adecvat, prin intermediul unor semnale de natur electric, electromagnetic
sau optic adaptate canalului de transport disponibil.
Scopul fundamental al unei transmisiuni este acela de a reproduce la echipamentul receptor
mesaje cu acelai coninut cu cele care au fost expediate.
Canalul de comunicaie poate fi privit ca fiind alctuit din infrastructura de comunicaie
(echipamente) i mediul aferent de transmitere a informaiei (semnale electrice pe perechi de
conductoare, radiaii luminoase prin fibra optic, unde radio). Performaneele unui canal de
comunicaie sunt evaluate n principal prin cantitatea de informaie care poate fi vehiculat printr-o
seciune a canalului n unitatea de timp, parametru numit lime de band (bandwidth). n cazul
transmisiilor analogice limea de band are n vedere intervalul din spectrul de frecvene ocupat.
La nivelul transmisiunilor digitale evaluarea cantitii de informaie transferate se face prin
volumul de informaie logic vehiculat. Laimea de band n frecven este direct corelat cu
volumul binar transferat. Din acest motiv, n cazul comunicaiilor digitale, limea de band a unui
canal se apreciaz prin cantitatea de informaie binar transferat ntr-o unitate de timp i se
msoar n bii/secund, bps (bits per second).
n transmisiunile de date se foloseste pe larg termenul throughput (debit util) care se refer la
limea de band efectiv, la un moment dat, atunci cnd are loc un transfer de date. Se poate
considera c termenul se refer la debitul informaional net sau la informaia efectiv transportat n
unitatea de timp, fr a lua n considerare i informaiile ajutatoare care nsoesc transferul
(delimitatori de secven, informaii necesare pentru identificare/corectarea erorilor, retransmisii
etc.). Factorii care intervin n transferul de date i influeneaz limea de band efectiv sunt
numeroi, fiind vorba de dispozitivele folosite, tipul de date transferate, topologia reelei,
echipamentul utilizat, numrul de utilizatori sau procese concurente, viteza sursei de date, congestii
de transmisie etc. Prin urmare, debitul binar net (throughput) este diferit de rata de transfer a
canalului de comunicaie. Evoluia calitativ a performanelor liniilor pentru transmisiuni de date
este prezentat n figura 5.8.a.
Evaluarea capacitii de transport a unui canal de comunicaie.
H.Nyquist a aratat (1924) ca, n cazul transmiterii unui semnal pe un canal de band limitat,
n absena zgomotelor, este posibil reconstruirea complet a acestuia prin extragerea unui numr de
eantioane pe secund egal cu dublul benzii. Eantionarea cu o frecven mai mare este inutil
deoarece componenetele suplimentare care ar putea fi recuperate au fost deja eliminate prin filtrarea
introdus de canal sau circuit.
Pornind de la acest raionament i considernd un semnal avnd mai multe nivele discrete,
Nyquist a demonstrat teorema care i poart numele care determin viteza maxim de transfer a
datelor printr-un mediu de band limitat. Pentru o banda de 3 KHz (banda telefonic vocal) i un
semnal cu dou nivele (binar) rezult o vitez maxim de 6 kbps.
a.
b.
Figura 5.8. a. Evoluia performanelor liniilor de comunicaie,
b. Utilizarea spectrului de frecven n comunicaii
Pentru a calcula capacitatea teoretic de transport a unui canal de comunicaie (viteza
maxim), n prezenta zgomotului, se foloseste teorema lui Schannon. Extinznd cercetarile lui
157
Nyquist, Claude Schannon a calculat capacitatea maxim de transport a canalului, n b/s pentru un
canal ideal caracterizat de o lime de band i un anumit raport ntre puterea de semnal i puterea
de zgomot.
Dac se urmrete transmiterea de date pe un canal telefonic de band limitat 300-3400Hz,
pe baza formulei lui Schannon se obtine o capacitate a canalului de 39,6 Kbps. Modemurile uzuale
de linie telefonica lucreaz cu viteze tipice de 33.6 kbps.
O astfel de transmisie se numete transmisie n band de baz. Numrul de modificri n
unitatea de timp ale formei de und folosit pentru semnalizare este aceiai ca n secvena de
succedare a biilor.
n cazul n care sistemul funcioneaz cu mai multe nivele de semnal, se opereaz cu noiunea
de rat de semnalizare (sau rata simbolurilor sau viteza de modulaie), care se definete ca numrul
simbolurilor transmise n unitatea de timp i care se masoar n [Bauds] sau [Bd] (dupa Emile
Baudot). Semnificaia fizic a ratei de semnalizare este numrul de schimbri (de nivel sau de alt
natur) ale semnalului. Dei formula lui Schannon determin capacitatea teoretic a unui canal, n
practic capacitatea scade i datorit altor factori, ca interferena dintre dou simboluri transmise
consecutiv, numit interferena intersimbol.
Mediile ghidate de transmisie utilizate n mod curent pot fi grupate n dou mari categorii:
medii ghidate i medii neghidate.
Mediile ghidate sunt cele care ofer o cale de propagare n afara creia semnalul nu poate s
existe ntr-o forma utilizabil, rmnnd dependent de mediu.
Principalele medii ghidate de transmisie sunt:
transmisiuni pe cabluri coaxiale
transmisiuni pe cabluri cu perechi de conductoare torsadate
- ne-ecranate: UTP (Unshielded Twisted Pairs)
- ecranate: STP (Shielded Twisted Pairs), ScUTP (Screened UTP) sau FTP (Foiled
Twisted Pairs)
transmisiuni pe fibr optic:
- multimod
- monomod
transmisiuni prin ghiduri de und
Transmisiunile neghidate sunt cele la care propagarea nu este restricionat la un spaiu fizic,
nelegnd-se de obicei prin aceasta propgarea n aer liber.
Principalele medii de transmisie neghidate sunt:
undele radio
microunde
radiaia laser
radiaia infraroie
Principiul transmisiei cu fibr optic, cabluri optice. Sistemele de comunicaie cu fibre
optice au o importan din ce n ce mai mare n transmisia i prelucrarea datelor deoarece ofer o
serie de avantaje suplimentare comparativ cu sistemele bazate pe transmisia informaiei pe cale
electronic. La sistemele optice semnalele sunt transmise sub forma de lumin (fotoni), fr sarcin
electric, i de aceea nu sunt afectate de cmpuri electrice cum sunt cele ce apar n echipamentele
de tensiune nalt sau n timpul descrcarilor electrice. Similar, cmpurile magnetice, cum sunt cele
produse de motoare i transformatoare, nu au efect asupra transmisiei optice. Nu exist probleme de
interaciune ntre canale nvecinate de comunicaie, deoarece fluxul luminos foarte redus ce s-ar
pierde din fibra optic este reinut n nveliul opac din jurul fibrei, asigurnd c semnalele optice
nu interfer chiar dac fibrele sunt foarte apropiate una de cealalta. Lipsa oricrei pierderi de semnal
din fibr spre exterior asigur i o securitate perfect a transmisiei, fiind imposibil msurarea
semnalului din exteriorul fibrei.
Natura fibrei optice asigur c aceasta poate funciona n orice condiii atmosferice i poate fi
imersat n majoritatea fluidelor. Masa, dimensiunile reduse i rezistena mecanic ridicat sunt
utile n majoritatea aplicaiilor. Izolarea electric perfect este un avantaj evident, oferind o libertate
158
de bii care reprezint datele ce se transmit pe canal se ncapsuleaz alturi de un grupaj de bii ce
servesc pentru adresare i regrupare la destinaie. Acest tren de bii se numete cadru sau frame.
Protocolul de comunicaie stabilete dimensiunea, structura, manipularea i controlul cadrelor
care se transmit pe reea.
Pentru a se asigura compatibilitatea conectrii i comunicaiei la nivelul reelei i ntre reele
pe lng standardizarea protocoalelor a mai fost necesar i o standardizare n plan hardware i
software astfel nct structura ierarhic pe nivele de comunicaie n reea s fie unanim acceptat i
implementat identic de toat lumea.
5.4.4.1. Modelul de referin ISO/OSI
Conectarea i comunicaia ntr-o reea de calculatoare respect o propunere dezvoltat de
Organizaia Internaional pentru Standarde.
Modelul OSI (Open Systems Interconnection) propune o soluie de conectare a sistemelor
deschise. El a fost elaborat de ctre Organizaia Internaional de Standarde (ISO - International
Standards Organization) ntre 1977 i 1994.
Proprietatea de "open" (deschis) a unui sistem se refer la faptul c sistemul este pregtit
pentru comunicaii cu orice alt sistem din reea fiind "deschis" pentru schimburi informaionale cu
alte gazde, pe baza unor regului (protocoale de comunicaie). Modelul ISO/OSI este structurat pe
apte nivele ierarhice. Fiecare nivel are un grad de abstractizare i funcii bine definite. Funciile
asociate fiecarui nivel sunt reflectate n standarde de comunicaie specifice. Aceast ierarhie de
protocoale de comunicaie se numete i stiv de protocoale.
Transferul informaional ntre dou aplicaii presupune parcurgerea ntregii stive de
protocoale ntr-un sens la surs i n sens invers la destinaie. Cele apte nivele propuse de modelul
ISO/OSI sunt prezentate n firgura 5.12.
Nivelul reea sau internetworking asigur conectarea reelelor prin intermediul protocolului
IP. Acesta asigur separarea i identificarea datagramelor, adresarea n Internet, circulaia datelor,
direcionarea lor ctre calculatoarele aflate la distan etc.
Calculatoarele conectate la aceeai reea LAN pot comunica local utiliznd protocoale
dedicate, de exemplu:
- X.25 pentru reele cu comutare de mesaje;
- X.21 pentru reele cu comutare de pachete;
- IEEE.802.x pentru reele locale avnd topologii diferite.
c) NETBIOS/NETBEUI
Sistemul de operare cel mai rspndit pentru reele Windows NT are capacitatea de a separa
serviciile de reea de protocoalele de comunicaie, fapt ce permite beneficiarilor s aleag dintre
protocoalele de comunicaie dorite TCP/IP, IPX/SPX i mai recent NETBEUI. Acest lucru este
posibil datorit componentei NETBIOS Network Basic Input/Output System creat n 1984 de
IBM.
Microsoft introduce suplimentar conceptul NETBEUI Netbios Extended User Interaface
pentru diferenierea n cadrul protocolului Netbios a funciilor cu care se opereaz la nivelul
protocolului de acces de funciile cu care se opereaz la nivelul serviciilor de reea, mbuntire
care aduce o mai bun flexibilitate configurrii comunicaiilor din reea. In cadrul acestui protocol
este disponibil i sistemul SMB System Message Blocks care implementeaz o serie de servicii de
partajre a fiierelor, imprimantei i alte servicii utilizator la nivelul aplicaiei.
5.4.4.2. Modelul client server
Iniierea i derularea schimbului de mesaje n reelele de calculatoare actuale se desfoar
dup noul model client - server.
Clientul este reprezentat de aplicaia sau mai simplu de programul care ruleaz pe staia de
lucru a utilizatorului. De exemplu, OUTLOOK EXPRESS este o aplicaie client. Clientul adreseaz
o cerere ctre server.
Serverul trebuie vzut ca o colecie de programe care ruleaz de regul pe un alt calculator
dect clientul. Condiia este ca aplicaia client s cunoasc adresa de server. Dac reeaua este o
reea complex cu mai multe servere atunci clientul este preluat mai nti de un server de nume.
Serverul identific i rezolv cererea clientului trimindu-i napoi acestuia rezultatul
prelucrrii. n exemplul anterior, OUTLOOK EXPRESS va primi de exemplu lista mesajelor din
cutia potal Inbox aflat pe serverul de e-mail.
Complexitatea cererilor a crescut datorit performanelor intrinseci ale serverelor tot mai
puternice i software-ul tot mai specializat. Se asistm la o difereniere a serverelor pe funcii, astfel
c o conectare se va realiza dup caz la un:
- File Server;
- Database Server;
- Communication Server ;
- E-Mail Sever;
- Application Server;
- Printer Server.
Modelul client - server se poate implementa n diverse variante n funcie de particularitile
mediului tehnologic al reelei.
5.4.5. Echipamente de interconectare
Problemele de interconectare a calculatoarelor, a reelelor LAN, MAN i WAN sunt
determinate de creterea numrului de staii dintr-o reea i din faptul ca platformele hardware i
software ale reelelor care se interconecteaz sunt diferite.
163
CAPITOLUL 6
PACHETUL MS OFFICE
6.1. GENERALITI
Microsoft Office sau MS Office este o suit de programe de birou create de firma Microsoft
Corporation, care sunt nsoite i de o aplicaie special suprapus lor pentru accesarea unitar simpl.
Versiunile de MS Office pn la MS Office 2003 inclusiv folosesc nativ formate de fiier binare,
proprietare, cu extensiile ".doc" (pentru Microsoft Word), ".xls" (Microsoft Excel), ".ppt" (Microsoft
PowerPoint), etc. ncepnd cu MS Office 2007 s-a trecut la un format bazat pe XML, incompatibil
napoi (cu versiunile mai vechi), numit Office OpenXML (OOXML).
Microsoft a naintat la organizaia ISO o propunere de standardizare a formatului Office
OpenXML (OOXML) - propunere care nc nu a fost adoptat, deoarece a primit critici serioase
d.p.d.v. tehnic.
Principalul competitor de pia al formatelor de fiier Microsoft este formatul "OpenDocument
Format" (ODF), care a fost adoptat ca standard oficial ISO n anul 2006 (standardul ISO/IEC
26300:2006). Formatul OpenDocument este folosit de o categorie larg de programe, cum ar fi suita
liber OpenOffice.org, Sun StarOffice, IBM Lotus Notes sau KOffice.
Totui, utilizatorii de MS Office pot utiliza i fiierele de format OpenDocument, cu condiia s
instaleze plugin-ul gratuit ODF, creat de firma Sun Microsystems.
nc de la primele versiuni ale sale Microsoft Office a fost localizat (adaptat i tradus) n limba
romn. Prima versiune localizat a fost Office '97, care a beneficiat de utilitarele de corectare i de
ajutor n romn, dei meniurile i casetele de dialog nu fuseser nc traduse. Office 2000, Office XP,
Office System 2003 i Office System 2007 au fost complet localizate n limba romn.
Pentru ultima versiune sunt comercializate mai multe forme care conin dotri diferite: Office
Basic, Office Standard, Office Home, Office Small Business, Office Professional, Office Professional
Plus Office Entreprise.
Pachetul de programe Microsoft Office conine mai multe aplicaii:
Microsoft Word;
Microsoft Power Point;
Microsoft Outlook;
Microsoft Excel;
Microsoft Access.
1. Procesorul de texte Word este un program puternic pentru prelucrarea textelor i
organizarea lor sub forma de tipritur: comunicri, brouri, etc.
2. Programul de grafic Power Point permite realizarea prezentrilor pentru retroproiector,
proiecii utiliznd calculatorul.
3. Programul pentru gestionarea foilor de calcul Excel este un program care permite
prelucrarea datele sub form de tabele i reprezentarea lor grafic.
4. Sistemul de gestiune a bazelor de date Access este un program specializat n construirea i
ncrcarea bazelor de date i conine proceduri de consultare i interogare rapida a datelor
nregistrate.
5. Aplicaia Outlook permite organizarea corespondentei i planificarea activitilor ntr-o
agend.
Folosirea aplicaiilor din pachetul Microsoft Office are urmtoarele avantaje:
Aplicaiile lucreaz folosind aceleai concepte i metode.
Aplicaiile comunic ntre ele prin intermediul acelorai proceduri i nu apar probleme de
incompatibilitate.
Aplicaiile din pachetul Microsoft Office prezint urmtoarele avantaje:
Sistemul de meniuri conine pentru toate aceste 5 aplicaii aceleai 9 meniuri verticale: File,
Edit, View, Insert, Format, Tools, Table / Date / Draw, Window, Help.
165
Folosesc aceleai taste scurtturi (shortcut) pentru opiunile comune din meniuri: Ctrl + C
pentru Copy, Ctrl + N pentru New, etc.
Informaiile suplimentare despre fiierele de date administrate de fiecare aplicaie sunt
aceleai.
Folosesc rigle pentru poziionarea mai uoar a fiierului de date.
Aplicaiile Microsoft Office dispun de instrumente de ajutor sub form de:
Proceduri expert _ Wizard sunt instruciuni prin care sunt realizate fiiere de stare de date
complexe;
Previzualizri Previews, arat pe ecran aspectul fiierului de date aa cum vor fi listate
la imprimant;
Demonstraii Demos arat, la cerere, cum trebuie procedat la execuia unei lucrri mai
complexe.
Microsoft Office Professional 2007 este o suit complet de programe software de productivitate
i de baze de date, care ajut la economisirea timpului i lucrul organizat. Are caracteristicile noi, ca
meniuri mbuntite care afieaz instrumentele corecte atunci cnd sunt necesare, bare de
instrumente noi, bazate pe activiti, care afieaz automat comenzile i opiunile care se pot utiliza,
facilitnd i accelernd gsirea caracteristicilor software-ului necesare. Caracteristica Examinare n
direct faciliteaz probarea modificrilor nainte ca acestea s fie aplicate.
Office Professional 2007 are urmtoarele avantaje:
- meniuri i comenzi mbuntite, care prezint instrumentele necesare atunci cnd trebuie;
- are programul Cutarea instantanee;
- are filtre mbuntite pentru corespondena nedorit (i anti-nelciune).
- creaz documente, foi de calcul i prezentri cu aspect profesionist, gata pentru publicare,
fr timp pierdut pentru formatri i stilizri;
- cu activiti n Microsoft Office Outlook 2007 pot s apar i n calendar;
- exist o nou bar de operare Office Outlook 2007, care ofer o prezentare a activitilor,
informaiilor de calendar i a mesajelor de pot electronic semnalizate pentru urmrire;
- exist noi abloane i instrumente din Word 2007 care faciliteaz reutilizarea coninutului,
aplicarea formatrilor profesioniste i examinarea rapid a modificrilor;
- apar noi instrumente din Excel 2007 pentru filtrarea, sortarea i vizualizarea informaiilor,
pentru analiza mai eficient datelor de afaceri;
- se pot centraliza toate informaiile de contact, de prospectare i despre clieni - inclusiv
istoricul comunicrilor, valoarea estimat a vnzrilor, probabilitatea ncheierii tranzaciilor
i activitile - utiliznd Office Outlook 2007 cu Business Contact Manager;
- se pot nregistra ntr-un singur loc toate tipurile de comunicri cu fiecare client - inclusiv
pota electronic, apelurile telefonice, ntlnirile, notele i documentele;
- se pot estima vnzrile i stabili prioritatea activitilor, utiliznd tabloul de bord
particularizabil din Office Outlook 2007 cu Business Contact Manager;
- se poate lucra offline pe laptop sau pe PDA i apoi s sincroniza datele la revenirea la birou;
- se pot urmri ntr-un singur loc informaiile legate de proiect (lucrare) - inclusiv pota
electronic, ntlnirile, notele, activitile i documentele - i atribuii cu uurin persoane
de contact, clieni i activiti altor persoane, utiliznd Office Outlook 2007 cu Business
Contact Manager;
- exist o bibliotec de aplicaii predefinite de urmrire a bazelor de date pentru cele mai
uzuale procese de afaceri care este inclus n Office Access 2007;
- se pot gestiona bazele de date Office Access 2007 mai intuitiv, utiliznd interfaa utilizator
Microsoft Office Fluent i noua vizualizare foaie de date, care se aseamn cu Excel;
- se pot crea rapoarte n Office Access 2007 printr-un singur clic i utiliza instrumente
mbuntite pentru a filtra, sorta, grupa i subtotaliza date;
- se pot sintetiza informaiile i gsi informaiile necesare utiliznd vizualizrile PivotTable i
PivotChart, utiliznd Office Excel 2007.
Pachetele lingvistice Office se adreseaz nevoilor persoanelor care utilizeaz mai multe limbi i
care creeaz sau editeaz n mod regulat documente i prezentri n limbi diferite. Ele ajut
organizaiile care implementeaz aplicaii de birou n medii n care PC-urile sunt partajate de vorbitori
166
de limbi diferite sau ajut firmele s ofere servicii clienilor din ri diferite. Pachetele lingvistice
furnizeaz flexibilitatea de comutare a ntregii experiene a utilizatorului, incluznd meniurile i
ajutorul sau utilizarea numai a instrumentelor de verificare, cum ar fi verificatorul ortografic,
dicionarul i lexiconul n oricare dintre 37 de limbi diferite.
Instrumentele de verificare a documentelor includ: Verificatoare ortografice, Verificatoare
gramaticale i de stil, Lexicoane, Despritori n silabe, Liste de autocorecie, Capaciti de rezumare
automat, Dicionare de traducere, Editori metod de intrare (IME) pentru limbile est-asiatice.
Se pot schimba limba interfeei cu utilizatorul pentru urmtoarele programe 2007 Microsoft
Office System: Microsoft Office Word 2007, Microsoft Office Access 2007, Microsoft Office Excel
2007, Microsoft Office Groove 2007, Microsoft Office InfoPath 2007, Microsoft Office OneNote
2007, Microsoft Office Outlook 2007, Microsoft Office PowerPoint 2007, Microsoft Office Project
2007, Microsoft Office Publisher 2007, MS Office SharePoint Designer 2007, MS Office Visio 2007.
n plus, meniurile i ajutorul pentru instrumentele suitei Microsoft Office 2007, cum ar fi Clip
Organizer, Document Imaging, Document Scanning i Picture Manager, se localizeaz cnd se
activeaz pachetele lingvistice.
Pachetele lingvistice Office se pot conecta la abloane gratuite Office Online n limba interfeei
cu utilizatorul. abloanele Office Online sunt uor de instalat, adaug proiectri predefinite i resurse
pentru afaceri la aplicaii i documente.
O colecie a tuturor pachetelor lingvistice Office plus un pachet lingvistic n limba englez este
disponibil ca Microsoft Office Multi-Language Pack 2007.
Pe lng limbile de baz, instrumentele de verificare a documentelor sunt incluse pentru limbi
suplimentare nsoitoare.
Toate elementele pachetului MS Office prezint mbuntiri semnuficative fa de versiunile
anterioare.
n continuare se vor trece n revist principalele elemente ale pachetului MS Office i
caracteristicile semnificative ale acestora, indiferent de versiunea abordat.
6.2. EDITORUL DE TEXTE WORD
Pentru prelucrarea simpl a textelor pot fi folosite editoarele de texte Notepad i Word pad
care se gsete n folder-ul (dosarul) Accessories. Fiierele cu texte au extensia cu .txt. Acest sistem
de lucru este mai puin folosit n prezent.
Pentru prelucrarea documentelor, care implicit conin i texte, se folosete cu precdere
programul Microsoft Word, ce poate fi activat dup clicare cu mouse-ul a butonului Start i apoi a
butonului Microsoft Ofice/Programs i n final activarea butonului Microsoft Word.
Aa cum s-a prezentat mai sus, cele 9 meniuri verticale utilizate de Microsoft Word sunt:
Files, care conine opiuni pentru lucrul cu fiierele pe care le creeaz i le actualizeaz
programul;
Edit, care conine opiuni pentru operaii de editare;
View, care conine opiuni pentru prezentarea dup dorin a paginii de lucru pe ecran;
Insert, asigur introducerea anumitor date, paginaii etc.;
Format, care asigur formatarea i aezarea paragrafelor n cadrul paginii;
Tools, care conin o serie de faciliti pentru lucrul cu documentele;
Table, folosit pentru realizarea de tabele;
Window, asigur faciliti de folosirea ecranului;
Help, pentru asigurarea de informaii suplimentare, la cerere, de folosirea programelor
windows.
167
de pe bara de titlu a
Pentru schimbarea numrului de fiiere din list, se selecteaz Tools, Options, General; se scrie
un alt numr n lista Recently Used File i aceast opiune trebuie s fie bifat.
5. Tipul de deschidere a unui fiier poate fi: deschidere propriu-zis (Open), forma ReadOnly (Open Read-only), deschiderea unei copii (Open as Copy), deschiderea n browser
(Open in Browser).
I. Cutarea fiierelor
Un fiier poate fi cutat dup nume, extensie, dup informaiile introduse la Summary.
Paii sunt:
1. File, Open, Advanced
2. Din lista Property se alege proprietatea dup care se face cutarea; n lista Condition se
alege condiia, iar n lista Value se scrie valoarea
3. n lista Look In se scrie calea ctre fiier; pentru cutare i n subdirectoare, se bifeaz
opiunea Search Subfolders
4. Clic butonul Add to List; se pot aduga criterii suplimentare de cutare
5. Se apas butonul Find Now; toate fiierele ce ndeplinesc criteriile date, vor apare n
list, n fereastra Open
Pentru salvarea informaiilor folosite pentru o cutare, se apas butonul Save Search, se d un
nume cutarii respective; OK.
J. Vizualizarea proprietilor fiierelor
Paii sunt:
1. Pentru vizualizarea proprietilor fiierului deschis, din meniul File se alege Properties. Va
apare fereastra cu proprietile fiierului deschis.
2. Pentru vizualizarea proprietatilor fisierelor de pe disc: se deschide fereastra Open i se
execut clic pe butonul View
K. tergerea fiierelor
Paii sunt:
1. Din meniul File se alege opiunea Open sau se acioneaz direct butonul Open de pe
bara de instrumente standard.
2. Din lista Look In se selecteaz discul i directorul unde se afl fiierul.
3. Se execut clic-dreapta pe numele fiierului; se alege comanda Delete din meniul
desfurat sau se acioneaz butonul Delete
. Un fiier deschis nu poate fi ters.
4. n fereastra de mesaj Confirm File Delete se alege Yes pentru confirmarea tergerii.
171
L. nchiderea fiierelor
Paii sunt:
1. Pentru nchiderea unui document se apas butonul Close de pe bara de titlu sau se folosete
comanda Close din meniul File sau combinaia de taste Ctrl+F4. Pentru nchiderea tuturor
documentelor deschise, se ine apsat tasta Shift apoi se alege comanda Close All din
meniul File.
2. Dac au fost operate schimbri n document, de la ultima deschidere sau salvare, la
comanda Close apare o fereastra de dialog cu opiuni de salvare a schimbrilor; se apas
Yes pentru salvare, No pentru nchidere fr salvarea schimbrilor, Cancel pentru
rentoarcerea la document.
M. Salvarea fiierelor
Numele sub care sunt salvate fiierele (calea complet i numele fiierului) pot conine pn la
255 de caractere; nu pot conine urmtoarele caractere: /, \, >, <, *, ., ?, , |, :, ;.
Fiierul salvat va avea extensia .DOC.
Paii sunt:
1. Din meniul File se alege opiunea Save As sau Save
2. La prima salvare a documentului, apare fereastra de dialog Save As.
3. n caseta Save In se selecteaz discul i directorul unde va fi salvat fiierul
4. n caseta File Name se va denumi fiierului apoi se apas butonul Save.
5. Pentru salvarea aceluiai document cu un alt nume, se alege Save As din meniul File; n
continuare, se urmeaz paii de mai sus i se redenumete fiierul.
6. Pentru salvarea fiierului n alt format, din lista Save As Type se alege tipul dorit.
Dac fiierul a fost o dat salvat i ulterior au fost aduse completri sau modificri i se dorete
salvarea acestuia n noua form, se va alege din meniul File opiunea Save sau se va aciona direct
butonul Save
Butonul Print
Butonul Close
nchide modul de vizualizare Print Preview.
S. Imprimarea documentelor
Paii sunt:
1. Din meniul File se alege opiunea Print;
2. Apare fereastra Print; n lista Name se alege numele imprimantei folosite;
3. Se execut clic pe butonul Properties pentru vizualizarea ferestrei cu opiunile
imprimantei alese; se fac modificrile dorite i se acionez pe OK;
4. Din fereastra Print se aleg opiunile pentu imprimarea documentului:
Din lista Print What se alege:
173
5. Butonul Custom afieaz o fereastr n care se selecteaz un nume de cmp din lista Name,
apoi se alege tipul de informaie ce se stocheaz n cmp; dac tipul e numr, trebuie
introdus o valoare de la 1 la 9 n cmpul Value.
6. Toate modificrile aduse n aceste ferestre se certific cu butonul OK.
U. Gruparea documentelor folosind Microsoft Binder
Mai multe fiiere create n Word, Excel, ori PowerPoint, avnd acelai subiect, pot fi grupate cu
ajutorul aplicaiei Microsoft Binder din grupul Office.
Paii sunt:
1. Deschiderea aplicaiei de la butonul Start, se intr n meniul Programs i se alege Microsoft
Office Tools i mai departe Microsoft Binder.
175
2. n fereastra numit Binder 1 se deschide meniul Section i se alege Add from File .Apare o
nou fereastr n care se pot selecta unul sau mai multe documente care se vor doresc a se
grupa. Se acionez butonul Add.
3. Dup adugarea tuturor documentelor, n fereastra Binder 1, deschidem meniul File i
selectm opiunea Save Binder As. n noua fereastr se va alege calea unde va fi salvat i
va fi denumit gruparea de fiiere, ce se comport ca un alt fiier.
4. Pentru printarea tuturor fiierelor din grupare: File, Print Binder
Cnd este editat un document din fiierul Binder, schimbrile vor fi salvate doar n acest document,
nu i n original.
V. abloane
abloanele sunt fiiere ce conin pri dintr-un document i aranjamente specifice unui anumit
tip de document; pot conine text, imagini, grafice, formatare, stiluri, macrouri, cmpuri, meniuri
personalizate, combinaii de taste pentru anumite comenzi. Ataarea unui ablon la document
Paii sunt:
1. Se deschide documentul
2. Din meniul Tools se alege opiunea Templates and Add-Ins. Apare fereastra cu acelai
nume.
3. Acionnd butonul Attach apare fereastra Attach Template; se selecteaz discul i
directorul unde este fiierul ablon, apoi se selecteaz ablonul. Dac se dorete
folosirea stilurilor din ablon, se bifeaz opiunea Automatically Update Document
Styles.
X. Crearea de documente ablon
Paii sunt:
1. Se deschide documentul
File, Save As; n caseta de opiuni Save as Type se selecteaz Document Template
2. ablonul va fi salvat n directorul unde sunt toate abloanele; poate fi salvat i n alt director
(numele directorului reprezint numele butonului din fereastra New)
3. Se scrie numele fiierului n caseta File Name i se acionez Save.
Y. Crearea unui document bazat pe un ablon
Paii sunt:
1. Din meniul File se selecteaz New. Se selecteaz opiunea Template i apoi tipul de
document ce se dorete a fi creat ca ablon.
2. Se acioneaz butonul OK.
176
Dac se creaz un document nou prin combinaia de taste Ctrl+N sau executnd clic pe butonul
New
din bara de instrumente standard, nu va fi afiat ferestra New; noul document va fi bazat pe
ablonul normal.
W. Help
Paii sunt :
1. Pentru a obine mai multe informaii despre un buton sau o linie de meniu se apas butonul
din bara de instrumente standard sau combinaia de taste Shift+F1 sau se alege opiunea
What is This? din meniul Help. Cursorul mouse-ului ii modific forma cu simbolul indicat
pe buton.
177
2. Se executClic pe butonul sau linia de meniu pentru care se dorete ajutor; va apare o
fereastr cu explicaii
3. Clic n fereastra documentului pentru a o ndeprta de pe ecran.
AA. Help: Coninut i Index
n orice loc poate fi accesat Help-ul pentru a da asisten, a arta definiii sau sfaturi pentru
realizarea anumitor aciuni mai repede. Facilitile Contents i Index din fereastra Microsoft Word
Help d informaii detaliate despre un subiect.
Paii sunt:
1. Din meniul Help se alege opiunea Microsoft Word Help;
2. n fereastra care se deschide alegei unul dintre subiectele expuse sau tastai n caset
ntrebarea.
3. Se execut Clic pe butonul Search.
4. n urmtoarea fereastr care va apare executnd clic pe butonul show se vor vizualiza i
butoanele Contents i Index;
5. Inchiderea ferestrei Help se face cu butonul Close.
Se folosete butonul Index, dac se dorete vizualizarea unor cuvinte specifice care sunt aranjate
ntr-un index.
sau
5. Search.
AD. Asistentul Office
Este o alt facilitate a Office-ului ce furnizeaz sfaturi, informaii; este un program interactiv ce
furnizeaz ajutor n timpul lucrului.
Poate fi nchis pentru a dispare de pe ecran: se execut clic pe butonul-dreapta pe Office
Assistant i se alege din meniu opiunea Hide.
Pentru specificarea condiiilor n care s apar asistentul: se execut clic pe butonul-dreapta pe
Office Assistant i se alege opiunea Options. n aceast fereastr se vor bifa cele ce se doresc.
Pentru a se schimba aspectul asistentului: clic pe butonul-dreapta pe Office Assistant i se alege
opiuneaChoose Assistant. Defilarea se va face cu butoanele Next si Back i pentru confirmarea
alegerii se activeaz butonul OK.
Fereastra Excel seamn destul de mult cu cea a programului Word. Exist ns i diferene
legate de unele butoane i mai ales de organizarea documentului pe linii i coloane.
Un document Excel se numete registru sau caiet de lucru (workbook) i e format din mai
multe foi de lucru (Worksheets), la nceput trei. Fiecare foaie de lucru e mprir n linii i coloane.
Coloanele sunt marcare cu litere mari (A - IV), iar liniile sunt numerotate (1 16384). La intersecia
unei linii cu o coloan se formeaz o celul. Celula este unitatea de prelucrare a programului Excel.
Spre deosebire de Word, barele de derulare sunt un pic mai complexe. n partea stnga-jos a
ferestrei exist patru butoane suplimentare pentru derulare:
, pentru deplasare la nceputul
foii de lucru, o poziie la stnga, o poziie la dreapta i respectiv deplasare la sfritul foii de lucru.
Introducerea unei formule nseamn definirea valorii din celul ca rezultat al unei operaii. O
formul poate fi introdus de la tastatur. Formula este o succesiune operand-operator care ncepe i se
termin cu operanzi. De multe ori n calcule sunt necesare valorile din celelalte celule. Ele pot fi
folosite doar scriind adresa lor n formul. Pe scurt, adresa unei celule este format din numele liniei
urmat de numrul coloanei pe care se afl celula. Vom aprofunda noiunea de adres mai trziu.
Un alt mod de construire a unei formule e urmtorul:
1. selectm celula n care vrem s scriem formula
2. tastm semnul =
3. selectm prima celul care va intra n calcul
4. tastm operatorul dorit
5. selectm urmtoarea celul
6. repetm paii 4 i 5 de cte ori e necesar
7. apsm tasta Enter
Astfel, se calculeaz automat valoarea i e scris n celul.
Operatorii folosii n celule sunt cei aritmetici: +, - , *, / , % (procent), ^ (ridicare la putere), cei
relaionali: <, >, <=, >=, =, <> (diferit). Ordinea lor de aplicare este cea cunoscut din matematic. Pe
lng acetia exist i operatorul & pentru concatenarea (lipirea) de iruri de caractere.
S revenim acum asupra adreselor. Putem adresa o celul cum am vzut mai sus sau un grup
alturate (sub form de dreptunghi) de celule scriind adresa celulei din colul stnga sus i cel al celulei
din colul dreapta jos separate prin semnul : , de exemplu A2:B4.
Exist trei tipuri de adrese:
1. Adrese relative
Adresa relativ indic formulei cum s gseasc celula pornind de la celula care conine formula.
Adresa relativ unei celule e format din numele liniei urmat de numrul coloanei.
Sunt cel mai des utilizate pentru c permit extinderea unor formule la alte celule. DE exemplu
dac n celula C1 avem formula =A1+B1, dac copiem formula n C2 suma va fi =A2+B2, n C3 va fi
=A3+B3, etc. Acest lucru se poate face cu drag and drop pe colul dreapta-jos al celulei C1. Aceasta
este o facilitate important de editare prin care putem la fel s umplem mai multe celule cu aceeai
valoare sau cu valori consecutive sau care se pot obine printr-o regul simpl, de exemplu.
181
Adrese absolute
Adresele absolute spun poziia exact a celulei n foaia de lucru i se scriu cu semnul $ naintea
coloanei i naintea liniei (exemplu $E$3). O operaie de felul celor de mai sus nu modific formula.
2. Adrese mixte
Adresele mixte spun cum s fie gsit o celul combinnd cele dou tipuri de adrese de mai sus
(exemplu $A2, A$2).
La introducerea unei formule, n celul e afiat valoarea calculat cu acea formul, iar n bara
de formule e scris formula. Modificarea poate fi fcut doar n aceast bar de formule.
Copierea unei formule cu o succesiune de comenzi Copy Paste are ca rezultat copierea
formulei. Dac adresele folosite sunt relative atunci ele se modific n funcie de locul unde am copiat
formula.
Dac programul Excel afieaz ntr-o celul o valoare precedat de semnul #, atunci ea e greit
i nseamn c formula sau datele din ea nu sunt corecte.
tergerea informaiilor din celule se face selectnd celulele si apoi cu tasta Delete.
tergerea celulelor (nu doar a informaiilor din ele) se face cu opiunile submeniului tergere
(Delete) din meniul Editare (Edit):
- (Shift Cells Left) terge celulele i le deplaseaz pe cele rmase spre stnga
- (Shift Cells Up) terge celulele i le deplaseaz pe cele rmase n sus
- (Entire Row) terge o linie i le deplaseaz pe cele de mai jos cu o poziie n sus
- (Entire Column) terge o coloan i le deplaseaz pe cele din dreapta spre stnga
C. Operaii de cutare
Programul Excel permite cutarea unei valori i eventual nlocuirea ei cu alta. Aceste operaii se
realizeaz n caseta de dialog Gsire i nlocuire (Find and Replace) care se deschide cu opiunea
Gsire(Find) sau nlocuire (Replace) din meniul Editare (Edit).
Ea este o caset de dialog cu o seciune pentru cutare i una pentru cutare i nlocuire. n ele se
precizeaz textul cutat i cu ce s se nlocuiasc, precum i opiunile de cutare (doar celule ntregi,
diferenierea sau nediferenierea literelor mici de cele mari) i cum s se fac cutarea (pe rnduri sau
pe coloane). Cutarea se lanseaz cu butonul Urmtorul gsit (Find Next), iar nlocuirea cu (Replace)
sau (Replace All).
De asemenea se poate preciza partea din document n care s se fac aceste operaii: n tot
documentul, sau doar n foaia curent.
n precizarea informaiei cutate se pot folosi caracterele de nlocuire ? i * exact ca n Windows.
D. Formatarea celulelor
Formatarea celulelor i a informaiilor din ele, a coloanelor, a rndurilor i a ntregii foi de lucru
se face cu opiunile meniului Formatare (Format).
El are urmtoare opiuni:
Rnd (Row) submeniu pentru alegerea caracteristicilor rndului cu opiunile:
- Height nlimea rndului
- AutoFit autoredimensionarea
- Hide ascunde rndul
- Unhide face rndul vizibil
182
drop pe zona care separ numerele rndurilor i respectiv pe zona care separ marcajele (denumirile)
coloanelor. Aici mouse-ul i schimb cursorul sgeat n cursor de redimensionare.
E. Tiprea documentului
Tiprirea documentului este asemntoare cu cea din Word. Ea poate fi precedat de formatarea
paginilor care se face cu opiunea Iniializare pagin (Page Setup) din meniu Fiier (File).
3. Lansarea tipririi cu opiunile stabilite anterior se face cu butonul Ok din caseta de dialog
Imprimare (Print) deschis anterior.
F. Sortarea datelor
Ordonarea celulelor dintr-o foaie de lucru se face selectnd celulele i apoi cu opiunea Sort din
meniul Data. Aceasta deschide o caset de dialog n care alegem coloanele dup care s se fac
ordonarea i felul ordonrii, cresctoare sau descresctoare. De asemenea se poate preciza dac se ia i
capul de table sau nu. Ordonarea poate fi lansat i cu unul dintre butoanele
184
4.000
3.000
2.000
Series1
1.000
Vanzare
sem 1
Media
Adunare
Scdere;
numr negativ
nmulire
mprire
Procent
Ridicare la putere
185
3+3
31
1
3*3
3/3
20%
3^2
CAPITOLUL 7
LIMBAJE DE PROGRAMARE
7.1. DOMENII DE UTILIZARE ALE CALCULATOARELOR
Principalele domenii de utilizare ale calculatoarelor sunt:
prelucrarea datelor,
proiectare,
simulare,
conducerea proceselor.
Prelucrarea datelor cuprinde mai multe aspecte:
- nregistrarea,
- selectarea,
- sortarea,
- ordonarea,
- prelucrarea matematic,
- analiza,
- rezumarea,
- raportarea informaiilor.
Selectarea datelor se refer la asocierea unui element de informaie cu un ansamblu de
caracteristici date. De exemplu: o indicaie bibliografic, un tip de scul sau un tip de ascuire.
Sortarea reprezint separarea unei liste n pri (clase) care se exclud reciproc. De exemplu:
seleca fiierelor cu extensia .exe sau selecia unor articolele unui autor.
Ordonarea reprezint aranjarea unei liste n conformitate cu un sistem liniar (oarecare,
stabilit). De exemplu: ordonare dup criteriu alfabetic sau cresctor.
Prelucrarea matematic reprezint efectuarea operaiilor matematice indicate prin program
asupra informaiilor introduse.
Analiza, rezumarea i raportarea informaiilor se refer la efectuarea programat a acestor
operaii asupra informaiilor pe care le poate furniza n urma prelucrrii prealabile a datelor.
Rezultatele sunt analizate, iar prin rezumare se rein cele care urmeaz a fi raportate prin
sistemul de ieire al datelor din calculator.
Utilizarea calculatoarelor n procesele de proiectare constituie o ramur preponderent
inginereasc i cuprinde un spectru larg de probleme care pot fi abordate.
Proiectarea reprezint aplicarea creatoare a unui fond de cunotiine la realizarea unor
produse utile.
Proiectul reprezint din punct de vedere semantic o lucrare tehnic ntocmit pe baza unei
teme date, cuprinznd :
calcule tehnico-economice,
desene,
instruciuni necesare executrii unei construcii, maini, instalaii, tehnologii etc.
Clasificarea problemelor de proiectare:
1. probleme structurale,
2. probleme nestructurale,
3. probleme semisructurale.
1. Problemele structurale au urmtoarele caracteristici:
variabile cunoscute,
relaii funcionale dintre variabile bine definite,
este posibil o rigurozitate complet (matematic),
algoritmi precii.
186
Toate fiierele cu extensia exe sau com de sub sistemul de operare MS-DOS sunt programe n
cod min. n timpul executrii, se ruleaz noul program generat n L0 i acesta este cel care are
controlul calculatorului.
Limbajul de pe nivelul cel mai de jos este cel mai simplu iar limbajul de pe nivelul cel mai
nalt este cel mai sofisticat. Cele mai multe calculatoare moderne sunt formate din dou sau mai
multe niveluri.
Vom analiza un calculator cu ase niveluri.
Nivelul 0, corespunde structurii hardware a mainii care execut instruciunile n limbaj
main de pe nivelul 1. Pentru corectitudine trebuie menionat un nivel aflat sub nivelul 0, care tine
de domeniul ingineriei electronice i se numete nivelul echipamentelor electronice (device level).
La acest nivel se gsesc tranzistoarele cu ajutorul crora se pot proiecta circuitele integrate i
respectiv circuitele logice. Tranzistoarele precum i alte componente electronice sunt considerate
primitivele de nivelul cel mai sczut pentru proiectanii de calculatoare.
Se poate cobor la un nivel i mai de jos, dar acesta se ocup cu tehnologia siliciului, adic a
fabricrii componentelor electronice.
Pentru nivelul logic digital (digital logic level), sunt de interes obiectele numite pori logice.
Ele sunt construite din componente analogice, cum ar fi tranzistoarele, i alctuiesc circuitele
digitale. Fiecare poart are una sau mai multe intrri digitale (0 sau 1) i calculeaz o funcie logic
drept ieire, cum ar fi SI sau SAU logic. Cteva pori pot fi combinate pentru a forma o memorie de
un bit. Memoriile de 1 bit pot fi combinate n grupuri de 16, 32 sau 64 pentru a forma registre.
Nivelul 1 sau Nivelul microarhitecturii (microarhitecture level) conine o colecie de 8 pn la
64 de registre de dimensiune cuprins ntre 8 i 32 de bii, formnd o parte din memoria intern a
procesorului, i un circuit numit UAL (Arithmetic Logic Unit) unitate aritmetic i logic care
poate executa operaii aritmetice i logice simple.
Registrele sunt conectate la UAL pentru a forma o cale de date (data path) prin care se
transmit datele. Operaiile principale ale cii de date constau n selecia a unu sau dou registre
asupra crora opereaz UAL, de exemplu le adun i rezultatul se memoreaz ntr-unul dintre
registre.
Ciclul cii de date const n citirea operanzilor din registre i trimiterea lor prin magistralele
interne la unitatea UAL i la alte uniti funcionale pentru execuie.
Calea de date este controlat de un circuit de comand (command circuit), a crui sarcin
este s gestioneze toate activitile microprocesorului, ncepnd din momentul n care acesta este
alimentat cu curent i are semnal de tact.
Circuitul de comand genereaz toate semnalele de comand pentru activarea elementelor
interne i externe procesorului.
Operaiile principale ale circuitului de comand sunt:
-citete din memorie instruciunea;
-o decodific pentru a ntelege operaiile necesare execuiei;
-programeaz toate activitile interne i externe pentru execuia instruciunii.
Pe anumite calculatoare circuitul de comand este un program (soft) numit microprogram,
iar pe alte calculatoare (n special pe cele moderne) este implementat prin hardware.
Pe calculatoarele cu control software al cii de date, microprogramul este un interpretor al
instruciunilor de pe nivelul 2.
Interpretorul extrage, examineaz i execut instruciunile una dup alta, folosind pentru
aceasta calea de date. Operaiile logice pe care le poate executa sunt: SI, SAU, SAU EXCLUSIV,
COMPARATIE i COMPLEMENTARE.
Cu toate c setul de operaii pare foarte restrns, dac se cunote ndeajuns bazele analizei
numerice se pot programa calcule tiinifice foarte complexe. Totul const n cunotinele
matematice ale programatorului i abilitatea programrii instruciunilor de baz.
Nivelul 2 reprezint un nivel numit nivelul arhitecturii setului de instruciuni sau nivelul
ISA - Instruction Set Arhitecture. Fiecare productor de calculatoare (microprocesoare) public un
manual pentru microprocesoarele pe care le fabric, numit " Manualul de referin al limbajului
192
- o parte de software care const din: algoritmi (instruciuni detaliate care spun cum se poate
face un anumit lucru) i modelarea lor cu ajutorul limbajelor de programare, adic programe.
Programele pot fi memorate pe dispozitive de stocare a datelor, dar esena software-ului este
setul de instruciuni care formeaz programul i nu mediile fizice pe care acestea sunt memorate.
n cazul primelor calculatoare exist o diferen clar ntre hardware i software.
Cu timpul linia de demarcaie dintre cele dou a devenit foarte flexibil, n special datorit
adugarii, eliminrii sau compactrii unor niveluri odat cu evoluia calculatoarelor. Hardware-ul i
software-ul sunt logic echivalente.
Orice operaie executat prin software poate fi, de asemenea, construit direct n hardware, de
preferin dup ce este destul de bine neleas. Reversul este de asemenea adevrat: orice
instruciune executat de hardware poate fi simulat prin software. Decizia de a realiza anumite
funcii prin hardware i altele prin software se bazeaz pe factori cum ar fi costul, viteza, sigurana
n funcionare i schimbrile ulterioare avute n vedere, spre exemplu: module grafice implementate
hardware, reele neuronale implementate hardware sau o gam larg de module folosite pe
calculatoarele din tehnica militar.
7.3. GENERALITI DESPRE PROGRAMAREA CALCULATOARELOR
Lumea limbajelor de programare este indisolubil legat de evoluia, ntr-un interval de timp
destul de redus, al sistemelor de calcul electronice. Dependente de iniiativa i capacitatea omului
de a le structura capabilitile fundamentale, sistemele de calcul electronice nu se pot exprima dect
n prezena unor sisteme de comunicaie cu acesta.
Potenialul de calcul al unui sistem de calcul electronic, privit ca main fizic, poate fi
valorificat i chiar amplificat, cu ajutorul suportului oferit de mainile virtuale (sisteme de
operare, sisteme de gestiune a bazelor de date, limbaje de programare, medii vizuale de
programare, etc.)
Pentru a nelege relaia sistem de calcul - limbaj de programare, reamintim c, potrivit
arhitecturii von Neumann, un sistem de calcul electronic are componentele: sistemul de
introducere a datelor, unitatea central de prelucrare i comand, memoria principal, memoria
secundar i sistemul de extragere a rezultatelor.
Limbajul prin care se transmit datele ctre un sistem de calcul electronic, la nivelul cel mai de
jos se numete limbaj main. Alfabetul unui astfel de limbaj este format de simboluri aparinnd
mulimii {0,1}.
Enunurile formulate de cunosctorii limbajelor main i adresate unitii centrale de
prelucrare i comand n vederea decodificrii i execuiei se compun din ordine (comenzi)
destinate procesorului pentru a efectua, n ultim analiz, diverse calcule aritmetico-logice sau
transferuri de date ntre memoria principal i memoria secundar. Pentru a se mri productivitatea
n programare s-au specificat o serie de limbaje al cror alfabet coincide n mare parte cu alfabetul
limbajelor naturale, fcndu-se, prin aceasta, loc programrii simbolice, mult mai aproape de modul
de gndire al oamenilor dect programarea n limbaj main. n aceast categorie intr: limbajele de
asamblare, limbajele de programare de nivel nalt iar, mai recent, limbajele de programare vizuale.
Tendina permanent n definirea limbajelor de programare este de apropiere de limbajul
natural. Apropierea de modul de gndire al oamenilor a generat, implicit, o ndeprtare de modul n
care lucreaz un sistem de calcul electronic. Acesta este motivul pentru care un program scris ntrun limbaj care nu este limbaj main sufer un proces de translatare (de regul n mai multe etape)
de la codul surs la codul executabil de ctre unitatea central de prelucrare i comand al
sistemului de calcul electronic. Astfel c, ntr-un limbaj de programare de nivel nalt (categorie n
care intr i limbajul Pascal asupra cruia ne vom ndrepta atenia n continuare) drumul de la
enunul problemei pn la forma executabil a programului care o rezolv este similar celui descris:
enunul problemei
stabilirea algoritmului
prezentarea soluiei specificat n pseudocod
194
baterie de teste, adic un set de programe (cnd este vorba de un limbaj de programare) sau un set
de exemple (cnd este vorba de o aplicaie oarecare) care acoper toate necesitile impuse. Din
punctul de vedere al testrii, nu se poate face o distincie clar ntre fazele 3 i 4. Astfel, este normal
ca n faza de implementare s se realizeze testarea la nivel de modul, efectuat de fiecare
programator, i parial testarea interfeelor inter-module (testarea de integrare), care se realizeaz
prin legarea ctorva dintre modulele aplicaiei. n faza de certificare se realizeaz testarea
sistemului, care verific sistemul n ansamblul su. Rezultatul acestei faze este un sistem verificat
i certificat complet, livrabil utilizatorilor.
5. ntreinerea - Dup intrarea n exploatare a aplicaiei, pot apare necesare modificri n
aceasta, provocate fie de detectarea unor erori nedepistate n faza 4, fie de dorina de a-i aduga noi
specificaii (cerine). De obicei, costul ntreinerii unei aplicaii ntrece costul tuturor celorlalte faze
(1-4) luate mpreun.
Toate fazele de dezvoltare a unui sistem software pot fi realizate cu ajutorul calculatorului. In
mod normal, faza de implementare necesit prezena calculatorului i a unui set de utilitare (editoare
de texte, asambloare, link-editoare, biblioteci), dar i n celelalte faze utilizarea calculatorului este
benefic, mrind productivitatea muncii.
n general, orice produs software trebuie s satisfac urmtoarele cerine:
- s fie fiabil;
- s fie uor de ntreinut;
- s se execute eficient.
7.4.2. Aspecte ale calitii softului
Toat lumea dorete ca programele s fie: rapide, fiabile, uor de folosit, lizibile, modulare,
structurate etc.
Calitatea produselor program se definete ca o compunere a mai multor trsturi, factori de
calitate care sunt factori externi i factori interni. Factorii externi de calitate sunt sesizai de cei care
interacioneaz direct cu produsul final i care cumpr produsul, contracteaz dezvoltarea i
ntreinerea lui. Factorii interni de calitate se pot detecta doar de ctre persoanele implicate n
procesul de dezvoltare de software.
Factorii externi de calitate sunt enumerai mai jos:
1. Corectitudinea, este abilitatea produsului de a executa exact sarcinile sale, n conformitate cu
cerinele i specificarea sa.
2. Robusteea, este abilitatea sistemului de a funciona chiar i n condiii anormale. Termenul
fiabilitate este folosit uneori n loc de robustee; trebuie precizat c fiabilitatea este un concept mai
general i se interpreteaz cel mai bine ca acoperind att corectitudinea ct i robusteea.
3. Extensibilitatea, este uurina cu care produsele software se pot adapta la schimbri ale
specificaiilor.
Dou principii sunt eseniale pentru mbuntirea extensibilitii:
a. Simplitatea proiectului: o arhitectur mai simpl va fi ntotdeauna mai uor de adaptat la
modificri dect una complicat.
b. Descentralizarea: cu ct sunt mai autonome modulele ntr-o arhitectur software, cu att
va fi mai mic numrul de consecine ale unei modificri simple; ea va trebui s afecteze
doar modulul n cauz sau un numr ct mai mic de alte module.
4. Reutilizabilitatea, este abilitatea produselor software de a fi reutilizate, n ntregime sau
parial, la noi aplicaii.
5. Compatibilitatea, este uurina cu care produsele software pot fi combinate ntre ele (pot
interaciona).
6. Eficiena, nseamn folosirea raional (buna folosire) a resurselor hardware ca:
procesoare, memorie intern i extern, dispozitive de comunicare.
7. Portabilitatea, este uurina cu care produsele software se pot transfera n diverse medii
hardware i software.
196
sintactice pentru organizarea calculelor. Procesul de calcul este constituit dintr-o mulime de pai
pe care o main i poate executa pentru a rezolva o anumit problem, pai care sunt exprimai n
comenzi elementare pe care maina (calculatorul) tie s le execute. Pentru descrierea procesului de
calcul este necesar cunoaterea setului de comenzi (instruciuni) al mainii la care ne referim.
7.5.1. Limbaj main. Limbaj de nivel nalt
Limbajul nativ al unui computer este aa-numitul limbaj main al tipului de calculator
respectiv, acest limbaj reprezentnd notaia la care calculatorul rspunde n mod direct.
Setul de comenzi elementare al unui calculator este constituit din:
- operaii aritmetice i logice;
- operaii de intrare-ieire;
- unele funcii speciale, numite funcii de control.
Comenzile i instruciunile limbajului main sunt scrise ntr-o form codificat, foarte
compact, fapt ce ngreuneaz foarte mult nelegerea textului surs. Din pcate, limbajul main
este foarte legat de arhitectura fizic a mainii, fiind constituit din succesiuni de codificri binare.
Datorit apropierii de main, executarea unei operaii complexe necesit scrierea unei
secvene lungi de instruciuni i comenzi.
Limbajul de asamblare al unui calculator face din acest punct de vedere un pas nainte prin
atribuirea de nume simbolice (aa numitele mnemonici) codificrilor operaiilor mainii, precum
i locaiilor de memorie asociate. Limbajele main i cele de asamblare se numesc limbaje de
nivel sczut.
Aceste limbaje sunt foarte departe de limbajul natural, aa c s-a cutat elaborarea altor
limbaje, mai apropiate de exprimarea natural. Rezultatul este ceea ce numim acum limbaje de
programare de nivel nalt (engl. high-level programming languages, echivalate uneori cu termenul
de limbaje de programare). Aceste limbaje utilizeaz notaii mai puin primitive dect limbajele
de asamblare, n care exprimarea aciunilor de urmat devine uoar, clar i concis.
Nivelul nalt are semnificaia unei distanri suficient de mari fa de nivelul de exprimare al
mainii. Un limbaj de nivel nalt mrete considerabil numrul celor ce vor utiliza echipamentele
disponibile la un moment dat. Putem spune c proiectarea i implementarea limbajelor de
programare este activitatea capital de a crei calitate depinde lrgirea comunitii
programatorilor care s poat realiza eficient dezvoltarea unor aplicaii de larg interes.
Orice notaie utilizat care este diferit de limbajul main nu poate fi executat direct, ea
trebuind s fie tradus n limbajul main al calculatorului gazd. Activitatea de traducere (numit
generic translatare) este preluat de programe specializate numite compilatoare (dac textul surs
iniial este scris ntr-un limbaj de nivel nalt) sau asambloare (dac textul surs este scris n limbaj
de asamblare).
Etapele tehnologiei de programare presupune trecerea de la codul unui program surs (PS)
scris ntr-un limbaj de programare, prin programul obiect (PO) la un program obiect executabil
(POE) care poate fi neles de calculator (fig.7.2.)
Operaia de traducere (translatare) corespunde transformrii progarmului surs n programul
obiect (fig. 7.2.b.).
Operaia de interpretare realizeaz direct trecerea din progarm surs n program obiect
executabil (fig. 7.2.c.) i este specific limbajelor cu program interpretor ca limbajul BASIC. Este
specific i operaiei de asamblare prin programul asamblor (cod main), obinndu-se un program
direct executabil, ca n cazul limbajului de asamblare (ASSEMBLER, M80).
Operaia de compilare corespunde unui program compilator ca n cazul limbajelor PASCAL,
C, FORTRAN (fig. 7.2.d.).
Execuia unui program se poate realiza n dou moduri :
- cu ajutorul unui COMPILATOR
199
d. Verificare
Faza de compilare poate detecta pe lng clasicele erori de sintax o clas larg de erori
posibile la execuie: de exemplu, o incompatibilitate de tip (de exemplu, ncercarea de utilizare a unei
variabile ntregi pe post de variabil de tablou), chiar dac nu este o eroare tipic de sintax, face
parte din categoria erorilor de execuie detectabile n faza de compilare. Aadar, faza de translatare,
n ciuda unor dezavantaje menionate anterior, sporete sigurana programelor procesate.
Majoritatea limbajelor de nivel nalt (Pascal, C, Modula, FORTRAN, ALGOL, Oberon)
reflect la orice nivel acest principiu, din aceast cauz ele numindu-se limbaje dirijate de control
(control-flow languages), adic limbaje n cadrul crora execuia este dirijat de instruciuni de
control al execuiei (instruciuni care dirijeaz fluxul modificrilor celulelor de memorie la care
programul are acces). Dintre aceste instruciuni, rolul central l are instruciunea de atribuire, iar
limbajele dirijate de control se mai numesc i limbaje imperative (termen derivat din caracterul
"imperativ", tranant, ferm, al aciunii instruciunilor de atribuire). Un limbaj de programare
imperativ poate fi privit ca o extensie a tipului de arhitectur hard pe care se implementeaz, iar un
program poate fi privit ca o extensie a limbajului de programare respectiv.
7.5.2. Generaii de limbaje
Un sumar al evoluiei n timp a limbajelor de programare s-ar putea exprima astfel:
1954-1958 Limbaje de prima generaie (FORTRAN I, ALGOL58). Acestea au meritul de a fi
fcut pasul decisiv de la limbajul de asamblare la limbajele de nivel nalt.
1959-1961 Limbaje de generaia a doua (ALGOL60, FORTRAN II, Cobol, Lisp). Sunt
considerate limbaje stabile, durabile, care se utilizeaz intens i astzi. Influena ALGOL60 a fost
imens n dezvoltarea limbajelor Pascal, PL/1, Simula i Ada.
1962-1971 Limbaje de generaia a treia (PL/1, ALGOL68, Pascal, Simula). ALGOL60
reprezint un pas nainte fa de succesorii si. Limbajul PL/1 a combinat elemente de FORTRAN,
ALGOL i COBOL rezultnd un limbaj puternic, dar mult prea complex, deosebit de dificil de
nvat i de implementat, ncercarea limbajului ALGOL68 de a generaliza limbajul ALGOL60 a
fost caracterizat drept elegant dar neacceptat practic de marea mas a programatorilor. Limbajul
Pascal, dei cu un enorm succes din punct de vedere didactic, nu este considerat nici astzi suficient
de robust pentru utilizare la scar industrial.
1972-1979 Limbaje de generaia a patra (CLU, CSP, Ada, Smalltalk). Au avut o
rspndire i mai redus dect cele de generaia a treia, justificnd pe bun dreptate denumirea
acestei perioade drept "gol de generaie" (generation gap). Aceast perioad a fost ns o perioad de
cercetare intens i de reevaluare a obiectivelor proiectrii limbajelor de programare. Criza software
de la sfritul anilor '60 a condus la o schimbare de optic n acest sens, accentul cznd pe
structurare. La nivel micro acest lucru s-a fcut prin eliminarea instruciunilor goto i nlocuirea
lor cu instruciuni de tip while, iar la nivel macro s-a pus mare accent pe modularizarea programelor
prin utilizarea intensiv de funcii i proceduri i prin promovarea conceptului de abstractizare a
datelor.
1980-1990 Paradigme ale limbajelor de programare. Deceniul al noulea se caracterizeaz
printr-o intens activitate de cercetare, concentrat nu att pe studiul i dezvoltarea unor limbaje
particulare, ct pe studiul paradigmelor asociate claselor de limbaje. n acest sens, se remarc clasele
de limbaje funcionale, logice, orientate obiect i distribuite, ele reprezentnd i cele patru paradigme
de programare cel mai intens studiate la ora actual.
7.5.3. Paradigme de programare
Paradigmele de programare sunt colecii individualizate de caracteristici de evaluare i
criterii de abstractizare care determin i difereniaz clasele de limbaje de programare. Ca
exemple de astfel de criterii amintim structura programului, noiunea de stare a execuiei,
metodologia programrii etc.
201
Integrare. n timpul acestui proces, modulele individuale ale produsului software sunt
combinate pentru a forma produsul software. Deoarece modulele au fost dezvoltate separat,
testarea este cruciala pentru procesul de integrare. Chiar i n cazul unui proiect bun, este posibil
s existe imcompatibiliti ntre module.
Livrare n timpul acestui proces, proiectanii livreaz clientilor software-ul complet. De
obicei clienii vor realiza teste asupra software-ului pentru a determina dac satisface sau nu
cerinele din documentul specificaiilor cerinelor. O dat software-ul acceptat, acesta este instalat i
utilizat de ctre client.
ntreinere. n timpul acestui proces, software-ul sufer variate modificri dup livrare
pentru a repara erori, adaug noi funcionaliti, instaleaz software-ul pe noi platforme, sau
adapteaz software-ul la noi tehnologii. Dei s-ar parea c software-ul trebuie s fie finalizat nainte
de livrare, aceasta este departe de adevr.
Muli ani produsele software au fost realizate pe principiul programrii structurate,
metod care are la baz realizarea secvenial a operaiilor de calcul n conformitate cu principiul de
lucru al echipamentelor hardware ale calculatoarelor.
n acest gen de programe datele i programul sunt separate, ceea ce duce la necesitatea
scrierii de subrutine pentru realizarea driverelor, operaiilor cu date, multe task-uri. Task-urile
lucreaz serial i secvenial. Acest mod de realizare a software-ului se numete paradigma
procedural sau a programrii structurate.
Aceast paradigm are avantajul unui program compact, o execuie rapid i dejavantaje
cum ar fi slaba flexibilitate a programelor, reutilizare sczut, depanare dificil. Dintre toate procese
descrise, ntreinerea este dominant n privina costurilor din cadrul ciclului de via.
Deoarece costurile de ntreinere sunt att de importante (cca. 60-70%), muli proiectani
ncep s utilizeze metode de proiectare care duc la software care este mai uor de ntreinut. O
asemenea metod este paradigma programrii orientat pe obiect. Principala caracteristic a
acestei paradigme este cuprinderea n acelai task i a datelor i a funciilor ce lucreaz cu acestea,
formnd o clas de obiecte. n felul acesta programarea se face pe obiecte ctignd flexibilitate i
reusabilitate, dar devine mai abstract.
Au fost create multe modele diferite pentru a reprezenta ciclul de via software. Dei aceste
modele utilizeaz nume diferite pentru procesele ciclului de via, toate includ cele ase procese
descrise mai sus. n plus, aceste modele de obicei accentueaz alte cteva aspecte ale dezvoltrii
software, cum ar fi : o anumit tehnic de proiectare (de exemplu, prototiparea rapid), tehnici de
management (de exemplu, managementul riscului) sau modelul descrie un domeniu limitat de
dezvoltare software (de exemplu, software n timp-real).
7.5.3.2. Paradigma programrii structurate
Probabil cea mai cunoscut metod a dezvoltrii de software este paradigma programrii
structurate. Brookshear n 1997 a spus ca paradigma programrii structurate "reprezint abordarea
tradiional a procesului de programare. ntr-adevr, paradigma programrii structurate este cea pe
care se bazeaza un ciclu CPU "fetch-decode-execute" (preia-decodific-execut). Aa cum spune i
numele, paradigma programrii structurate definete procesul de programare ca fiind o dezvoltare
de succesiuni de comenzi care, atunci cnd sunt urmate, manipuleaz datele pentru a produce
rezultatul dorit." Se observ c paradigma programrii structurate abordeaz dezvoltarea de
software ntr-o manier care se potrivete cu hardware-ul de baz al unui calculator PC. Procesorul
computerului lucreaz prin preluarea unei singure instruciuni, interpretarea i apoi executarea
acesteia. Paradigma programarii structurate se potrivete acestei arhitecturi prin faptul ca ghideaz
dezvoltarea de software astfel nct s aib o logic secvenial. Ca rezultat, programele structurate
pot fi urmrite de la nceput pn la sfrit astfel nct ntreaga logic a programului este o serie de
instruciuni.
203
Ideea de ncapsulare presupune ca obiectul poate fi privit din dou perspective diferite. Aceste
perspective sunt denumite perspectiva abstract i perspectiva implementrii.
Perspectiva abstract este ceea ce utilizatorul vede atunci cnd utilizeaz obiectul. Din aceast
perspectiv intefaa obietului este vizibil dar sunt invizibile detaliile privind modul n care obiectul
i execut metodele sau i stocheaz datele private.
Perspectiva implementrii este ceea ce vede proiectantul obiectului. Din aceast perspectiv
sunt dezvluite toate detaliile. n timp ce aceste detalii sunt importante pentru proiectantul
obiectului, utilizatorii acestuia nu au nevoie de ele. De fapt, ar fi mult mai bine ca celelalte module
software s nu exploateze cunotiintele speciale despre modul de implementare a obiectului, pentru
cazul n care proiectantul decide ulterior s modifice modul de implementare al obiectului. De
exemplu, proiectantul poate decide s utilizeze un al tip de date pentru a stoca datele private.
Aceast modificare nu trebuie s afecteze modulele care utilizeaz obiectul deoarece acestea
acceseaz datele doar prin interfaa obiectului. Atta timp ct interfaa obiectului rmne aceeai,
proiectantul poate modifica modul de implementare fr nici un risc asupra celorlalte module care
utilizeaz obiectul. Aceast flexibilitate este un avantaj major pe care ncapsularea l confer
paradigmei programarii orientate pe obiecte.
Proiectele care incorporeaz ncapsularea sunt mult mai uor de intreinut dect cele care nu
fac nici o separare ntre interfa i implementare.
Pe lng obiecte, exist alte dou concepte fundamentale pentru programarea orientat pe
obiecte, i anume: clasele i motenirea. Clasele sunt un mod de specificare de tipuri abstracte de
date n paradigma programrii orientate pe obiecte. Clasele difer de conceptul tradiional de tipuri
abstracte de date prin aceea c au motenire. Moetenirea permite definirea de noi tipuri de date
(adic clasele) ca extensie la tipurile de date definite anterior.
Pentru a ilustra aceste noi concepte vom considera obiectul list, care stocheaz o list de
numere i permite realizarea de operaii uzuale cum ar fi inserarea unui numr, tergerea unui
numr i sortarea listei. n general, n proiectare adesea sunt necesare mai multe liste. Un singur
obiect list nu poate stoca datele din toate listele. Dar toate listele realizeaz aceleai operaii, deci
sunt strns legate ntre ele. Pentru a rezolva aceast problem, proiectantul are nevoie de un tip de
date list care va servi drept ablon pentru crearea tuturor obiectelor list. Utiliznd tipul de date
list, proiectantul poate crea obiecte list multiple, care au acelai comportament dar au date private
proprii. n paradigma programrii orientate pe obiecte, un asemenea tip de date este denumit clas.
Clasa List specific cerinele de stocare pentru datele private ale fiecrui obiect list i clas. List
definete i comportamentul obiectelor prin specificarea metodelor pe care le va folosi fiecare
obiect pentru a accesa i manipula datele sale private. O dat ce proiectantul a completat clasa List,
el poate utiliza aceast clas pentru a crea multe obiecte list similare. Crearea unui nou obiect list
este numit instaniere. Fiecare obiect al listei care este instaniat este diferit de celelalte obiecte
list i are spaiul su propriu pentru stocarea datelor private.
Utiliznd clasele este posibil modelarea unei mari varieti de entiti, nu doar structurile
simple de date prezentate pn acum.
Datele private pentru clase se compun din diverse atribute care sunt specifice doar unor clase.
Metodele ca i atributele sunt specifice anumitor clase. O soluie mai bun ar fi abstractizarea
caracteristicilor commune ntr-o clas separat care poate servi ca i clas de baz pentru mai multe
clase. Acest mod de abordare a proiectrii se numete motenire.
Se creaz o nou clas abstractiznd atributele i metodele commune.
Nu trebuie s se fac confuzie ntre motenire i instaniere. Motenirea nseamn o relaie
ntre diferite clase n timp ce instanierea nseamn crearea unui obiect dintr-o clas.
7.5.3.4. Comparaie ntre paradigmele programrii
Cele dou paradigme majore ale programrii, i anume: paradigma programrii structurate i
paradigma programrii orientate pe obiecte urmeaz s fie comparate fiind scoase n eviden
205
punctele forte i punctele slabe ale fiecreia. Ambele paradigme sunt apreciate n concordan cu
cele ase caracteristici ale calitii software-ului.
Se spune ca o paradigm a programrii este caracterizat prin viziunea sa asupra procesului de
descompunere. Procesul de descompunere se refer la modul n care o anumit paradigm divide
proiectul n uniti logice. Paradigma programrii structurate are o abordare orientat pe task-uri,
care-i ncepe sprijinul pentru procesul de proiectare atunci cnd se propune o soluie pentru
problema pus. Soluia propus este descompus ntr-o secven de task-uri. Aceste task-uri
formeaz blocurile de baz pentru o aplicaie structurat. Aceasta nseamn c paradigma
programrii structurate ncepe doar dup ce proiectantul a identificat o soluie posibil. Aceasta
soluie este apoi descompus n diferite module i submodule logice (funcii i proceduri) n
concordan cu aciunile pe care le realizeaz. O dat ce este implementat proiectul, execuia taskurilor poate fi urmrit foarte uor de la nceput pn la sfrit.
Paradigma programrii orientate pe obiecte asigur ciclul de via complet al dezvoltrii
software de la analiz la proiectare. Paradigmele programrii structurate asigur doar paii de
proiectare i codare deoarece trebuie specificat o soluie ppotenial nainte de a putea ncepe
descompunerea n task-uri. Paradigma programrii orientate pe obiecte nltur aceast restricie
asigurnd o abordare cuprinztoare a dezvoltrii software. Paradigma programrii orientate pe
obiecte asigur o abordare din punct de vedere al modelului. Modelul este construit prin privirea
domeniului problemei ca un set de entiti care interacioneaz mpreun cu relaiile dintre ele.
Entitile sunt modelate prin proiectarea de clase pentru a instania obiecte.
Relaiile dintre obiecte sunt modelate prin motenire i prin mecanismul de comunicare prin
transmiterea de mesaje. n timp ce programele proiectate cu paradigma programrii structurate sunt
de fapt o secven de task-uri, programele proiectate cu paradigma programrii orientate pe obiecte
sunt un set de obiecte care interacioneaz ntre ele prin transmiterea de mesaje.
Cele ase caracteristici ale calitii software asigur un alt mod prin care inginerii software s
aprecieze elementele pro i contra pentru paradigmele programrii.
Utiliznd aceste caracteristici, inginerii software ncearc s rspund la ntrebarea: "Aceast
paradigm a programrii produce software care este mai mentenabil, mai fiabil, mai portabil etc?"
Mentenabilitate - Uuina cu care se pot face modificri care s satisfac noile cerine sau s
corecteze deficienele.
Corectitudine - Gradul n care software-ul corespunde cerinelor specificate.
Revalorificare - Uuina cu care poate fi reutilizat software-ul la dezvoltarea altor produse
software.
Fiabilitate - Frecvena eurilor software-ului i ct de critice sunt aceste euri. Euare este
un efect sau comportare neacceptabil aprut n condiii de operare normale.
Portabilitate - Uuina cu care poate fi folosit software-ul pe alte configuraii de computere
dect cea curent.
Eficiena - Gradul n care software-ul i satisface scopul fr pierdere de resurse.
Mentenabilitatea. Majoritatea proiectelor orientate pe obiecte sunt mai mentenabile, avantaj
datorat n parte faptului ca paradigma programarii orientate pe obiect foreaz proiectanii s creeze
obiecte ncapsulate. Incapsularea nseamn c interfaa obiectului este separat de implementarea
obiectului. Asemenea separare este foarte binevenit deoarece multe pri ale programului pot
depinde de o anumit interfa. Dac trebuie fcute modificri n interfa, atunci vor trebui fcute
multe modificri n tot programul. O proiectare orientat pe obiecte bun va minimiza modificrile
care trebuie fcute n interfa. Aadar, mentenana este localizat n implementarea unui anumit
obiect.
Corectitudinea se testeaza prin verificare i validare. Verificarea rspunde la ntrebarea
"Construim cum trebuie software-ul?" n timp ce validarea rspunde la ntrebarea "Construim
software-ul care trebuie?". Exist diferite tehnici de realizare a verificrii i validrii software i
aceste tehnici sunt aplicabile ambelor paradigme. Oricum, Schach spune "afirmaia c utiliznd
paradigma programrii orientate pe obiecte se reduce necesitatea de testare este foarte adevrat".
Aceasta deoarece motenirea permite reutilizarea software-ului care a fost deja testat. Aadar,
206
paradigma programrii orientate pe obiecte poate contribui la dezvoltarea de software corect prin
reducerea numrului de teste necesare.
Revalorificare. Evident paradigma programrii orientate pe obiecte ofer suport pentru
reutilizarea software-ului mai mult dect paradigma programrii structurate. n paradigma
programrii structurate pot fi reutilizate module sau subprograme, dar nu exist nici o metod care
s necesite sau mcar s ncurajeze reutilizarea software. Din contr, paradigma programrii
orientate pe obiecte ofer suport pentru reutilizare prin motenire. Motenirea nsi este reutilizare,
definirea de noi clase ca extensii la clasele definite anterior.
Fiabilitatea, este rezultatul unei bune proiectri software mai mult dect al unei paradigme a
programrii. Astfel, programele structurate care sunt bine proiectate vor fi la fel de fiabile ca cele
orientate pe obiecte dac sunt bine proiectate. Oricum, este important de luat n considerare care
paradigm conduce la proiecte mai bune. Dac paradigma programrii orientate pe obiecte ofer
suport pentru ntregul proces de dezvoltare (analiz, proiectare, implementare ), atunci s-ar prea c
aceast paradigm va ajuta la producerea de proiecte mai bune i mai fiabile. ns, aceasta este o
legtur indirect. Utiliznd paradigma programrii orientate pe obiecte nu se ofer nici o garanie
ca proiectul realizat va fi fiabil. Trebuie inut cont i de faptul c fiabilitatea se msoar adesea prin
durata medie a reparrii unei erori software. Dac software-ul orientat pe obiecte este ntr-adevar
mai mentenabil, atunci este normal s ne ateptm ca aceste software s fie mai uor de reparat i
astfel mai fiabil.
Portabilitatea la fel ca fiabilitatea, nu depinde chiar de paradigma utilizat pentru crearea
software-ului. Portabilitatea unui produs software este afectat mai mult de limbajul de programare
folosit pentru implementarea software-ului i de constrngerile platformei harware pe care ruleaz
software-ul. Astfel portabilitatea unui produs software nu este influenat prea mult de alegerea
paradigmei de programare.
Eficiena. n timp ce paradigma programrii orientate pe obiecte asigur suport mai bun
pentru crearea de software mentenabil, reutilizabil i corect, toat lumea este de acord c paradigma
programrii structurate asigur suport mai bun pentru software eficient. Logica unui program
structurat este cea a suportului hardware pe care ruleaz. Software-ul const dintr-o secven de
task-uri logice i hardware-ul execut o secven de instruciuni. Programele orientate pe obiecte
necesit mai multe instruciuni care s implementeze motenirea i transmiterea mesajelor.
7.5.3.5. Programarea structurat
Prin programarea structurat se urmrete :
- utilizarea judicioas a resurselor umane i resurselor calculatorului,
- reducerea duratei de realizare a produselor program,
- creterea fiabilitii i portabilitii programelor,
- standardizarea activitii de programare prin utilizarea unui limbaj unic i precis de
proiectare,
- elaborarea n mod unic i unitar a documentaiei,
- sporirea posibilitilor de pregatire a cadrelor n domeniul programrii,
- existena unei baze tiinifice de demonstrare teoretic i practic a fundamentelor
programrii.
Principale conceptele n domeniul programrii structurate sunt:
- proiectarea top - down,
- proiectarea modular,
- proiectarea structurat.
Proiectarea top - down, presupune descompunerea n manier descendent a problemei n
subprobleme sau funcii de prelucrare care pot fi tratate independent, pn la obinerea unor rutine
sau module primitive care conin operaii ce pot fi comandate prin instruciuni.
n urma descompunerii se obine o structur arborescent n care blocurile, indiferent de tipuri
i de probleme au urmtoarele funcii :
207
iniializri,
introducere / extragere de date,
prelucrri,
prelucrri finale.
Este necesar s fie ndeplinite dou condiii:
s cunoasc sistemul de calcul pe care lucreaz (minimum de cunotine hard i cunotine
ct mai ample despre capabilitile oferite de sistemul de operare gazd);
s aib deprinderea de a gndi algoritmic; deprindere strict necesar pentru a face un pas
spre obinerea unei soluii de calitate problemei n cauz.
Aceste condiii, pot fi ndeplinite dac utilizatorul are nite noiuni minime de arhitectura
sistemelor de calcul, de algoritmic i de iniiere n utilizarea unui sistem de operare.
Pentru a scrie programe bune mai sunt i alte cerine de ndeplinit. Este vorba, mai ales n
cazul problemelor a cror complexitate este semnificativ, de necesitatea unei strategii de elaborare
a soluiei care s asigure:
mijloace de stpnire a complexitii att n ceea ce privete organizarea datelor ct i
referitor la identificarea prelucrrilor aferente acestora;
corectitudinea codului surs obinut (abilitatea codului executabil asociat de a ndeplini
toate sarcinile definite n faza de specificare ;
extensibilitatea codului surs obinut (posibilitatea de a adapta acest cod surs la modificri
i cerine noi); .
eliminarea rendundanelor, prin care nelegem efortul de minimizare a codului necesar
pentru a obine o funcionalitate dat;
Robusteea codului surs elaborat (abilitatea codului executabil asociat de a reaciona adecvat
n condiii anormale de exploatare). O strategie verificat n practica programrii, de ndeplinire a
cerinelor de mai sus, poate avea la baz principiul modularizrii, potrivit cruia problema iniial
(de complexitate semnificativ) se descompune n subprobleme; acest proces de descompunere
poate fi aplicat i subproblemelor, pn cnd gradul de detaliere este satisfctor din punctul de
vedere al posibilitilor de codificare n limbajul ales. Acest procedeu de obinere a soluiei se
numete proiectare top-down (top-down design) iar fiecare treapt a procesului de descompunere se
numete rafinare succesiv (stepwise refinement). Produsele acestui proces de proiectare se numesc
module. Relaiile dintre modulele astfel identificate pot fi ilustrate grafic. Este vorba de relaiile de
subordonare ntre module situate pe nivele de descompunere diferite i de relaia de succesiune ntre
modulele subordonate aceluiai modul ierarhic superior.
Pentru o rezolvare corect a problemelor se recomand urmtorul set de reguli, fcute pentru a
ajuta gndirea nu pentru a o nlocui:
Analizeaz problema.
Gsete algoritmii.
Scrie codul surs.
Execut programul cu date de test i date reale.
Verific rezultatele.
Documenteaz programul.
Ca metodologie de proiectare se folosete des metoda FIFO (Hierarhical Input Processing
Ouput), impune ca structur global a sistemului s fie oglindit de o diagram sintetic.
proiectarea top - down, este nnsoit de o codificare i o testare top-down.
codificarea top - down ofer posibilitatea scrierii unui modul nainte de a se proiecta
modulele de nivel inferior i se poate realiza i documentaia programului o dat cu scrierea
acestuia.
testarea top - down const n ierarhizarea operaiilor de sus n jos: se porneste cu modulul
radacin i cu unul sau mai multe nivele de ordin imediat inferior, se continu cu ataarea altui nivel
inferior, pn cnd s-au inclus n testare modulele ultimului nivel.
208
Primul compilator Pascal a fost realizat tot de Wirth n 1971. Limbajul PASCAL a devenit
lingua franca n mediul academic, el cptnd o larg utilizare datorit uurinei cu care se pot
realiza programe puternice i eficiente, utilizndu-se un set redus de concepte.
ncorporarea de mecanisme pentru descrierea proceselor paralele, datorat creterii volumului
aplicaiilor n timp real (sisteme de operare, sisteme de control al proceselor industriale, sisteme de
rezervri de locuri sau de gestiune bancar etc.), care necesit exploatarea simultan a mai multor
programe care au acces la aceleai resurse, numite n general procese. Pentru sincronizarea
proceselor s-au dezvoltat mai multe concepte, cum sunt: semaforul, monitorul implementat n
Pascalul Concurent i sincronizarea prin transmitere de mesaje.
212
CAPITOLUL 8
LIMBAJUL PASCAL
8.1. ELEMENTELE DE BAZA ALE LIMBAJULUI PASCAL
Limbajele de programare reprezint unul din principalele mijloace de comunicare ommain, evoluia lor fiind nemijlocit legat de cea a calculatoarelor electronice, a cror er ncepe n
1944. Primele calculatoare puteau fi programate numai n limbaj main. La nceputul anilor 50, se
nregistreaz trecerea la programarea simbolic, prin apariia limbajelor de asamblare caracterizate
prin folosirea codurilor mnemonice pentru instruciuni i a adresrii simbolice a operanzilor.
8.1.1. Apariia, evoluia i caracteristicile generale ale limbajului
Apariia limbajului Pascal este un rezultat al conceptelor dezvoltate ca urmare a crizei
programrii ce caracteriz domeniul programrii calculatoarelor la sfritul anilor 60. n aceast
perioad, rspndirea pe plan mondial a prelucrrii automate a datelor a cunoscut o extindere
remarcabil, trecndu-se la abordarea i rezolvarea unor probleme din ce n ce mai complexe. Ca
rspuns la cerina de elaborare a unei metodologii generale de dezvoltare sistematic a programelor
s-a cristalizat metoda proiectrii i programrii structurate.
Un program structurat este constituit din uniti funcionale bine conturate, ierarhizate
conform naturii intrinseci a problemei. n interiorul unor astfel de uniti, structura se manifest att
la nivelul aciunilor (instructiunilor), ct i al datelor.
Programarea structurat este o metod independent de limbajul de programare, acionnd la
nivelul stilului de lucru. n 1968, profesorul elveian Niklaus Wirth realizeaz acest limbaj. Numele
limbajului a fost ales ca un omagiu adus marelui matematician, fizician, filosof i scriitor francez
Blaise Pascal (1623-1662), primul care, n 1642, a inventat o main de calcul. Dup o faz de
dezvoltare extensiv, un prim compilator devine operaional n 1970, limbajul fiind publicat n
1971. Interesul trezit de apariia sa a condus la necesitatea unor consolidri ale limbajului, finalizate
prin publicarea n 1973 a unui raport revizuit, n care se realizeaz o definire a formei de referin
numit Pascal Standard, redactat ulterior conform normelor ISO i devenit baz comun pentru
diverse implementri.
Limbajul Pascal include conceptele programrii structurate n ambele laturi ale efortului de
abstractizare presupus de realizarea unui program - organizarea datelor i conceperea aciunilor.
Printre principalele caracteristici ale lui pot fi menionate:
Include o serie de instruciuni care reprezint chiar structurile de control impuse de tehnica
progrmrii structurate (IF-THEN-ELSE, CASE, REPEAT, WHILE, FOR).
Are faciliti puternice i deosebit de flexibile pentru reprezentarea datelor. Noiunea de tip
de date a fost extins dincolo de cercul restrns al datelor ntregi, reale, iruri de caractere i tablouri
(masive). S-au introdus structuri de date complexe, ca articolul (nregistrarea), mulimea, fisierul i
posibiliti de a descrie altele noi, combinndu-le pe cele existente. La acestea se adaug facilitatea
de a defini i manipula structuri dinamice (liste liniare, arbori etc.). n anumite implementri ale
limbajului a fost introdus tipul obiect, care permite reunirea n aceeasi construcie a datelor i
metodelor care le prelucreaz (proceduri i funcii), crend cadrul trecerii la programarea orientat
obiect (POO).
Ofer posibiliti de modularizare a programelor, prin structurarea lor n module crora le
pot fi asociate construcii ale limbajului (proceduri i funcii).
Fundamenteaz construciile pe conceptul de bloc, care permite, pe de o parte, definirea de
date proprii (variabile locale) i, pe de alt parte, accesul la datele din blocurile de pe nivelurile
superioare (variabile globale).
213
(8.1.)
(8.2.)
Cuvintele rezervate ale limbajului Pascal sunt prezentate n tabelul 8.1. Scrierea cuvintelor
rezervate cu majuscule este numai o convenie de prezentare, n programe fiind permis folosirea
att a literelor mari ct i a celor mici, cu aceeai semnificaie.
Tabelul 8.1.
Lista cuvintelor rezervate
ABSOLUTE
AND
ARRAY
BEGIN
CASE
CONST
DIV
DO
DOWNTO
ELSE
END
EXTERNAL
FILE
FOR
FORWARD
FUNCTION
GOTO
IF
IMPLEMENTATION
IN
INLINE
INTERFACE
INTERRUPT
LABEL
MOD
NIL
NOT
OF
OR
PACKED
PROCEDURE
PROGRAM
SHR
RECORD
REPEAT
SET
SHL
STRING
THEN
TO
TYPE
UNIT
UNTIL
USES
VAR
WHILE
WITH
XOR
Identificatorii sunt folosii n Pascal pentru a desemna date, proceduri, funcii etc. (8.4.).
(8.4.)
n notaia BNF, regula de construire a unui identificator este urmtoarea:
<identificator>::=<liter>|_{<liter>|<cifr>|_}
Un identificator trebuie s nceap cu o liter sau cu caracterul _ (liniua de subliniere)
urmat, eventual, de litere, cifre zecimale i liniue de subliniere. Un identificator poate avea orice
lungime, dar numai primele 63 de caractere sunt semnificative.
Identificatorii pot fi scrii att cu litere mari, ct i cu litere mici. Caracterul liniu de
subliniere (#95) folosit n construirea identificatorilor este, formal, tratat ca liter.
Etichetele sunt secvene de cifre zecimale din intervalul 0 la 9999 (8.6.), care asociate unor
instructiuni permit transferul ctre acestea prin instruciuni de salt necondiionat (GOTO).
n condiiile programrii structurate folosirea instruciunii GOTO (i a etichetelor) este foarte
redus i se realizeaz n condiii restrictive, cu respectarea riguroas a cerinelor de construire a
structurilor fundamentale de control.
Numerele denumite n prezentarea unor limbaje de programare i literali numerici, sunt
constante de tip ntreg i real (8.5.- 8.11.).
(8.5)
(8.6)
(8.7)
(8.8)
(8.9)
(8.10)
(8.11)
Numerele ntregi se pot scrie n baza 10 sau n baza 16, precedate, eventual, de semn. Cifre le
hexazecimale au ca prefix caracterul $.
Numerele reale se pot scrie n forma uzual din matematic, cu parte ntreag i fracionar,
separate prin caracterul "." i, eventual, precedate de semn, sau n forma tiinific (cu exponent),
216
adic urmate de E sau e i de un ntreg reprezentnd o putere a lui 10. Numerele cu parte fracionar
sau exponent corespund constantelor (literalilor) reale, iar celelalte numere zecimale, precum i
numerele hexazecimale, corespund constantelor (literalilor) ntregi. irurile de caractere (literali
nenumerici) sunt - n sens restrns - secvene de zero sau mai multe caractere ASCII afiabile,
incluse ntre apostrofuri (8.12 8.13).
(8.12)
(8.13)
irul format din zero caractere, deci cu nimic ntre apostrofuri, se numeste ir nul. Pentru a
include un apostrof n cadrul irului se folosesc dou apostrofuri consecutive. Lungimea unui ir (L)
va fi dat de numrul efectiv de caractere incluse ntre apostrofuri.
(8.15)
Antetul programului, atunci cnd este prezent, are rol pur informativ. Posibilitatea definirii
unor eventuali parametri este menionat numai pentru asigurarea similitudinii cu Pascal Standard,
fr a avea nici o semnificaie n Turbo Pascal. Clauza USES, cu caracter opional, permite
specificarea unitilor (UNIT-urilor) folosite n programul respectiv.
Principala component a unui program este blocul, care reprezint corpul acestuia. Blocul
(diagramele 8.16 8.27) este format din declaraii (instruciuni neexecutabile) i instruciuni
(instruciuni executabile).
(8.16)
(8.18)
(8.17)
(8.19)
(8.20)
(8.21)
(8.22)
(8.23)
(8.24)
(8.25)
(8.26)
(8.27)
217
Valoarea unei date ordinale se reprezint intern prin ordinul ei. Elementele pot fi puse n relaie (<,
<=, =, >, >=, <>), rezultatul fiind evaluat n funcie de numrul de ordine.
Pentru tipul enumerativ, multimea de valori discrete se precizeaz prin liste ordonate (8.29).
(8.29)
Tipul standard BOOLEAN are lista de valori implicit (FALSE,TRUE). Utilizatorul poate
s-i defineasc propriile tipuri enumerative. Elementelor datelor de tip enumerativ li se asociaz
numere de ordine, prima valoare din list avnd ordinalitatea zero.
Datele de tip real au valori n mulimea R. n funcie de lungimea intern, se disting mai
multe tipuri reale care au precizii diferite (tabelul 8.3).
Datele de tip structurat sunt mulimi (colecii) de date de tipuri simple sau structurate,
constituite dup anumite reguli bine stabilite. Nici o dat structurat nu poate ocupa n memorie mai
mult de 65520 octei. Tipul datelor statice poate fi definit ca n diagrama 8.30 n care
identificator_tip desemneaz un tip definit de utilizator.
(8.30)
Tabelul 8.3.
Tipuri reale de date
219
(8.31)
Datele constante pot fi literali care se autoindentific prin valoare, sau constante simbolice,
referite prin identificatori, crora li se asociaz declaraii n seciunea CONST a prii de declaraii a
programului.
Expresie_de_constante este evaluat n momentul compilarii, avnd ca operanzi numai literali
sau constante simbolice. Operatorii folosii n expresii sunt cei specifici tipului de dat pentru care
se definete constanta. n expresiile de constante pot fi folosite i urmtoarele funcii: ABS, CHR,
HI, LENGTH, LO, ODD, ORD, PRED, ROUND, SIZEOF, SUCC, SWAP, TRUNC.
Limbajul Pascal definete ca fiind constante i acele variabile iniializate n momentul
compilrii, numindu-se n limbaj, constante cu tip sau variabile initializate (8.32).
(8.32)
n multe construcii sintactice se cere respectarea unor clase de compatibiliti de tip. Prin
noiunea de variabile de acelai tip se va ntelege:
variabile de acelai tip utilizator;
variabile simple de acelai tip standard;
variabile definite n aceiai descriere.
Tipurile ntregi de date sunt: BYTE, WORD, SHORTINT, INTEGER, LONGINT. Ele se
refer la ntregi far semn (BYTE, WORD) i la ntregi cu semn (SHORTINT, INTEGER,
LONGINT). n operaii, toate tipurile ntregi sunt compatibile ntre ele. Operatorii aritmetici sunt:
+
adunare (sau operator unar);
scdere (sau operator unar);
*
nmulire;
DIV
mprire ntreag (se obine ctul);
mprire ntreag (se obine restul).
Datele de tip ntreg pot fi puse n relaie (<, <=, =, >, >=, <>), rezultatul logic fiind n
concordan cu ordinea lor (ca tip ordinal) sau cu valoarea lor n Z. Funciile specifice tipurilor
ordinale (ORD, PRED, SUCC) se aplic i tipurilor ntregi, cu meniunea c numrul de ordine a
datei coincide cu valoarea sa din Z.
n Turbo Pascal exist dou constante predefinite, avnd identificatorii MaxInt (tip
INTEGER) i MaxLongint (tip LONGINT) care au valoarea egal cu maximul din valorile
domeniilor acestor tipuri (32767, respectiv 2147483647).
Tipul BOOLEAN este ordinal, enumerativ: (FALSE, TRUE). Asupra datelor booleene se pot
aplica funciile specifice tipului ordinal (ORD, PRED, SUCC).
O dat de tip BOOLEAN se reprezint n memorie pe un octet, n care se memoreaz valorile
ordinelor elementelor: 0 (pentru FALSE), 1 (pentru TRUE).
Operatorii logici sunt: NOT (nu); AND (i); OR (sau); XOR (sau exclusiv).
Tipul caracter (CHAR) este ordinal, subdomeniul #0..#255. Mulimea valorilor tipului
caracter este format din caracterele setului extins ASCII (256 caractere). O dat de tip CHAR
220
ocup n memorie un octet, n care se memoreaz valori binare interne din intervalul 0..255.
Literalii de tip CHAR pot fi scrii n urmtoarele moduri (8.33):
a) Un caracter imprimabil cuprins ntre apostrofuri;
b) Un ntreg din domeniul 0..255, precedat de caracterul #;
c) Un caracter imprimabil precedat de ^. Prin exprimarea literalilor CHAR sub forma ^x se
pot preciza uor codurile de control al transmisiei i imprimrii (caractere neimprimabile), din
intervalul de valori #0..#31.
(8.33)
Asupra datelor de tip caracter se poate realiza operaia de concatenare (+), rezultatul fiind de
tip STRING. Acelai efect se poate obine utiliznd funcia CONCAT. Asupra datelor de tip CHAR
se pot aplica funciile specifice tipurilor ordinale: ORD, PRED, SUCC.
Datele de tip CHAR pot fi puse n relaie (<, <=, =, >, >=, <>), rezultatul logic fiind n
concordant cu ordinalitatea lor, care se memoreaz intern. Funciile ORD i CHR sunt inverse.
Tipul ordinal enumerativ se definete ca o list ordonat de identificatori ai utilizatorului
(8.34). Valorilor din lista ordonat care precizeaz tipul enumerativ li se asociaz numere de ordine
n cadrul acesteia, ncepnd de la zero. Un identificator precizat ntr-o list nu poate fi prezent si
ntr-o alt list. Dac numrul elementelor listei este mai mic sau egal cu 256, variabilele de tip
enumerativ se reprezint pe un octet. n caz contrar, ele se reprezint pe un cuvnt. Intern este
memorat numrul de ordine a valorii. Din aceast cauz, numrul elementelor listei enumerative
este maxim 65536. Referirea unui element se face prin intermediul unui identificator de tip i nu al
unui identificator de variabil. Asupra datelor de tip enumerativ se pot aplica funciile specifice
tipurilor ordinale: ORD, PRED, SUCC.
(8.34)
Datele de tip enumerativ pot fi puse n relaie (<, <=, =, >, >=, <>), rezultatul logic fiind n
concordan cu ordinea valorii lor. Datele de tip enumerativ se folosesc n urmtoarele situaii:
n operaia de atribuire: unei variabile de tip enumerativ i se poate atribui o valoare definit
n lista tipului respectiv;
n declararea dimensiunilor masivelor i n expresiile indiceale pentru referirea elementelor;
ca variabile de control n instruciunea FOR.
Tipul ordinal subdomeniu se mai numete tip interval i se definete ca submulime a unui
tip ordinal ("tip printe"), prin precizarea intervalului nchis de valori. Toate caracteristicile tipului
printe se regsesc n tipul subdomeniu, singura deosebire dintre ele referindu-se la mulimea
valorilor pe care le pot lua. Literalii, constantele, funciile i operaiile definite pentru datele de tip
subdomeniu sunt similare celor specifice tipului printe. Funcia ORD aplicat unui element dintrun subdomeniu returneaz numrul de ordine din domeniul printe. Datele de tip subdomeniu se
memoreaz identic cu cele din tipul printe.
Tipurile reale sunt: REAL, SINGLE, DOUBLE, EXTENDED, COMP. Datele reale sunt
memorate intern n virgul mobil. n ISO Standard Pascal este inclus doar tipul REAL, celelalte
tipuri sunt cuprinse n convenia IEEE (Institute for Electrical and Electronics Engineers). Tipul
COMP desemneaz o dat real particular, avnd numai valori ntregi. n operaii, toate tipurile
reale sunt compatibile ntre ele. Operatorii aritmetici sunt: + adunare (sau operator unar), - scdere
(sau operator unar), * nmulire i / mprire real. Datele de tip real pot fi puse n relaie (<, <=, =,
>, >=, <>), rezultatul logic fiind n concordan cu valoarea lor n mulimea R.
221
Tipul ir de caractere este implementat tipul structurat ir (STRING), care definete iruri de
caractere ASCII, de lungime variabil. Lungimea maxim a irurilor este 255 caractere, iar
lungimea minim este zero, pentru irul null (vid).
Din analiza diagramei se observ c n definirea literalilor de tip STRING se pot succede
iruri scrise n cele trei moduri corespunztoare tipului caracter.
Tipul ir se declar conform diagramei 8.35. Dac la declarare nu se specific lungimea
maxim, se consider, implicit, 255 caractere. Lungimea efectiv a irului este numrul de caractere
pe care l are valoarea memorat. Lungimea maxim a irului este numrul de caractere specificat n
descrierea datelor STRING.
(8.35)
Cu datele de tip STRING poate fi realizat operaia de concatenare (+).
Acelai efect se obtine utiliznd funcia CONCAT. Datele de tip STRING pot fi puse n
relaie (<, <=, =, >, >=, <> ). Compararea se face caracter cu caracter, de la stnga la dreapta
(lexicografic), terminndu-se fie la ntlnirea primei perechi de caractere neegale, fie dup un
numr de comparri egal cu minimul dintre lungimile irurilor.
Tipul masiv (ARRAY) este structurat i desemneaz o mulime finit de elemente omogene
constituit ca un tablou cu una, dou sau mai multe dimensiuni (8.36). Mulimea are un singur
identificator i ofer posibilitatea referirii elementelor n acces direct prin poziie, determinat
printr-un numr de expresii indiceale corespunznd dimensiunilor masivului.
(8.36)
Tip_dimensiune este ordinal (mai puin LONGINT) i precizeaz, pe de o parte, numrul de
elemente de pe fiecare dimensiune, care se rezerv n momentul compilrii, iar pe de alt parte,
tipul expresiei indiceale care se poate utiliza n referirea elementelor masivului.
Pot fi declarate oricte dimensiuni pentru masiv, dar zona de memorie rezervat pentru el nu
trebuie s depseasc 65520 octei. Masivele se memoreaz cu liniarizare n ordine lexicografic
(de exemplu, la matrice, n ordinea liniilor). Tip_element este orice tip de date, mai puin tipul
fiier.
Se pot declara constante de tip ARRAY (8.37). Valorile iniiale din constantele cu tip
ARRAY se precizeaz n ordinea linializrii masivelor n memorie ("pe linii"), construindu-se
entiti cuprinse ntre paranteze pentru fiecare dimensiune, mai puin ultima.
(8.37)
Referirea elementelor unui masiv se face prin variabile indexate, iar expresia indiceal trebuie
s aib tipul dimensiunii respective, prezent la declararea masivului.
Observaie: Limbajul nu are incluse operaii cu masive. Se pot realiza operaii cu elemente ale
masivelor, operaii care sunt caracteristice tipului acestor elemente.
Tipul structurat mulime (SET - diagrama 8.38) desemneaz o mulime - n sens matematic de elemente de acelai tip i operaii specifice de lucru pe mulimi (intersecie, reuniune, incluziune
etc.). Mulimea poate avea maxim 256 elemente dintr-un tip "printe" ordinal, care la rndul su, nu
poate avea mai mult de 256 elemente i poate fi de tip CHAR, BYTE, BOOLEAN, subdomeniu.
222
(8.38)
Reprezentarea intern a datelor de tip SET are la baz urmtorul mecanism: se rezerv un
numr de bii (maxim 256) egal cu numrul de elemente ale tipului "printe". Biii corespunztori
obiectelor din tipul printe, prezente n SET, sunt pui pe valoarea unu, ceilali pe valoarea zero.
Operaiile i relaiile se aplic mulimilor compatibile ntre ele (care au acelai tip printe).
Operatorii care se aplic datelor de tip SET sunt:
* Intersecia (rezult o mulime format din elementele comune celor dou mulimi).
Fizic se realizeaz funcia SI ntre biii valorilor interne ale celor dou variabile.
+ Reuniunea (rezult o mulime format din elementele celor dou mulimi). Fizic se
realizeaz funcia SAU ntre biii valorilor interne ale celor dou variabile.
- Diferena (A-B: rezult o mulime format din elemente care aparin mulimii A i nu
aparin mulimii B). Fizic se realizeaz funcia A SI NOT(B) ntre biii valorilor
interne ale celor dou variabile.
Operatorul IN, care se aplic ntre un element e i o mulime A: e IN A. Expresia are valoarea
TRUE dac elementul e se regsete n mulimea A - apartenen (eA).
Atribuirea, operaiile i relaiile pe mulimi au la baz testarea i/sau poziionarea biilor din
reprezentarea intern a datelor de tip SET.
Tipul articol (RECORD) desemneaz o structur de date static, eterogen, cu acces direct,
ntre componentele creia exist o relaie de ordine ierarhic. Articolul poate fi reprezentat sub
form de arbore, ale crui noduri sunt asociate componentelor structurii. Componentele de pe
ultimul nivel sunt scalare i se numesc date elementare sau cmpuri. Datele de pe celelalte niveluri,
numite de grup, se constituie prin agregarea datelor de pe nivelurile inferioare. Data de grup de cel
mai nalt nivel (rdcina arborelui) corespunde articolului n ansamblu (figura 8.2).
Posibilitatea construirii recursive se remarc n figura 8.2.b, unde data de grup
DATA_NASTERII este formal echivalent cu articolul DATA.
(8.39)
223
(8.40)
Variabilele de tip articol se reprezint intern ca succesiuni de cmpuri elementare, cu
reprezentarea intern i lungimea fizic specifice tipurilor lor. Datele STRING se memoreaz pe
lungimea fizic (octet de lungime plus lungime maxim), componentele SET se reprezint pe
maxim 32 octei (depinznd de numrul de elemente ale mulimii) iar pentru componentele
ARRAY se rezerv numrul de octei necesari fiecrui element al masivului. Lungimea zonei de
memorie rezervat pentru variabila de tip articol rezult din nsumarea lungimilor cmpurilor.
Structura arborescent a articolelor poate fi exprimat sugestiv i prin machete, care
evideniaz componentele, natura, lungimea declarat i lungimea fizic ale acestora.
Datele de tip articol pot fi referite n dou moduri: global sau pe componente. Referirea
global este permis numai n operaia de atribuire, cu condiia ca ambele variabile (surs i
destinaie) s fie articole de acelai tip. Referirea unor componente de tip articol din structura altui
articol este posibil numai n operaia de atribuire, n condiiile precizate anterior la referirea
global.
Exist dou variante de referire a componentelor articolelor: referirea prin calificare i
referirea fr calificare.
n referirea prin calificare asigurarea identificrii unice a cmpurilor se realizeaz prin
asocierea numelui acestora cu numele articolului care le conine. Construcia rmne la aceast
form dac structura are numai dou niveluri: articolul i cmpurile elementare ale acestuia.
n articolele cu structur recursiv se realizeaz calificarea progresiv cu articolele de pe
nivelurile superioare, primul calificator fiind numele articolului rdcin.
Pentru referirea fr calificare se foloseste instruciunea WITH, care are la baz un procedeu
similar scoaterii factorului comun din matematic. Cmpurile unui articol pot fi referite numai prin
identificatorii lor, fr a fi descris explicit ntreaga structur arborescent de care aparin, referirea
avnd efect n instruciunea care aparine structurii WITH.
Sintaxa instruciunii WITH este precizat n diagrama 8.41. Pot fi folosite structuri WITH
imbricate, cu condiia evitrii ambiguitilor: se includ n WITH toate nivelurile superioare de
arborescen, ncepnd cu identificatorul de variabil al articolului i continund cu identificatorii
de cmpuri de tip grup. Pe baza declarrilor din WITH, compilatorul "reface" adresarea fizic a
cmpurilor.
(8.41)
Forma WITH r1, r2, ..., rm DO instruciune, poate fi scris astfel:
WITH r1 DO
WITH r2 DO
...............
WITH rm DO instructiune;
(8.42)
(8.43)
(8.44)
(8.45)
Valoarea iniial trebuie s fie de acelai tip cu cmpul cruia i corespunde. Cnd articolul
conine la rndul su alt articol, identificarea cmpului care se iniializeaz se face pe niveluri,
folosind perechi corespunztoare de paranteze.
La initializarea cmpurilor unui articol cu parte variabil, constanta de tip articol se asociaz
unei singure structuri, deoarece zona de memorie rezervat pentru articol este unic.
Expresii
Asupra datelor pot fi aplicai operatori din diverse clase, rezultnd construciile sintactice
numite expresii. Expresiile sunt alctuite din operanzi i operatori. Evaluarea expresiilor produce ca
rezultat o valoare de un anumit tip. n metalimbajul BNF expresia poate fi definit astfel:
<expresie>::=<operand>|<operator_unar><expresie>|<expresie><operator_binar><expresie>
Prima variant din definiie corespunde celei mai simple forme de expresie, redus la o
variabil sau o constant de un anumit tip. A doua i a treia variant, prin aplicare repetat, conduc
la recursivitate n construirea expresiilor.
Ordinea de aplicare a operatorilor din expresii poate fi, total sau parial, impus prin folosirea
parantezelor. Acestea sunt evaluate cu prioritate, iar dac sunt mai multe niveluri de paranteze,
evaluarea se realizeaz din interior spre exterior. n absena parantezelor, respectiv n interiorul
acestora, evaluarea se realizeaz n funcie de ordinul de precedent a operatorilor. Se disting cinci
clase de precedent, care (de la superior la inferior) sunt:
1 : operatorii unari + si -;
2 : operatorul unar NOT;
3 : *, DIV, /, MOD, AND, SHR, SHL;
4 : +, -, OR, XOR, intersecie (*), reuniune (+), diferen (-) de mulimi;
5 : <, <=, =, >, >=, <>, IN i operatorii relaionali ntre mulimi.
Pentru operatorii aparinnd aceleiai clase de preceden, evaluarea se realizeaz de la stnga
la dreapta. Operatorii se aplic operanzilor de acelai tip, cu rezultat n mulimea tipului de dat
respectiv. Exist i excepii:
- Expresiile aritmetice au operanzi numerici. n categoria acestora se includ datele de tip
ntreg (BYTE, WORD, INTEGER, LONGINT, SHORTINT) i cele de tip real (REAL, SINGLE,
DOUBLE, EXTENDED, COMP). n general, toate tipurile numerice sunt compatibile ntre ele, cu
unele excepii prezentate n tabelul 8.4. Deoarece expresiile se evalueaz pe subexpresii definite de
un operator, comutativitatea din matematic nu este conservat (n programare, expresia A+B+C nu
este ntotdeauna egal cu A+C+B, depinznd de tipurile variabilelor). Operatorii *, /, +, -, pot fi
aplicai i n cazul cnd un operand este ntreg iar cellalt real, rezultatul fiind de tip real. n
operaiile de mprire (/, DIV, MOD), mpritorul nu poate fi zero. n evaluarea expresiilor nu se
sesizeaz eventuala depire a domeniului de valori admise de tipul rezultatului, care, n acest caz,
este imprevizibil pentru utilizator.
225
Tabelul 8.4
Operatori arimetici
- Expresiile logice sunt cele care, n urma evalurii, produc rezultat de tip BOOLEAN. n
funcie de operatorii utilizai, se disting expresii relaionale i expresii logice propriu-zise.
Expresiile relaionale se construiesc cu operatorii < <= = > >= <> inclui n clasa de
precedent cinci. Operanzii expresiilor (subexpresiilor) relaionale trebuie s fie compatibili.
Se consider urmtoarele clase de compatibilitti:
- operanzii numerici (tipurile ntregi si reale);
- operanzii STRING sau CHAR ;
- operanzii de tip BOOLEAN ;
- operanzii de tip enumerativ ;
- operanzii de tip multimi compatibile (acelasi tip "printe").
Operatorii relaionali pot fi aplicai i operanzilor de tip mulime, semnificaia lor fiind:
incluziune (<=), egalitate (=), neegalitate (<>), apartenen (IN). Rezultatul este de tip BOOLEAN
(TRUE sau FALSE). Operatorii relaionali aplicai mulimilor au clasa de preceden cinci.
Expresiile logice propriu-zise au operanzi de tip logic i se construiesc cu operatorii NOT
(clasa de preceden doi), AND (clasa de preceden trei), OR si XOR (clasa de preceden patru).
Rezultatul evalurii este de tip BOOLEAN (TRUE sau FALSE).
- Expresii cu iruri de caractere. Operaia care se realizeaz cu iruri de caractere este
concatenarea (+). Operanzii trebuie s fie de tip STRING sau CHAR. Rezultatul este de tip
STRING. irul rezultat va fi trunchiat la dreapta dac are lungimea mai mare de 255 de caractere.
8.3. REALIZAREA STRUCTURILOR FUNDAMENTALE DE CONTROL
Limbajul Pascal este puternic orientat spre programarea structurat. Este conceput astfel nct
s implementeze fidel conceptele proiectrii i realizrii structurate i modularizate a programelor.
Tipurile de instruciuni
Instruciunile specific operaiile (aciunile) care se aplic datelor n vederea obinerii
rezultatelor scontate prin algoritm. n programul obiect rezultat dup compilare, ele se regsesc sub
forma unor secvene de apeluri i instruciuni cod main. Aceeai instruciune surs poate avea
diverse configuraii cod main, depinznd de tipul operanzilor pe care i refer. Instruciunile unui
program Pascal se grupeaz ntr-un bloc BEGIN...END. Un program trebuie s execute cel puin o
instruciune, chiar dac, la limit, aceasta este vid. Rezult deci, c forma cea mai simpl a unui
program Pascal este: BEGIN END. Dup modul de realizare a construciilor sintactice i al
numrului de aciuni descrise, se disting instruciuni simple i structurate. Pot fi create blocuri de
instruciuni executabile, denumite instruciuni compuse.
O instruciune compus este o secven de instruciuni (simple, structurate sau compuse)
delimitat de cuvintele rezervate BEGIN i END (8.46). Ea implementeaz natural structura
secvenial din programarea structurat. Mulimea instruciunilor executabile ale unui program este
o instruciune compus.
(8.46)
226
O instruciune este simpl dac descrie o singur aciune, unic determinat i care nu
provoac condiionri. Din categoria instruciunilor simple fac parte: atribuirea, saltul necondiionat
(GOTO), apelul procedurilor, instruciunea INLINE (secvene de program scrise n cod main) i
instruciunea vid.
Instruciunile structurate sunt construcii care conin alte instruciuni (simple, compuse sau
structurate) care vor fi executate alternativ sau repetitiv. Prin instruciunile structurate se codific
structurile fundamentale alternative sau repetitive din algoritm. Instruciunile sunt separate ntre ele
prin caracterul ; i poate lipsi naintea cuvntului rezervat END. n limbaj exist i alte cuvinte
rezervate cu rol de separator (ELSE, UNTIL). n concluzie, conceptului de instruciune i poate fi
asociat diagrama de sintax 8.47.
(8.47)
Instruciunile simple ale limbajului
Prin instruciunile simple se realizeaz o parte a operaiilor de baz din algoritmi.
Instructiunea vid descrie actiunea vid. Ea este definit prin lips n contextul unor
construcii Pascal, neavnd o mnemonic explicit. Prin construcia instruciune se subntelege i
instruciunea vid.
Instruciunea de atribuire evalueaz o expresie i atribuie valoarea acesteia unei variabile
sau funcii. Instruciunea are forma:
identificator:=expresie,
unde identificator refer o variabil (simpl sau indexat) sau o funcie (8.48).
(8.48)
Limbajul Pascal accept un numr limitat de atribuiri neomogene: cnd variabila este de un
tip real i expresia este de un tip ntreg sau variabila este de tip ir i expresia este de tip caracter.
Alte combinaii de tipuri neomogene genereaz erori n momentul compilrii. n cazul n care
expresia din dreapta atribuirii este o constant simbolic sau un literal, compilatorul verific att
compatibilitatea de tip, ct i ncadrarea valorii n domeniul (lista) de valori admise de tipul
variabilei receptoare, semnalnd, eventual, erorile corespunztoare.
La atribuire de iruri, cnd irul rezultat din expresie are lungimea mai mare dect cea
declarat pentru variabila receptoare, acesta va fi trunchiat la dreapta. Octetul de lungime al
variabilei receptoare primete valoarea irului efectiv atribuit.
Instruciunea de apel al unei proceduri (8.49) are forma:
nume_procedur [ (list_parametri_actuali ) ];
(8.49)
Parametrii din apel se numesc actuali i se pun n coresponden cu parametrii corespunztori
definii n antetul subprogramelor, care se numesc formali.
Realizarea structurilor alternative
Structurile alternative se realizeaz prin instruciunile IF i CASE.
227
(8.50)
n figura 8.3. se prezint dou exemple de structuri alternative: c desemneaz o condiie
(expresie logic), a crei evaluare produce rezultatul TRUE (ramura DA n schema logic) sau
FALSE (ramura NU n schema logic); s1 i s2 desemneaz secvene de operaii ce se transpun n
limbaj prin construcia instruciune, fiind posibil, la limit, situaia de instruciune vid; pentru
lizibilitate, se recomand scrierea cu indentare (cu deplasarea cu cteva poziii spre dreapta) a
secvenelor s1 i/sau s2. ntruct s1 i s2 trebuie s rspund cerinelor construciei instruciune,
adic s fie o instruciune simpl, compus sau structurat, se vor constitui instruciuni compuse
care s nglobeze eventualele succesiuni de instruciuni ce corespund lui s1 i/sau s2.
Structura pseudoalternativ IF-THEN poate fi descris i ca o structur alternativ simpl,
cu instruciune vid pe ramura FALSE:
IF c THEN s1 ELSE;
O structur IF-ELSE se poate descrie fie ca structur pseudoalternativ IF-THEN, fie ca
structur IF-THEN-ELSE cu instruciune vid pe ramura THEN: IF NOT c THEN s1; IF c THEN
ELSE s1;
(8.51)
CASE selector OF
list_constante : instructiune
{;list_constante : instructiune}
[ELSE instructiune]
END;
Selector este o expresie de tip ordinal, list_constante conine literali compatibili cu tipul
selectorului iar instruciune corespunde definiiei din digrama 8.5.
Instruciunea CASE selecteaz pentru execuie instruciunea a crei list_constante conine o
valoare egal cu valoarea curent a selectorului. Dac nici o constant nu ndeplinete condiia de
228
egalitate, se execut instruciunea care urmeaz dup ELSE (dac aceasta exist) sau nu se execut
nimic (dac aceasta lipsete).
Instruciunea permite realizarea structurii alternative generalizate (CASE-OF) a crei form
de principiu se prezint n figura 8.4.
(8.53)
REPEAT
instructiune
{;instructiune}
UNTIL conditie;
Instruciunea REPEAT este repetitiv cu numr nedefinit de iteraii, al crei corp se execut
cel puin o dat. La ntlnirea ei, funcioneaz urmtorul algoritm (figura 8.6):
(8.54)
FOR contor := vi TO vf DO instruciune;
FOR contor := vi DOWNTO vf DO instruciune;
unde contor este variabil de tip ordinal pentru controlul ciclrii, vi i vf sunt expresii
compatibile cu tipul contorului, semnificnd valoarea initial, respectiv valoarea final a acestuia,
iar instruciune corespunde corpului ciclului.
Structurile asociate instructiunii FOR sunt prezentate n figura 8.7. Numrul de iteraii se
determin astfel: n= [ORD(vf)-ORD(vi)]+1.
Procedurile sunt activate prin invocarea numelui lor n instruciuni de apelare, iar funciile
sunt activate prin evaluarea unor expresii care conin apeluri ale acestor funcii ca operanzi,
valoarea rezultat din evaluarea funciilor fiind asociat numelui acestora.
8.4.1. Proceduri
Declaraia unei proceduri asociaz unui bloc un identificator, care este numele procedurii.
Structura general a unei proceduri este urmtoarea:
PROCEDURE nume_proc[(lista_param_formali)]; [opiune;]
LABEL
{declaraii de etichete locale};
CONST
{declaraii de constante locale};
TYPE
{declaraii de tipuri locale};
VAR
{declaraii de variabile locale};
{declaraii de subprograme FUNCTION i PROCEDURE};
BEGIN
{instruciuni -corpul procedurii}; .
END;
unde identificatorii corespunztori aceluiai tip (tip _i) sunt separai prin virgule, grupurile de
identificatori corespunztori unor tipuri diferite fiind separai prin " ; ".
Cuvntul rezervat VAR trebuie s apar numai naintea grupurilor de parametri variabil. n
program argumentul formal n al procedurii fact este parametru valoare, parametrul actual
corespunztor din programul principal este o variabil distinct (dei are acelai nume), care la
revenirea execuiei n programul principal nu este afectat de eventuala modificare a variabilei n din
procedur. Argumentul formal f este declarat ca parametru variabil (fiind precedat de cuvntul
rezervat VAR), pentru ca la revenirea execuiei din procedura n programul principal, parametrul
actual corespunztor f s conin valoarea calculat a factorialului.
Parametrii actuali trebuie separai n lista de argumente prin virgule.
Domeniul de valabilitate al declaraiilor
Declaraia identificatorilor i etichetelor este valabil n interiorul blocului n care au fost
definite, incluznd toate blocurile subordonate. n particular, identificatorii sau etichetele definite n
programul principal pot fi folosite n orice bloc al programului.
Declararea identificatorilor i etichetelor trebuie s fie unic la nivelul exterior dintr-un bloc.
Excepie fac redeclarrile din blocurile subordonate sau cmpurile tipurilor RECORD.
Identificatorii i etichetele pot fi redeclarate n blocurile subordonate blocului n care au fost
declarate, noua declaraie desemnnd obiecte diferite fa de cele declarate la nivelul superior i
fiind valabil pn la revenirea execuiei n blocul apelant, unde ramne valabil declaraia iniial.
Utilizarea unui identificator declarat n lista de argumente formale a subprogramului, implic
considerarea acestuia ca variabil local dac este parametru valoare, sau ca variabil a blocului
apelant dac este parametru variabil. Declaraia este valabil n blocul n care a fost declarat:
232
Recursivitatea indirect (mutual) implic apelarea reciproc a dou sau mai multe
subprograme i poate fi realizat cu ajutorul directivei FORWARD, care permite apelarea unui
subprogram naintea definirii sale complete n textul surs.
8.5. FIIERE
Prin fiier n general se nelege o structur de date care const dintr-o secven de
componente. Fiecare component din secven are acelai tip. Numrul acestor componente nu este
fixat. Aceasta este o caracteristicii prin care se distinge clar fiierul de tablou. La un moment dat
ns, este accesibil direct numai o singur component a secvenei. Celelalte componente sunt
accesibile progresnd secvenial n fiier. Progresarea n componentele unui fiier se realizeaz prin
subprograme de citire i de scriere. Datele fiierului sunt stocate de obicei pe un suport magnetic.
Datele se manevreaz, pe purttori tehnici de informaii, dar se prelucreaz numai cnd sunt
prezente n memoria intern, acestea trebuie organizate att extern, ct i intern.
n organizarea extern a datelor se identifica dou niveluri de abordare logic i fizic. Fiierul
reprezint termenul generic care desemneaz structurile de date externe. El reprezint o mulime
(colecie) de date omogene din punct de vedere al semnificaiei i al cerintelor de prelucrare. n
purtatorul extern, fiierul are, pe lng partea de date, i informaii de identificare.
Privit din punctul de vedere al prelucrrii, un fiier este o colecie ordonat de date, numite
articole. Articolul este constituit dintr-o mulime ordonat de valori ale unor caracteristici care
aparin, unei singure entiti Componentele articolului destinate diverselor caracteristici sunt
denumite cmpuri de date. Depinznd de natura, ordinul de mrime i forma de reprezentare extern
a valorilor asociate, fiecare cmp de date are o lungime, exprimat n octeti. Lungimea unui articol
este dat de suma lungimilor cmpurilor care l compun. Dup cum toate articolele dintr-un fiier au
sau nu aceeai lungime, se face distincie ntre fiierele cu articole de lungime fix sau variabil.
Limbajul Pascal accept att fiiere cu articole de lungime fix (stabilit la momentul fiecrei
prelucrri), ct i de lungime variabil (implementat prin separarea fizic a dou nregistrari
alturate - de exemplu, prin caracterele CR/LF).
Principiile i regulile dup care se memoreaz articolele unui fiier pe purtatorul extern, cu
asigurarea proteciei i regsirii acestor, constituie metoda de organizare. n evoluia organizrii
datelor externe s-au conturat mai multe metode (secvenial, relativ, indexat), dintre care, n
limbajul Pascal este inclus metoda de organizare secvential. Tipul de acces reprezint modalitatea
de regsire (localizare) a articolelor din fiier. Noiunea de acces trebuie aplicat att pentru
operaia de scriere, ct i pentru cea de citire a datelor.
Accesul secvenial este posibil la toi purtatorii tehnici de date i presupune nscrierea
nregistrrilor n ordinea furnizrii lor i regsirea ulterioar n ordinea n care au fost nscrise n
suport. O problem important la consultarea (citirea) n acces secvenial este controlul ajungerii la
sfritul fiierului. Dupa citirea ultimei entiti (articol, bloc, linie sau cmp), pointerul indic
marcatorul (logic sau fizic) de sfrit de fisier EOF (End of File).
n accepiunea limbajului Turbo Pascal, pot fi definite trei structuri de tip fiier:
fiier cu tip
fiier text
fiier fr tip,
S notm cu f o variabil de tip fiier. nainte ca variabila s fie ulilizat, ea trebuie asociat
cu un fiier extern, prin apelul procedurii Assign. n general, fiierul extern este un fiier pe disc,
dar variabila de fiier poate fi asociat i cu un dispozitiv (de exemplu tastatura, ecran). Fiierul
extern marcheaz informaiile scrise n, fiier sau furnizeaz informaiile depuse. Dup ce s-a
stabilit asocierea cu un fiier extern, fiierul trebuie "deschis". Aceast deschidere pregtete fiierul
pentru citire i/sau scriere. Un fiier existent poate fi deschis cu ajutorul procedurii Reset. Un fiier
nou poate fi deschis cu procedura Rewrite. Fiierele de tip text deschise cu Reset permit doar
operaii de citire; fiierele de tip text deschise cu procedura Rewrite sau Append permit numai
234
operaii de scriere. Fiierele cu tip sau fr tip permit att citiri ct i scrieri, indiferent dac ele au
fost deschise cu Rewrite sau cu Reset.
Fiecare fiier este o secven liniar de componente, fiecare component avnd tipul de baz
al variabilei fiier. Fiecare component a fiierului are asociat un numr, numit numrul
componentei. Prima componenta a fiierului este considerat avnd numrul de component zero.
Cea de a doua componenta are numrul 1 i aa pn la n-1 ultima component.
n mod normal accesul la componentele fiierului este secvenial. Aceasta nseamn ca atunci
cnd se citete o component cu ajutorul procedurii standard Read, sau cnd se scrie o component
cu ajutorul rocedurii standard Write, poziia curent de fiier se deplaseaz la urmtoarea
component, n sensul ordonrii numerice. n afar de acest mod de acces, fiierele cu tip i fiierele
fr tip permit i accesul direct (aleator) la componentele fiierului. Accesul direct se bazeaz pe
procedura de cutare Seek, care mut poziia curent n; fiier pe o component specificat. Dup
aceast poziionare componenta astfel aleas poate fi citit. Funciile standard File-Pos i File-size
permit determinarea poziiei curente n fiier, respectiv a dimensiunii actuale a fiierului. Cnd
prelucrarea componentelor unui fiier se termin, fiierul trebuie nchis cu procedura standard
Close. Dup ce fiierul a fost nchis, se vor actualize datele fiierului extern asociat. Dup fiecare
apel de procedur i funcie standard de intrare/ieire se testeaz automat reuita operaiei de
intrare/ieire. n cazul n care apare o eroare, programul se termin i se afieaz un mesaj, de eroare
n execuie. Directiva de compilare $I permite ca aceast eroare s fie tratat n program. n stare
decuplat {$I-}, programul nu se oprete la o eroare de intrare/ieire. Pentru a analiza cauza erorii,
se apeleaz funcia standard IoResult, care n caz de operaie reuit returneaz valoarea zero, iar n
caz de eec returneaz o valoare diferit de zero, care codific natura erorii. tergerea fiierului
extern asociat unui fiier nchis poate fi realizat cu procedura Erase.
n procesul de citire a unui fiier, faptul c s-a ajuns la sfritul fiierului poate fi urmrit cu
funcia Eof. Aceast funcie returneaz valoarea logica true dac s-a ajuns la sfiritul fiierului,
respectiv false n caz contrar. Logica apelurilor diferitelor subprograme i funcii standard de
intrare/ieire sint prezentate n figura 8.8.
crora li se asociaz numere relative, ncepnd de la zero. Fiierele cu tip se mai numesc fiiere cu
prelucrare la nivel de articol. Operaiile de acces la articolele fiierelor cu tip transfer date fr
conversie. Unitatea de transfer este articolul, definit ca variabil de acelai tip cu fiierul.
Mecanismul fizic de "decupare" a articolelor n cadrul fiierului se bazeaz pe faptul c ele au
lungime fix (lart), definit n momentul prelucrrii. Operaia de I/E transfer atia octei ci
indic lart. Lungimea fisierului, exprimat n octei, este memorat n intrarea lui din director
(sfritul de fiier este logic). Numrul de articole din fiier (Filesize(f)) este determinat de sistem
prin mprirea ntreag a lungimii acestuia la lart. Fiierele cu tip accept accesul secvenial i
relativ la articole. Accesul secvenial poate fi combinat cu cel relativ n cadrul aceluiai program.
Poziionarea direct pe articolul cu numrul relativ r se realizeaz cu procedura Seek(f,r). Citirea
articolelor se face cu procedura Read, iar scrierea cu procedura Write. Asupra fiierelor cu tip nu se
pot aplica funciile Eoln, SeekEoln, SeekEof i procedurile WriteLn, ReadLn.
Tipul fiier cu tip se declar conform diagramei 8.55, unde tip este orice tip de date Pascal,
mai puin tipul fiier.
(8.55)
O variabil de acest tip poate fi declarat printr -o declaraie de forma:
var nume_fiier : file of tip_de_baz;
unde tip _de_baz este un tip arbitrar, exceptnd tipul fiier (nu exist fiier de fiiere).
Deseori tipul de baz este un tip nregistrare (record), astfel nct fiecare linie a unui fiier
reprezint o nregistrare cu toate cmpurile completate.
Fiiere de tip text, conine caractere structurate pe linii, fiecare linie fiind terminat cu un
caracter de sfrit de linie (EOLN character). Lungimea liniilor este variabil. Caracterul de sfrit
de linie este de regul CR (ASCII #13), care poate s fie urmat i de un caracter LF (ASCII #10).
Un fiier text este terminat cu un caracter de sfrit de fiier CTRL-Z.
Fiierele TEXT accept numai accesul secvenial. Operaia de citire se realizeaz cu
procedurile Read i ReadLn, iar scrierea cu procedurile Write si WriteLn. Deoarece datele
memorate n fiiere TEXT au reprezentarea extern ASCII, nu toate tipurile de date pot face
obiectul operaiilor de citire/scriere. Nu pot fi citite/scrise date de tip SET sau enumerativ, date de
tip ARRAY sau RECORD, ci numai elemente ale acestora. Exist dispozitive fizice care accept
numai fiiere TEXT, cum ar fi: tastatura, care emite numai coduri ASCII. Tipul TEXT se declar
conform diagramei 8.56, unde TEXT este cuvntul rezervat.
(8.56)
Un fiier text este declarat prin tipul predefinit text, de exemplu:
var f : text;
Notm c un fiier text nu este echivalent cu un fiier de tip file of char.
Lungimea liniilor fiind variabil, poziia unei linii n cadrul fiierului nu este calculabil. n
consecin, la fiiere text accesul nu poate fi dect secvenial.
Asocierea numelui fiierului la suportul extern este realizat cu procedura Assign.
Deschiderea fiierului poate fi realizat prin trei subprograme standard. Un fiier nou se
deschide cu procedura Rewrite, un fiier existent poate fi deschis fie la nceputul fiierului, fie la
sfritul lui, n vederea adugrii liniilor noi. Deschiderea la nceput se realizeaz cu procedura
Append.
Pentru fiiere text, formele speciale ale subprogramelor Read i Write permit citirea i
scrierea nu numai a valorilor de tip caracter, ci i a valorilor de tip ntreg, real i de tip ir de
caractere. De exemplu, Read(f,i), unde i este o variabil de tip intreg, va citi o secven de cifre,
care vor fi interpretate ca un ntreg zecimal, i care va fi depus n variabila i.
Detectarea caracterelor de sfrit de linie poate fi realizat cu funcia Eoln, care returneaz
valoarea true dac s-a ajuns la sfritul liniei curente.
236
Funcia SeekEoln este similar cu Eoln; exceptnd faptul c se sare peste blancuri i tab-uri,
dup care se testeaz starea de sfrit de linie.
Starea de sfrit de fiier poate fi testat cu funcia Eof, precum i cu funcia SeekEof; aceasta
sare peste blancuri i tab-uri, dup care se returneaz true dac s-a ajuns la sfritul fiierului.
Procedura SetTextBuf permite ataarea unui tampon de intrare/ieire de lungime dat la un
fiier text. Golirea tamponului unui fiier text deschis pentru scriere poate fi realizat cu procedura
Flush.
Aa cum s-a artat la generaliti despre fiiere, exist dou fiiere text standard: Input i
Output. Fiierul Input este destinat numai pentru operaii de citire i este asociat cu fiierul
standard de intrare al sistemului de operare (de regul claviatur). Fiierul Output este destinat
numai pentru operaii de scriere i este asociat cu fiierul standard de ieire al sistemului de operare
(de regula ecranul). Aceste fiiere sunt deschise automat nainte de nceputul execuiei, ca i cum ar
fi prezente instruciunile.
Assign(Input,' '); Reset(Input);
Assign(Output,' '); Rewrite(Output);
Aceste fiiere sunt nchise automat dup ce s-a terminat execuia programului.
Unele proceduri i funcii de intrare/ieire permit ca numele fiierului s nu fie specificat n
lista de argumente. n acest caz se presupune c fiierul text implicit este sau Input, sau Output, n
funcie de natura subprogramului. De exemplu, Read(x) este echivalent cu Read (Input,x), iar
Write(x) este echivalent cu Write(Output,x).
Un fiier deschis cu Reset suport numai proceduri i funcii orientate spre citire. Analog, un
fiier deschis cu Rewrite sau Append permite utilizarea acelor proceduri i funcii, care sunt
orientate spre scriere.
Fiiere fr tip, sunt canale de intrare/ieire de nivel inferior, utilizate n primul rnd pentru
accesul direct la orice fiier disc, indiferent de tipul i de structurarea intern a fiierului.
Fiierele fr tip sunt construite, logic, din blocuri de lungime fix, asupra crora nu se face
nici o ipotez de structur. Se mai numesc fiiere cu prelucrare la nivel de bloc. Unitatea de transfer
este blocul, a carui lungime este definit, implicit sau explicit, la deschiderea fiierului (parametrul
RecSize). Transferul datelor ntre memoria intern i suportul extern se realizeaz fr conversie.
ntre fiierele cu tip i cele fr tip exist multe asemnri de prelucrare. Dintre aceste, cele
mai importante se refer la faptul ca transferul este binar (fr conversie) i ca entitile transferate
(articolul sau blocul) au lungime fix. Deosebirea esenial dintre cele dou tipuri de fiiere const
n aceea c la fiierele cu tip, articolul are definit o structur, iar la cele fr tip, blocului nu i se
asociaz o structura.
Tipul fiier fr tip se declar conform diagramei 8.57, unde FILE este cuvnt rezervat.
(8.57)
n operaiile de intrare/ieire, la fiierele fr tip informaiile sunt transferate direct ntre fiier
disc i variabile, economisindu-se astfel spaiul necesar zonei tampon. Un fiier fr tip este
compatibil cu orice fiier (cu tip sau text).
Pentru fiiere fr tip, procedurile de deschidere Reset i Rewrite permit folosirea unui
parametru auxiliar. Acest parametru specific lungimea unei componente a fiierului. Valoarea
acestui parametru, din motive istorice, este 128. Se recomand alegerea valorii 1, deoarece aceast
valoare permite reflectarea corect a dimensiunii exacte a fiierului (cnd aceast valoare este 1, nu
sunt posibile componente fracionate).
Exceptnd procedurile Read i Write, toate procedurile i funciile standard utilizabile pentru
fiierele cu tip sunt permise i pentru fiierele fr tip. n locul procedurilor Read i Write, pentru
realizarea transferurilor rapide de date sunt folosite procedurile BlockRead i BlockWrite.
Procedura BlockRead citete din iierul fr tip un numr precizat de componente, care se
depun n memorie de la o adres specificat. La revenire din procedur, o variabil -care se poate
specifica opional va conine numrul componentelor citite efectiv. Dac aceast variabil nu este
specificat, i dac nu s-a reuit citirea tuturor componentelor, va apare o eroare de intrare/ieire.
237
Datele de tip static au caracteristici care limiteaz rezolvarea unor clase de probleme.
Spaiul de memorie aferent unor astfel de date se definete i se rezerv la dimensiune
maxim, prestabilit, ca spaiu propriu care nu poate fi disponibilizat i nici mprit cu alte date,
chiar dac, n momentul diverselor execuii ale programului, nu este n ntregime utilizat (rezervare
static sau la momentul compilrii).
238
Segmentul de stiv, ca i cel de date, poate avea maximum 64Ko, reducndu-se la unul
singur. Stiva este folosit n lucrul cu subprograme pentru memorarea parametrilor formali,
variabilelor locale i adreselor de revenire.
Zona variabilelor dinamice, poate corespunde ntregii memorii convenionale a
calculatorului, rmas disponibil dup ncrcarea programului. n heap se memoreaz variabilele
dinamice, buffer-ele pentru structuri de reacoperire i pentru lucrul n modul grafic. Adresa de
nceput a zonei heap este dat de variabila public HeapOrg, iar adresa curent este dat de
variabila HeapPtr, ambele de tip pointer, definite n unitatea System. Alocarea variabilelor ncepe
de la adrese mai mici ctre adrese mai mari, spaiul maxim ce poate fi alocat unei variabile
neputnd depi 64Ko (65520 octei), ca urmare a limitrilor impuse mecanismului de adresare a
memoriei. Dup modul lor de funcionare, stiva i heap-ul pot fi asimilate cu dou stive aezate
spate n spate. Programatorul poate controla repartizarea memoriei disponibile ntre stiv i heap n
faza de execuie cu directiva de compilare {$M}, care are urmtoarea form sintactic:
{$M StackSize,HeapMin,HeapMax}
StackSize trebuie s fie un ntreg din domeniul 1024 (1Ko) la 65520 (64 Ko), prin care se
specific mrimea segmentului de stiv. HeapMin i HeapMax specific dimensiunea minim,
respectiv maxim a heap-ului, teoretic cu valori ntre 0 si 640 Ko. Riguros, HeapMin poate avea
valori de la 0 la 655360, iar HeapMax trebuie s fie n domeniul de la HeapMin la 655360. Valorile
implicite pentru aceti parametri de alocare sunt {$M 16384,0,655360}.
Rezult c dimensiunea implicit a stivei este de 16 Ko, iar zona de heap se extinde, teoretic,
n tot spaiul rmas liber n memoria convenional. Practic, din dimensiunea de 640 Ko trebuie
sczut, pe lng spaiul ocupat de programul nsusi, cel corespunztor componentelor sistemului de
operare rezidente n memorie pe parcursul executiei.
Tipuri dinamice de date
n Pascal se opereaz cu dou tipuri de date dinamice - referin i pointer - primele fiind "cu
tip" iar celelalte "fr tip".
Tipul referin are sintaxa:
tip_referint=^tip_de_baz;
Simbolul ^ are semnificaia de "indirect". Datorit asocierii cu un tip de baz, variabilele
tip_referint se mai numesc i variabile cu referin legat. La compilare, pentru astfel de variabile,
se vor rezerva n segmentul de date dou cuvinte i la referirea lor se vor genera instruciuni cod
main conform tipului de baz, dar cu adresare indirect. nainte de referire, n variabilele de
tip_referint trebuie s se ncarce adresele variabilelor de tipul tip_de_baz. Declararea unui tip
referin permite referirea anterior declarrii tipului de baz. Astfel, urmtoarea secven de
declarri este corect: TYPE pointer_a=^vector; vector=ARRAY[1..20] OF REAL;
Construcia sintactic a referirii unei variabile dinamice depinde de caracteristicile tipului su
de baz: este de forma identificator^ n cazul tipurilor nestructurate sau celor structurate care permit
referirea global (STRING, RECORD i SET); conine prefixul identificator^, urmat de elementele
specifice modului de referire a componentelor, n cazul tipurilor structurate care permit referirea pe
componente (ARRAY, STRING i RECORD).
Tipul pointer este desemnat prin cuvntul rezervat pointer. Variabilele de tip pointer pot fi
denumite variabile cu referint liber, deoarece pot fi folosite la memorarea adreselor pentru
variabile de orice tip. Tehnica de lucru cu astfel de variabile este asemntoare celei prezentate la
tipul referin. Utilizarea efectiv presupune o asociere explicit cu un anumit tip de baz, dar
soluia folosit este diferit. La tipul referin, asocierea se face prin declarare, iar n cazul tipului
pointer asocierea se realizeaz la utilizare, prin diverse tehnici. O posibilitate este asigurat de
referinta typecasting (transfer de tip), care are forma general: tip(variabil), unde tip este un tip
standard sau declarat anterior de utilizator iar variabil poate fi cu/fr tip sau o referin prin
pointer, de forma variabil_pointer^.
Din punct de vedere fizic, variabilele de tip referint_legat i pointer memoreaz adrese sub
forma segment:offset. n limbajul de specialitate, ambele tipuri se definesc prin termenul pointer.
240
Urmtorul evemplu evalueaz expresia e:=a+b, folosind adresarea indirect pentru toate
variabilele (a i e prin referint_cu_tip iar b prin pointer):
VAR
a,b,e:REAL; pa,pe:^REAL; pb:POINTER;
BEGIN
pa:=addr(a); pb:=@b; pe:=@e;
Write(A=); ReadLn(pa^);
Write(B=); ReadLn(REAL(pb^));
pe^:=pa^+REAL(pb^);
WriteLn(E= ,pe^:8:2))
END.
Variabilele pointer (referin sau pointer) pot fi puse n relaie cu operatorii = i < >. Dou
variabile vor fi egale dac au componentele segment, respectiv offset egale. De remarcat faptul c
dou variabile de tip pointer care indic aceeasi adres pot fi neegale, deoarece le difer
componentele. Variabilele pointer pot fi folosite n atribuiri. Att n relaii ct i n atribuiri sunt
definite urmtoarele clase de compatibilitate: tipul referin este compatibil cu orice alt tip dinamic;
dou variabile de tip referin sunt compatibile dac sunt de acelai tip.
Observaie: pa i pb nu sunt de acelai tip dac sunt declarate astfel: pa:^real; pb:^real. Ele
sunt de acelai tip dac sunt declarate astfel: pa,pb:^real.
Este definit o constant simbolic (nil) cu semnificaie de valoare nul a tipului dinamic
(valoarea nil nu puncteaz o zon de memorie).
Utilizarea zonei heap
Noiunea de dinamic este strns legat de utilizarea zonei de memorie heap (dei tipul
dinamic poate fi asociat variabilelor memorate n orice component a memoriei principale).
n unitatea System sunt definite urmtoarele variabile de tip pointer, care pot fi folosite n
gestionarea zonei heap: HeapOrg, HeapPtr, HeapEnd, HeapError, FreeList.
HeapOrg puncteaz pe adresa de nceput a zonei heap, iar HeapEnd d adresa de sfrit a
heap-ului.
HeapPtr conine urmtoarea adresa disponibil din heap. Ea este variabila prin care se
gestioneaz fiecare nou alocare, punctnd pe prima adres disponibil din heap. Toate procedurile
de alocare (New, GetMem, Mark) lucreaz cu aceast variabil. HeapError corespunde adresei
rutinei de tratare a erorilor de alocare pentru variabile dinamice. FreeList servete la gestiunea
blocurilor devenite libere n interiorul heap-ului, punctnd pe primul bloc liber n heap, care
puncteaz pe al doilea. Ultimul bloc liber puncteaz pe vrful heap-ului, adic pe locatia dat de
HeapPtr, asigurndu-se astfel posibilitatea realocrii acestor spaii. Dac n interiorul heap-ului nu
exist blocuri libere, atunci FreeList va fi egal cu HeapPtr.
n unitatea System sunt definite o serie de proceduri i funcii care pot fi utilizate n lucrul cu
variabilele dinamice. Procedurile GetMem(p,n), FreeMem(p,n), respectiv New(p) i Dispose(p) se
folosesc pentru a aloca /elibera un bloc a crui adres este dat de variabila pointer sau referint, p.
Se poate stabili dac spaiul disponibil este acoperitor pentru o variabil de un anumit tip,
scriind o relaie de forma MaxAvail >= SizeOf (tip).
Alocarea i eliberarea zonelor pentru variabile referint_legat se face cu procedurile New,
respectiv Dispose, definite n unitatea System astfel:
New(VAR p:pointer), Dispose(VAR p:pointer).
Procedura New rezerv n heap o zon de memorie de lungime egal cu cea indicat de tipul
de baz i ncarc n variabila p adresa acestei zone. Exist dou niveluri de rezervare: static
(corespunztoare lui px) i dinamic (datorat procedurii New(px), care rezerv variabila n heap, n
conformitate cu tipul de baz). Din punct de vedere fizic, operaia realizeaz memorarea n variabila
p a valorii HeapPtr i avansarea acesteia din urm cu lungimea specific tipului de baz.
Dac nu exist o zon contigu disponibil de lungime mai mare sau egal cu cea necesar se
genereaz eroare de execuie. Procedura Dispose elibereaz zona alocat variabilei. Urmtorea
alocare se poate face pe spaiul eliberat, dac este acoperitor ca lungime. Fizic, se reface n HeapPtr
valoarea de dinaintea alocrii prin New.
241
Prin posibilitatea de generare a unor succesiuni de valori de acelai tip, de la simpla alocare
dinamic de spaiu pentru o singur valoare a unei variabile se poate trece la realizarea unor
structuri dinamice de date.
Acest lucru este posibil pe baza nlnuirii succesiunilor de valori, ca urmare a includerii la
fiecare element al structurii a dou pri:
o parte de informaii, corespunznd valorii propriu-zise a elementului;
o parte de legtur, care va conine adresa urmtorului element.
Alocarea i eliberarea zonelor pentru variabile de tip pointer se realizeaz cu procedurile
GetMem, respectiv FreeMem, definite n unitatea System astfel:
GetMem(VAR p:pointer; l:WORD), FreeMem(VAR p:pointer; l:WORD).
Efectul acestora este asemntor procedurilor New i Dispose, cu precizarea c este necesar
specificarea lungimii, care nu poate fi dedus implicit, neexistnd un tip de baz.
Spaiul alocat la un apel al procedurii GetMem corespunde dimensiunii articolului (6 octeti).
Ca alternative ale procedurilor New, GetMem, respectiv Dispose, FreeMem, pot fi folosite
procedurile Mark i Release, definite n unitatea System astfel:
Mark(VAR p:pointer), Release(VAR p:pointer).
Procedura Mark memoreaz n variabila p valoarea din HeapPtr, iar procedura Release
depune n variabila HeapPtr coninutul variabilei p. Folosirea n pereche a procedurilor Mark i
Release ofer posibilitatea ca dup diverse alocri s se restabileasc valoarea variabilei HeapPtr cu
valoarea memorat prin Mark.
Apelul Release(HeapOrg) aduce HeapPtr pe nceputul zonei heap (elibereaz zona).
n exemplul urmtor, se memoreaz n y adresa de la un moment dat a lui HeapPtr (fie ea a),
se modific HeapPtr prin rezervarea a 12 octei (pentru x2, x3), se reface coninutul lui HeapPtr cu
adresa a, ceea ce nseamn c x3^ se rezerv la aceast adres (n locul variabilei x2^).
VAR
x1,x2,x3.x4:^REAL;
y:POINTER;
BEGIN
New(x1); x1^:12;
Mark(y);
New(x2); x2^:=10;
New(x3); x3^:=34;
Release(y);
New(x4); x4:=46;
O alt facilitate a limbajului consta n posibilitatea utilizrii tipurilor care se autorefer (sunt
definite recursiv). Tipul reper "list" repereaz un tip "articol", n care cmpul "urmtor" la rndul
lui este de asemenea de tip "lista". Aceasta facilitate poate fi folosit de exemplu la alctuirea
listelor nlnuite. Dup crearea unei variabile dinamice a crei adres este depus ntr-o variabil
de tip reper, ea poate fi accesat prin aa zisa dereperare: numele variabilei de tip reper este urmat
de semnul ^. Acest semn poate fi urmat i de un alt calificator (de cmp, de tablou, etc.).
8.7. UNITI DE PROGRAME
Unitile de program (UNIT-uri), stau la baza programarii modulare n Turbo- Pascal.
Ele sunt folosite pentru a crea biblioteci ce pot fi incluse n diferite programe. Programele
mari se pot mpari n module logice create i testate separat.
Unit-ul este o colecie de constante predefinite, declaraii de tip i variabile, funcii i
proceduri, care sunt stocate n forma compilat i este recunoscut dup identificatorul de nume, care
are extensia .TPU
Incorporarea Unit-urilor n programul Turbo-Pascal, se realizeaz cu instruciunea USES,
plasat n prima linie de program, dup linia de titlu PROGRAM (dac aceasta exist).
Formatul general al instructiunii USES este:
242
USES Nume_unit1[,Nume_unit2,...];
unde:
Nume_unit1, Nume_unit2,... - reprezint numele Unit-urilor ce vor fi incorporate n
program.
La ntlnirea acestei instruciuni, compilatorul pregateste incorporarea n program a unit-ului
specificat n USES, astfel:
A - caut unit-urile specificate n fiierul Turbo.TPL. Dac acesta este gsit, este ncrcat n
memoria central i astfel codurile obiect sunt incorporate n program;
B - dac unit-ul nu se gsete n Turbo.TPL, compilatorul caut n catalogul de uniti un
fiier cu numele unit-ului i extensia .TPU. Dac este gsit, se realizeaz paii de la punctul A.
C - dac nu-l gasete, compilatorul caut un fiier surs cu numele unit-ului i extensia .PAS.
Daca l gsete , acesta va fi compilat i-l va include n program;
D - dac un astfel de fiier nu exista, este semnalat eroarea.
n Turbo-Pascal se pot folosi dou categori de Unit-uri:
- unit-uri STANDARD
- puse la dispoziie de mediul Turbo-Pascal;
- unit-uri NESTANDARD - create de utilizatori.
Unit-urile STANDARD sunt urmatoarele:
- unit-ul SYSTEM, conine toate funciile i procedurile de baz din Turbo-Pascal. Acest
unit se ncarc automat.
- unit-ul DOS, conine proceduri i funcii echivalente cu funciile DOS cele mai
utilizate.
- unit-ul OVERLAY, conine proceduri i funcii care permit gestionarea segmentelor de
program pentru proiectarea programelor mari.
- unit-ul CRT, conine proceduri i funcii pentru folosirea ecranului n mod alfanumeric
i a tastaturii.
- unit-ul GRAPH, conine proceduri i funcii, pentru folosirea ecranului n mod grafic.
- unit-ul PRINTER, conine funciile de lucru cu imprimanta.
- unit-urile GRAPH3,TURBO3, care permit folosirea programelor mari scrise n TurboPascal versiunea 3.0.
Unitile STANDARD sunt pastrate n fiierul bibliotec Turbo.TPL
Actualizarea acestui fiier se poate face cu programul utilitar TPUMOVER.EXE.
Unit-urile NESTANDARD, sunt acele unit-uri create de utilizatori, n care sunt incluse
proceduri i funcii proprii utilizatorului.
Crearea unui unit propriu, necesita urmtoarele etape:
- editarea unit-ului;
- compilare in memorie i eliminarea erorilor de compilare;
- salvarea Unit-ului editat i compilat n memorie sub un nume de fiier (care va fi numele
unit-ului), cu extensia .PAS;
- compilarea fiierului pe disc, obinndu-se fiierul cu extensia .TPU
Dup creare, unit-ul poate fi incorporat n program, folosind instructiunea USES.
Editarea Unit-ului
Initial programatorul editeaza textul unui unit ntr-un fiier surs nume_unit.PAS.
Pentru a edita unit-ul, se deschide un fiier folosind opiunea OPEN din meniul FILE (F10,
File, Open, sau ALT-F,O), i se introduce numele viitorlui UNIT.
Se deschide o fereastr de editare cu numele UNIT-ului, n care se va edita codul surs ntr-o
anumit structur.
Structura unui unit consta din:
- titlul Unit-ului (UNIT HEADING);
- seciunea INTERFACE - care conine lista de declaraii de constante, tipuri, variabile,
proceduri i funcii;
- seciunea IMPLEMENTATION - care conine codul surs a procedurilor i funciilor
declarate n seciunea INTERFACE;
243
{instruciuni} ] {opional}
{sfrit iniializare i unitate}
unde:
nume_fisier_inclus este identificatorul unui fiier coninnd un text surs Pascal.
Dac numele nu este nsoit de extensie, Turbo Pascal consider implicit extensia .Pas.
Stive i cozi
Listele, implementate dinamic, sunt foarte utile atunci cnd se lucreaz cu multe informaii,
pe care vectorii se dovedesc incapabili a le stoca, sau ineficieni.
Un caz particular de liste (simplu nlnuite) l constituie stivele i cozile. Acestea
implementeaz dou mecanisme diferite de intrare i ieire a elementelor din lista. La ambele
feluri de liste, un nod al listei este o nregistrare ce conine o informaie (info), precum i un
pointer (indicator) ctre urmtorul element al listei (prec sau urm).
245
. Stiva este o structur dinamic de date reprezentat de o list simplu nlnuit n care
mecanismul de intrare-ieire a elementelor este de tip LIFO Ultimul intrat este primul ieit (last in
first out). Este de ajuns un pointer ctre primul element al stivei, pentru a realiza att operaia de
adugare a unui element (numit Push), ct i cea de eliminare (Pop), deoarece ambele operaii se
realizeaz prin partea superioar a listei.
. Coada este o structur dinamic de date reprezentat de o list simplu nlnuit n care
mecanismul de intrare-ieire a elementelor este de tip FIFO primul intrat este primul ieit (first in
first out). n cazul cozii, avem nevoie de doi pointeri, unul ctre primul element al cozii (capul
cozii), iar altul ctre ultimul su element (coada cozii), deoarece introducerea n list se face prin
spate, iar eliminarea prin fa. (Exist i o variant de coad circular, n care elementele sunt legate
ntr-un cerc, iar cei doi pointeri, indicnd capul i coada cozii, sunt undeva pe acest cerc.).
Liste dublu nlnuite
n cazul listelor dublu nlnuite avem, spre deosebire de stive i cozi, urmtoarele noi
elemente:
exist doi pointeri speciali: nceput i sfrit care pointeaz ctre dou celule extreme ale
listei, dar care nu fac parte din list; ei se numesc santinele,
exist un pointer numit curent care indic ntotdeauna elementul curent din list;
fiecare element a listei este legat prin doi pointeri (prec i urm) de elementele dinaintea i
de dup el din cadrul listei;
avem un cmp lungime, care va indica lungimea listei.
Operaiile ce se cer a se efectua cu o astfel de list sunt:
iniializarea listei;
adugarea unui element ta sfritul listei;
inserarea unui element naintea elementului curent din list;
tergerea elementului curent din list.
afiarea listei.
Cnd se adaug sau se insereaz un nou element n list, acel element devine cel curent. Cnd
elementul curent se terge din list, locul su este preluat de elementul care l succeda, n cadrul
listei. n momentul n care se introduce sau se elimin un element din list, dispar unele legturi i
apar altele. Procese aproape inverse se realizeaz la eliminarea elementului curent din list. Firete,
acest lucru se poate realiza doar dac lista nu este vid. Pentru a elibera efectiv zona de memorie
ocupat de elementul eliminat, se apeleaz procedura Dispose. Eliminarea elementului curent va
presupune legarea elementului ce-l precede cu cel ce l succede. Succesorul elementului eliminat
devine element curent, iar lungimea listei scade cu o unitate.
Arbori binari. Arborescene n digrafuri
Fie H=(V,E) un digraf (graf orientat). Se numete rdcin a lui G un vrf V0V astfel nct
oricare ar fi un vrf vV, exist cel puin un drum de la V0 la v. Dac H=(V,E) este un digraf, prin
graful suport al lui H vom nelege graful obinut din H, prin renunarea la orientarea arcelor. H se
numete arborescent dac are o rdcin i graful su suport este arbore.
n informatic, arborescentele sunt numite, prin abuz de limbaj, arbori, specificndu-se
rdcina i considernd implicit orientarea muchiilor corespunztor parcurgerii drumului unic de la
rdcin la fiecare vrf. Fiecare vrf are astfel nite fii, adic vecinii imediat urmtori pe drumul de
la rdcin n jos (ctre frunze, adic noduri fr fii). Un arbore cu cel mult doi fii se, mai numete
i arbore binar. Se pote considera arborele ca fiind organizat pe mai multe niveluri. Primul nivel
este cel al rdcinii. Urmeaz nivelul fiilor acesteia i tot aa pn la ultimul nivel, cel al ultimelor
frunze.
Referirea unui arbore binar i, implicit, definirea sa, pote fi fcut printr-un pointer ctre
nodul su rdcin. Fiecare nod din arbore este o nregistrare cu urmtoarele elemente:
o informaie info de tip ntreg;
doi pointeri ctre cei doi fii (subarborii stng i drept) ai nodului: stg i dr.
n programul care urmeaz, vom construi astfel de arbori, care au n plus urmtoarea
proprietate: fiecare nod din arbore este mai mare sau egal cu nodurile din fiul stng i mai mic dect
246
nodurile din fiul drept (din punct de vedere al cmpului info). Un astfel de arbore se numete
arbore de cutare - sortare,
O cutare a unui element n astfel de arbori este ntr-adevr uor de realizat: dac elementul
cutat este identic cu informaia din nod, atunci cutarea se ncheie cu succes, dac nu, atunci se
pleac pe una din cele dou direcii: dac elementul cutat este mai mic, atunci se merge pe fiul
stng, altfel pe fiul drept. Dac se ncearc o trecere dincolo de un nod terminal, deci la nil, atunci
cutarea eueaz.
Un arbore binar poate fi parcurs n trei feluri:
n inordine se parcurge mai nti, recursiv, n inordine, fiul stng, apoi rdcina, apoi fiul
drept;
n postordiner se parcurge fiul stng, apoi cel drept, n final rdcina;
n preordine se parcurge rdcina, fiul stng i apoi fiul drept.
Se observ c parcurgerea n inordine a unui astfel de arbore duce la afiarea n ordine
cresctoare a elementelor din nodurile arborelui, motiv pentru care astfel de arbori pot fi considerai
i de sortare.
Memorarea arborilor oarecare n arbori binari se realizeaz dac legm rdcina 1 de
nodul 2, iar apoi, nodul 2 poate fi legat de primul fiu al su (21) i de urmtorul fiu al rdcinii, deci
3, despre care se spune c este un frate a lui 2. Procednd astfel pentru toate nodurile din arbore,
vom obine un arbore binar, cu dou legturi: cea din stnga este ctre primul fiu, iar cea din dreapta
ctre primul frate din dreapta al acestui fiu.
Arborii oarecare se vor memora sub forma unei structuri ce conine o informaie info (de tip
Integer), un numr de fii (NrFii), precum i un vector de pointeri (referine) ctre toi fii nodului n
cauz (fiu: array[1..max] of arbore).
8.8
procedurile de prelucrare a lor nu este nou, ea fiind ntlnit i n cazul unitilor de program. n
cazul obiectelor, programatorul are posibilitatea s defineasc aceast asociere n forma unui tip,
care se comport aproape la fel ca celelalte tipuri ale limbajului, cum ar fi nregistrrile: se pot
declara variabile avnd tipul respectiv i se pot realiza prelucrri cu ele. Acest nou tip poart
numele de object.
Obiectul conine declaraii att pentru date, ct i pentru proceduri i funcii, ntr-o form
similar definirii unei nregistrri. Procedurile i funciile declarate ntr-un obiect se numesc
metode. Obiectul cuprinde doar antetul metodelor, blocurile asociate lor urmnd a fi specificate
separat. Cmpurile de date sunt definite ca n nregistrri, prin selectorul i tipul fiecruia.
O metod este identificat prin numele obiectului la care se refer, urmat de un punct i de
numele procedurii sau al funciei, dup tiparul notaiei unui cmp de nregistrare. n schimb, n
blocul metodei, cmpurile de date sunt referite doar prin selector, ca i cum acesta s-ar afla sub
incidena unei instruciuni with referitoare la obiectul corespunzator.
Odat ce a fost definit un object, pot fi declarate instane ale sale. Acestea pot fi valorile unor
variabile-obiect statice, declarate n maniera cunoscut (declaraia var), sau ale unor variabile
dinamice create prin aplicarea procedurilor predefinite new i getmem unor variabile referine la
obiectul declarat.
O astfel de modificare direct a cmpurilor unei instane nu este n concordan cu stilul
programrii cu obiecte, care recomand folosirea exclusiv a metodelor. Apelul unei metode are
forma uzual a apelului oricarei proceduri sau funcii, cu observaia ca numele metodei este prefixat
de numele variabilei creia i se aplic.
Observaie. Terminologia adoptat n Turbo Pascal difer de cea a altor limbaje orientate
spre obiecte. Astfel, n C + + , se utilizeaz denumirile clasa (pentru un tip obiect) i obiect (pentru
o instan). Turbo Pascal este mai conservator, denumirile adoptate fiind n concordan cu
noiunile mai vechi ale limbajului. Prin urmare, se vorbete despre un tip object n acelai mod n
care ne referim la un tip nregistrare i despre o variabil obiect la fel ca despre o variabil
nregistrare.
Variabilele obiect pot fi iniializate cu ajutorul declaraiei const, similar altor variabile.
Deoarece iniializarea se refer doar la cmpurile obiectelor nu i la metode, iniializarea
variabilelor obiect are aceeai form cu iniializarea variabilelor nregistrare: numele instanei
insoit de tip i de lista valorilor iniiale ale cmpurilor, inclus ntre paranteze rotunde. Valoarea
iniial a unui cmp este precedat de selectorul acestuia.
Unul din scopurile programrii orientate spre obiecte este utilizarea obiectelor ca entiti
complete, de sine stttoare: niciunul din cmpurile unui obiect nu trebuie s fie direct accesibil
utilizatorului, orice operaie asupra sa realizndu-se prin intermediul metodelor. Metodele trebuie s
alctuiasca un set ct mai complet de operaii relative la object. Metodele permit testarea i
actualizarea oricrui cmp al obiectului, eliminnd necesitatea adresrii directe la cmpurile
acestuia.
Utilizatorul are la dispoziie un set complet de metode pentru prelucrarea cmpurilor
obiectului, accesul direct la aceste cmpuri nu este ngrdit, deoarece ele sunt declarate n partea de
interfa, la fel ca metodele. Versiunea 6 a limbajului Turbo Pascal permite ns divizarea
declaraiei obiectului n dou seciuni: una public, accesibil din afara obiectului i una privat,
accesibil doar n cadrul obiectului, inclusiv n declaraiile metodelor sale. Se asigur astfel o
protecie a cmpurilor i metodelor private. Prin aceasta, se elimin posibilitatea manevrrii lor
incorecte, prin aciuni din afara obiectului, de ndat ce metodele care au acces la ele sunt puse la
punct. Seciunea privat este specificat prin cuvntul cheie private i se afl dup seciunea
public a obiectului.
Definiia unui obiect ncepe cu declararea elementelor publice, urmat de seciunea privat.
Aceasta este indicat de cuvntul cheie private, urmat de declaraiile corespunztoare. Exist
i situaii n care i unele metode sunt dispuse n zona privat.
Includerea unor structuri de date n altele este un procedeu obinuit de realizare a unor
structuri complexe. O astfel de imbricare nu este permis n cazul obiectelor. Exist totui un
248
mecanism prin care un object s moteneasc componentele altui obiect, declaraia primului trebuie
s fac o referire la cel de-al doilea obiect.
Definirea metodei init ntr-un obiect face ca metoda init a strmoului su s nu mai fie
motenit, fiind astfel redefinit. n schimb ea poate fi utilizat n noua metod, evitnd astfel
duplicarea codului necesar cmpurilor care sunt prezente. Redefinirea unei metode poate schimba
lista parametrilor acesteia.
Spre deosebire de metode, ale cror nume pot fi duplicate, selectorii cmpurilor nu pot fi
redefinii n nici un obiect descendent.
Metode statice i virtuale.
Dac dorim s mbogim metodele obiectelor definite anterior cu una de modificare a unui
cmp, aceast metod ar trebui adugat obiectului, de ea beneficiind, prin motenire i obiectul.
Mecanismul care permite realizarea unei legturi dinamice este acela al metodelor virtuale.
Sintactic, declararea unei metode virtuale se face prin adugarea cuvntului rezervat virtual
antetului metodei din declaraia obiectului. Dac o metod a fost declarat virtual ntr-un obiect, ea
trebuie declarat virtual n toi descendenii acestuia, antetul metodei rmnnd nemodificat n toi
descendenii (nu se pot modific parametrii i nu se poate schimba o funcie cu o procedur sau
invers).
Implementarea metodelor virtuale se bazeaz pe construcia unor tabele de metode virtuale
(virtual method table -VMT), care conin adresele metodelor virtuale. Fiecare obiect care conine o
metod virtual are o astfel de tabel realizat de o metod special a obiectului numit
constructor. El trebuie apelat naintea oricrei metode virtuale; de obicei el este apelat naintea
oricarei alte metode a obiectului. Sintactic, constructorul difer de celelalte metode prin prezena
cuvntului rezervat constructor, n loc de function sau procedure.
Funcia invers celei a constructorului este realizat de o alt metod special, numit
destructor. Sintactic, ea se deosebete de celelalte metode prin cuvntul rezervat destructor folosit
n locul cuvintelor procedure sau function.
Destructorul este ultima metod apelat a unui obiect. Uzual, destructorul nu are parametri.
Mecanismul metodelor virtuale se bazeaz pe construirea i utilizarea unei tabele de metode
virtuale (VMT -Virtual Methods Table) pentru fiecare object. Ea are urmtoarea alctuire:
-dimensiunea obiectului (1 cuvnt);
-valoarea negativ a primului cuvnt;
-adresa primei metode virtuale (2 cuvinte: segment + deplasare)
-adresa celei de-a doua metode virtuale etc.
Al doilea cuvnt al acestei structuri este prevzut pentru validarea tabelei n cazul n care se
utilizeaz directiva de compilare ($R+ }. Ea const n nsumarea primelor dou cuvinte, rezultatul
fiind zero dac tabela este iniializat corect i diferit de zero n caz contrar.
La apelul unei metode virtuale, Turbo Pascal transmite automat prin stiv adresa variabileiobiect prin care s-a facut apelul. De exemplu, la apelul s.afisare se transmite prin stiva adresa lui s.
Aceasta este cunoscut sub denumirea de parametrul self i este ultimul parametru ncrcat n stiv
la apelul metodei.
Compatibilitatea obiectelor. Variabilele obiect pot fi copiate prin instruciuni de atribuire i
pot fi folosite ca parametri variabile, la apelul subprogramelor. Rutinele cu parametri variabile
objecte pot fi incluse ntr-o unitate, i pstrate n forma compilat. Obiecte care conin referine.
Dac un object are un cmp referin, constructorul trebuie s realizeze nu numai iniializarea VMT
ci i a cmpurilor de tip referin (cu NIL, sau prin alocarea memoriei pentru variabilele dinamice).
Referine la obiecte. n Turbo Pascal este permis utilizarea variabilelor referin la obiecte.
Variabilele dinamice referite se creeaz i se distrug prin apelul procedurilor predefinite new
i dispose. Acestea au fost extinse astfel nct prima s fac automat apelul constructorilor
obiectului referit, dup alocarea spaiului necesar instanei corespunztoare, iar a doua s apeleze
automat destructorul nainte de eliberarea spaiului ocupat de instana referit.
Turbo Pascal consider c toate tipurile derivate sunt compatibile n privina operaiei de
atribuire, cu tipurile object de la care provin.
249
BIBLIOGRAFIA
1. Baron, C., Murean, M., s.a. Bazele informaticii, Editura Oscar Print,Bucureti, 2001
2. Bocu, D. Introducere n programarea calculatoarelor utiliznd limbajului Pascal, Editura
Albastr, Cluj-Napoca, 2001
3. Bott, E., Leonhard, W. Microsoft Office XP, Editura Teora, Bucureti, 2002
4. Bucerzan, D., Vulpe, A. Lecii de utilizare a calculatoarelor, Editura Albastr, ClujNapoca, 2001
5. Collin S., H. - Dictionary of Computing, Peter Collins Publishers, 1990
6. Cowart, R., Knittel, B. Microsoft Windows XP professional, Editura Teora, Bucureti,
2002
7. Glenn, W. - Microsoft Windows XP n imagini, Editura Teora, Bucureti, 2002
8. Ionescu, M., Ionescu, I., Mihai, F., Pan, A., Stanciu, A., Oancea, M., Mihailov, G.
Informatica utilizatorului. Office 2003, Editura Infomega, Bucureti, 2004
9. Johnson, S., Perspection, Inc. - Microsoft Windows XP, Editura Teora, Bucureti, 2002
10. Mihilescu T., Coma Gh.,N. s.a. Programarea i proiectarea asistat de calculator.
Indrumar de laborator. Limbajul Turbo-Pascal. Fascicula 2. Reprografia Univeresitii
TRANSILVANIA Braov 1993
11. Mihilescu, T., Coma, Gh. .a Programare i Proiectare Asistat de calculator.
Indrumar pentru Lucrri Practice. Fascicula 1. SISTEMUL DE OPERARE MS-DOS,
Reprografia Universitii Transilvania Braov, 1992
12. Kovacs, S. Excel 2000. Ghid de utilizare, Ed. Albastr, Cluj-Napoca, 2001
13. McFedries, P. Microsoft Windows Vista. Utilizare i performan, Editura All,
Bucureti, 2007
14. Mueller, S. PC. Depanare i modernizare, vol I i II, Editura Teora, Bucureti, 2003
15. Munteanu, A., Greavu-Serban, V., Cristescu G.- Reele Windows. Servere i clieni.
Exemple practice, Editura Polirom, Bucureti, 2004
16. Negus, C. Red Hat Lunux 8, Editura Teora, Bucureti, 2003
17. Norton, P., Kearn, D. Reele de calculatoare, Editura Teora, Bucureti, 2002
18. Overland, B. C++. Ghid pentru nceptori, Editura Corint, Bucureti, 2005
19. Ptru, B. nvai limbajul Pascal n 12 lecii, Editura Teora, Bucureti, 2002
20. Perry, G. nva singur Microsoft Windows XP n 24 de ore, Editura Niculescu,
Bucureti, 2004
21. Perry, G. nva singur Microsoft Windows XP n 24 de ore, Editura Niculescu,
Bucureti, 2004
22. Ruest, N., Ruest, D, - Windows Server 2003 pentru administratori, Editura All, Bucureti,
2003
23. Schmidt, H. C. Manual Complet, Editura Teora, Bucureti, 2003
24. Schwarz, M., Anderson, J., Curtis, P., Murphy, S. Instrumente Linux, Editura Niculescu,
Bucureti, 2005
25. Simmons, C. Totul despre Windows Vista, Editura Rosetti, Bucureti, 2007
26. Sinclair I.,R., n Collins Dictionary of Personal Computing, Haper Collins Publishers,
ediia a 2-a, 1991
250