1.1. Informatica
Informatica reprezinta un domeniu complex - rezultat prin integrarea unor elemente din matematica, logica sau electronica - care poate fi situat la granita dintre stiinta si tehnica. Ea poate fi definita ca un ansamblu de concepte teoretice, tehnici si proceduri referitoare la culegerea, transmisia, stocarea si prelucrarea automata a informatiilor. Bazându-se pe descoperirile revolutionare din electronica, cât si pe geniala inventie care a fost calculatorul, informatica este un domeniu stiintific tânar, care s-a dezvoltat mai ales în a doua jumatate a secolului XX.
Lingvistic, termenul informatica a rezultat din combinatia cuvintelor frantuzesti information si automatique. În egala masura însa, denumirea domeniului nefiind pe deplin consacrata, sunt folositi si termeni echivalenti, de origine anglo-saxona: stiinta calculatoarelor, prelucrarea datelor sau stiinta calculului (computer science, data processing, computing science).
Obiectivele informaticii sunt focalizate în trei directii:
n constructia calculatoarelor electronice si a echipamentelor periferice (hardware);
n stabilitea principiilor tehnice de functionare si a metodelor de utilizare si programare ale sistemelor de calcul (software);
n gasirea modalitatilor de interconectare între echipamentele de calcul si de transmisie la distanta a informatiilor în retele (netware).
Dacă primele doua domenii stabilite ca obiective ale informaticii sunt relativ "clasice", cel de-al treilea, vizând retelele de calculatoare, constituie o componenta noua, dezvoltata mai ales în ultimele decenii, odata cu sistemele de telecomunicatii.
Este aproape inutil sa mai discutam astazi despre impactul utilizarii acestor unelte moderne care sunt calculatoarele asupra vietii economice si sociale contemporane sau despre transformarile institutionale, structurale si functionale pe care acestea le generează în procesul de tranzitie spre societatea informationala. Specialistii încearca astazi sa defineasca cu cât mai multa rigoare si acuratete acest nou stadiu al civilizatiei umane si sa prelimineze cât mai multe din consecintele - pozitive sau negative - ale procesului de tranzitie.
Secolul XXI va fi martorul trecerii de catre o serie de comunitati umane a celui de-al treilea val al civilizatiei, asa cum a fost el definit de A. Toffler. Reusita acestei încercari este conditionata de victoriile obtinute în competitia pentru controlul informatiei. Aceasta poate fi asemanata cu un nou razboi mondial, purtat de aceasta data numai cu arme neconventionale, care nu ucid. Însa, ca în orice razboi, vor fi evident natiuni câstigatoare, dar si perdante. Iar pentru cei din urma, principiul antichitatii romane "vae victis" poate deveni dureros de actual, deoarece la un moment dat decalajul dintre cei care stapânesc si manevreaza informatia prin mijloace de calcul electronic si restul lumii, care nu are acces la aceste privilegii, nu va mai putea fi remontat.
1.2. Calculator. Sistem de calcul
La întrebarea "Ce este un calculator ?" cel mai simplu raspuns poate fi dat prin intermediul urmatoarei definitii:
Un calculator (sau computer, ordinator) este un ansamblu de circuite electronice destinat prelucrarii automate a datelor pe baza unui program memorat.
Trebuie subliniat înca de la început ca un calculator executa urmatoarele operatii: intrări, procesari (prelucrari), iesiri si stocari (memorari).
Operatiile de intrare-iesire constau în vehicularea între utilizatorii umani si calculator a unor fluxuri de informatii de diferite tipuri (date alfanumerice, comenzi, programe, rezultate).
Operatiile de prelucrare constau din ansamblul calculelor aritmetice si logice executate asupra datelor de catre anumite componente ale calculatorului.
Operatiile de stocare reprezinta procesele de depunere a datelor (brute sau procesate) pe anumiti suporti, în vederea pastrarii lor sau pentru a fi supuse unor prelucrari ulterioare.
Operatiile de mai sus necesita pentru a fi executate echipamente suport. Se pot defini astfel de suporti pentru intrari, iesiri, stocari si prelucrari. Luând în considerare si aceste elemente, definitia calculatorului poate fi extinsa astfel:
Un sistem de calcul reprezinta un ansamblu format din calculatorul electronic si echipamentele suport.
Un sistem de prelucrare automată a datelor
(SPAD) reprezinta ansamblul
format din calculatorul electronic, echipamentele suport, procedurile de
operare adecvate si utilizatorii umani care le deservesc (figura 1.1).
Figura 1.1. Structura unui SPAD
În cadrul unui sistem de calcul, rolul esential îi revine, evident, calculatorului, care prelucreaza doua categorii de informatii: date si programe.
Datele sunt reprezentari simbolice ale faptelor. Reprezentare externa a acestora (adica cea pe care noi o percepem în mod uzual) este destul de diversificata, pornind de la clasicul text alfanumeric si ajungând la grafica, sunet sau imagine. Dimpotriva, reprezentarea interna a datelor în calculatoare este unica si se obtine prin intermediul formatului binar (codificare prin cifrele binare 0 si 1). Dupa cum vom vedea, aceste cifre corespund prezentei sau absentei unui semnal electric în circuitele logice ale calculatorului.
Programele sunt elementele care dau flexibilitate calculatoarelor. Un program este o lista de instructiuni, scrisa într-un limbaj de programare. O instructiune este o "fraza" în care utilizatorul combina primitive dintr-un astfel de limbaj pentru a-i comanda calculatorului o anumita actiune. Programele sunt reprezentate tot în format binar. Mecanismul prin care un program este "înteles" de catre sistemul de calcul va fi discutat mai târziu.
Datele si programele sunt stocate în memorie, astfel încât ele pot fi pastrate o anumita perioada de timp si sunt disponibile pentru a fi utilizate în orice moment. Asa cum vom arata în detaliu mai tâziu, memoria are doua componente: cea interna (sau primara, de lucru) - cu o capacitate de stocare mai redusa, fiind destinata pastrarii datelor si programelor ce se prelucreza imediat - si cea externa (sau secundara), cu o capacitate mai mare, destinata arhivarii informatiilor în vederea unor prelucrari ulterioare. Subliniem înca de pe acum ca pentru a fi procesate, programele si datele trebuie să se gaseasca în memoria interna.
O ultima componenta - în fond esentiala - a unui sistem de prelucrare automata a datelor este reprezentata de operatorii umani. Acestia pot fi separati în doua categorii: utilizatori comuni si specialisti. În ultimii ani, odata cu aparitia generatiilor de calculatoare personale, care ofera acces facil si pentru nespecialisti, granita între cele doua categorii nu mai este chiar atât de clar delimitata.
În rândul specialistilor în informatica s-au conturat de-a lungul timpului o serie de meserii specifice:
q programatorii sunt aceia care scriu programele de calcul;
q analistii de sistem elaboreaza studii de fezabilitate si de implementare pentru sistemele informatice;
q inginerii de sistem proiecteza, construiesc si supervizeaza functional calculatoarele;
q administratorii de retea supervizeaza traficul de date si aloca drepturile de acces ale utilizatorilor;
q personalul de operare deserveste diferitele echipamente de calcul.
Este de remarcat faptul ca si în rândul comerciantilor s-a conturat un grup aparte al furnizorilor de tehnica de calcul, de pachete software sau de servicii informatice, care poate fi inclus chiar în rândul specialistilor (asa cum si un farmacist este în primul rând profesionist si apoi comerciant).
În loc de concluzie la aceasta sumara introducere, adresam cititorului invitatia de a încerca sa reflecteze la relatiile stabilite între calculatoare si societatea contemporana de la începutul mileniului III, inclusiv la modul în care sistemele de calcul modifica viata omului modern, influentează procesele de management si fundamentare a deciziilor, redefinesc raporturile de forte în lume, asigura globalizarea productiei materiale si a tuturor categoriilor de afaceri sau reconsidera unghiurile din care poate fi privita prelucrarea si livrarea informatiei. Iar daca aceasta lucrare veti gasi un suport pentru clarificarea unora din aceste aspecte, satisfactia noastra, a autorilor, va fi deplina.
1.3. Dispozitivele de calculat - scurt istoric
Preocuparile oamenilor pentru a-si crea unelte destinate întregii lor game de activitati (agricultură, vânătoare, transport, comunicatii, constructii etc.) dateaza înca de la începuturile existentei acestei specii. În acest context se înscrie si cautarea permanenta, pe tot parcursul evolutiei umanitatii, a celor mai eficace metode de culegere, înregistrare si manipulare a datelor referitoare la realitatea înconjuratoare si la interactiunea acesteia cu omul.
Perfectionarea nivelului de cunoastere umana necesita cresterea continua a vitezei de prelucrare a informatiilor, ceea ce a impus utilizarea unor unelte de calcul corespunzatoare. În conditiile în care creierul uman nu ofera o capacitate de calcul satisfacatoare, aceste dispozitive au devenit la vremea lor accesorii indispensabile activitatilor de cunoastere si de creatie.
Este totusi evident ca primul dispozitiv de calculat a fost creierul uman. Nu numai pentru a-i contrazice pe autorii de literatura de anticipatie - care imagineaza societati conduse de roboti si calculatoare - putem spune ca acesta a fost, este si va ramâne si în viitor cea mai complexa si performanta structura de rationare si decizie.
Superioritatea creierului uman fata de calculatorul electronic este de necontestat iar în sprijinul acestei afirmatii pot fi aduse numeroase argumente. Creierul uman are de la început doua avantaje nete fata de masina: capacitatea de autoânvatare si cea de selectie a informatiilor utile. Pe când un calculator nu poate executa decât un set limitat de operatii de calcul ce îi sunt "comandate" prin programele pe care le stocheaza în memorie, creierul poate realiza practic o gama nelimitata de asocieri informationale prin care sintetizeaza experientele anterioare în noi acumulari cognitive. În plus, creierul poseda mecanisme (deocamdata insuficient clarificate) care rejecteaza datele nerelevante pe care le primeste prin terminatiile senzoriale ale organismului. Gânditi-va de exemplu ce s-ar întâmpla daca el ar retine toate informatiile pe care le-am perceput din momentul nasterii si pâna în prezent!
Revenind la dispozitivele create de om pentru a putea calcula mai repede si mai eficient, din istoricul evolutiei acestora pot fi retinute o serie de momente remarcabile, pe care vom încerca în continuare sa le trecem sumar în revista.
Cu toate ca despre calculatoare se vorbeste numai de circa cinci decenii, istoria masinilor de calculat este bogata si complexa. O prezentare cronologica a progreselor din acest domeniu poate fi importanta din cauza ca vom avea posibilitatea sa întelegem mai bine resorturile si motivatiile care au determinat aceste evolutii permanente si spectaculoase.
Istoria calculatoarelor nu poate fi acoperita integral în câteva pagini. Sunt matematicieni sau ingineri care au elaborat lucrari de sute de pagini dedicate acestui subiect. În aceste cazuri, investigatiile sunt extinse pâna în preistorie, iar faptele sunt prezentate în conexiune cu evenimente din alte domenii stiintifice sau tehnice. De altfel, se considera ca primul dispozitiv eficient de calculat creat de om a fost abacul, construit în China în jurul anului 2000 î.Hr., dar folosit înca si în zilele noastre. Este de remarcat faptul ca inventatorii sai au elaborat algoritmi cu ajutorul carora puteau executa - pe lânga adunari si scaderi - si operatii de înmultire si împartire (cu o viteza comparabila cu cea a unui calculator de buzunar!).
Pentru mai multa rigoare, diversele solutii propuse în timp pentru masinile de calcul au fost încadrate într-un numar de generatii succesive. Numarul de trepte pe aceasta scara de evolutie poate fi fixat la sase:
q generatia 0 masinile mecanice si electromecanice de calculat;
q generatia 1 calculatoarele realizate cu tuburi electronice
q generatia 2 calculatoarele realizate cu tranzistori
q generatia 3 calculatoarele cu circuite integrate
q generatia 4 PC-urile ( calculatoarele cu microprocesoare
q generatia 5 calculatoarele cu arhitecturi paralele
Masinile mecanice si electromecanice - generatia 0
Aceasta generatie acopera o perioada cu o mare întindere în timp (circa 1600 - 1940) si debuteaza cu masinile mecanice de calculat, construite în secolele XVI - XVIII. Pentru ca erau alcatuite din angrenaje cu roti dintate si pârghii, aceste dispozitive semanau oarecum cu ceasurile. Ele lucrau în aritmetica zecimala, astfel încât rotile aveau câte zece dinti. Datorita pieselor în miscare si a frecarilor, masinile erau lente si putin fiabile, iar datorita mecanicii fine utilizate, erau si scumpe. Datele destinate prelucrarii nu puteau fi stocate, iar rezultatele prelucrarilor nu puteau fi nici pastrate si nici nici transferate de pe o masina pe alta. "Programarea" masinilor mecanice se facea prin modificarea parametrilor constructivi ai acestora, constând practic în schimbarea angrenajelor de roti dintate.
Primele creatii de acest fel au fost cele concepute si realizate de catre Wilhelm Schickard - astrolog si matematician (1624), Blaise Pascal - matematician (1642) si Gottfried Wilhelm Leibnitz - inventator si matematician (1694). Din pacate, masina lui Schickard, care efectua automat cele patru operatii aritmetice si se pare ca era mult mai complexa decât "cutia" construita ulterior de Pascal, a fost distrusa, împreuna cu autorul ei, într-un un incendiu si nu a mai fost niciodata reconstituita.
Pascal a construit, la numai 17 ani, o "cutie" care efectua numai adunari si scaderi si era destinata a-l ajuta pe tatal sau - de profesie perceptor. Sa remarcam - macar în treacat - faptul ca si astazi unul din principalele domenii de aplicatie al calculatoarelor a ramas colectarea impozitelor si taxelor.
Masina lui Leibnitz efectua toate cele patru operatii si aducea unele îmbunatatiri împartirii. Cu toate ca nu a utilizat termenul, Leibnitz are primele preocupari pentru a defini principiile si tehnicile inteligentei artificiale. Versiunile ulterioare ale masinii sale au fost utilizate pâna în anii '40, când au devenit disponibile primele calculatoare electronice. Astfel, o masina mecanica comerciala de calcul - aritmometrul Thomas - a fost mentinuta în productie pâna în 1926.
Masini similare cu cele ale lui Pascal sau Leibnitz au mai construit - printre alti - Lepine (1725), Hillerin (1730), Pereire (1751) sau Stanhope (1775). Bazându-se pe tabelele de logaritmi elaborate de Napier în 1617, Edmund Gunter construieste tot în 1624 rigla de calcul, utilizata în activitatile de proiectare inginereasca pâna la sfârsitul anilor
Pare paradoxal, dar prima masina programabila nu efectua calcule, ci . tesea pânza Ea a fost construita in 1801 de catre un pionier al revolutiei industriale din Europa - francezul Joseph Jaquard - sub forma razboiului de tesut automat, care lucra "citind" informatii de pe cartele perforate. Observam cum notiunea de program a aparut mai întâi în lumea mecanica. De altfel, ideea este cu mult mai veche, putând fi întâlnita în scrierile antice ale lui Heron din Alexandria sau materializata în dispozitive de tipul cutiilor muzicale sau al ceasurilor cu mecanisme de animatie ale unor figurine.
Un progres semnificativ în tehnica de calcul este datorat celui care astazi este considerat parintele calculatoarelor moderne, matematicianului englez Charles Babbage (1792 - 1857). Preluând ideea stocarii datelor pe cartele perforate, el a initiat constructia a doua masini mecanice remarcabile, numite diferentiala si analitica. Primul proiect, insuficient finantat de catre guvernul englez între 1828 - 1833 (si din aceasta cauza ramas neterminat), viza realizarea unei masini pentru automatizarea calculului functiilor polinomiale si a tiparirii rezultatelor. Suplimentar, pentru calculul functiilor trigonometrice, Babbage propunea o noua tehnica, numita metoda diferentelor finite.
Masina analitica era proiectata pentru a efectua automat orice operatie aritmetica si prefigureaza primul calculator programabil, deoarece includea în premiera câteva elemente constitutive ale calculatoarelor moderne: unitate aritmetica de calcul, memorie de lucru pe cartele perforate pentru date, dispozive de intrare - iesire. Din pacate, complexitatea proiectului îl facea imposibil de construit la acea vreme. Totusi, în anul 1853, proiectul va fi partial implementat în Suedia de catre Edward Schentz, sub forma unui model functional destinat calculului tabelelor astronomice.
Cercetarile lui Babbage au fost completate de catre matematiciana Ada Gordon (casatorita cu William King, înnobilat mai târziu conte de Lovelace), interesata îndeosebi de masina analitica. Ea este cea care a sugerat - în premiera - utilizarea sistemului binar în locul celui zecimal pentru stocarea datelor, inspirata probabil de teoria matematica a logicii binare, elaborata între timp de catre George Boole (1847). Tot ea este cea care, elaborând anumiti algoritmi pentru operatii matematice (îndeosebi pentru calculul numerelor lui Bernoulli), pune fundamentele unei noi discipline, numita calcul numeric. Ada Gordon este considerata de aceea primul programator din lume. În anii '70, Departamentul Apararii al SUA va atribui numele ei unui limbaj de programare de nivel inalt - ADA.
În secolul al XIX-lea "înmuguresc" primele sisteme de telecomunicatii Telegraful lui Sommering utiliza 35 de fire pentru transmisia a câte unui caracter pe fiecare dintre ele. În 1819 H. C. Oersted aduce o contributie majora la dezvoltarea teoriei transmisiei semnalelor, descoperind ca în jurul unui conductor strabatut de curent electric apare un câmp magnetic. Pe aceasta baza, Cooke va construi în 1828 un nou telegraf, care se va dovedi foarte util pentru societatile constructoare de cai ferate. Constructia cablurilor electrice izolate permite legaturile telegrafice submarine. Prima dintre ele traverseaza Canalul Mânecii în anul 1850, urmata de legaturile transatlantice. Un astfel de cablu, cu lungimea de 2300 de mile, avea în 1865 o greutate de. 9000 de tone si permitea transmiterea a 8 cuvinte pe minut. Costul transmisiei a 20 de cuvinte era de 100 de dolari aur.
În 1876, Alexander Graham Bell reuseste prima convorbire telefonica care va sta la baza edificarii retelelor de comunicatie prin comutatie de circuite. Din 1897, legaturile din aceste retele se pot efectua automat, pe baza descoperirii lui Strowger. Progresele în telecomunicatii nu se opresc însa aici. În 1864, J. C. Maxwell prognozeaza existenta undelor radio, iar în 1887 Heinrich Hertz le demonstreaza existenta. Pe aceasta baza, Marconi realizeaza în 1901 prima transmisie radio. În fine, în 1906 Lee deForest înventeaza tubul cu vacuum
Utilizarea telegrafului a dus la elaborarea teoriei electronice care descrie comportarea semnalelor în diferite circuite. Fara aceste fundamente, constructia ulterioara a calculatoarelor de mare viteza ar fi fost imposibila. În plus, constructia retelelor telegrafice si - mai târziu - a celor telefonice a promovat circuitele de comutatie, care vor sta la baza constructiei primelor calculatoare electromecanice. Tubul cu vacuum este amplificatorul care va sta mai târziu la baza construirii primului calculator electronic. Triada telegraf - telefon - tob electronic constituie un soclu teoretic si practic comun, pe care vor fi edificate în secolul nostru toate marile descoperiri din tehnica de calcul.
La sfârsitul secolului XIX, Herman Hollerith construieste un alt calculator mecanic - masina tabulator. Destinat prelucrarii statistice a informatiilor obtinute din recesamântul populatiei, tabulatorul transporta în premiera cu ajutorul curentului electric datele citite de pe cartele perforate la unitatea de calcul. Utilizarea masinilor lui Hollerith la recensamântul efectuat în anul 1890 în SUA a redus timpul de prelucrare la numai doua luni, fata de 7,5 ani cât se estimase ca va dura procedura manuala. Utilizarea codului de reprezentare al datelor pe cartele, conceput chiar de Hollerith (de aceea a si fost numit cod Hollerith) s-a generalizat rapid si a fost mentinuta pâna în zilele noastre.
Hollerith Tabulating Company - fondata de catre constructorul tabulatorului - realizeaza în 1914 o fuziune cu alti doi parteneri, sub numele C-T-R (Calculating - Tabulating - Recording). În 1924 holdingul se transforma în International Bussines Machine, cel care astazi a devenit giganticul concern multinational IBM, lider mondial al productiei de tehnica de calcul.
De obicei, majoritatea celor care folosesc astazi termenul de calculator se refera la un dispozitiv numeric. Lucrurile nu stau totusi întotdeauna asa: pâna în anii '70, calculatoarele analogice, mecanice sau electronice, erau si ele frecvent folosite, de obicei în simularea unor sisteme reale prin intermediul unor modele. Probabil, cel mai vechi calculator analogic este clepsidra, iar cel mai utilizat, cunoscutul dispozitiv simulator al trecerii timpului - ceasul. Parintele calculatoarelor analogice moderne este unanim considerat Vannavar Bush, cu toate ca în 1876 lordul Kelvin construieste un astfel de dispozitiv mecanic, destinat previziunilor privind comportamentul mareelor. Bush - care lucra la Massachutets Institute of Technology - a construit la începutul anilor '30 analizorul diferential electromecanic, bazat pe utilizarea integratoarelor mecanice cu disc si roata de frictiune. Aceasta masina cu greutatea de 100 de tone era capabila sa rezolve ecuatii de 18 variabile si a fost utilizata pentru efectuarea de calcule balistice sau din fizica atomica. În 1945 Bush publica în revista Atlantic Monthly o propunere pentru un sistem de informare numit Memex, ale carui principii de lucru sunt similare documentelor www.
Calculatoarele analogice au avut importanta lor pentru dezvoltarea celor numerice însa - odata cu trecerea timpului - si-au pierdut din utilitate, mai ales din cauza lipsei de precizie (exactitatea lor era esential determinata de natura componentelor folosite la realizarea modelului sistemului simulat). Ultimele astfel de sisteme au fost folosite în anii '70 ca integratoare electronice pentru simularea unor sisteme dinamice complexe sau ca sintetizatoare muzicale.
Cu toate ca în general s-a încetatenit ideea ca industria de calculatoare îsi are originile în perioada celui de-al doilea razboi mondial, înca din 1872 ( la numai câteva deceniii dupa introducerea primelor aplicatii practice ale electricitatii), Society of Telegraph Engineers discuta, cu ocazia celei de-a patra adunari ordinare de la Londra, probleme referitoare la "calculul electric".
Contributiile teoretice din domeniu elaborate în secolul al XIX-lea vor fi completate la începutul secolului XX. Astfel, teoria logicii binare a lui Boole va fi completata în anii '30 la Bell Labs de catre Claude Shannon. La sfârsitul acestui deceniu, matematicianul englez Alan M. Turing, pune bazele teoretice ale informaticii, dezvoltând si notiunea unei masini universale (astazi numita chiar masina Turing). Aceasta putea sa execute orice algoritm care ar fi putut fi descris, având totusi o structura simpla, cu memorie, mecanism de luare a deciziilor si un procesor de tip masina cu stari finite. Turing introduce conceptul de calculabilitate, lanseaza ideea ca un calculator poate emula un altul si demonstreaza ca o problema care poate fi rezolvata pe un calculator poate fi de asemenea rezolvata, pe orice calculator. Daca problema nu poate fi însa rezolvata pe masina Turing, ea nu va putea fi solutionata pe nici un sistem de calcul, prezent sau viitor.
Turing a jucat un rol si în cel de-al doilea razboi mondial, construind în mare secret la Bletchley Park masina Colossus, destinata decriptarii codurilor de comunicatie ale inamicilor germani.
O alta contributie teoretica de valoare a fost constructia primului model simplificat al celulei nervoase. Aceasta prima încercare de a modela cu ajutorul componentelor electronice unul din cei 1011 neuroni ai creierului uman a fost facuta în 1943 si apartine neurofiziologilor Warren McCulloch si Walter Pitts. Retelele neurale, construite ulterior pe baza acestui model sau a altora mai evoluate, sunt structuri de calcul paralele radical diferite de calculatoare. Ele au capacitatea de a se instrui si - cu toate ca inca nu sunt în mod direct legate de calculatoare - este foarte posibil ca în viitor aceste relatii sa se modifice în mod dramatic.
În 1934, Konrad Zuse inaugureaza o noua era, construind primul calculator utilitar electromecanic, bazat conceptual pe masina analitica a lui Babbage si folosind eficient releele electromagnetice. Dupa realizarea modelelor Z1 si Z2, utilizate în Germania pentru proiectarea avioanelor, Zuse a avut chiar intentia de a construi cu ajutorul a 1500 de tuburi un calculator electronic. Din pacate, bombele celui de-al doilea razboi mondial au distrus cea mai mare parte a muncii sale, iar ulterior Zuse a ratat încercarea de a-si continua cercetarile, spre sfârsitul vietii dedicându-se .picturii.
În aceeasi perioada în care Zuse realiza masinile sale, Howard Aiken construia la Universitatea Havard, cu sprijinul financiar si practic al IBM - ului, o alta implementare a masinilor lui Babbage - calculatorul programabil Mark I. Terminata în 1944, masina lui Aiken a fost utilizata de catre US Navy pâna la sfârsitul razboiului. Ea utiliza aritmetica zecimala, avea o memorie de 72 cuvinte a 23 biti, efectuând o adunare în 0,3 secunde si o multiplicare în 6 secunde. Mark I avea o arhitectura Harvard, denumire care va fi atribuita ulterior si altor sisteme care folosesc cai separate pentru date si instructiuni.
Cu toate ca masinile electromecanice de calculat au dus la reduceri semnificative ale timpilor de calcul si la cresterea acuratetei si preciziei rezultatelor, ele aveau doua mari dezavantaje: viteza limitata de operare si constructia complicata, lipsita de fiabilitate si scumpa.
Calculatoarele cu tuburi electronice - generatia 1
Daca încercam o comparatie plastica, un calculator modern construit astazi cu tuburi electronice ar avea dimensiunile cladirii Empire State Building. Totusi, acest balon de sticla vidat - având în interior anodul, catodul, filamentul si grila - reprezinta primul comutator electronic utilizat în constructia unui calculator, eliminând releele electromagnetice mult mai lente. Aceasta prima generatie deschide era electronica în evolutia calculatoarelor si se întinde între anii 1945 - 1958.
Primul calculator electronic este considerat ENIAC Electronic Numerical Integrator and Calculator), o masina programabila specializata, solicitata de armata americana pentru realizarea calculului tabelelor balistice de artilerie. Unii istorici propun pentru întâietate masina ABC, construita în 1940 de Atanasoff si Berry, la Iowa State College. Totusi, ABC nu a fost niciodata terminata si ea nici nu era un sistem de calcul de uz general, fiind destinata numai rezolvarii ecuatiilor liniare.
Constructia Calculatorul ENIAC a fost construit la Moore School of Engineering a Universitatii din Pennsylvania, de catre inginerii Presper Eckert si John W. Mauchly, ajutati de John von Neumann, fiind terminat în 1945. Era un prototip cu dimensiuni care astazi ne par gigantice pentru o masina de calcul: 17480 de tuburi electronice, 70000 rezistoare, 10000 condensatori, 6000 comutatoare, greutate de 30 tone, suprafata de 30 x 20 picioare, putere instalata de 140 kW. Avea o arhitectura construita în jurul unui acumulator care lucra la 100 kHz, putea stoca 20 de numere lungi de 10 cifre reprezentate zecimal, iar ca dispozitive de intrare-iesire utiliza cititoare si perforatoare de cartele. Ca o curiozitate, datorita celor 20 de circuite sumatoare care operau în paralel, ENIAC poate fi considerat si primul sistem cu procesare paralela.
Programarea lui era foarte laborioasa, facându-se manual, prin actionarea unor comutatoare si modificarea unor legaturi pe un panou. De altfel, chiar Mauchly, care introduce temenul de "programare" într-un articol dedicat calculului electronic si publicat în 1942, se limiteaza la aceste operatii primitive, acceptiunea moderna a cuvântului "program" fiind stabilita mai târziu, în 1946, la consfatuirile de vara de la Moore School. Deoarece nu putea sa execute instructiuni conditionale ( de tip IF.THEN sau REPEAT.UNTIL) si deci nu putea sa ia decizii pe baza rezultatelor calculelor pe care le efectua - trasatura fundamentala a tuturor calculatoarelor actuale - ENIAC nu poate fi introdus în aceasta categorie, fiind considerat, ca si predecesorul sau ABC, mai mult o masina de calcul destul de sofisticata.
Eckert si Mauchly parasesc Moore School si înfiinteaza propria lor companie - Electronic Control Corporation - unde elaboreaza proiectul primului calculator universal automat (UNIVAC Universal Automatic Computer). Cu toate ca vor pierde întâietatea implementarii în favoarea celor de la compania Remington-Rand, UNIVAC va deveni mai târziu primul calculator cu succes comercial din SUA si va fi achizitionat de US Census Bureau pentru a înlocui echipamentele IBM mai vechi.
John von Neumann a participat la constructia ENIAC - ului. Sesizând necesitatea pastrarii programului de calcul alaturi de datele ce vor fi procesate, el propune o îmbunatatire imediata a arhitecturii ENIAC, constând dintr-un suport comun de stocare de tip read/write, organizat în locatii adresabile si numit memoria de lucru. Instructiunile programului astfel stocat vor fi executate secvential. Primul calculator cu program memorat este EDVAC (Electronic Discret Variabile Calculator). De fapt, se poate vorbi despre trei variante ale acestui calculator: cel proiectat de von Neumann, cel proiectat de echipa sa initiala si cel care a fost pâna la urma construit la Moore School în 1949.
Von Neumann si echipa sa parasesc Moore School si se stabilesc la Institute for Advanced Studies al Universitatii Princeton, unde construiesc, începând cu 1947, masinile IAS, noi modele conceptuale de calculatoare bazate pe arhitectura EDVAC. Aceste arhitecturi, cunoscute sub numele "von Neumann", stau la baza majoritatii sistemelor de calcul construite pâna astazi
Unul din cele mai importante centre pentru dezvoltarea calculatoarelor a fost în anii '40 Manchester University din Anglia. Aici a fost inventata de catre F. C. Williams un nou mod de stocare al datelor binare, utilizând un tub catodic (CRT). În 1948, T. Kilburn transforma memoria lui Williams într-un prototip de calculator numit Manchester Baby. Acesta poate revendica astazi si el întâietatea ca prim calculator cu program memorat. Tot în Anglia, dar de data asta la Cambridge University, Maurice V. Wilkes construieste în 1949 EDSAC Electronic Delay Storage Automatic Calculator), un sistem asemanator cu IAS.
Nu toata lumea aprecia
însa în
Rezultatul colaborarii între Manchester University si Ferranti Ltd. va fi calculatorul practic Ferranti Mark I, urmat de modelul Ferranti Mercury, care utilizeaza în premiera memoria pe toruri de ferita (patentata în 1949 la Harvard University de catre An Wang, si folosita ulterior la primul calculator destinat procesarii informatiilor în timp real - modelul Whirlwind produs în 1953 la MIT pentru US Air Force). În anii 60, utilizarea acestui tip de memorie va fi generalizata. Punctul culminant al fructuoasei colaborari între Manchester University si Ferranti va fi în 1962 calculatorul Atlas, care implementa în premiera conceptul de memorie virtuala si era la ora aceea cel mai puternic din lume.
De obicei într-o istorie a calculatoarelor realizarile sovieticilor sunt ignorate cu desavârsire. Este totusi bine de stiut ca cercetarile acestora în domeniul tehnicii de calcul electronice au demarat imediat dupa sfârsitul celui de-al doilea razboi mondial. S. A. Lebedev si echipa sa vor construi un prim calculator între 1949 - 1950, pe care îl vor numi MESM. El va fi urmat de o varianta îmbunatatita, numita BESM. Activitatea lui Lebedev nu va fi însa incurajata de catre autoritatile sovietice de la inceputul anilor ' 0, care o considerau mult prea costisitoare. În plus, multi savanti rusi considerau ca niciodata calculatoarele numerice nu vor fi în stare sa faca o concurenta reala celor analogice.
Istoria primei generatii de calculatoare electronice este strâns legata de realizarile companiei IBM. Pâna în 1940, IBM producea mai ales perforatoare de cartele sau masini de scris electrice. Dupa prime contacte cu Aiken, la Universitatea Harvard, presedintele T. J. Watson Sr. dispune constructia în 1948 a masinii de calculat SSEC (Selective Sequence Control Computer), care nu era însa un calculator cu program memorat.
Presedintele Watson nu agrea însa prea tare noile dispozitive de calculat, pe care le considera ca pot periclita afacerile societatii. Va fi convins însa de contrariu chiar de catre fiul sau, care înlocuieste în 1953 modelul electromecanic Mark IV (urmas a lui Mark I) cu calculatorul comercial IBM 701 EPDM un concurent adevarat al UNIVAC - ului. Concernul IBM a mai lansat modelele 704 si 709 (1958), acesta din urma fiind ultimul calculator cu tuburi electronice. În 1955, IBM 704 este primul mainframe cu unitate de calcul în virgula flotanta. El a fost proiectat în mare parte de catre Gene Amdahl, cel care îsi va înfiinta mai târziu propria companie si va construi supercomputerele anilor 1990.
Pentru ca seria 700 nu lucra cu echipamentele de procesare bazate pe cartele perforate, IBM creaza modelul 650 EPDM, compatibil cu vechile masini de calcul din seria 600 si deci atragator si pentru utilizatorii traditionali ai produselor sale. De altfel, conceptul de compatibilitate va reprezenta de acum înainte o constanta a preocuparilor concernului, ori de câte ori va lansa un produs nou. Având un pret de cost scazut, IBM 650 a fost cumparat de universitatile americane, care reusesc astfel sa puna în acesti ani bazele unei prime comunitati de utilizatori ai calculatoarelor.
Succesul seriei 700 va asigura pozitia dominanta a IBM-ului pe piata calculatoarelor mari (numite si mainframes) pentru cel putin un deceniu. De altfel, dupa 1960 concernul devine cel mai important fabricant de tehnica de calcul din lume, pozitie pe care o va pastra pâna astazi.
Calculatoarele cu tranzistori - generatia 2
Tuburile cu vid erau voluminoase, necesitau consumuri energetice mari si disipau cantitati uriase de caldura. De aceea, continuarea erei calculatoarelor electronice va fi conditionata - între 1958 si 1964 - de utilizarea tranzistorilor
Inventat în 1948 si oferind aceleasi functii de baza ca si tubul cu vid, dar la tensiuni si curenti mult mai mici, tranzistorului nu i s-a prezis un viitor deosebit, asa cum s-a întâmplat la început si cu alte descoperiri ale stiintei. Chiar electronistii considerau ca el nu poate asigura puterea electrica a unui tub si astfel comportamentul de comutator electronic al tranzistorului (determinat de jonctiunea între emitor si colector stabilita într-un material semiconductor si comandata de tensiunea aplicata pe baza) nu poate fi valorificat.
Evident ca avantajele tranzistorului îl vor inpune însa rapid. Neavând filament, el nu mai disipa cantitati mari de caldura. Daca un tub electronic avea un inch diametru si trei inch lungime, gabaritul tranzistorului se reduce la numai Ľ inch diametru si 3/16 inch lungime. Tranzistorul nu este mult mai mic ci si mai fiabil si mai ieftin decât tubul electronic. Apelând din nou la o comparatie, un calculator modern construit cu tranzistori ce ocupa doar câteva etaje din Empire State Building.
Primul calculator experimental cu tranzitori a fost TX-0, construit la MIT în 1955, cu scopul de a testa conceptele unui nou calculator, TX-2. El nu va mai fi niciodata realizat, însa Ken Olsen, unul dintre membrii echipei care a lucrat la prototipuri, înfiinteaza compania Digital Equipment Corporation (DEC), unde fabrica pentru început module logice tranzistorizate. Aceste placi cu circuit imprimat numite Flip Chips puteau fi utilizate la constructia unor structuri logice specializate de control. Astfel a fost realizat primul calculator construit de DEC, masina pe 18 biti PDP1, bazata pe arhitectura TX-0. La Computer Museum din Boston poate fi admirat acest model, pe care ruleaza Space War - primul joc pe calculator din lume.
În urmatorii ani sunt lansate pe piata noi versiuni îmbunatatite, care în cele din urma vor forma familia de calculatoare PDP (cu o succesiune de modele culminând cu PDP15). În paralel, DEC construieste alte doua familii de sisteme - una cu dimensiunea cuvântului de 12 biti (având ca model reprezentativ PDP8, desemnat ca fiind primul minicalculator si vândut în 1967 cu circa 9000 de dolari) si alta pe 36 de biti (modelul PDP10 fiind bine cunoscut ca un mainframe lucrând în timp partajat).
Concernul IBM construieste la rândul sau primul calculator cu tranzistori transformând modelul 709 în (sau709 I). Urmasul Imediat aduce ca noutate modulul specializat pentru calcule în virgula flotanta, destinat aplicatiilor stiintifice. Pentru afaceri, IBM construieste un mic sistem (numit 1401) care utilizeaza aritmetica BCD (binar codificat zecimal). Acesta este considerat precursorul majoritatii calculatoarelor de buzunar
Compania CDC (Control Data Corporation) îsi face debutul pe piata calculatoarelor transformând în produs comercial un model destinat aplicatiilor militare. CDC impune pe piata doua familii de sisteme: seria 3000, cu masini pe 24 de biti si seria 6000 cu masini pe 60 de biti. Modelul 6600, proiectat de Seymour Cray, este considerat a fi unul dintre primele supercalculatoare moderne.
Circutele integrate generatia 3
Descoperirea modalitatii de obtinere a tranzistorilor prin combinarea a doua materiale semiconductoare pe un suport de siliciu, va permite ca un întreg panou cu logica cablata al unui calculator sa fie înlocuit cu un simplu circuit, având o suprafata de câtiva centimetri patrati, un consum energetic foarte redus si o fiabilitate remarcabila. Functie de numarul de componente electronice elmentare pe care le înglobau functional, circuitele integrate s-au realizat folosind pe rând tehnologiile SSI (Small Scale Integration - integrare pe scara redusa), MSI (Medium Scale Integration - integrare pe scara larga) sau VLSI (Very Large Scale Integration - integrare pe scara foarte larga).
Având la dispozitie aceasta noua descoperire a electronicii, trecerea de la mainframe la microprocesor nu se va face direct, ci trecând prin etapa minicalculatoarelor, definite ca fiind "sisteme de calcul de uz general, cu lungimea cuvântului cuprinsa între 8 si 32 de biti, având cel putin 4096 cuvinte de memorie si un pret sub 20000 de dolari". Acestea vor deveni accesibile pentru utilizarea în fiecare departament al unei companii sau în numeroase aplicatii industriale de conducere a proceselor în timp real.
Unul din primele minicalculatoare a fost modelul PDP 5, introdus de DEC în 1964. Cu toate ca si modelele PDP10 sau 15 includ în structura lor si circuite integrate, prima masina DEC integral construita cu chip-uri de siliciu este PDP 8I (1966). Aceasta mostenea calitatile celui mai de succes calculator construit de firma pâna atunci, dar si unele limitari arhitecturale ale predecesorului sau. De aceea, se construieste rapid (în 1969) PDP 11, un succesor al modelelor PDP 8 si PDP15, capabil sa lucreze pe 16 biti si sa adreseze direct 256 KB de memorie, utilizabil mai ales pentru aplicatii de procesare a textelor. Ca si IBM360, PDP11 va fi parintele unei familii de calculatoare, destul de diversificata (spre exemplu, modelul era destinat controlului automat, pe când modelul era un superminicalculator). Totusi, datorita arhitecturii sale robuste, înca multi ani va supravietui si modelul PDP8, chiar si sub forma unui singur chip (microprocesorul Intersil 6100
Succesorul lui PDP 11 si PDP 10 (numit si DECSystem 20) a fost VAX Virtual Arhitecture Extension), o masina pe 32 biti care înglobeaza experienta celor doua familii anterioare. Prima versiune, VAX - 11/780 (1978), emula un PDP11 printr-o unitate de comanda microprogramata.
Cu timpul, calculatoarele VAX, proiectate ca mini-mainframe, devin principala linie de productie DEC din anii 80, fiind lansate pe piata cu succes diferite versiuni, de la statii de lucru la sisteme multiprocesor. Ele vor fi înlocuite ceva mai târziu cu procesoarele RISC pe 64 de biti Alpha. Nu numai DEC a fabricat însa minicalculatoare. De exemplu, Data General a produs familia Nova, iar Hewlett - Packard, seria HP2100
IBM a înlocuit în 1965 masinile 1401 si 7090 cu familia arhitecturala 360, continând masini compatibile software cu diferite nivele de complexitate, performante si costuri, destinate atât aplicatiilor stiintifice, cât si afacerilor. Cel mai simplu membru - IBM 360/20 - avea numai memorie interna pe toruri de ferita cu o capacitate de 8 kilocuvinte, pe când modelul avea memorie secundara de mare capacitate, unitate de calcul în virgula flotanta rapida si numeroase periferice atasate. Acesta din urma era de 300 de ori mai rapid decât primul. Calculatoarele aveau acelasi set de instructiuni si - începând cu modelul 360/40 - si acelasi sistem de operare - OS/360. Modelul 360/85 va fi primul calculator cu memorie cache. Un alt element de noutate al acestor masini este virtualitatea lor, adica acea capacitate a sistemului de operare de a emula pentru fiecare utilizator câte o masina virtuala, exclusiv la dispozitia acestuia. Seria 360 va fi succedata de seriile , etc, toate având aceleasi caracteristici arhitecturale de baza.
Concernul IBM nu se va limita însa numai la constructia de calculatoare. La sfârsitul anilor 1970 vor fi lansate pe piata cu mare succes unitatile de floppy disk, casele de marcat computerizate pentru supermarket - uri si masinile automate de numarat bancnote.
Primul supercalculator stiintific este considerat TIASC (Texas Instruments Advanced Scientific Computer), o masina complexa, cu multe caracteristici interesante. Pentru a asigura o viteza mare de procesare pentru vectori lungi de date, TIASC utilizeaza tehnica pipeline de prelucrare a instructiunilor, adresarea întretesuta a memoriei si renunta complet la întreruperi (pentru a reduce la maxim ciclul instructiunilor). El a fost utilizat pentru aplicatii speciale, cum ar fi de exemplu analiza datelor seismice pentru detectarea zacamintelor de petrol.
Istoria tehnicii de calcul retine si alte realizari remarcabile ale acestei epoci. Astfel, CDC-Cyber, o versiune integrata a supercalculatoarelor 6600 si 7600, încearca sa devina o masina stiintifica pornind de la un model comercial uzual, la care se adauga instructiuni pentru procesarea sirurilor de caractere si pentru calcul cu numere BCD. Nefiind o reusita deplina, compania CDC continua constructia calculatoarelor gigant cu modelul Star - 100, care însa nu se va vinde. Acest lucru îl determina pe deja celebrul Seymour Cray sa-si înfiinteze propria sa companie de supercomputere.
La Universitatea din Ilinois a fost dezvoltat modelul ILLIAC. Versiunea ILLIAC III dispunea de un procesor paralel si era o masina destinata analizei fotografiilor obtinute într-o camera nucleara. Modelul ILLIAC IV a contribuit la punerea la punct a unei tehnologii pentru obtinerea chip-urilor de memorie cu semiconductori, asemanatoare cu cea a procesoarelor. Rezultatul cel mai important al acestor cercetari este însa indiscutabil primul calculator comercial masiv paralel, modelul STARAN, contruit în 1967, care continea 8192 procesoare cuplate între ele într-o retea sofisticata de comunicatie. O versiune moderna a acestuia este utilizata si astazi pentru sistemele radar ale avioanelor militare.
Microprocesoarele - generatia 4
Tehnologia de integrare pe scara larga (VLSI) a permis înglobarea într-un singur chip a zeci sau sute de mii de componente electronice discrete. Daca în tehnologia LSI un calculator putea fi construit modular, fiecare modul fiind reprezentat de catre un singur circuit integrat, odata cu noile chip-uri VLSI apare posibilitatea de a integra într-unul din acestea chiar întreaga unitate centrala a calculatorului. Apare astfel microprocesorul, descoperirea care poate fi comparata, ca efecte la scara istoriei, cu inventia tiparului sau utilizarea fortei aburului.
Cum în scurt timp procedura de proiectare a circuitelor VLSI devine o tehnica normalizata, iar accesul la instrumentele de proiectare asistata (CAD) este asigurat, obtinerea unui nou circuit integrat (inclusiv simularea si testarea sa functionala) devine posibila cu investitii foarte mici, chiar sub nivelul de 10000 de dolari.
Intel Corporation a fost fondata în 1969 de catre Bob Noyce si Gordon Moore, cu scopul de a produce memorii semiconductoare pentru mainframes. Aici va fi realizat în 1971, de catre Hoff si Fredrico Fagin (cu o contributie esentiala a lui Stanley Mazor), primul microprocesor pe 4 biti - Intel 4004, care era destinat sa constituie baza unui calculator de birou si integra circa 2300 tranzistori.
În anul urmator este produs Intel 8008, microprocesor pe 8 biti, destinat controlului unui terminal. Din fericire pentru viitorul lui Intel, fabricantul terminalului renunta la utilizarea circuitului 8008 si compania este obligata sa-i gaseasca alta destinatie. Intel obtine în scurt timp doua noi variante îmbunatatite de microprocesoare: modelele pe 8 biti (1974) si
Motorola 6800 va fi primul microprocesor pe 8 biti ai companiei omonime, comparabil ca performante cu 8080, dar având cu totul alta arhitectura. Acesta va declansa o competitie acerba pentru întâietatea pe piata, care pentru o buna perioada de timp va diviza lumea informatica în doua emisfere: Motorola si Intel.
Companii mai mici se vor lansa si ele pe acest câmp concurential. Faggin va parasi Intel si va fonda în 1974, împreuna cu Ralph Ungerman, compania Zilog. Aici va construi si lansa în 1976 modelul Z80 perfect compatibil cu 8080, dar cu mai multe registre si un set îmbogatit de instructiuni. Nu de acelasi succes se vor bucura însa modelele ulterioare Z8000 si Z8. În mod similar, Chuck Peddle va parasi Motorola si va construi la MOS Technology modelul , care însa nu va mai fi compatibil cu 6800.
Perioada microprocesoarelor pe 8 biti (1975-1980) este considerata epoca de aur a acestora. Acum a sosit momentul pentru lansarea pe piata a calculatorului personal personal computer PC). Ieftina, cu un gabarit redus si un pret accesibil, acesta ultima unealta moderna a secolului XX va deveni indispensabila pe biroul orcarui om care doreste sa tina pasul cu progresul.
La sase luni dupa introducerea lui Intel 8008, în Franta se va construi un prim calculator, denumit Micral. El va fi repede uitat, pentru ca in Statele Unite nu a avut nici un fel de succes, dar va consacra termenul de microcalculator. Alt calculator bazat pe 8008 a fost Scelbi-8H, comercializat cu numai 565 de dolari. Totusi, primul calculator personal este considerat Altair 8800, construit în 1975 de catre Ed Roberts, proprietarul unei companii din Albuquerque, numita MITS. Unul dintre primii programatori care elaboreaza soft pentru acest PC este tânarul Bil Gates, care creaza în iulie 1975 un interpretor de Basic. Foarte curând vor aparea pe piata si vor avea un mare succes alte PC - uri, bazate pe unul din microprocesoarele pe 8 biti 8080, Z80, 6800 sau 6502: SWTP 6800 Apple I si II KIM - 1 Commodore PER Sinclair ZX80 VIC - 20
Tot compania Intel va fi cea care lanseaza cu succes pe piata primele modele viabile de microprocesoare pe 16 biti - si extensiile sale si . În paralel este utilizata si varianta hibrida , care de fapt era un 8086 cu magistrala externa de 8 biti.
Primul model Intel pe 32 de biti este . Succesorul sau, Intel 80486, aduce ca noutati unitatea distincta de calcul cu virgula flotanta si suportul pentru memorie virtuala. Despre familia de procesoare Intel se poate spune ca nu este arhitectural consistenta: în ceea ce priveste setul de instructiuni, compatibilitatea ascendenta este asigurata de la 8086 în sus, însa compatibilitatea de sus în jos nu mai opereaza. Aceasta proprietate asigura evident portabilitare programelor, în sensul posibilitatii transferarii executiei lor de pe o masina mai veche pe oricare alta de generatiile succesoare.
La un an de la lansarea lui Intel 8080, Motorola iese pe piata cu un competitor direct, modelul pe 8 biti . Cu toate ca astazi este general recunoscut ca Motorola 6800 avea o arhitectura superioara lui Intel 8080, întârzierea aparitiei sale pe piata si o oarecare dificultate în utilizare îl face sa ramâna în umbra acestuia din urma.
De mai mult succes s-a bucurat în epoca procesorul , construit de o parte din fostii membri ai echipei Motorola, care au parasit-o si au înfiintat MOS Technology. Acest circuit s-a impus prin utilizarea sa la calculatoarele pe o singura placa (SBC-single board computer), de tipul popularelor în acea vreme KIM si SYM
Aceste progrese au permis multor ingineri sau studenti sa învete sa foloseasca microprocesoarele si sa încerce implementarea lor în noi aplicatii. Printre ei se numarau si tinerii Steven Jobs si Steven Wozniak care - având la dispozitie un garaj si câteva mii de dolari împrumutati - pun pe picioare compania care construieste Apple II primul calculator personal bazat pe microprocesorul 6502.
Motorola încearca sa devina lider al competitiei de-abia începuta, producând modelul pe 32 biti , însa Intel câstiga din nou, pentru ca modelul pe 16 biti 8086 a fost promovat mai bine pe piata si în plus era total compatibil ca soft cu mai vârstnicul 8080. Cu o arhitectura interna într-adevar pe 32 de biti, Motorola 68000 lucra însa extern de 16 biti si era complet incompatibil cu 6800.
Dupa înca un esec cu versiunea , pentru care nu s-a putut scrie un sistem de operare, Motorola va recupera rapid din terenul pierdut în competitia cu Intel. Astfel, modelul - care lucra si extern pe 32 de biti - ofera suport pentru memorie virtuala printr-un coprocesor. Motorola înglobeaza acest coprocesor în circuitul prncipal si ofera memorie cache, iar Motorola dezvolta performantele lui 68030.
Firma DEC se lanseaza mai lent si mai putin spectaculos în competitia microprocesoarelor. Ea ofera o licenta corporatiei Intersil, care va produce varianta VLSI a procesorului PDP 8, numita . Similar, Western Digital va implementa în trei chip-uri modelul PDP11 si va numi acest sistem PDP-11/03. mai târziu DEC dezvolta propriul sau microprocesor, care a echipat produselel VAXstation, fiind o implementare a masinii VAX, sub numele de MicroVAX
Toate microprocesoarele mentionate pâna acum aveau arhitecturi de tip CISC Complex Instruction Set Computer - calculator cu set complex de instructiuni). Necesitatea asigurarii unor viteze de lucru cât mai mari, cât si cerintele de simplificare a setului de instructiuni si a logicii aferente acestuia, determina introducerea unele modificari arhitecturale remarcabile, care duc la aparitia microprocesoarelor RISC Reduced Instruction Set Computer - calculator cu set redus de instructiuni).
Reducerea setului de instructiuni duce la marirea dimensiunii codului de program, pentru ca unele instructiuni uzuale în arhitecturile CISC vor trebui emulate acum prin secvente consistente de instructiuni simple, dar - per global - creste viteza de procesare a unitatii centrale. Un prim astfel de microprocesor a fost SPARC, construit la Berkeley UC. La putin timp apare MIPS R2000, construit la Universitatea Stanford, iar IBM propune modelul sau RISC 2000. Astazi exista serioase controverse privind întâietatea celui care a stabilit conceptul RISC. În realitate, acest concept a existat de la stabilirea primei arhitecturi de calculator, iar în acesti ani nu s-a facut decât trecerea de la acea idee la implementarea ei.
Performantele procesoarelor RISC devin notabile. Masina pe 64 de biti Alpha, fabricata de DEC, ajunge sa execute câteva sute de milioane de instructiuni pe secunda (MIPS). Între timp, Intel întra pe piata arhitecturilor RISC cu i 860, care initial a fost un proiect secret ce urmarea integrarea unor parti din arhitectura HP în viitoarele procesoare Intel.
În categoria arhitecturilor RISC reusite pot fi incluse si circuitele Texas Instruments din seria TMS320 Cxx, care de fapt sunt DSP-uri (Digital Signal Processor - procesoare digitale de semnale), utilizate pâna si astazi într-o gama larga de aplicatii: telefonia digitala, modemurile, echipamente pentru control automat industrial si altele.
Procesoarele paralele - generatia 5
Am mentionat deja primul procesor masiv palalel comercial de succes, modelul Staran, vândut uneori si sub numele de ASPRO. Un alt procesor paralel celebru a fost MPP, construit de NASA pentru a prelucra uriasele cantitati de date furnizate de catre satelitii circumterestri. Acesta continea de fapt 16384 procesoare elementare pe un bit, dispuse într-o retea. De o proiectare similara a beneficiat si modelul AMT DAP
Un produs care a intrat înca de la lansarea pe piata în concurenta cu circuitele DSP Texas Instruments a fost transputerul. Acesta reprezinta o celula de procesare paralela, dispunând de mai multe canale de comunicatie ce pot fi configurate în diferite topologii de retea. O astfel de solutie a fost Connection Machine, o dezvoltare a procesorului paralel MPP care dispunea de o retea suplimentara de comunicatie, destinata rularii datelor, cât si de suport software pentru procesoare virtuale, ceea ce simplifica programarea aplicatiilor care manevreaza volume foarte mari de date.
Bazându-se pe unele rezultate obtinute de CalTech, Intel proiecteaza un multiprocesor ce consta într-o retea de pâna la maxim 128 de procesoare (fie 80286, 386 sau i860). Similar, pornind de la cercetari efectuate la Carnegie Mellon, Intel construieste procesorul sistolic, numit Warp, cât si masina Paragon, care combina facilitatile de comunicatie ale lui Warp cu puterea de calcul a lui i860.
1.4. Tendinte în dezvoltarea tehnologica a calculatoarelor
Efectuarea unor prognoze privind evolutia dispozitivelor de calculat este supusa riscului de a fi contrazisa în doar câtiva ani, datorita dinamicii remarcabile a domeniului. Vom încerca totusi sa extragem câteva tendinte privind dezvoltarea tehnologiilor de calculatoare.
Sa remarcam pentru început faptul ca evolutia tehnologiei de calcul este putin diferita fata de tranzitia standard a "generatiilor". Astfel, putem considera ca prima tehnologie de calcul, al carei debut coincide cu epoca abacului si a cifrelor scrise, urmarea sa ofere ajutor memoriei umane în efectuarea prin operatii simple cu numere. Avantajul consta în faptul ca operatorul se putea concentra asupra operatiilor si nu asupra numerele cu care acestea lucrau. Se asigura astfel o precizie de calcul crescuta, iar numerele manipulate puteau fi mult mai mari. Aceste caracteristici tehnologice s-au mentinut câteva mii de ani.
Urmatoarea era tehnologica, al carei debut poate fi identificat cu constructia primelor masini mecanice de calculat, introduce sistemele care au ele însele abilitati aritmetice, astfel încât operatorul este degrevat de aceste sarcini si se poate dedica definitiv executiei unui calcul global mai complex. Perioada aritmeticii mecanizate a fost uzuala câteva sute de ani.
A treia etapa tehnologica debuteaza odata cu masina diferentiala a lui Babbage. În aceasta etapa câstiga în importanta algoritmii si tehnicile de elaborare ale acestora. Ca urmare a stocarii în memoria masinii atât a datelor si rezultatelor, cât si a algoritmului, sunt eliminate erorile umane care apareau în urmarirea pasilor de calcul, la introducerea datelor sau la extragerea rezultatelor. Calculele sunt acum complet separate de numere, iar algoritmica se gaseste cu acestea în acelasi raport în care se gaseste - de exemplu - algebra cu adunarea si înmultirea. Operatorul este complet liber sa se dedice numai proiectarii unor algoritmi mai complecsi, inclusiv prin utilizarea cantitatilor simbolice.
Calcul simbolic permite unei masini sa înregistreze si sa repete procese mentale umane formalizate de catre operator. Odata ce primul calculator automat fezabil a fost proiectat (ENIAC), s-a simtit imediat nevoia ca el sa poata fi programat operând cu cantitati simbolice (EDVAC). Aceasta a patra etapa a dezvoltarii tehnologice este cruciala pentru evolutia tehnicii de calcul: se atinge acum nivelul maxim de precizie a calculelor, ce poate fi obtinut de o masina care nu dispune de capacitatea creatoare a mintii umane. Astfel, un set de instructiuni elaborat de catre om va fi executat întocmai de catre calculator, orice eroare care va aparea datorandu-se în exclusivitate acestor instructiuni.
Ca o prognoza, se poate spune cu destula siguranta ca evolutiile tehnologice viitoare vor avea ca principal obiectiv crearea unor calculatoare dotate cu abilitatea de a-si crea ele însele programe, de a se autoinstrui, deci de a avea inteligenta artificiala Rezultatele obtinute pâna acum cu unele dintre aceste tehnici, cum ar fi sistemele expert, logica fuzzy, retelele neurale, algoritmii genetici sau teoria haosului, sunt promitatoare si îndreptatesc sperantele optimistilor, care asteapta sa aiba în curând acces la masina dotata chiar cu viata aritificiala.
În ceea ce priveste tendintele de evolutie ale viitoarelor arhitecturi de calculatoare, s-ar putea crede ca suntem deja pe cale de a trece la o noua generatie - cea a tratamentului paralel al datelor. Realitatea este însa putin diferita. Constructia procesoarelor masiv paralele actuale este oarecum asemanatoare cu încercarile de la sfârsitul secolului trecut de a creste puterea automobilelelor prin montarea motoarele cu abur pe ele. Astazi, paralelismul este utilizat într-o maniera conservativa, pentru ca se aleg solutii prin care procesoare traditionale sunt dotate cu unitati de calcul multiple, ce pot functiona simultan. Un exemplu poate fi procesorul Pentium, care - în unele cazuri - poate efectua simultan doua operatii aritmetice.
Tratamentul paralel poate fi îmbunatatit prin includerea în acelasi circuit a mai multor calculatoare specializate. Este ceea ce propune Intel, care are în vedere constructia unui microprocesor care sa aiba atât unitati de prelucrare universale, capabile sa execute secvente normale de instructiuni, cât si câteva unitati specializate, efectuând eventual prelucrari pentru interfata grafica sau pentru procesarea unor date de intrare speciale, de tip multimedia. Un astfel de procesor paralel eterogen va fi într-un evident contrast cu cele actuale - omogene - construite din 10 pâna la 1000 de unitati de calcul identice.
Viabilitatea arhitecturilor paralele va creste probabil si pe masura ce tehnologiile vor avansa astfel încât costurile acestora sa devina competitive cu cele ale procesoarelor traditionale. Ca un argument, mentionam ca masinile cu arhitecturi paralele omogene destinate aplicatiilor stiintifice sau ingineresti din generatia curenta, având putere de calcul cu unul sau doua ordine de marime mai ridicate decât la uniprocesoare, sunt cu doua sau trei ordine de marime mai scumpe ca acestea. Ţinând cont si de faptul ca tehnologia cu care sunt realizate masinile paralele este aproape cu o generatie în urma (datorita timpilor lungi necesari proiectarii si implementarii), avem suficiente argumente pentru a concluziona ca raportul cost/performanta este astazi net favorabil sistemelor uniprocesor.
În consecinta, potentialii cumparatori de calculatoare prefera ori sa mai astepte câtiva ani, pâna când sistemele uniprocesor vor oferi performante similare celor multiprocesor, fara însa a pretinde cheltuieli software sau hardware suplimentare, ori sa utilizeze sisteme cu un paralelelism limitat (multiprocesoare pe scara redusa sau configuratii în retea), ori - în fine - sa utilizeze acceleratori specializati (procesoare vectoriale sau matriceale, de imagine sau DSP-uri).
1.5. Tipuri constructive de calculatoare
Industria calculatoarelor poate fi divizata în trei sectoare: productia de echipamente (hardware), elaborarea pachetelor de programe (software) si serviciile de întretinere si depanare. Tendinta actuala este de specializare a firmelor într-una din aceste directii. Ca si în domeniul automobilelor - de exemplu - evolutiile pietei sunt controlate de câteva mari concerne, ceilalti producatori încercând pe de-o parte sa faca fata concurentei cu acestia, iar pe de alta, sa pastreze un grad înalt de compatibilitate cu produsele celor "mari".
În domeniul constructorilor, circa 100 de firme oferă astăzi întreaga gama de calculatoare si echipamente periferice. Este de remarcat proliferarea deosebita a societatilor care realizeaza asamblarea calculatoarelor mai ales în aria geografica sud-est asiatica. Productia de software este monoplizata de mari companii ca Microsoft Corporation, Lotus Developement Corp., Borland International, Novell Inc. Ceilalti producatori prefera ori colaborari cu acestea ori lansarea unor produse care sa fie integrate în sistemele elaborate de marile firme. O problema actuala o reprezinta combaterea pirateriei software, care consta în distribuirea sau utilizarea fara licenta a unor pachete de programe.
Serviciile cuprind atât activitatile clasice de întretinere sau depanare soft si hard, cât si oferte specifice - cum ar fi asigurarea accesului la seviciile Internet sau la retelele publice de date, furnizarea de servicii educationale si reconversie profesionala, initiere în utilizarea pachetelor software etc.
În zilele noastre se produce o gamă largă de calculatoare, care - din punct de vedere al puterii de calcul - pot fi clasificate după cum urmează:
a. Microcalculatoare sunt sisteme a căror unitate centrala este un microprocesor. Deoarece acestea pot fi utilizate cu usurinta acasa, la scoala sau la serviciu ca orice alta "unealtă" de lucru, ele se mai numesc PC - uri sau calculatoare personale (personal computers). Ele sunt destinate unui larg evantai de aplicatii, printre care cele financiar-contabile, de proiectare constructiva si tehnologica, activitătile de birou, învatamântul si cercetarea, dar si o gamă variată de jocuri, care fac deliciul copiilor, al tinerilor si - am putea spune - nu numai al lor. Nu putem omite raspândirea deosebita în zilele noastre a retelelor de calculatoare interconectate între ele, care contin în principal ca noduri de acces PC-urile si sunt raspândite pe arii geografice diverse, de la dimensiunea unei clădiri pâna la cea a întregului mapamond;
b. Minicalculatoarele sunt calculatoare de dimensiuni si putere medie. Ele reprezintă modele intermediare între PC-uri si mainframes (calculatoarele mari) si sunt destinate mai ales aplicatiilor de conducere a proceselor industriale, culegerii distribuite a datelor sau ca nivele ierarhice superioare în sistemele informatice ale companiilor de anvergura mijlocie;
c. Calculatoarele mari, denumite si mainframes, sunt sisteme puternice destinate prelucrarii unor volume mari de date, în cadrul unor aplicatii complexe. Ele pot functiona 24 de ore din 24 si sunt cumparate mai ales de catre corporatiile importante, banci, societati de transport, institutii guvernamentale etc.
d. Supercalculatoarele reprezintă cele mai puternice echipamente de calcul. La ora actuală sunt constructii unicat, foarte scumpe, destinate unor aplicatii speciale, cum ar fi cele de cercetare complexă (de exemplu, în domeniul fizicii atomice si nucleare), dirijarea zborurilor cosmice, prelucrarea de înalta calitate a imaginilor si nu în ultimul rând - cercetarilor militare. Pentru a putea face o comparatie, mentionam ca puterea de calcul a supersistemului american Cray 2 este echivalentă cu cea a tuturor PC-urilor din Europa, puse la un loc.
Evolutia arhitecturilor de calculatoare este strâns legata si chiar impusa de progresele din unele domenii conexe: tehnologiile de realizare ale componentelor electronice, limbajele de programare de nivel înalt, sistemele de operare, programele de aplicatii, tehnicile de proiectare, masurare si evaluare, creativitatea s. a. În ultimii ani, parametrii masinilor de calcul se modifica într-un ritm ametitor, determinat de spectaculoasele progrese ale tehnologiei. Componentele vizate în special de aceste progrese tehnologice sunt procesoarele, memoria interna si discurile.
Dinamica performantelor calculatoarelor poate fi reprezentata prin mai multi indicatori, însa oricare dintre acestia poate fi edificator, chiar luat de unul singur.
Astfel, daca rata anuala a cresterii capacitatii logice a unui microprocesor are valoarea de 30%, iar frecventa ceasului intern creste anual cu circa 20%, gradul de integrare a depasit în anul 2000 pragul celor 100 milioane de componente elementare într-un singur circuit (pe când - spre exemplu - Intel 4004 nu îngloba în 1971 decât ceva mai mult de 1000 de componente!).
Nici evolutia memoriilor nu ramâne mai prejos: în timp ce capacitatea memoriilor DRAM creste de circa 4 ori în trei ani, iar rata de transfer a acestora se îmbunatateste cu 10% pe an, costul per bit scade anual cu aproximativ 25%. si memoriile externe evolueaza rapid, capacitatea discurilor hard marindu-se cu 60% pe an, iar volumul de date disponibile dublându-se la fiecare 9 luni.
În perioada 1982-1995 performantele procesoarelor, masurate prin indicatori SPEC, s-au dublat la fiecare 1.5 ani. Astfel, generatia 1995 a microprocesoarelor familiei Intel x86 era de aproape 200 de ori mai performanta decât cea a anilor '80, pe când un procesor RISC din acelasi an era de 300 de ori mai puternic. În fine, pentru a încheia sirul acestor câteva exemple, sa mai mentionam ca latimea de banda a comunicatiilor din retele se dubleaza anual.
|