Extras din curs
1. Introducere
Un sistem de calcul este format din următoarele componente:
a) componenta hard – formată din CPU, memorie şi dispozitiv de I/O – pune la
dispoziţie resursele de calcul;
b) aplicaţiile de program – definesc modul în care sunt utilizate resursele hardware
pentru a rezolva problemele de calcul ale utilizatorilor;
c) sistemul de operare – controlează şi coordonează utilizarea resurselor hard de
către diverse aplicaţii de program;
d) utilizatorii – persoanele ce exploatează sistemul de calcul.
Un sistem de operare este un program ce gestionează resursele hard ale unui
computer, oferă un suport pentru aplicaţiile de program şi asigură interfaţa dintre utilizatorii
computerului şi resursele hard.
2
Plecând de la definiţia anterioară se pot identifica următoarele module ale unui sistem
de operare:
a) interfaţa cu utilizatorul – constituită din comenzi şi apeluri sistem. Comenzile
sunt introduse direct de utilizatori (de la terminale sau alte dispozitive de
introducere) şi sunt prelucrate de interpretorul de comenzi înainte de a ajunge la
sistemul de operare. Apelurile sistemelor folosite direct de către programatorii de
sistem şi indirect de către programatorii de aplicaţii, apar în programe şi se
declanşează în timpul executării acestor programe. Interfaţa la nivel de comenzi
determină modul de acceptare de către utilizatori a unui nou sistem de operare.
b) gestionarea fişierelor – fişierele reprezintă forma sub care se păstrează pe termen
lung informaţia în sisteme de calcul. Gestionarea fişierelor tratează aspecte legate
de crearea şi ştergerea fişierelor, controlul accesului la fişiere, citirea / scrierea
informaţiilor din / în fişiere, organizarea colecţiei de fişiere, etc. Gestiunea
fişierelor reprezintă o componentă importantă a unui sistem de operare datorită
faptului că, în ultimul timp, se pune accent pe securitatea informaţiilor.
c) gestionarea perifericelor – incorporează toate aspectele operaţiilor de I/O
asociate perifericilor: pregătirea operaţiei, lansarea cererilor de transfer de
informaţie, controlul transferului propriu-zis, tratarea erorilor, etc. Gestionarea
anumitor periferice presupune interacţiunea cu sistemul de întreruperi de procesor
a transferurilor de informaţie.
d) gestionarea memoriei – acest modul controlează utilizarea memoriei interne şi a
memoriei externe dedicată extinderii capacităţii memoriei interne. Memoria
internă este utilizată de sistemul de operare şi de programele utilizator. Datorită
posibilităţii că mai multe programe utilizator să fie simultan în memorie, modulul
de gestionare a memoriei trebuie să rezolve probleme de protecţie şi / sau
cooperare între aceste programe sau între programe şi sisteme de operare, precum
şi probleme de împărţire a memoriei disponibile între programele solicitate.
e) tratarea erorilor – este activitatea de detectare şi, în măsura posibilului, de
revenire din erori pentru continuarea lucrului. Modul de revenire din erori depinde
de cauza erorii şi de complexitatea sistemului de operare.
f) gestionarea sistemului – este modulul responsabil de utilizarea sistemului de
operare ca întreg, printre funcţiile sale numărându-se ajustarea caracteristicilor
sistemului de operare la un anumit sistem de calcul, punerea la dispoziţie a unor
date statistice referitoare la comportarea sistemului şi a unor mecanisme prin care
sistemul poate fi acordat pentru obţinerea celor mai bune performanţe posibile.
1.1. Evoluţia sistemelor de operare
1.1.1. Sistemele „mari” (mainframes)
Sistemele mari au fost primele sisteme de calcul utilizate pentru aplicaţii comerciale şi
ştiinţifice. Aceste sisteme au evoluat de la sisteme cu prelucrare pe loturi, ce rulau o singură
aplicaţie la un moment dat, la sisteme cu divizarea timpului, ce permiteau utilizatorului să
interacţioneze cu sisteme de calcul.
Sisteme cu prelucrare pe loturi aveau ataşate, ca dispozitive de intrare, cititoare de
cartele şi unităţi de bandă magnetică, şi ca dispozitive de ieşire imprimate, unităţi de bandă
magnetică şi perforatoare de cartele. Utilizatorul pregătea „jobul” (program date şi informaţii
de control privind natura jobului – cartele de control) şi îl înainta operatorului sistemului de
3
calcul. După un timp, utilizatorul intra în posesia rezultatului, ce era însoţit de copie a
conţinutului final al memoriei şi al regiştrilor.
Sistemul de operare era extrem de simplu, singura lui îndatorire fiind cea de a
transfera automat controlul de la un job la următorul. Sistemul de operare era rezident în
memorie.
Pentru a mării viteza de procesare, operatorii grupau joburi cu cerinţe similare în
loturi şi le rulau apoi împreună. Într-un astfel de mediu de executare, CPU este adesea
nefolosit (idle), deoarece viteza dispozitivelor periferice mecanice este cu mult mai mică (de
cel puţin 3 ori) decât cea a dispozitivelor electronice. Deşi dezvoltările tehnologice şi
introducerea discurilor magnetice au condus la apariţia unor periferice mai rapide, viteza de
procesare a CPU a crescut şi mai mult.
Astfel, problema nu numai că a rămas nerezolvată, dar a devenit şi mai acută.
Introducerea discurilor magnetice a permis sistemului de operare să păstreze toate
joburile pe un disc. Având acces direct la mai multe joburi, sistemul de operare putea realiza o
planificare a lor, cu scopul de a utiliza eficient resursele. Cel mai important aspect al
planificării joburilor constă în abilitatea de a multiprograma, adică de a creşte utilizarea CPU
prin organizarea joburilor. Sistemele ce beneficiază de această facilitate se numesc sisteme cu
multiprogramare. Modul de lucru a unui sistem de operare cu multiprogramare este
următorul: sistemul de operare păstrează mai multe joburi, simultan, în memorie. Atunci când
un program solicită o operaţie de I/O, sistemul de operare intervine şi face ca procesorul să
lucreze pentru alt job, până la terminarea operaţiei de I/O. Atât timp cât în memorie există cel
puţin un job, procesorul nu este neutilizat (idle).
Sistemele de operare cu multiprogramare sunt destul de sofisticate, deoarece ele
trebuie să ia decizii în locul utilizatorilor. Dacă mai multe aplicaţii sunt gata pentru a fi aduse
în memorie şi nu este spaţiu pentru toate, sistemul trebuie să aleagă acele aplicaţii ce vor fi
încărcate în memorie, adică să utilizeze o planificare a aplicaţiilor. Când sistemul selectează o
aplicaţie pentru executare, o va încărca în memorie. Având mai multe aplicaţii în memorie
simultan apare necesară gestiunea memoriei. Mai mult decât atât, dacă mai multe aplicaţii
sunt gata de executare la acelaşi moment de timp, sistemul trebuie să realizeze o selecţie, ceea
ce înseamnă de fapt planificarea CPU. Faptul că mai multe aplicaţii rulează în mod concurent
necesită ca abilitatea lor de a se influenţa reciproc să fie limitată în toate fazele sistemului de
operare, incluzând planificarea proceselor, spaţiul de stocare pe disc şi gestiunea memoriei.
Preview document
Conținut arhivă zip
- Curs Sisteme de Operare
- Curs 01-02_2k8.pdf
- Curs 03_prez_2k8.pdf
- Curs 04_prez_2k8.pdf
- Curs 05-06_2k8.pdf
- Curs 07-08_prez_2k8.pdf
- Curs 09-10_prez.pdf
- curs 13_prez_2k8.pdf
- Curs_11-12_prez_2k8.pdf