Documente Academic
Documente Profesional
Documente Cultură
6 Sisteme de Operare PDF
6 Sisteme de Operare PDF
Sisteme de operare
Un grup special de aplicaţii software sunt cele care dialoghează direct cu un
proces, respectiv interacţionează cu mediul, nu numai cu un eventual operator uman
(ba chiar acesta poate câteodată să lipsească). O astfel de aplicaţie ridică
proiectanţilor cel puţin două mari probleme care măresc gradul de dificultate al
proiectării şi implementării, în cele mai multe situaţii: (1) impunând cerinţe speciale
privind siguranţa în funcţionare (sisteme safety-critical), respectiv, (2) privind
răspunsul în timp real. De aceea, proiectarea unor astfel de sisteme trebuie să fie
realizată conform unor reguli specifice. O categorie aparte de ingineri software şi
informaticieni se ocupă de astfel de sisteme, aceştia trebuind să aibă cunoştinţe
specifice, în special de Ingineria sistemelor.
În acest capitol sunt prezentate sisteme de operare folosite în practică.
6.2.2. UNIX
nu este folosit pe scară largă iar în perspectivă nu se anunţă lansarea unui sistem
UNIX, orientat obiecte, care să aibă suportul de dezvoltare care să permită realizarea
uşoară şi rapidă de aplicaţii de conducere în timp real, la concurenţă cu Windows din
punctual de vedere al GUI (Graphical User Interface).
În România se folosesc aplicaţii şi sisteme UNIX în sisteme de date
distribuite, sisteme bancare, la vamă, TAROM şi în unele sisteme în timp real pentru
conducere de proces în arhitectură deschisă. De asemenea e utilizat de ENEL pentru
aplicaţia sa de facturare.
În general UNIX nu e răspîndit datorită preţului ceva mai ridicat la
calculatoarelor pe care poate rula, darorită lipsei mediilor de dezvoltare şi a altor
aplicaţii uzuale, precum şi datorită lipsei specialiştilor şi expertizei necesare (de fapt
toate acestea nu lipsesc dar sunt rare).
6.2.3. LINUX
6.2.4. MacOS
Există pe piaţă şi alte sisteme de operare care pot fi utilizate pentru sisteme
înglobate (embedded), spre exemplu TinyOS care este conceput mai ales pentru a rula
pe microsisteme (cu resurse reduse, de aceea se numeşte Tiny) din reţele de senzori
Wireless. Este scris în limbajul nesC (un dialect C) sub forma unor taskuri şi procese
colaborative. Este un sistem deschis, Open-Source, născut ca o colaborare între
University of California, Berkeley şi Intel Research. Actualmente s-a consolidat o
întreagă comunitate mondială de dezvoltatori şi utilizatori ai acestui sistem, TinyOS
Alliance.
Windows CE (Windows Embedded Compact) poate fi de asemenea folosit în
aplicaţii înglobate (embedded) deoarece este diferit de un Windows trunchiat, având
un nucleu diferit, mai compact şi deci implicit mai sigur (nucleul ocupă mai puţin de 1
Mb de memorie). De asemenea, îndeplineşte cerinţele de timp real, poate fi configurat
să ruleze fără Hard-disk şi din memorie fixă. Are un sistem de întreruperi cu 256
priorităţi, permite multi-threading, are interfaţă simplificată şi timp de execuţie bun
(redus). Este folosit pe PocketPC, pe telefoane mobile inteligente (Windows Mobile
for Smartphone), pe unele dispozitive industriale şi sisteme înglobate. O bună parte
din sistemul de operare este disponibilă sub formă de cod sursă. Însă trebuie luat în
considerare că este compatibil doar cu procesoarele Intel x86 şi compatibile, MIPS,
ARM şi Hitachi SuperH. Un mare avantaj este puterea mediului de dezvoltare Visual
Studio.NET sub care se pot dezvolta aplicaţii pentru această platformă, fiind la
dispoziţia utilizatorilor .NET Compact Framework ca un subset pentru acest sistem de
operare. Aceste avantaje transformă acest sistem de operare într-o alternativă
interesantă pentru anumite aplicaţii pentru sisteme înglobate.
6.4. Concluzii
Desigur, este greu de decis în primă abordare, ce sistem de operare vom folosi
pentru aplicaţia noastră. După cum am văzut la începutul acestui capitol, există mai
multe abordări (echipamente dedicate versus PC-uri industriale) şi configuraţii
posibile pentru aplicaţii on-line, pentru conducere de proces (în sens larg). Rezultă că
o primă modalitate de selecţie a sistemului de operare o reprezintă configuraţiile şi
posibilităţile echipamentelor folosite. Astfel, spre exemplu, un mic sistem dedicat nu
va avea resurse pentru a rula UNIX, dar poate “încape” pe el QNX.
După cum s-a arătat la începutul acestui capitol, mai există şi alte criterii care
dictează alegerea. S-a văzut spre exemplu cât de mult contează penetrabilitatea unui
produs, în alegerea sa. Este aici un cerc “vicios” (forţând aici termenii): cu cât un
sistem de operare este mai penetrabil, cu atât va fi mai răspândit, deci pe de o parte
şansa de a-l utiliza va creşte mai mult (îl vom prefera altor produse deoarece “am
auzit de el”, eventual chiar îl cunoaştem bine, personalul firmei nu are nevoie de
pregătire suplimentară, clientul e şi el mai degrabă dispus să accepte ceva cunoscut
etc.) iar firma furnizoare, având volum mai mare de vânzări, va avea resurse pentru
dezvoltare în continuare şi pentru un marketing şi mai agresiv etc. Cel mai probabil,
pentru un sistem de operare mai răspândit vor fi disponibile mai multe aplicaţii, mai
multe medii de dezvoltare, mai multe facilităţi, care vor spori şi mai mult
atractivitatea acestuia. Acesta este motivul pentru care unele aplicaţii de timp real (cu
cerinţe nu foarte severe) se scriu în prezent chiar sub Windows, deşi acesta nu poate fi
considerat sistem de operare în timp real. Bineînţeles, dacă se adoptă o asemenea
soluţie, trebuie să cunoaştem limitele a ceea ce obţinem. Nu vom realiza niciodată o
aplicaţie pentru conducerea unui motor electric sau a unui avion de luptă direct sub
Windows dar procesul poate fi condus de un DSP de exemplu, acesta legat la un PC
care să ofere interfaţa grafică spectaculoasă şi uşor de folosit de sub Windows.
Alegerea sistemului de operare este dictată şi de considerente de siguranţă. La
arhitectura deschisă, se preferă la nivelul din mijloc servere UNIX cu mirroring pentru
hard-discuri. Un exemplu de aplicaţie de acest gen este la „Electrica” Timişoara, unde
serverul cu clienţii şi facturarea este pe un calculator UNIX cu 2 unităţi centrale şi 4
hard-discuri.
În rezumat, alegem după: