Download as pdf
Download as pdf
You are on page 1of 66
INTRODUCERE Un sistem de calcul modern este ale&tuit dintr-unul sau mai multe procesoare, memorie principal, discuri, imprimante, tastatur’, display, interfete de rejea si alte dispozitive de inirarefegice. Toate fmprenni alcStuiese un sistem complex. Elaborarea de programe care si ‘2stioneze corect toate aceste componente, cu utiizarea in regim optim a fiecarcia dintre ele, este 0 risiune extrem de dificil. Din acest motiv calculatoarele sunt dotate cu un program de baza, numit sistem de operare, a cirui sarcind este si administreze dispozitivele din sistem i si ofere programelor utiizatorilor modalititi de interfafare mai simpli cu structura hard, Sistemele de ‘perare constituie subiectul acestei cart. Local sistemului de operare in ansamblul hard — soft este precizat in fig. 1-1. La baza ansamblului se afl structura hard, care in multe camari este, la rindul ei, consiruit& pe dowd sau mai ‘multe niveluri, Nivelul cel mai de jos cuprinde disporitivele fizice reprezentate de circuite integrate, fire de legiturd, surse de alimentare, tuburi catodice si alte dispozitive asemiinatoare. Constructia acestor dispozitive $1 modul in care lucreaza sunt de competent iugincrlr electroni Peste nivelul ,fizic” se afla nivelul microarhitecturii, care asambleazt dispozitivele fizice in unitii functionale. in mod obisnuit acest nivel cuprinde un set de registre interne ale CPU (Central Processing Unit, rom: unitate central de prelucrare, UCP’) gi o cale de date, care include unitatea aritmeticd-logica. in fiecare perioada de ceas unul sau doi operanzi sunt preluaji din registre si sunt prelucrati in unitatea aritmeticd-logic& (de ex: prin adunare sau $I logic). Rezultatul este memorat ‘ntruinal sau mai multe registre. La anumite masini de calcul, modal de lucru al cali de date este fn aceasta lverare vom folosi prescurtarea UCP sau’ denumitea echivalenti “procesor central” saw “procesor” acolo unde nu exist posibilitatea de confuze. 2 INTRODUCERE, gestionat de catre o entitate soft, numit microprogram. La alte masini, calea de date este gx direct de citre resursele hard. Obiectivul ciii de date este si execute anumite seturi de instructiuni, Unele dintn instructiuni pot fi executate intr-un singur ciclu de operare, in timp ce altele necesita mai mul de cicluri, Instructiunile pot folosi registre sau alte resurse hard. Structura hard impr instrucfunile in limbaj de asamblare alcituiesc nivelul ISA (Instruction Set Architectus arhitectura setului de instructiuni). Acest nivel este numit adesea limbaj masini. Sistem ponte: [Rezewiicom| Brower] | Programe de operat bancar| panieaerians | Web aplicatie Interpreter lcompietoar| eatowre | Mormreter | | de sistem Sisteme de operare Limbaj maging Microarhitecturd Hardware Dispozitive fice Fig. 1-1. Sistem de calcul alcatuit din structura hard, sistem de operare si aplic Limbajul masini are, de obicei, intre 50 si 300 de instructiuni, dintre care cele ma realizeazi transferuri interne de date, operatii aritmetice si compariri de valori. La aces dispozitivele de intrare/iesire sunt comandate prin incdtcarea unor valori in registrele (registrele de dispozitiv). De exemplu, un disc poate primi comanda si citeascd date prin ine in registrele sale a valorilor care reprezinta adresa discului, adresa memoriei principale, num octeti si tipul de operatie (citire sau scriere). in practic sunt necesari mult mai mulfi param informatia de stare returnati de disc in urma executarii operatiei este si ea foarte complexa. | pentru multe dispozitive de I/E temporizarea joac un rol important in programare. Sistemul de operare a fost construit pentru a ascunde aceasta complexitate in spatel pera simple pentru utilizatori. Sistemul de operare reprezinta un nivel soft care ascunde (j structura hard $i ji furnizeaz’ programatorului un set de instrucfiuni mai comode. De ex citirea unui bloc de date dintr-un figier este, in principiu, mai simpli deca suecesiunea de despre deplasarca capetelor discului,stabilizarea lor si asa mai departe. Pe nivelul superior sistemului de operare se afli restul sistemului de programe. Pe acest ni fi intalnite interpretoare de comenzi (shell), programe pe baz de ferestre, compilatoare, edit alte programe independente de aplicatie. Este important de infeles ci aceste programe nu fa din sistemul de operare, chiar daci ele sunt furnizate, de obicei, de litre producitorul caleulat Acest aspect. desi subtil, este crucial. Sistemul de operare reprezinti, in mod obisnuit, pari pachetul soft care lucreazi in mod nucleu sau mod coordonator. Sistemul este protejat im} intervengiei utilizatorului de c&tre un modul din structura hard (se ignorai in acest moment microprocesoare mai vechi care nu ofera nici un fel de protectie hard). Compilatoarele si lucreaza in mod utilizator. Daca unui utilizator nu-i place un anumit compilator isi va serie pi compilator, daca asa i se pare mai simplu; utilizatorul nu este insd liber s-si scrie propriul pn SEC.LA (CEESTE UN SISTEM DE OPERARE? 3 pentru gestionarea intreruperilor generate de ceas, program care face parte din sistemul de operare sicare este, in mod normal, protejat impotriva interventillor utilizatorilor prin restrict hard. Diferena este mai putin neti in cazul sistemelor evoluate (la care poate s& lipseasc modul nucle) eau in eazul sistemelor incorporate (embedded systems) (cm sit sistemele de operare bazate pe Java, care folosesc interpretarea si nu structura hard pentru diferentierea componentelor). Pentru calculatoarele traditionale sistemul de operare continu si lucreze in mod nucleu. Malte sisteme de caleul sunt dotate cu programe care ruleazi in mod utiizator, dar care se folosese de sistemul de operare pentru a executa unele functii speciale. De exemplu, exist adesea un program care le permite utilizatorilor si-si schimbe parolele. Acest program nu face parte din sistemul de operare si nu ruleaz in mod nucleu, dar cu siguranta apeleaza la o functie ,sensibila” care trebuie protejati in mod special. La unele sisteme, ideea separiri ia forme particulare, asa incat parti de program care in mod traditional fac parte din sistemul de operare (cum ar fi sistemul de figiere) ruleaza in spatiul uillzatorilor. Pentru astiel de sisteme este greu de trasat o demarcatie clara intre sistemul de operare si programele utilizatorilor. Astfel, tot ceca ce ruleaza in mod nucleu este, evident, parte din sistemul de operare. Exist insi si programe care nu lucreaza in mod nucleu gia cAror apartenenta sau asociere la sistemul de operare este discutabila. in sfirgit, pe nivelul superior programelor sistem se afl aplicatiile. Aceste programe sunt procurate sau scrise de utiizator pentru a solutiona probleme particulare, cum ar fi procesarea de text, crearea de foi de calcul, efectuarea calculclor ingineresti sau memorarea informatiilor int-0 bazi de date, 11 CE ESTE UN SISTEM DE OPERARE? Multi dintre utilizatorii de calculatoare au avut de-a face cu un sistem de operare, dar le este sgreu sil defineascd. O parte a problemei se datoreaza faptului ca sistemele de operare realizeazit dou functii de baz, intre care nu exist nici o legiturd: extinderea functionalitatii masinii si sestionarea resurselor; din acest motiy, cel care rispunde la astfel de intrebare poate gresi prin a fcoentua importanfa uneia dintre funeti, fri ao aminti pe cealalta. {n continuare sunt prezentate ambele func 11 — Sistemul de operare ca extensie functional a masini ‘Asa cum s-a precizat in paragrafele anterioare, arhitectura (setul de instrucfiuni, organizarea memoriei, porturile de I/F si structura magistralei) cclor mai multe calculatoare la nivetul limbajului rmasina este primitiva si greu de folosit pentru programare, in special pentru intrariesiri. Pentru a crea 0 imagine mai concreti este prezentat in continuare modul in care este gestionat un dispozitiv de VE de tip unitate de discheta, folosind circuite de comandii compatibile NEC PD765, utilizate la Iajoritatca calculatoarclor personale construite cu familia de circuite Intel. Modulul de comanda PD765 executa 16 comenzi, fiecare dintre ele fiind detinita prin insenerea.a 1 pana la 9 octet tnt-un registra al dispozitivului. Comenzile se referd la cititea sau scrierea datclor, deplasarea bratului 4 INTRODUCERE discului si formatarea pistelor, ca si la initializarea unitatii, masurarea de parametri, sterg recalibrarea controlorului sia elementelor de actionare. Comencile primare se refer’ la citire si scriere si necesiti fiecare cate 13 parametri, grup octeti. Acesti parametri furnizeaza informatii despre adresa blocului de date ce urmeaza a fi Pe disc, numérul de eectoure pe pisti, modul de inegistrare pe mediul fizic, spatiul liber sSectoare si ce se intampla dacé se citeste un simbol care marcheaza adresa unor date sterse. i semnificatia acestor parametri este greu de infeles nu este un motiv de ingrijorare, pentr mod sigur ei se adreseazii numai cclor initiafi. Dupa executarea operatiei, circuitul de co returneaz’ 23 de cimpuri de stare si eroare, grupate in 7 octeti. Ca si cum toate acestea ni ajuns, programatorul unei unitati de dischet mai trebuie si tind cont si de starea de porit sa @ motorului de actionare. Daci motorul este oprit, el trebuie pornit (cu asigurarea unei temp Jungi pentru pornire) inainte ca datele si poata fi scrise sau citite, Motorul nu poate fi L functioneze prea mult timp, din caza riscului de uzurd prematura i defectare. Programaton prin urmare, nevoit s realizeze un couspromis intre intarzierile lungi de la pormire $i perici defectare (care ar determina gi pierderea datelor). Fara a intra in detalii practice, este clar ca programatorul de nivel mediu nu vre: implice prea mult in programarea unitatilor de discheti (sau a discurilor fixe, care sunt la complexe, dar semnificativ diferite), In schimb, programatorul vrea, ca solutic, o abstractiz nivel inalt, simpla, cu care si poati si Iucreze. in cazul discurilor, o abstractizare uzuala ar p cea care defineste discul ca 0 colectie de fisiere cu nume. Fiecare fisier poate fi deschis, apoi e scris si in final inchis. Detalii cum sunt cele referitoare la utilizarea modulatiei in fre modificata pentru inregistrarea pe suport sau cele referitoare la starea curent& a motory trebuie sa apara in abstiactizarea prezentata utilizatorului. Programul care fi ascunde programatorului ,adevarul” despre structura hard si care prez viziune simpli si ,frumoasi” a fisierelor cu nume, care pot fi citite si scrise, este, desigur, sister ‘operare. Sistemul de operare ascunde fati de programator atat structura hard a discului, pe prezinti ca o interfata simpld orientata pe fisiere, cat si o multime de operatii ,neplicute” intreruperile, timer-cle, gestiunea memoriei si alte elemente de nivel scizut. in fiecan abstractizarea fumizata de sistemul de operare este mai simpli si mai usor de folosit dec: furmizati de structura hard de bazi. in acest fel, functia sistemului de operare este si-i furnizeze utilizatorului varianta echiv, ‘uoci :taynti extinse sau a unei masini virtuale, care este mai usor de programat decit structure de baz. Modul in care sistemul de operare realizeazd acest obiectiv reprezint 0 poveste | spusi pe indelete de-a lungul acestei ciirti. A rezuma foarte concis inscamna a spune ci sisten operare furnizeazi diverse servicii la care programele le pot apela folosind instructiuni spe ‘numite apeluri sistem. Apelurile sistem utilizate mai des vor fi examinate mai tarziu, tot in capitol. 1.1.2 Sistemul de operare ca administrator de resurse Conceptul potrivit caruia sistemul de operare este in primul rand furnizorul unei int convenabile pentru utilizatori semnificd 0 vedere de sus in jos. Ca altemativa, 0 vedere de jos | releva ci sistemul de operare se afla acolo pentru a administra toate componentele unui s complex. Calculatoarele moderne sunt aleituite din procesoare, memorii, discuri, mous interfete de rejea, imprimante si o mare varietate de alte dispozitive. in aceasta viziune altern ) sec12 ISTORIA SISTEMELOR DE OPERARE. 5 " sarcina sistemului de-operare este si realizeze 0 alocare ordonata si controlati a procesoarelor, __ memorillor si dispozitivelor de W/E in diversele programe serise pentru cle. ‘Se poate imagina ce s-ar intimpla daci trei programe care ruleazii pe caleulatoare diferite ar fncerca 84 tipdreasca simultan la aceeasi imprimanta. Primele céteva linii tipdrite ar apartine " programului 1, urmétoarele cdteva:programului 2, urmate de linii din programul 3 si aya mai departe, Rezultatul ar fi de neinfeles. Sistemul de operare poate pune ordine in aceasta situatic ipoteticd prin memorarea temporara pe disc a tuturor iesirilor destinate imprimantei. Atunci cand " unprogram a terminat de rulat,sistemul de operare poate sa copieze rezultatele din fsierul in.care au fost memorate pe disc si si le transmit’ imprimantei, in timp ce restul de programe pot sa continue generarea rezultatelor intrucat ele nu sunt transmise direct imprimantei (inca). ‘Atunci cénd un’ calculator (sau o refea) are mai mulfi utiizatori, nevoia de administrare si protejare a memoriei, a dispozitivelor de I/E si a altor resurse este mai mare, pentru cit altfel uilizatoni pot interfera intre ei. Mai mult, exist{ multe cazuri in care utilizatori trebuie sa partajeze fu numa suuctuta liad, ci si informatiile (fisiere, baze de date). Pe scurt, aceast abordare a sistemului de operare arata c& principala lui sarcina este sa tind cont de cine ce resus foloseste, st aloce resurse Ia cerere, sa permit accesul pentru utilizare si sii medieze cererile generatoare de ‘conflicte venite de la diverse programe sau diversi utilizatori, ‘Administrarea resurselor include partajarea (rmultiplexarea) resurselor in dou moduri: in timp si fnspatiu, Atunci cand o resursi este multiplexata in timp, programele sau utilizatori 0 folosese pe rind, De exemplu in cazul unei singure UCP si a mai multor programe care dorese si ruleze pe eh "sixtemul de operare atribuic mai intai UCP unui program, apoi, dup ce acesta a mulat 0 perioada, un ale program capat acces la UCP, apoi altul si cichul poate fi reluat, eventual eu primul program. Stabilirea modului in care o resursi este multiplexata in timp, adic cine urmeaza si pentru cat timp, "este treaba sistemului de operare. Un alt exemplu de multiplexare in timp este partajarea unet | imprimante, Atunci cind mai multe job-uri de tiparire stau la coada pentru a fi executate de 0 singura imprimanta, trebuie sa se decid’ ordinea de acces pentru tiparit. Cea de-a dova varianta este multiplexarea in spatiz. Clientii nu vor mai sta la rand, ci fiecare va {los o parte a resursci, De exemplu, memoria principal este, in mod normal, imparfité inte mai ‘multe programe care ruleaz, asa incat fiecare dintre ele poate fi rezident in memorie (pentru a-si astepta rindul la wtilizarca UCP). Presupundind cd exista destul memorie pentru a retine mai multe programe, este mai ficient s& pistrezi in memorie mai multe programe, la un moment dat, decat sit atribui toata memoria unui singur program, mai ales daca el nu foloseste decat o mica fractiune din ‘memoria total, Desigur, aceasta optiune genereaz’ probleme de atribuire corceti, de. protectie si ‘epinde de sistemul de operare ca ele si fie rezolvate. O alta resursi care este multiplexata in spatiu este discul magnetic. in multe sisteme un singur disc poate stoca fisierele mai multor utilizatori in acelasi timp. Atribuirea spatiului pe disc si tinerea evidentei despre: cine ce blocuri de pe dise foloseste este 0 sarcina tipici de administrare de resurse a sistemului de operare. 1.2 ISTORIA SISTEMELOR DE OPERARE Sistemele de operare au eyoluat de-a lungul anilor. Momentele mai importante vor fi prezentate in paragrafele care urmeazi. Intrucat sistemele de operare au fost strans legate, din punet de vedere 6 INTRODUCERE, CAP, istorie, de arhitectura calculatoarelor pe care rulau, vom avea in vedere generafii succesive « calculatoare pentru a vedea cum ardtau sistemele de operare. Aceastd suprapunere restrictiva generatillor de sisteme de operare peste generafile de calculatoare este utilé pentru c& prezinta structurare a expunerii, nefiind aga de severii in realitate. Primul calculator numeric adevarat a fost proiectat de matematicianul englez Charles Baba, (1792-1871). Desi Babbage si-a petrecut mult timp din viat’ si a cheltuit o bund parte din averea incercéind si-si construiascé ,motorul analitic”, el nu a reusit si-1 facd si lucreze corect pentru realizarea era pur mecanici, iar tehnologia de atunci era incapabila si produca rotite, rulmenti sire dinfate de precizia necesard. Este clar c& motorul analitic nu avea sistem de operare. Ca un aspect istoric important, trebuie spus c& Babbage a infeles ci ar fi avut nevoie de so pentru motorul analitic, motiv pentru care a angajat o téndrd, Ada Lovelace, fiica celebrului po englez Lord Byron, ca prima programatoare din lume. Limbajul de programare Ada® a fost botez dupa numele ei. 12.1 Prima generatie (1945 — 1955). Tuburi cu vid si pkici de conexiuni Dupé eforturile fra succes ale lui Babbage, pind la cel de-al doilea rizboi mondial s-au realiz: progrese reduse in constructia calculatoarelor numerice. Pe la mijlocul anilor 1940 Howard Aike de la Harvard, John von Neumann de la Tnstitutul de Studii Avansate din Princeton, J. Prespt Eckert si William Mauchley de la Universitatea Pennsylvania si Konrad Zuse din Germania, prints alii, au reusit si construiascd masini de calcul. Mai intai, au folosit relee mecanice, care erau foan lente, iar maginile aveau perioade de ceas masurate in secunde, Mai tarziu, releele au fost inlocuit cu tuburi cu vid. Astfel de masini erau foarte mari si ocupau camere intregi cu zeci de mii de tubu cu vid, dar erau in continuare de milioane de ori mai lente decat cel mai ieftin calculator person: disponibil astazi. in acele zile de pionierat exista cate un singur grup de oameni care proiectau, construia’ rogramau, operau si igi menfineau in functiune propria masind. oat programarea era facut | limbaj masina absolut, realizat adesea prin fire de legaturd trase pe placile de conexiuni pentru comanda functile de bazi ale masini. Limbajele de programare erau necunoscute (chiar si limbajt de asamblare era necunoscut). Despre sisteme de operare nici nu se auzise. Modul obignuit operare era ca programatorul si-si rezerve un interval de timp pe o lista afisata pe perete, apoi s coboare in camera calculatorului, si-si introducd placa cu conexiuni in calculator si si petreac ‘urmatoarele cdteva ore sperand ca nici unul dintre cele aproximativ 20.000 de tuburi cu vid nu sev defecta in timpul rulirii. Teoretic, toate problemele de rezolvat erau calcule simple, cum ar fi for tabelarea de sinusur, cosimusuri sau logaritmi. La inceputul anilor 1950 modul de programare a progresat prin introducerea cartelelo perforate. in acel moment devenea posibili scrierea programelor pe cartele si citirea lor pentn rulare, in Jocul folosiri placilor pentru conexiuni; restul procedurii rimanea la fel. SEC.12 ISTORIA SISTEMELOR DE OPERARE 1 A doua generatie (1955 ~ 1965). Tranzistoare gi sisteme cu procesare pe loturi de lueriti (batch'processing) Thtroducerea tranzistorului pe la mijlocul anilor '50 a schimbat complet situatia, Calculatoarele W devenit suficient de fable, asa incat sa poata fi fabricate si vandute unor cliengi, Cu speranta c& or funciona suficient timp pentru a putea fi folosite in activitatile curente. Pentna prima daté s-a produs o separare intre proiectanti, constructori, programatori sipersonalul de fntretinere. | Aceste masini, numite ,sisteme mari de calcul” (mainfiumes), erau amplasate in camere speciale, otate cu aer conditionat, in care lucrau operatori specializali. Doar matile corporatii, agentille ‘avertamentale importante sau universitaile isi puteau permite o asemenea achizife, in valoare de “mai multe milioane de dolari. Pentru a rula un job (adicd un program sau un grup de programe), sramatorul trebuia sé il scrie’' mai intai pe hartie (in FORTRAN sau asamblare) si apoi exe” pe cartele, Cartelele eraut duse apoi in camera de intrare (receptie) a calculatorului si date unui dintre operatori, dupa care programatorul puted si mean si bea o cafe pink end Jurmau si apard rezultatele rularii, ~ Dupai ce calculatorul a terminat de rulat lucrarea curenti, un operator trebuia sa treaci pe la imprimanti, 84 preia rezultatele tiparite si si depund listingurile in camera de iesire (predare), de Si poata fi preluate de cAtre programator. in continuare, operatorul lua un alt pachet de de din camera de intrare si il introducea in cititor. Dacd era necesat compilatorul de RAN, operatorul trebuia sé-l preia dintr-un dulap de fisiere si Si-1 transfere, prin citire, in noria calculatorului. Pentru toate aceste activititi, operatorit trebuiau si se deplaseze prin perile din jurul masinii, motiv pentru care se pierdea mult ,timp de calculator”, Cunoscut fiind costul ridicat al echipamentului, mu este de mirare ci Gamenit au cautat cai de a luce timpul pierdut. Prin urmare, Solutia adoptata a fost aceea a sistemelor de prelucrare pe loturi je programe. Ideea de la care s-a pornit a fost colectarea intr-o cutie” a mai multor job-uri, aflate in mera de intrare, urmati de citirea si transferarca lor pe band magneticai, folosind un calculator emai mic si mai pin costisitor, cum era IBM 1401, care era foarte bun pentru citirea cartelelor, ferarea informatiei pe band magnetica si tiparirea rezultatelor, dar nu era deloc potrivit pentru ci ‘humerice. Pe de alta parte, calculatoare mult mai costisitoare, cum era IBM 7094, erau oloste pentru prelucrarea adevarata. Aceasti situatie este prezentati in fig. 1-2. Dupa aproximativ o ora de colectare si constituire a unui lot de lucriri, banda era derulata tru a putea fi citita de la inceput) si era adusa in camera calculatorului, unde cra ‘montata in ltea de band. Operatorul inedsca, ia continuare, 1m program special (un strmos al sistemului ‘operare de astiizi), care citea de pe banda prima lucrare si o rula. Rezultatele erau scrise pe 0 a jo ite. Dupa terminarea fiecdrui program, sistemul de operare citea de pe andi urmitorul program si incepea sil ruleze, Dupi ce toate ucrarile din lot crau rulate, operatorul indepiirta benzile de intrare si de iesire, monta banda care continea un grup nou de job- urisiducea banda de iesire inapoi la 1401 pentru tiparirea final a rezultatelor, operatie desfasuratd jaluracalculatorului principal de prelucrare (imprimare offline). * Procesare pe loturi ~ se referi la execufia unui lot de lucrari neinteractive, primite de la. mai multi Particularitatea sistemului const din ateea ea sistennal nui lacreaza direct cu utiizatorul in timpal sick lurdrle sunt tratate pe lotur. cap, INTRODUCERE Unite asda sends wean magnetcl een Meatet mag Gentry ovesie a 1401 un 7084 vn 1401 (a) ) © (@) ) co Fig, 1-2. Unul dintre primole sistere de prelucrare pe lotur +401; (b) 1401 transferd grupul de luerari pe banda; (c) operatorul i gata prelucrarea, (0) operatorul duce banca inapo} la 1401; (9, 1401 tipsroste rezultatele, ‘Structura unei lverdri de intrare obignuite este prezentatd in fig. cartelé $JOB, care specifica durata maxima de rulare (In minute), fnedrca programul si numele programatorului, Urma apot © cartel fF sistemului de operare si incarce comp ‘urma programul care trebuia compilat si apot operare si incarce programul obiect, toomai ‘compilat. (Programele carer ilies rcbuinu sa fie reinarcate expici.) Urma o carelé SRUN are i cores § de operare sa ruleze programul, folosind datele amplasate dupa program. in final, cartela $1 maven sfarsital programului, Aceste cartel, care coniiueau eomensi elements limbajelor moderne de comanda a programelor $i a nterpretoarelor de comenzi ent program — pale (08) 10/6610802) MARVIN TANENBAUM! Fig, 1-3 Structura unui program tipie pentru FMS. Imprimant (a) programatorii predau cartelele | duce banda la 7094; (d) 7094 1.3. Programul incepea ¢ ilatorul de FORTRAN de pe banda de sistem. in continy ‘o cartela SLOAD prin care i se cerea sistemulut ‘compilate erau, adesea, Sis sunt inant SEC.12 ISTORIA SISTEMELOR DE OPERARE 9 Calculatoarele mati-din generatia a coua au fost folosite:maiales pentru efectuarea calculetor ‘tinge si ingineresti, un exemplu fiind rezolvarea ecuatilor diferentiale cu derivate partiale, care apar adesea in fizicd $i inginerie. Limbajele de programare folosite frecvent erau FORTRAN $i | limbajul de asamblare. Sistemele de: operare-tipice- eran FMS (the: FORTRAN Monitor System | mm: Sistem. ce: Monitorizare: FORTRAN) $i: IRSYS, sistemul de operate al firmei. IRM pent, "caleulatorul 7094. | | 123. Generafia a treia (1965-1980). Circuite integrate si multiprogramare Lainceputul anilor 1960.cei mai multi dintre fabricantii de caleulatoare aveau'dou lit distincte “i total incompatibile de produse. Pe de o parte erau calculatoarele stiintifice mari, orientate pe | uvaint, cum era 7094, care erau folosite pentru calcule numerice in stiinta si ingineric. De cealalta parte erau calculatoarele comerciale, otientate pe caracter, cum-era 1401; care erau folosite frecvent de banci si companii de asigurari pentru sortare sitiparire de. pe banda. Dezvoltarea si: mentinerea a dota linn de: produse: complet diferite « reprezentat! 0 solutie costisitoare pentru, producatori. Mai mult, multi dintre:utilizatorii_noi:de calculatoare doreau la ‘nceput masini mici, pe care le extindeau dupa un timp pentru cd simfeawinevoia unor masini: mai mati, care si poatii executa toate vechile lor programe, dar mai repede. IBM a fncercat sirezolve cele doui probleme: dintr:o. singursi miscarey:prin introducerea sbtemului 360, Seria’ 360-cuprindea: mai:multe masini, compatible soft, incepind:en masini de trau determinate de pret si performante (capacitatea maxima de memorie, viteza procesorului, umirul permis de dispozitive de VE si agaimai departe). Pentru ci toate: masinile aveau aceeasi ishitectura si acelasi set de instructiuni, un program scris pentna una dintre masini putea sé ruleze pe ‘ricare dintre celelalte, cel-putin in| teorie Mai mult, seria 360 a fost proiectatd si rezolve att probleme gtiintifice (adic numerice), cat si-probleme comerciale: in-acest fel, 0 singura familie de ‘masini putea si satisfac nevoile tuturor utilizatorilor. in anii care au urmat, IBM a produs succesori Seria 360 a fost prima linie important de calculatoare care a folosit circuite integrate (pe scard redusa), determindnd astfel.o imbunittire semnificativa a raportului pret/performanti fata de masinile din generatia a doua, care erau construite folosind tranzistoare. Solutia a reprezentat un ‘succes imediat si ideea unei familii de calculatoare compatibile a fost curdind adoptati si de cdtre .wilalti producatori importanti de calculatoare, Urmasele acestor masini mai sunt folosite si astaizi in centrele de calcul. in zilele noastre ele sunt, alesea, folosite pentru administrarea bazelor de date foarte mari (de exemplu, sistemele de rezervari pentru linlle'aeriene) sau ca si servere pentru site- uri World Wide Web, care trebuie si proceseze mii de solicitari pe secunda. Forta data de ideea de familie a reprezentat totodata si slabiciunea ei majora. Intenia a fost ca toate programele, inclusiv sistemul de’ operare’ 05/360, sii muleze ‘pe toate modelele. Sistemul de operare trebuia si ruleze att pe sisteme mici, care adesea inlocuiau masini 1401, destinate copierit cartelelor pe beni ct sipe sisteme foarte mati, care inlocuiau masini 7094, dedicate prognozelor meteo sau rezolvarii unor probleme care necesitau calcule multe si complicate: Sistemul trebuia si fie bun pentru calculatoare cu putine periferice, dar si pentru calculatoare cu multe periferice. El trebuia sd functioneze gi-in medii comercial sin medi stiintifice: $i in plus fat de toate acestea, sistenmul de operare trebuia si fie eficient in toate aceste variante de utilizare. 10 INTRODUCERE CAP:1 {A fost imposibil:ca TBM (sau oricne alteineva) sa serie un program care si fntruneasca toate acest eernte contradictori. Rezultatul a fost un sistem de operare foarte mare i fears complex, probabil eu dou sau tre ordine de marime mai mare deed FMS. Sistema! de operare era alcatuit via milioane de lini fn linbaj de asamblare, crise de mii de programatori st confinea rit de erori, care au impus un flux continu de noi versiuni in fnoercarea de ale corecta. Fieeate versiune nowt rezolva uucle erori, dar, in acelasi timp, introducea erori noi, asa jincat numérul de erori riménes ‘oarecum constant in timp. ‘Unul diatre proicctanti sistemului de operare OS/360; Fred Brovks, seis o carte amuzant $ incisivi (Brooks, 1996) in care descria experien(ele lui cu OS360. Pentru of este imposibil s rezamam cartea aici, trebuie spus doar ci pe:coperta era desenata o turmi de animale preistorio dnchike intrun fare. Coperta cri hi Silberschatz gi ali (2000) sugereara aoceasi idee, prezentiiy sistemele de operare ca pe niste dinozauri. qincivda dimensiunilor mari sia problemelor sale, OS,360 i celelalte sisteme de operare similar de generatia a tteia, produse de alfifabricanti de, caleulatoare, au dat satisfactie: majoritat de Bee an satvodus, de asemenca; cteva soi tchnologi de bazi, absent lasstemele ¢ operate din genteratia a doua. Cea mai importanta dintre ele era prubabil multiprogramarea 1 crrulator 7094, UCP riménea inactiv im perioada in care job-ul curent astepta ca banda S08 Sispovitv de VI sisi termine treaba. in cazal caleulelor sige, care folosese UCP aproape « Timi, lucrl cu-de VE era putin utiliza, aga inet timpul picrdat era nesemniticatys in caz prelueranii datelor comercial timpul de asteptare pentru lucrul cu dispozitivele de VE putea ajun, area le 8-909 in impale, ag incat ra neve deo slut care sh evie stare de inact a UCP pentru atitde mult timp. Solutia gasiti a fost partionarea memorieiinmai multe zone, flecare oni giaduind | program, ca in fig. 1-4. in timp ceo lurare astepta ca activitatea unui disponiiv de W/E si se termi D alté lucrare putea sé utlizeac UCT. Daci memoria principal putea sh gizduiascd, la un mome Ghat, sufiiente programe, atunci procesorul putea si fie ocupat aproape 100 4» din timp. Prezet see rand a mel multor luorri in memorie impanea existenfa unui rodul hard special, care protcjeze fiecare program pentru a nu fi spionat sau modificat de citre ccelelalte; masinile seriei 3 precum sialtesisteme din generafia atria erau echipate cu acest modul Lucrarea 3 Lucrarea 2 Pantitii de Luctaroa 4 ‘mamorie Sistem de ‘operare Fig. 1-4. Un sistem multiprogramat, avand treilucrérin memoria. © alti caracteised importanta a sistemelor de-operare din generajia 2 treia ora dat posibiitatea de a transfera lucrile de pe cartele pe dise de indat ce carteele era aduse in car Prteulatorulsi, Atunci cénd programul curent termina de rulat, sistemul de-operare putes #4 Pt ‘unul nou, de pe disc, in zona’ de memoric’ masi liberd gi ‘poi sicl mleze. Aceasta tehnict units virtyalizare (spooling ~ de la Simultaneous Peripheral Operation Cn: Linc, roms oft SEC.12 ISTORIA SISTEMELOR DE OPERARE n simultand online a perifericelor) si era folositd si pentru iesire. Folosind virtualizarea, masinile 1401 ‘mu mai erau necesare, iar plimbatul benzilor a dispirut. ‘Desisistemele de operare din generatia a treia crau potrvite pentru calcule stinfifice complicate sipentru prelucrarea unor camtititi mari de date comercial, ele riméneau totusi niste sisteme de prelucrare pe loturi de programe. Multi programatori tanjeau inci dup’ zilele primei generatii de sisteme, cnd aveau masina numai pentru ei timp de céteva ore si puteau si-si depaneze repede programele. Cu sistemele din generatia’a treia durata de timp dintre predarea job-ului ¢i ‘eeeptionarea rezultatelor era, adesea, de cdteva ore, asa incat plasarea gresiti a unei virgule, care determina 0 eroare de compilare, i ficea pe programator si-si piard o jumatate de zi. Dorinja de a avea un timp redus de rispuns a determinat aparitia partajarii_ in timp (timesharing), o varianta de multiprogramare in care fiecare utilizator are un terminal on line. intr- _ unsistem cu partajare in timp la care sunt conectati 20 de utilizatori, dintre care 17 se windese, stau de vorbii saui beau cafea, UCP poate fi atribuit pe rind. celor trei job-uri care solicité serviciul. intrucat depanatorii de programe emit, de obicei, comenzi de scurta durata (cum ar fi compilarea ‘nei proceduri de 5 pagini) si doar rareori comenz lungi (cum ar fi sortarea unui tister cu un milion éeinregistari), calculatorul poate deservi rapid si interactiv un grup de utilizator si, in acelasi timp, ‘poate executa, atunci cand UCP: riméne liber, luerari dintr-un lot mai mare. Primul sistem functional cu partajare in timp, CTSS (Compatible Time Sharing System, rom: Sistem Compatibil cu partjare in timp), a fost dezvoltat la MLLT. pe o masind 7094 adaptata special. (Corbato. i alii, 1962). Cu toate acestea, partajarea in timp nu a devenit ew adevarat populari pind cind nu a devenitcisponibil un modul hard pentru protectie.. _ Dupii succesul sistemului CTSS, MIT, Bell Labs si: General Electric (care a devenit apoi un itor important de calculatoare) au decis sa investeasc’ in dezvoltarea unui calculator utilitar timp. Modelul lor era sistemul de distributie a energici electrice, unde nevoia de energie electric’ rezolva ptin introducerea stecherului in priza din perete, conectati deja la reteaua electric’. jiectantii acestui sistem, cunoscut ca MULTICS (MULTiplexed Information and Computing , rom: Serviciu Multiplexat pentru Calcule si Informatii), anticipau o masina foarte mare care si puna la dispozitie putere de prelucrare pentru toti utilizatorii din zona Boston. Ideea ci dupa je ani -ar putea vinde masini mult mai puternice decat masina super-performanti: GE-645, cu 1000 de dolar, citre milicane-de_utilizatori, ar fi fost considerata 0 poveste stintitico- fantaticd; ideca ar fi insemnat atunci ceca ce ar insemna astizi propunerea de realizare a unor renurisubacvatice transatlantice supersonice. _ MULTICS nu a fost un succes prea mare. I: era proiectat sa deserveasca sute de utilizatori pe o msina putin mai puternica decat un PC bazat pe 386 din zilele noastre, care suporta un numar mult ‘ai mare de dispozitive de I/B. Aceast situatie nu era chiar asa de neobisnuitd pe cat prea, pentru ‘oamenii stan cum si serie programe scurte si eficiente, indeménare care s-a pierdut pe parcurs. _Aufost multe motive pentru care MULTICS nu a cucerit intreaga lume, unul dintre cele importante ‘find faptul ca era scris in PLA, iar compilatorul de PL/I a aparut cu cativa ani dupa aceea si atunci a wt folosit foarte putin. in plus, MULTICS a fost foarte ambitios pentru timpul sau, mai ambitios chiar decat motorul anaitic al lui Charles Babbage in secolul al 19-1ea. Pe scurt, MULTICS a introdus multe idei de perspectiva in literatura despre calculatoare, dar area lor intr-un produs serios sun suoces comercial important a fost mult mai grea decat sar astepatoricine, Bell Labs sa tetra cin proect, iar General Electric a renuntat la afacerea cu ‘alculatoare. M.LT. a continuat totusi a Ricut MULTICS si functioneze, El a fost vandut, in cele 2 INTRODUCERE, CAP.1 din urma, ca produs comercial companiei care a cumpiirat afacerea cu calculatoare a Iui General Electric (Honeywell) si a fost instalat fn aproximativ 80 de companii si universitati importante din toati lumea. Chiar dacd numarul lor era redus, utilizatorii MULTICS erau devotati sistemului. General Motors, Fuid si US National Security Agency, de exemphi si-nn scos din functiune sistemele MULTICS abia dup’ anul 1990, la 30 de ani dupa ce MULTICS a fost lanset. jn acest moment, conceptul de , calculator utilitar” s-a cam rasuflat, dar el poate si revina sub forma de grupuri mari, centralizate, se servere pentru Internet, la care sunt conectate ‘masini relatis slabe, cu rol de terminale, a caror actvitate se desfaigoara in mare parte pe servere. Motivatia acestei situafii este faptul c& multi utilizatori nu doresc sa administreze un sistem de calculatoare complex si pretentios, ci ar prefera ca aceasta treabii si fie ficuti de 0 echipa de profesionisti dela compania care detine serverele. Comertul electronic (e-commerce) evolueaza in aceasta directie, bazindu-se pe diverse companii care gestionea2i magazine virtuale pe servere, multiprocesor, la care sunt ‘conectate masinile utilizatarilor, solutie care este in continuare in spiritul proiectului MULTICS. {in ciuda lipsei de succes comercial, MULTICS a avut o influenta uriasa asupra sistemelor de operare care au urmat. Sistemul este deseris in (Corbato si ali, 1972; Corbato si Vyssotsky, 1965; Daley si Dennis, 1968; Organick, 1972; Saltzer, 1974), Sistemul are inci un sit Web activ, wnow-multicians.org, care euprinde multe informatii despre sistem, despre proiectantii i utilizatorti lui. © alta dezvoltare important din timpul generafiei a treia a fost evolutia fenomenala a minicalculatoarelor, incepand cu DEC PDP-1 in 1961. PDP-1 avea doar 4 k cuvinte de 18 biti, dar la cei 120.0008 pe masind (mai putin de $% din preful unui 7094) s-a vandut ea painea calda. Pentru anumite tipuri de activitati ne-numerice el era aproape la fel de rapid ca si 7094 sia dat nastere uni industri complet noi. PDP-I a fost urmat repede de o serie de alte PDP-uri (iuate incompatibile, na cala familia IBM), culmindnd cu PDP-11. in aceasta perioad’, Ken Thompsond, de la Bell Labs, wnul dintre: specialistit in domeniul calculatoarelor, care a lucrat mult la proiectul MULTICS, a gasit un minicalculator PDP-7 pe care nu folosea nimeni si sa pornit si serie 0 versiune’ de MULTICS simplificati, pentru un singur tilizator. Aceasti activitate sa concretizat mai tarziu sub forma sistemului de operare UNIX®, care.a devenit popular in lumea academicé, in agentile guvernamentale giin multe companii, storia sistemului UNIX a fost povestiti cu alt ocazic (de exemplu, Salus, 1994). O:parte a povesti va fi spusd in cap. 10. Pentru moment este suficient de spus ci intrucdt codul sursii era disponibil, multe companii si-au dezvoltat vetsiuni proprii (incompatibile), sitwatie care a dus la 0 oarecare dezordine, $-au dezvoltat doud versiuni importante: SystemV, de la AT&T si BSD (Berkeley Soft Distribution), de la Universitatea din California, de la Berkeley. Cele doua sisteme au ‘mai avut si alte variante mai putin importante. Pentru a putea serie programe.care si ruleze pe orice sistem UNIX, IEEE a dezvoltat un standard pentru UNIX, numit POSIX, pe care il respect cele ‘mai multe versiuni de UNIX de astizi, POSIX defineste o interfata minimala de apel sistem pe care trebuie si o suporte sistemele UNIX care sunt conforme cu standardul. De fapt, sunt si alte sisteme de operare care accepti astzi interfata POSIX. Cao completare, merit mentionat c& in 1987 autorul a lansat o clond redusi de UNIX, numiti MINIX, pentru scopuri educafionale.) Functional, MINIX era foarte aseménitor cu UNDG incluzind si interfata POSIX. O carte care descrie modul inter de lueru si lsteazai codul sursi in annex este si ea disponibilé (Tanenbaum si Woodhull, 1997). MINIX este cisponibil gratis (inclusiv codul sursd, in intregime) pe Internet; la URL wwwcs.ytanl/-astiminichurnl. 1EO.12 ISTORIA SISTEMELOR DE OPERARE B Dorinta de a realiza o versiune gratuita de MINIX, destinatd productiei, (opusit celei sducationale) Fa determinat pe studentul finlandez. Linus Torvalds si scrie Linux. Sistem a fost Jeaoltat din MINIX si, din start, suporta diverse caracteristici ale MINIX (de ex: sistemul de fisiere MINIX). Ds ia foot extins in multe direct sistemul pistrea7A ined cv bund parte din structura de saz comund cx MINIX gsi UNIX. Mare parte din ceea ce.este scis in aceasta carte despre UNIX ‘ste valabil pentru SystemV, BSD, MINIX, Linux si alte versiuni si clone ale UNIX. 124 — Generafia a patra (1980 — pani in prezent). Calculatoare personale Calculatoarele personale au apirut datorit& dezvoltarii circuitclor integrate LSI (Large Scale Integration), chip-uri care contin mii de tranzistoare pe cm? de siliciu. Ca si arhitecturi, calculatoarele personale (numite initial microcalculatoare) nu erau deloc diferite fayii de minicalculatoarele din clasa PDP-11, dar_prefurile lor erau sigur diferite. Acolo unde thinicalculatorul permitea unui departament dinte-o companic sau unei universitii si xiba proprial calculator, microprocesonul permitea fiecZrui wtlizator sa aibii propriul calculator. in 1974, cand Intel a lansat 8080, primul UCP de uz general pe 8 bifi, era necesar un sistem de operare pentru el, sistem care sa fie capabil si-l si testeze. Intel i-a cerut unuia dintre consultant si, Gary Kildall, si scrie unul. Kildall,impreuna cu un prieten, a construit mai intdi un controlor pentru floppy disk-ul de 8” proaspat lansat de Shugart Associates si a cuplat discul la 8080, realiznd astfel primul microcomputer cu disc. Kildalla scris apoi un sistem de operare bazat pe disc, numit CP/M (Control Program for Microcomputer, rom: Program de Control pentru Microcalculator), pentru structura nou creat. Pentru ci nu a intrevazut viitorul microcalculatoarelor cu disc, Intel a concesionat in favoarea Ini Kildall drepturile asupra CP/M, Kildall si-a construit o companie, Digital Research, pentru a dezvolta sia vinde in continuare CP/M. in 1977 Digital Research a rescris CP/M in asa fel incat si functioneze pe mai multe tipuri de microcalculatoare, realizate cu 8080 de la Intel, cu 280 de la Zilog sau cu alte UCP, Malte aplicati fan fost scrise in asa fel incdt si lucreze sub CP/M, permifandu-i acestuia si domine lumea microcalculatoarelor pentru aproximativ 5 ani. in primii ani ai decadei 1980 IBM a proiectat IBM PC si a cautat soft pentru el. Angajati ai IBM au luat legitura cu Bill Gates pentru licentierea interpretorului de BASIC seris de el, Totodata au intrebat daca stie vreun sistem de operare care s& ruleze pe PC. Gates le-a sugerat celor de la IBM si ia legitura cu Digital Research, companie care domina pe atunci lumea sistemelor de operare. Kildall a retuzat sa se intalneasca cu cei de la IBM, luand cu siguranfi cca mai proastt decizic de alaceri din istoria cunoseuti a calculatoarelor sia trimis un subordonat in locul lui, Pentru a inritutti si mai mult lucrurile, avocatal lui a refuzat s4 semneze in{elegerea de confidentialitate propusi de IBM, privind PC-ul care nu fusese inc anunfat. Prin urmare, IBM s-a intors din nou la Gates ca si-] intrebe daca nu poate si le furnizeze un sistem de operare ‘Atunci cénd a revenit IBM, Gates si-a amintit c& un producdtor local de calculatoare, Seattle Computer Products, avea un sistem de operare numit DOS (Disk Operating System, rom: sistem de operare bazat pe disc) care s-ar fi putut potrivi. Gates a tratat cu cei de la Seattle Computer Products si le-a propus si-i vinda sistemul pentru 50,0008, fra si-l verifice, cerere pe care compania a ceeptat-o fi ezitare. Gates le-a oferit apoi celor de la IBM pachetul DOS/BASIC, pe care IBM - ‘aacceptat. IBM a dorit anumite modificdri, asa inet Gates a angajat persoana care scrisese DOS. Tim Paterson, ca angajat al nou infiin{atei companii Microsoft, a lui Gates, a facut modificdrile. Sistemul revizuit a fost redenumit MS-DOS (Microsoft Disk Operating System) si a devenit rapid 4 INTRODUCERE CAPT sisteml principal pe pinta de PC-uri, Un factor cele jn aceasta situate a fost decizia lui Gates de @ ae ME-DOS computor de caleulatoare, care s-insale® PE structurile lor hard, decizie care s- vintvedit extrem de infeleapti (prvi retrospectiv) in comparajie cu incercarea Ini Kildall de a vinde CP/M utilizatontor finali, unl cate ‘unl (cel putin a inceput). Gu timpal IBM PC/AT a ajuns in 1983, folosind Frooevorul 80286, MS-UOS era consolidat in simp ce CPIM isi triia ultimele clipe. MS-DOS a fost, in continuare, mult folosit pe caleulatoare & procesoare 80386 si 80486. Desi versiunca nila de MS-DOS era relativ rudimentard, versiunile eee au urmat au fost perfectionate, cuprinzind S ractristch avansate, unele dintre ele find preiuate de la UNIX. (Microsoft nu ave TPnig de a face ou UNIX, chiar dack a vandut oversune pentru microcalclatoare, numité XENTX, in primi ani de existent’ a companicl.) CPIM, MS-DOS gi alte sisteme de operare din erioada de inoeput a microcelulatoaelor $© pazau pe comenzle introduse de operator de le tasatura, © eventual schimbare in introduocres comenzilur ar fi putut reetirilor efectuate de Doug Engelbart de la Stanford Research Institute in anii 1960. sntat GUI (Graphical ‘User Interface, rom: interfata grafic cu uilizatorul,realizatéou fereste, iconite, meniur simouse. Aceste dei au fost preluate de ‘ercetitorii de la Xerox PARC sia fost aplicate la masinile pe care le construiau. crag a, Steve Tobs, co-inventator al calclatorulut ‘Apple, eonstruit in garajul su, a viziat PARC, a vizut GUI $i -a infeles imediat valoarea potenti, luru de care cei din echipa Xerox nu va dat seama (Smith gi Alexander, 188); Jobs s- apvcat 0% ‘sdcconstruiasca un Apple cu GUT. Proiectul s-a coneretizat prin realizarea ‘Lisa, care ins era prea costisitor $1 prin urmare a fost un esec: ‘comercial. A doua incercare @ tui Jobs, caleulatorul Apple ‘Macintosh, a fost un succes uriag nu seat penta cera mult mai iftin decat Lisa i PSA ‘ca era prietenos cu utilizatorul (user friendly), aceasta insemndnd ca cra destinat utilizatorilor care nu uma ‘cA nu stiau nimic despre caloulatoare, dar nici mu aveau de gand si invete. Atunei cand Microsoft s-a decis ‘sf construiasc’ un succesor a lui ‘MS-DOS, a fost puternic influentat de succesul obfimat'de Macintosh. ‘Microsoft a produs tn sistem bazat pe GUI. umit ‘Wado, are rala infil peste MS-DOS (adied era mai mult ca un interpretor de comentzi decdt ca Wrijstom de operare), Pentru circa 10 ani, din 1985 and in 1995, Windows a fost doar un medi trafic peste MS-DOS. Incepind din 1995 2 fost Tansath o versiune de Windows de sine sttito=te arden 95, care inciudea multe dintre caracterstcle Gerermului de operate 5 se folosea de MS- ‘DOS num pentru intialzareasistemulat (bootare) si pentru rularea veehilor programe MS-DOS. 1 1098 a fost lansatd u versiune uyor modifica do sisters ‘numith Windows 98. Far indoial c& art Windows 95 elt gi Windows 98 foloseaw ncn bund ‘muisurd limbajul de asamblare pe 16 biti al Iwi Intel ‘Un alt sistem de operare a firmei Microsoft este WindowsNT (NT vine de Ja New Technology, rom: tehnologie noua), care este ‘compatibil cu Windows95 de la un ‘anumit nivel, dar este complet resets, de la zer0. Este un sistem eare lvereaz in totalitate pe 32 de bil. Seful de proiect pent retin NT a fost David Cutler, care a fost si unl dine proiectangi sistemulai de operare VAX “VMS, aga inet unele idei ale VMS sunt prezonte St Ia NT. Microsoft sa asteptat ca prima versiune Ye NT ai elimine complet MS-DOS si toate cclelaie ‘versiuni de Windows, pentru cf era um sistem superior, dar sat ingelat, Abia cu Windows? ved reusts& objid un real succes in special in Yetelele marilor companii. Versiunea 5 @ Wurce’ NE a fost redennmiti Windows 2000, la jnceputul lui 1999: Se intentiona ea Windows 71000 2 fe suocesorl atta ui Windows 98 ct = al tui Windows NT'40. intrucat inlocuirea 58 ‘a functionat foarte bine, Microsoft a produs 0 alta io gine de Windows 98, numita Windows Me (Millenium Edition). eee SBC.12 ISTORIA SISTEMELOR DE OPERARE 1s Un alt competitor important in lumea calculatoarelor personale este UNIX (si diversele tui variante), UNIX este foarte putemic pe statile de lucru si pe caleulatoarele de nivelul superior, asa cum sunt serverele de retea, El este popular mai ales pe masinile echipate cu procesoare RISC de inaltd performanti. Pentru calculatoarele bazate pe Pentium, Linux a devenit o alternativa mai cunoscuti la sistemele Windows, mai ales pentru studenti si pentru un numér tot mai mare de utlizatori din companii. (Ca 0 precizare, termenul Pentium, folosit de-a lungul cdrfii, va insemna Pentium I, 1, UH sau 4.) Desi multi utilizatori UNIX, mai ales programatori cu experienti, preferii o interfa(a bazat pe comenzi, uneia bazate pe GUI, aproape toate sistemele UNIX suporta si un sistem de ferestre, ‘umit X Windows, produs de M.LT: Sistemul realizeaza gestiunea de baza a ferestrelor, permitand utiizatorilor si creeze, si steargi, si deplascze ‘si si redimensioneze ferestre cu mouse-ul, Adesea este disponibili o interfata completii GUL, aga ca Motif, care si Iucreze chiar peste sistemul X Windows, dindu-i UNDX-ului o forma asemdnatoare cu cea a sistemului de pe Macintosh sau cu cea 4 Microsoft Windows, pentru utilizatorii care isi dorese acest hier O dezvoltare interesanta, care a apiiut pe la mijlocul decadei 1980, este cresterea refelelor de caleulatoare personale in care lucreazi sisteme de operare de refea si sisteme de operare distribuite (Tanenbaum si’ Van Steen; 2002). Intr-un sistem de operare de retea utilizatorii iu c& exist mai multe calculatoare sic se pot conecta si inregistra la masini aflate la dlistanti si pot copia fisiere de pe o masini pe alta. Fiecare masina ruleaza propriul ei sistem de operare local si isi are utilizatorul local. Sistemele de operare de retea mu sunt fundamental diferite de sistemele de operare pentru un singur procesor. Ele au, de obicei, nevoic de un controlor pentru interfafa de refea si un soft de nivel jos care si-1 comande, aga incdt programele si poati realiza conectarea la distant’ ¢i si obtind secesul la fisicre la distant. Aceste adugiri nu modifica structura de baza a sistemulut de operare. Un sistem de operare distribuit este, prin contrast, unul care le apare utilizatorilor ca un sistem traditional, chiar daca el este scris, de fapt, pentru mai multe procesoare: Utilizatorii mu trebuie sa stie unde ruleaza programele lor sau unde le sunt stocate fisierele; toate acestea sunt gestionate automat gi ficient de catre sistemul de operare. Sistemele de operare distribuite reale au nevoie de mai mult decat adaugarea unei bucati de cod la un sistem de operare uniprocesor, pentru ci intre sistemele distribuite si cele centralizate exist diferonte semnificative. Sistemele distribuite, de exemplu, permit adesea aplicatillor si ruleze pe mai multe procesoare in acelasi timp, lucru care necesitialgoritmi mai complecsi pentru gestionarea activititii procesoarelor, cu scopul dea optimiza paralelismul aplicatilor: Intarzierile de comunicatie din interiorul retelei pot duce la situatia in care acesti algoritmi (sau alfil) sf lucreze cu informatii incomplete, depasite (in timp) sau chiar incorecte. Aceasti situate este complet diferité fata de sistemul. pentru un singur procesor, la care sistemul de operare are informatii complete despre starea sistemului 1.2.5 Ontogeneza reia filogeneza Dupé ce a fost publicata cartea ,,Originea speciilor” a lui Charles Darwin, zoologul german Est Haeckel a afirmat 4 ,ontogeneza reia filogeneza”. Prin aceasta el a vrut sa spun ca dezvoltarea unui embrion (ontogeneza) repeta (adica urmecaz4 avciasi pasi) evolutia speciilor. Cu alte cuvinte, \dupa fertilizare, un ovul uman trece prin stadille de peste, pore $i altele, inainte de a deveni un

You might also like