Sunteți pe pagina 1din 4

1 Sisteme de operare Sistemele de operare sunt probabil una dintre cele mai complexe abstraciuni inventate, proiectate i construite

de fiin uman. Exist multe ncercri de definire a acestui concept foarte sofisticat n aparent, dar simplu n esen. Sistemele de operare sunt maini virtuale construite cu ajutorul limbajelor de programare (de asamblare sau de nivel nalt) care permit utilizatorului s controleze, programeze i s extind posibilitile mainii hardware pe care sunt implementate. Un exemplu, devenit clasic, este sistemul de operare Unix, care iniial a fost conceput ca un gestionar de fiiere (file manager). Grosso modo, sistemul de operare este un gestionar de resurse (resource manager). Cu timpul conceptul a evoluat, n sensul c sistemele de operare au fost extinse s controleze resurse din ce n ce mai complicate i din afara cadrului restrns al unei singure maini hardware: sisteme multiprocesor, sisteme distribuite, sisteme de reele de calculatoare, sisteme de operare globale. Oricine cunoate c, n general, aceste sisteme de operare sunt implementate pe calculatoare de tip mainframe sau desktop, dar mai putini tiu c ele sunt prezente n maini electrocasnice, automobile (ultimele tipuri conin n configuraie o adevrat reea locala de 4-16 uniti centrale), sisteme de telecomunicatii, avioane, navete spaiale, televizoare, echipamente de reea (routere, gateways, PBX, set-up boxes), centrale electrice, etc., i n general oriunde fiina uman a avut nevoie de ajutorul calculatorului pentru a cunoate i controla lumea nconjurtoare. n realitate mulimea sistemelor de operare nu este limitat la MS DOS, VMS, UNIX sau mai recentul Windows 95/NT, ci este o lume variat, colorat, cu multe accente exotice. 1.1 Microkernel sau kernel monolitic? Modalitatea clasic de a proiecta nucleul unui sistem de operare (kernel) const n a include n structura lui orice componenta care, n cazul n care ar fi utilizat n mod defectuos de utilizator, ar putea produce cderea software-ului de sistem. Un astfel de kernel se numete monolitic. Pe la mijlocul anilor '80 a aprut un nou concept n proiectarea nucleelor sistemelor de operare, numit "microkernel". Semnificaia de baz a noiunii de "microkernel" const n a construi ct mai mult din funcionalitate n procese i nu n kernelul propriu-zis; sisteme de operare diferite rezolv aceast problem n moduri specifice. De exemplu, Mach las driverele de periferice n kernel i plaseaz serviciile de nivel superior (sistemul de fiiere, etc), n afara kernelului; altele c de exemplu QNX mut driverele de periferice n afara kernelului. Adevrul este c distincia dintre noiunea de microkernel i cea de kernel monolitic devine din ce n ce mai neclar pe msura ce cele dou concepte evolueaz. De exemplu, cele mai multe kernele monolitice moderne implementeaz acum multithreading i paralelism n execuie. Din punct de vedere arhitectural aceasta modalitate devine similar cu situaia n care procesele de kernel ruleaz toate din memoria partajata de utilizatori. S considerm trei exemple consacrate: Mach, despre care muli se plng c este att de mare nct nu se pune problema s fie un microkernel. n realitate, noiunea de microkernel este mai mult definit de funcionalitate dect de mrime. Pe de alta parte, mrimea exagerat a lui Mach se

datoreaz mai mult faptului c o mare parte a lui este generat automat prin generatoare de stub-uri optimizate insuficient i de faptul c driverele de periferice sunt incluse n kernel. Nendoielnic, Mach este un microkernel. Serviciul de marketing al lui Microsoft pretinde c Windows NT are o structur de microkernel. O analiz mai atent a kernelului arat c, dei componentele lui sunt separate i comunic prin "message passing", de fapt managerii de subsisteme (de procese, de comunicaie, de periferice, de fiiere, etc.) sunt implementai n spaiul kernel. Cu toate acestea, interfaa de programare Win32 este implementat n spaiul utilizator. De fapt, nsusi David Cutler (directorul proiectului) recunoate n unele ocazii c Windows NT este un fel de hibrid ntre conceptele de kernel monolitic i microkernel. i pentru c suntem la Windows NT, trebuie s recunoatem c dup aproape un deceniu de supremaie n industria de software, n sfrsit Microsoft a reuit s produc un sistem de operare care s nlocuiasc MS-DOS (care, spun unii, poate fi numit oricum, numai sistem de operare nu). Mai c as fi gata s adresez felicitri, dac Microsoft nu ar fi scos la iveal (exclusiv din raiuni comerciale) un alt caz nefericit: Windows 95. Lsnd la o parte gluma, Windows NT este un sistem de operare solid, superior tuturor versiunilor existente de Unix i care n 2-3 ani va constitui o alt surs de miliarde pentru gigantul din Redmond, Washington. Dezbaterea "microkernel" contra "kernel monolitic" trebuie abordat exclusiv din punct de vedere arhitectural. n acelai mod n care un procesor RISC nu minimizeaz n mod necesar numrul de instruciuni, ci mai mult face un compromis ntre ceea ce este implementat n setul de instruciuni i ceea ce este implementat n alte modaliti, problema esenial a arhitecturii de microkernel este care servicii sunt implementate n interiorul lui i care n exteriorul lui. 1.2 Distribuit, multiprocesor, reea Exist numeroase implementri (n cercetare i comerciale) de acest fel dintre care menionm: Chorus, un sistem de operare distribuit i multiprocesor "state-of-the-art", realizat de o companie francez (cu acelai nume), dar care, dei a fost folosit drept microkernel n cteva implementri de UNIX, nu s-a impus pe plan comercial; Amoeba, un sistem de operare bazat pe un microkernel distribuit datorat unei echipe de la universitatea (liber) din Amsterdam; Mach, un sistem de operare bazat pe un microkernel multiprocesor proiectat la universitatea din Carnegie Melon; Sprite, un sistem de operare de reea elaborat la Berkeley; Windows NT, un sistem de operare multiprocesor cu capabiliti distribuite i de reea; Plan9, un sistem de operare multiprocesor i de reea datorat unei echipe de la Bell Labs. Din aceast enumerare am omis numeroase altele, dar cele menionate reprezint toate adevrate "bijuterii" n domeniu. Din punct de vedere al structurii hardware, sistemele care cuprind mai multe procesoare pot fi: "puternic" cuplate sau "slab" cuplate. Cele "puternic" cuplate sunt conectate la nivel de memorie, cele "slab" cuplate sunt conectate la nivel de reea de calculatoare. Primele se mai numesc "multiprocesoare", ultimele se mai numsc "multicalculatoare". O alt clasificare poate fi fcut dup valoarea timpului de acces la memorie: UMA (Uniform Memory Access) n care timpii de acces la memorie sunt egali pentru

toate procesoarele (toat memoria sistemului este global); NUMA (Non Uniform Memory Access) n care timpul de acces este variabil (sisteme n care procesoarele au att memorie globala ct i local); NORMA (No Remote Memory Acess) n care sistemul este cuplat prin reea sau magistral, neavnd memorie global. Din punct vedere al structurii software sistemele de operare pot fi de asemenea "puternic" sau "slab" cuplate. Un sistem "slab cuplat" permite mainilor unui sistem distribuit s fie fundamental independente, dar interacionnd ntr-un anumit grad. Un sistem "puternic cuplat" software este un sistem distribuit n care utilizatorul vede toate procesoarele ca un singur procesor virtual i n fapt structura hardware este total ascuns de structura software. Odat narmai cu aceste noiuni putem s definim intuitiv cuvintele din titlul acestui paragraf. Un sistem de operare de reea este implementat prin software "slab cuplat" ce ruleaz pe hardware "slab cuplat". Un sistem de operare distribuit este caracterizat prin software "puternic cuplat" implementat pe hardware "slab cuplat". Un sistem de operare multiprocesor nseamn software "puternic cuplat" executat pe un hardware "puternic cuplat". Spernd c aceste clasificri au reuit ntructva s fixeze noiunile, ne vom opri aici cu acest subiect fcnd ns observaia c sistemul de operare comercial care va domina industria de software va trebui s includ toate cele 3 caracteristici. Windows NT are bune anse s ajung n aceasta poziie n civa ani. 1.3 Timp real Pentru o lung perioad de timp sistemele de operare de timp real au fost utilizate n principal n aplicaii specializate care necesit constrngeri din punctul de vedere al vitezei de rspuns i a predictibilitii. Dezvoltarea excepional a reelelor de calculatoare, a Internetului i necesitatea tot mai stringent de a suporta aplicatii de timp real (n special multimedia) pe calculatoare de tip desktop vor impune apariia de sisteme de operare de timp real n aa numita lume "Wintel" (sistem de operare Windows pe microprocesoare Intel). Proiectarea sistemelor de operare de timp real este mult mai complicat dect proiectarea sistemelor de operare clasice datorit numeroaselor condiionri ce trebuie rezolvate at runtime i care impun schimbarea n mod dinamic a comportrii unui element de execuie (proces, task, thread). Prin definiie, toate aplicaiile de tip Internet includ aspecte de timp real. Pentru cei neinitiai n acest domeniu s menionm cteva dintre sistemele de operare de timp real comerciale mai cunoscute: QNX, VxWorks, pSOS, Vrtx, OS/9, Lynx. Majoritatea acestor sisteme de operare sunt extrem de portabile, fiind implementate pe numeroase procesoare. O definiie simplist a software-ului de timp real ar fi: acel software care trebuie s opereze n cadrul unor constrngeri specifice de timp. Din punct de vedere al comportrii n timp, aplicaiile de timp real se mpart n 3 mari categorii: sporadice - n care activitile se desfoar asincron i nepredictibil (de exemplu ntreruperile generate de folosirea tastaturii), aperiodice - n care activitile se desfoar dup anumite cicluri, dar la intervale de timp

variabile (fr c neaprat s urmeze o anumit lege matematic), ca de exemplu decolarea i aterizarea avioanelor ntr-un aeroport, i periodice - n care evenimentele se petrec la intervale regulate (de exemplu un VCR care primete un cadru de imagine la fiecare 1/60 de secund). Bineneles c aplicaii care combin caracteristicile celor trei categorii sunt extrem de abundente.

S-ar putea să vă placă și

  • Sistemul Informational in Cadrul Primariei Voinesti PDF
    Sistemul Informational in Cadrul Primariei Voinesti PDF
    Document53 pagini
    Sistemul Informational in Cadrul Primariei Voinesti PDF
    Anna Marry
    Încă nu există evaluări
  • Text 20
    Text 20
    Document4 pagini
    Text 20
    Anna Marry
    Încă nu există evaluări
  • Sistemul Informational in Cadrul Primariei Voinesti PDF
    Sistemul Informational in Cadrul Primariei Voinesti PDF
    Document53 pagini
    Sistemul Informational in Cadrul Primariei Voinesti PDF
    Anna Marry
    Încă nu există evaluări
  • Text 25
    Text 25
    Document5 pagini
    Text 25
    Anna Marry
    Încă nu există evaluări
  • Text 22
    Text 22
    Document4 pagini
    Text 22
    Anna Marry
    Încă nu există evaluări
  • Text 17
    Text 17
    Document3 pagini
    Text 17
    Anna Marry
    Încă nu există evaluări
  • Text 23
    Text 23
    Document3 pagini
    Text 23
    Anna Marry
    Încă nu există evaluări
  • Text 19
    Text 19
    Document3 pagini
    Text 19
    Anna Marry
    Încă nu există evaluări
  • Text 24
    Text 24
    Document3 pagini
    Text 24
    Anna Marry
    Încă nu există evaluări
  • Text 13
    Text 13
    Document3 pagini
    Text 13
    Anna Marry
    Încă nu există evaluări
  • Text 21
    Text 21
    Document3 pagini
    Text 21
    Anna Marry
    Încă nu există evaluări
  • Text 18
    Text 18
    Document4 pagini
    Text 18
    Anna Marry
    Încă nu există evaluări
  • Text 07
    Text 07
    Document4 pagini
    Text 07
    Alex Maftei
    Încă nu există evaluări
  • Text 14
    Text 14
    Document4 pagini
    Text 14
    Anna Marry
    Încă nu există evaluări
  • Text 12
    Text 12
    Document3 pagini
    Text 12
    Anna Marry
    Încă nu există evaluări
  • Text 08
    Text 08
    Document5 pagini
    Text 08
    Anna Marry
    Încă nu există evaluări
  • Text 15
    Text 15
    Document4 pagini
    Text 15
    Anna Marry
    Încă nu există evaluări
  • Text 09
    Text 09
    Document3 pagini
    Text 09
    Anna Marry
    Încă nu există evaluări
  • Text 11
    Text 11
    Document4 pagini
    Text 11
    Anna Marry
    Încă nu există evaluări
  • Text 10
    Text 10
    Document4 pagini
    Text 10
    Anna Marry
    Încă nu există evaluări
  • Text 06
    Text 06
    Document5 pagini
    Text 06
    Anna Marry
    Încă nu există evaluări
  • Text 05
    Text 05
    Document2 pagini
    Text 05
    Anna Marry
    Încă nu există evaluări
  • Text 02
    Text 02
    Document4 pagini
    Text 02
    Anna Marry
    Încă nu există evaluări
  • Text 03
    Text 03
    Document2 pagini
    Text 03
    Anna Marry
    Încă nu există evaluări
  • Text 04
    Text 04
    Document5 pagini
    Text 04
    Anna Marry
    Încă nu există evaluări
  • Evaluarea Performanțelor Angajaților În Administrația Publică
    Evaluarea Performanțelor Angajaților În Administrația Publică
    Document17 pagini
    Evaluarea Performanțelor Angajaților În Administrația Publică
    Anna Marry
    Încă nu există evaluări
  • Contablitatea Financiară
    Contablitatea Financiară
    Document4 pagini
    Contablitatea Financiară
    Anna Marry
    Încă nu există evaluări
  • Text 01
    Text 01
    Document5 pagini
    Text 01
    Anna Marry
    Încă nu există evaluări
  • Capitolul 1 CF
    Capitolul 1 CF
    Document11 pagini
    Capitolul 1 CF
    Anna Marry
    Încă nu există evaluări