Sistema operatiu

De Cacauet Wiki
Salta a la navegació Salta a la cerca
El sistema operatiu fa d'intermediari entre les aplicacions i els recursos hardware (wikipedia)


Definicions

Segons la wikipedia: un sistema operatiu és un conjunt de programes que corre sobre un ordinador, administrant els recursos de hardware i proveint serveis per a l'execució eficient de les aplicacions.

Dit d'una altra manera:

El sistema operatiu és el primer programa que s'executa en un PC

Bé, per ser exactes primer el precedeixen l'arranc de la BIOS (Basic Input Output System) i el bootloader contingut en el MBR del disc dur (veure Arrencada_del_PC). Però un cop arrencat el PC el sistema operatiu és l'amo de la màquina.

Acaba sent un intermediari entre el hardware i les aplicacions. Si un programa vol executar alguna funció que impliqui el hardware, no ho pot fer directament: ha de demanar-li al sistema operatiu (crida de sistema) i aquest realitza la tasca i retorna el resultat a l'aplicació. El programes no poden, doncs, accedir al hardware directament, només a través del sistema operatiu.

Exemples: el Firefox no controla la targeta de xarxa, sinó que demana al S.O. que envii un determinat paquet a una determinada adreça IP i el sistema ho fa. O per exemple, per enviar l'àudio a la targeta un programa com el VLC pot descomprimir les dades del mp3 però les ha de posar a disposició del S.O. el qual realitza la transferència final cap al buffer de sortida de la targeta d'àudio.


Parts del sistema operatiu

Els drivers són específics del hardware i del sistema operatiu: coneixen exactament com adreçar-se al maquinari concret.

Un SO és un conjunt força ample de programes, no un de sol. Els elements més importants que volem distingir son:

  • Kernel o nucli del sistema operatiu: és l'element central i s'encarrega d'engegar i controlar l'execució de les aplicacions i d'administrar l'accés a la memòria d'aquestes.
  • Device drivers (o controladors): son programes que enllacen el kernel amb els diferents dispositius electrònics. El nucli no pot conèixer tots els dispositius del mercat, pel que es carreguen només aquells mòduls del hardware que disposem. Així, un driver és específic del hardware utilitzat. És el programa que coneix exactament com està fet cada dispositiu.

El sistema operatiu "mana" sobre els fabricants de hardware, indicant com el sistema operatiu ha d'utilitzar un tipus de hardware determinat. El driver traduirà aquestes directives en instruccions concretes cap el xip particular que el fabricant ha dissenyat.

El kernel i els diferents mòduls.

Per suposat, això no és tot: un S.O. ha de disposar de moltíssimes aplicacions per poder tenir un mínim d'operativitat:

  • Shell o consola: programa que permet interactuar amb el S.O. a través de comandes.
  • Editor de text: programa que permet crear axius de text.
    • Per consola (vi, nano, emacs, ...)
    • Per entorn gràfic (notepad, gedit, geany, ...)
  • Mòdul d'autenticació (en Linux: PAM): és un subsistema que s'encarrega de validar l'entrada d'usuaris i d'autoritzar les operacions que l'usuari demana.
  • Filesystem o sistema d'arxius: subsistema encarregat de l'emmagatzematge, és a dir, l'organització de dades en sistemes persistents com els discs durs, pendrives o CD/DVDs.
  • Sistema d'entorn gràfic i escriptori: subsistema que gestiona com es mostren i organitzen les quotidianes finestres. El sistema bàsic d'entorn gràfic de GNU son les X-windows i els sistemes típics d'escriptori son el Gnome i el KDE.
  • ... i un llarg etcètera...