Documente Academic
Documente Profesional
Documente Cultură
Portofoliu
Disciplina: Tehnologia informației
~2~
1.Etapele dezvoltarii tehnicii de calcul. Generații de calculatoare
~7~
Daca scopul unui calculator este acela de a rezolva o gamă largă de probleme,
acesta trebuie sa fie capabilă să execute programe scrise în diferite limbaje de
programare, de la Fortran și C, pân la Lisp și Prolog. Singurele componente fizice ale
calculatorului sunt porțile logice și firele. Între aceste componente fizice și limbajele
de nivel înalt, cum ar fi C++, ia naștere astfel, un spațiu deschis, un vid semantic. Din
motive practice, acest vid semantic trebuie s fie invizibil pentru majoritatea
utilizatorilor sistemului de calcul. Abordarea „divide et impera” din programare
presupune împărțirea unei probleme mari în module mai mici și tratarea separată a
fiecrui modul. Fiecare modul îndeplinește o sarcină specifică și aceasta trebuie să știe
doar cum s interacioneze cu celelalte module, pentru a se putea folosi de ele.
Organizarea sistemelor de calcul poate fi abordat într-o manieră similară. Folosind
principiul abstractizării, ne putem imagina sistemul construit dintr-o ierarhie de
nivele, în care fiecare nivel are o funcție specifică existî ca o mașină ipotetic distinct.
Vom folosi denumirea de mașin virtuală pentru a putea reprezenta calculatorul
ipotetic de la fiecare nivel. Fiecare mașină virtuală își execută propriul set de
instruciuni, apelând mașinile de pe nivelurile inferioare pentru îndeplinirea sarcinilor
acestora, atunci când este necesară. Figura 1 prezintă nivelele ierarhice ale unui
calculator, reprezentând mașinile virtuale abstracte. Vezi figura de pe tabla Fig. 1
Nivelele abstracte ale sistemelor de calcul moderne Nivelul șapte, nivelul utilizator,
este alcătuit din aplicații și acesta este nivelul cu care fiecare utilizator este cel mai
familiar. La acest nivel sunt rulate programe, cum ar fi procesoare de texte, programe
grafice, multimedia sau jocuri. Nivelele inferioare sunt aproape invizibile de pe acest
nivel. Nivelul șase, etajul limbajelor de nivel înalt, constă din limbaje cum ar fi C, C+
+, Java, FORTRAN, Lisp, Pascal, Prolog. Aceste limbaje trebuie sa fie „traduse”
(folosind fie un compilator, fie un interpretor) într-un limbaj pe care mașina să îl
poată înțelege. Limbajele compilate sunt „traduse” în limbaj de asamblare și apoi
asamblate în cod mașină (sunt translatate spre urmtorul nivel inferior). Utilizatorul de
pe acest nivel vede foarte puțin din nivelele inferioare. Chiar dacă programatorul
trebuie să cunoască tipurile de date și instrucțiunile disponibile pentru acesta, nu
trebuie să se preocupe de modul în care sunt implementate aceste tipuri și instruciuni.
Nivelul cinci, nivelul limbajului de asamblare, cuprinde un anumit tip de limbaj de
asamblare. După cum a fost menționat anterior, limbajele compilate de nivel superior,
sunt mai întâi translatate în limbaj de asamblare, apoi în cod mașină. Aceasta este o
translație unu la unu, adică o instrucțiune în limbaj de asamblare este translatat în
exact o instruciune în cod mașină. Având nivelele separate, se reduce vidul semantic
dintre limbajele de programare de nivel înaltă și codul mașină, care este un cod binar,
alctuit doar din zero și unu. Nivelul patru, nivelul programelor sistem, funcionează pe
baza instrucțiunilor sistemului de operare. Acest nivel este responsabil de
multiprogramare, protejarea memoriei, Programare și limbaje – Curs 2 7
~8~
sincronizarea proceselor și de alte funcții importante. Adesea, instrucțiunile
translatate din limbaj de programare în cod mașină trec nemodificate prin acest nivel.
Nivelul 3, arhitectura setului de instruciuni sau nivelul mașină, constă din limbajul
mașină recunoscută de către arhitectura particular a sistemului de calcul. Programele
scrise în codul mașină pe un calculator codat hardware pot fi executate direct de către
circuitele electronice, fr a fi necesar interpretarea, translatarea sau compilarea lor.
Nivelul 2, nivelul de control, este locul în care o unitate de control se asigură că
instrucțiunile sunt decodificate și executate în mod corespunztor și că datele sunt
transmise în locul și la momentul potrivit. Unitatea de control interpretează
instruciunile în cod mașină pe care le primete, una câte una, de la nivelul superior,
determinând declanșarea acțiunilor necesare. Unitățile de control pot fi proiectate
într-una din urmtoarele variante: codate hardware sau microprogramate. Unitățile de
control codate hardware sunt foarte rapide, deoarece sunt bazate pe componente
fizice, de obicei circuite logice digitale. Odată implementate sunt, însă, foarte dificil
de modificat, din cauză că sunt necesare modificări fizice. Cealaltă variantă,
implementarea instruciunilor folosind un microprogram, folosește un program scris
într-un limbaj de nivel jos, implementată direct de către hardware. O instrucțiune în
cod mașină este adesea translatat în mai multe instruciuni de microcod, prin urmare
nu există o corelație biunivocă între limbajul de asamblare și codul mașină.
Microprogramele pot fi modificate relativ ușor, însă execuția instruciunilor este de
obicei mai lent, datorită nivelului suplimentar de translatare. Nivelul 1, nivelul logicii
digitale, este locul în care pot fi găsite componentele fizice ale calculatorului: porțile
logice și firele. Acestea sunt elemente fundamentale implementrii logicii matematice,
comune tuturor sistemelor de calcul.
~ 10 ~
3.2.Evolutia sistemelor de calcul
De-a lungul anilor, sistemele de operare au evoluat in mai multe generatii.
Primul calculator cu adevarat digital a fost proiectat de matematicianul
englez Charles Babbage (1792-1871). Desi Babbage si-a petrecut cea mai mare
parte din viata incercand sa construiasca calculatorul analitic, acesta nu lucrat
niciodata adecvat, deoarece masina sa era pur mecanica, iar tehnologia din acea
vreme nu ii permitea producerea rotitelor si angrenajelor de o precizie asa de mare,
cum avea el nevoie. Masina analitica a lui Babbage nu avea sistem de operare.
Interesant este ca si-a dat seama ca avea nevoie de software pentru calculator, astfel
ca a angajat o tanara, Ada Augusta Lovelace drept primul programator din lume.
Dupa numele ei a fost denumit limbajul de programare ADA.
Calculatoarele celei de a doua generatie erau folosite mai ales pentru calcule
stiintifice si ingineresti, cum ar fi rezolvarea ecuatiilor cu derivate partiale.
La inceputul anilor ’60, cei mai multi producatori de computer aveau doua linii
de productie distinct: computerele stiintifice, ca IBM 7094 folosite pentru calcule
numerice in stiinta si inginerie si computer comerciale, ca IBM 1401 folosite de banci
si de companiile de asigurare. IBM a incercat sa rezolve amandoua probleme
introducand SYSTEM/360 care satisface nevoile tuturor clientilor si care folosea
circuite integrate la scara mica. Tot acum s-a realizat un sistem de operare care sa
rezolve cerintele conflictuale ale diferitelor tipuri de utilizatori, un sistem de operare
de doua-trei ori mai mare decat FMS, ce contine milioane de linii scrise in limbaj de
asamblare fara a elimina toate deficientele. Fiecare versiune fixa unele deficiente, dar
introducea altele.
Totusi, aceste sisteme de operare au introdus tehnici noi, dintre care cea mai
important este multiprogramarea. La IBM 7094, atunci cand job-ul current facea o
pauza pentru a astepta sa se termine o banda sau alta operatie de intrare-iesire,
procesorul era neutilizat. Solutia care s-a impus a fost partitionarea memoriei in
cateva zone, incarcand cate un job diferit in fiecare partitie.
~ 12 ~
Pentium, Pentium Pro, Pentium II. MS-DOS a fost urmat de sistemul Windows, care
initial a reprezentat doar o interfata grafica si incepand cu versiunea Windows 95
aceasta a devenit sistem de operare.
Fisierele
~ 13 ~
director poate fi un subdirector. Acest model al memorarii datelor pe disc da nastere
la o ierarhie – sistemul de fisiere.
Sistemul de fisiere
Apeluri de sistem
Administrarea proceselor
Semnale
Administrarea fisierelor
Administrarea directoarelor si a sistemelor de fisiere
Protectie
Administrarea timpului
~ 14 ~
4.Structura sistemelor de operare
Masina virtuala: unul dintre primele sistemele de tip masina virtula a fost
VM 370 destinat calculatoarelor mainframe IBM. La realizarea lui s-a plecat de la
urmatoarea observatie: sistemul de operare trebuie sa implementeze conceptul de
multiprogramare si sa furnizeze o masina extinsa cu o interfata mai usor de programat
decat hardware-ul de baza.
Mod kernel
KERNEL
Modelul client-server
~ 15 ~
Un avantaj al modelului client-server este adaptabilitatea sa la sistemele
distribuite. În acest caz fiecare proces se poate rula pe o masina diferita.
Gestionarea memoriei
Practic, sistemul de operare este cel care transformă un telefon mobil (în trecut
numit celular) într-un adevărat telefon inteligent (smartphone), care are mai multe în
comun cu un mini computer decât cu un telefon clasic. Puțini oameni mai folosesc
acum mobilul doar pentru apeluri sau mesaje. Posibilitățile oferite de un smartphone
prin noile tehnologii (printre care se numără, desigur, și sistemul de operare) sunt
nenumărate și în permanentă dezvoltare, datorită aplicațiilor care pot fi instalate.
Dacă nu vei ține cont de rolul sistemului de operare, riști să alegi un telefon pe
care nu-l vei folosi cu plăcere sau să ți se pară complicată utilizarea lui.
~ 17 ~
4.4.Principalele sisteme de operare
Există mai multe sisteme de operare, concepute de marii producători de
telefoane mobile. Astfel, avem iOS de la Apple, Android de la Google și Windows
Phone/Mobile produs de Microsoft. Inițial, lista era mai mare, dar în prezent mulți
producători de smartphone preferă să producă telefoane care vor funcționa cu un alt
sistem de operare. Spre exemplu, BlackBerry, deși are un sistem propriu, BlackBerry
OS, produce în special telefoane care funcționează cu Android.
În plus, așa cum se lansează mereu câte un nou smartphone, apar și noi sisteme
de operare, care ar putea să concureze în viitor cu Android și iOS. Printre acestea se
numără Firefox OS, Ubuntu Phone OS, Samsung Tizen, Open WebOS, Jolla Sailfish,
Amazon Fire OS. Cele mai multe sunt încă în faza de dezvoltare și rulează o
platformă mobilă bazată pe Linux, cum este și Android, de altfel.
iOS
iOS este sistemul de operare creat de Apple, compatibil numai cu dispozitivele
mobile produse de această companie: iPhone, iPad și iPod. Primul iOS a fost lansat
în iulie 2007 și, spre deosebire de Android, nu este disponibil și pentru telefoanele
fabricate de alți producători. Este practic un sistem de operare exclusiv Apple, iar
utilizatorii care sunt fani ai brandului apreciază foarte mult acest aspect.
Sistemul oferă acces la magazinul digital Apple Store, de unde poți alege dintre
2,2 milioane de aplicații, jocuri și funcții diferite pentru orice îți dorești. Spre
exemplu, poți face plăți prin intermediul telefonului sau poți cânta la chitară pe
iPhone dacă vrei, explică specialiștii de la publicația Pro Blog Booster.
Android
~ 18 ~
Cel mai răspândit și popular sistem de operare pentru smartphone este Android,
produs de Google. Lansat în 2008, sistemul poate fi întâlnit pe foarte multe mărci de
smartphone de top (LG, Samsung, Huawei, Sony) și în fiecare an vine cu un update,
oferind o nouă versiune a platformei, cu diferite îmbunătățiri. A devenit celebră și
denumirea acestor versiuni, care include nume de dulciuri: Android Donut, Eclair,
Gingerbread, Honeycomb, Jelly Bean, KitKat, Lollipop, Oreo, Nougat și
Marshmallow.
Sistemul de operare este open source, astfel încât programatorii pot face orice
modificări doresc și pot fi creativi, lansând noi aplicații Android extrem de ușor de
folosit și de realizat. Iată de ce vom găsi în magazinul digital Google Play
Store peste 2,8 milioane de aplicații, de tot felul, potrivit Digital Trends. În plus,
multe dintre acestea pot fi descărcate gratuit, aspect care atrage milioane de utilizatori
din întreaga lume, Android fiind considerat din punctul de vedere al numărului de
utilizatori cel mai bun sistem de operare pentru smartphone.
~ 19 ~
Lumia și Nokia Lumia. Comparație între iOS, Android și Windows Phone. Care
este cel mai bun
Ca să poți face o comparație corectă între cele trei mari sisteme de operare
pentru smartphone, trebuie să stabilești mai întâi ce anume îți dorești de la platforma
de mobil, ce te interesează mai mult, pentru ce folosești în special telefonul. Prin
urmare, analizăm pe rând fiecare aspect în parte, pentru a desemna câștigătorul:
Prin urmare, dacă îți dorești acces la câte mai multe jocuri și aplicații de tot
felul, trebuie să alegi între iOS și Android. Competiția este strânsă la acest capitol,
pentru că de obicei cele mai noi jocuri apar mai întâi în Apple Store. În schimb,
Google Play Store oferă mai multe aplicații și jocuri gratuite.
Funcționalitate
Dacă vrei un sistem de operare care să fie bun strict din punctul de vedere al
funcționalităților de bază ale unui telefon, apelurile de voce și mesajele, situația stă în
felul următor: și iOS și Android sunt foarte bune, însă cel din urmă este ceva mai
complicat și te poate deruta uneori.
Spre exemplu, aplicația Hangouts include mesaje instant, SMS, chat de grup,
chat video prin rețeaua Wi-Fi, însă în Android este prezent de asemenea și Google
Messenger (aplicație numită în trecut Android Messages), care este setat din start ca
aplicație preferată pentru trimiterea mesajelor. În plus, mulți producători de telefon
introduc, pe lângă toate aceste aplicații Android, propriile lor versiuni pentru mesaje
și apeluri.
În schimb, iOS este mult mai simplu. Fiecare iPhone are preinstalate aplicațiile
FaceTime și iMessage, prin care poți suna sau poți trimite mesaje extrem de simplu
către alți utilizatori de iPhone.
Design și interfață
Ca design, iOS este cel mai constant sistem de operare, fără să sufere
transformări radicale de la prima versiune lansată în 2007. Există câteva diferențe în
aspectul interfeței: Android folosește un folder pentru aplicații, unde pot fi adunate
toate cele descărcate. În schimb, iOS nu are această opțiune, așa că vei avea pe ecran
~ 20 ~
câte o iconiță pentru fiecare aplicație folosită. Acest aspect te va deranja însă numai
dacă ai descărcat foarte multe aplicații.
Windows are un sistem diferit. Pe ecran apare o interfață care afișează Live
Tiles, o opțiune prin care poți vedea imediat detalii despre o anumită aplicație. Spre
exemplu, nu e nevoie să deschizi aplicația BBC Sport ca să vezi titlurile principalelor
știri. De asemenea, poți grupa aplicațiile în foldere.
Windows și Android au însă un avantaj în fața iOS: oferă acces mai simplu și
mai rapid la bara de control din partea de sus a ecranului, de unde pot fi pornite sau
oprite Bluetooth, Wi-Fi și multe alte opțiuni (modul avion, oprirea sonorului,
aprinderea lanternei etc.).
Un alt mare avantaj al celor două sisteme de operare este că pot fi modificate de
producătorii de smartphone. Astfel, aceeași versiune Android sau Windows va arăta
diferit pe un telefon Galaxy S9 și pe un Nexus 6P. Prin urmare, dacă te interesează
mai ales interfața grafică și vrei un telefon ușor de folosit, prin care poți accesa orice
aplicație vrei cât mai simplu și cât mai repede, ar fi bine să alegi unul cu Android.
Când alegi sistemul de operare e esențial să ții cont și de un alt aspect: ce resurse
consumă platforma din telefonul tău. Cele mai multe modele de smartphone au o
problemă comună: se descarcă foarte repede. Asta deoarece sunt folosite intens, iar
dimensiunea bateriei este limitată de cea a telefonului, prin urmare nu poate fi prea
mare.
Fiecare sistem de operare solicită diferit bateria, iar cel mai bine adaptat din
acest punct de vedere este iOS. Astfel, chiar dacă bateria de la iPhone este mai mică
decât la un Samsung, e posibil ca telefonul sa reziste mai mult fără să aibă nevoie de
încărcare. Nu uita însă că multe telefoane cu Android sau Windows (Nokia) au baterii
mult mai mari ca iPhone și prin urmare foarte rezistente.
Și iOS și Android te lasă să vezi în timp real care este starea bateriei și ce
aplicații consumă energie, dar numai la modelele cu Android poți vedea și ce procent
~ 21 ~
din baterie mai este disponibil. În plus, ai opțiunea de reducere a consumului de
energie, prin care poți extinde durata bateriei dacă renunți temporar la folosirea
aplicațiilor și la performanță. Opțiunea apare și la iOS, dar este mai puțin prietenoasă
ca la Android.
Securitate acces
În al doilea rând, metodele de autentificare sunt foarte importante. Iar din acest
punct de vedere Apple și iOS sunt pe primul loc. iPhone X are sistemul revoluționar
de recunoaștere facială biometrică FaceID, iar aplicația iMessage și altele sunt
criptate și astfel mult mai sigure. În plus, Apple lansează mult mai des actualizări de
securitate la sistemul său de operare.
Este însă adevărat că există și multe telefoane Android care au sistem TouchID
(care a fost introdus de Apple odată cu iOS 7 și preluat apoi de rivalul Google în
Android 6.0 Marshmallow). Samsung și Huawei au lansat recent noi modele de
smartphone premium, care au și un sistem de recunoaștere facială, chiar dacă nu se
ridică la nivelul FaceID de la iPhone X.
~ 22 ~
Microsoft a ales însă o altă variantă pentru autentificare. Chiar dacă există
telefoane cu Windows care au senzor de amprentă, prin lansarea Windows 10 pentru
smartphone a fost introdusă tehnologia Windows Hello. Aceasta presupune scanarea
irisului utilizatorului, oferind astfel o siguranță mai mare decât autentificarea prin
amprentă. Sistemul este totuși destul de greu de folosit.
Accesorii Smart
Iată o scurtă listă care poate să rezume recomandările din acest articol:
iOS este cel mai bun sistem de operare pentru mobil dacă:
Android este cel mai bun sistem de operare pentru mobil dacă:
Windows este cel mai bun sistem de operare pentru mobil dacă:
ești fanul brandului Nokia și vrei un telefon cu baterie foarte bună, rezistentă,
vrei o interfață simplă, ușor de folosit și care poate fi personalizată,
vrei să vezi notificări ale aplicațiilor tale fără să fie nevoie să le deschizi de
fiecare dată,
preferi un smartphone care folosește autentificarea prin scanarea irisului.
~ 24 ~
~ 25 ~