You are on page 1of 114

Introducci als sistemes operatius

Josep Esteve Estruch

Sistemes operatius monolloc

Sistemes operatius monolloc

Introducci als sistemes operatius

ndex

Introducci ............................................................................................... Resultats daprenentatge ....................................................................... 1. Caracteritzaci dels sistemes operatius, tipus i aplicacions ......................................................................................... 1.1. Els components fsics i lgics dun sistema informtic. El programari base ...................................................................... 1.1.1. Part fsica dun sistema informtic ................................ 1.1.2. Part lgica dun sistema informtic ............................... 1.1.3. Part humana dun sistema informtic ........................... 1.2. Codificaci de la informaci en diferents sistemes de representaci .......................................................................... 1.2.1. Definici de la informaci ............................................... 1.2.2. Elements de la informaci .............................................. 1.2.3. El sistema binari ............................................................... 1.2.4. Mesura de la informaci .................................................. 1.2.5. Sistemes de representaci de la informaci numrica ............................................................................ 1.2.6. Teorema fonamental de la numeraci ........................... 1.2.7. Conversi entre sistemes de numeraci ....................... 1.2.8. Operacions bsiques amb sistemes de numeraci ....... 1.2.9. Representaci dels nombres enters ............................... 1.2.10.Representaci dels nombres en coma o punt fix ......... 1.2.11.Sistemes de representaci de la informaci alfanumrica ..................................................................... 1.2.12.Codificaci interna de les dades ..................................... 1.3. Sistemes transaccionals ............................................................. 1.3.1. Tipus de sistemes dinformaci ...................................... 1.3.2. Transaccions ..................................................................... 1.4. Concepte, elements i estructura dun sistema operatiu ........ 1.4.1. Definici de sistema operatiu ......................................... 1.4.2. Elements dun sistema operatiu ..................................... 1.4.3. Estructura dun sistema operatiu ................................... 1.5. Funcions del sistema operatiu. Recursos ................................. 1.5.1. Objectius dels sistemes operatius ................................... 1.5.2. Funcions dels sistemes operatius ................................... 1.5.3. Recursos dels sistemes operatius. Concurrncia, comunicaci, sincronitzaci i interbloqueig de processos ...................................................................... 1.6. Arquitectura del sistema operatiu .............................................

5 7

9 9 10 10 11 12 12 12 13 14 16 18 18 21 23 25 26 27 28 30 30 31 32 34 35 40 41 41

43 46

Sistemes operatius monolloc

Introducci als sistemes operatius

1.7. Evoluci histrica. Sistemes operatius actuals ....................... 1.7.1. Generacions informtiques ............................................. 1.7.2. Sistemes operatius actuals .............................................. 1.8. Classificaci del sistemes operatius ......................................... 1.9. Gesti de processos. Estats dels processos. Prioritat i planificaci ................................................................. 1.9.1. Els processos ..................................................................... 1.9.2. Operacions amb els processos ......................................... 1.9.3. Tipus de processos ............................................................ 1.9.4. Estats dels processos ....................................................... 1.9.5. Planificaci del processador ............................................ 1.9.6. Algorismes de prioritats ................................................... 1.10.Gesti de la memria ................................................................. 1.10.1.Conceptes generals del gestor de memria .................. 1.10.2.La gesti de la memria en sistemes monoprogramats .............................................................. 1.10.3.La gesti de la memria en sistemes multiprogramats ............................................................... 1.10.4.La memria virtual .......................................................... 1.11.Gesti dentrada/sortida ............................................................ 1.11.1.Interfcie dispositiu perifric - ordinador ...................... 1.11.2.Programari de control dE/S ........................................... 1.12.Gesti de la informaci .............................................................. 1.12.1.Estructura de la informaci ............................................ 1.12.2.Sistema de fitxers ............................................................ 1.12.3.Mtodes daccs als fitxers ............................................. 1.12.4.Directoris darxius ........................................................... 1.12.5.Seguretat dels arxius ....................................................... 2. Configuraci de mquines virtuals .................................................. 2.1. Descripci de mquina real i de mquina virtual .................... 2.1.1. Virtualitzaci ..................................................................... 2.1.2. Amfitri i hoste ................................................................. 2.2. Avantatges i inconvenients de la virtualitzaci i de les mquines virtuals ........................................................... 2.3. Programari lliure i propietari per a la creaci de mquines virtuals: installaci ..................................................................... 2.4. Creaci de mquines virtuals per a sistemes operatius lliures

49 49 55 59 61 61 62 63 64 66 75 75 75 77 78 79 82 83 84 85 86 87 89 90 92 94 94 95 95 96 99

i propietaris .................................................................................. 104 2.5. Configuraci i utilitzaci de mquines virtuals ....................... 105 2.6. Comprovaci del funcionament correcte de les installacions i les configuracions dutes a terme ............................................ 106 2.7. Documentaci del procs dinstallaci i de les seves incidncies ................................................................................... 107 2.8. Interpretaci de la documentaci tcnica ................................ 111

Sistemes operatius monolloc

Introducci als sistemes operatius

Introducci

En aquesta unitat formativa estudiareu un tipus de programari bsic per al bon funcionament del maquinari, que forma part de lordinador i que sanomena sistema operatiu (SO). Segurament us heu plantejat alguna vegada de quina manera els ordinadors gestionen la informaci que han de manipular. Doncs b, en aquesta unitat funcional comentarem com els ordinadors tracten la informaci i de quins mecanismes disposen. Aquest programari bsic (SO) controla tot el maquinari. En aquesta unitat, anomenada Introducci als sistemes operatius. Creaci de mquines virtuals, veurem la necessitat de lexistncia del sistema operatiu i en donarem algunes definicions. En lapartat Caracteritzaci dels sistemes operatius. Tipus i aplicacions comentarem levoluci que han tingut els sistemes operatius des de diferents aspectes, ja que dalguna manera la seva evoluci va parallela a la dels ordinadors. En aquesta evoluci introduirem una srie de conceptes que sapliquen en el disseny de sistemes operatius, com sn la monoprogramaci, la multiprogramaci, el temps compartit, el temps real, els sistemes multiusuaris i monousuaris, el multiprocs, la multitasca, etc. No tots els sistemes operatius tenen les mateixes caracterstiques i tampoc estan destinats a fer les mateixes tasques. Per aix, farem diferents classificacions en funci de diversos criteris. Un altre aspecte que estudiareu s el que fa referncia als processos: la importncia que tenen, el seu funcionament, els estats en qu poden estar i les seves possibles transicions. Coneixereu els processos concurrents i cooperatius que es basen a compartir recursos. La sincronitzaci i l'intercanvi dinformaci entre els processos concurrents i cooperatius sn elements que cal considerar per assegurar les relacions entre els processos. Tamb estudiarem la gesti de la memria: veureu diferents propostes que van des de la gesti de la memria real fins a la gesti de la memria virtual, i aprendreu el funcionament de les tcniques de paginaci, de segmentaci... Tamb parlarem dels controladors de dispositius (drivers) dentrada/sortida de lordinador, que treballareu des de laspecte del maquinari i tamb del programari. Pel que fa a la gesti de fitxers, veureu com el sistema operatiu gestiona la informaci en els suports de discos magntics en els aspectes de lorganitzaci de la informaci, de laccs a la informaci i des daltres aspectes.

Sistemes operatius monolloc

Introducci als sistemes operatius

Aix mateix, comentarem la importncia de la seguretat en un sistema informtic i com el sistema operatiu pot participar en aquesta feina. Es pot investigar el funcionament dels sistemes operatius mitjanant la utilitzaci de les mquines virtuals, entre daltres. En lapartat Configuraci de mquines virtuals estudiarem la diferncia entre les mquines reals i les mquines virtuals i el seu funcionament. Una vegada ja en conegueu el funcionament, installareu algun tipus de programari lliure o propietari amb aquest tipus de tecnologia. Tamb creareu i configurareu mquines virtuals, i comprovareu el funcionament del sistema i de les configuracions fetes. Aix mateix, haureu de documentar tot el procs dinstallaci, de configuraci i de comprovaci de les mquines virtuals amb les seves incidncies i solucions adoptades. Aquesta unitat formativa s bsica per poder entendre lordinador, saberlo utilitzar correctament i comprendre el funcionament general dels sistemes operatius. Un altre aspecte que heu de considerar s la importncia dinstallar i configurar mquines virtuals, ja que cal saber-les utilitzar per poder installar i configurar sistemes operatius monousuaris i multiusuaris en una fase posterior. En general heu de conixer com lordinador manipula la informaci, quines unitats de mesura utilitza i com codifica la informaci que ha de gestionar. Pel que als sistemes operatius, heu de ser conscients de la importncia que tenen avui dia, ja que sn necessaris perqu els sistemes informtics funcionin correctament. Finalment, heu de saber com funcionen les mquines virtuals, com les heu dinstallar, configurar i documentar i conixer-ne la utilitat.

Sistemes operatius monolloc

Introducci als sistemes operatius

Resultats daprenentatge

En acabar la unitat heu de ser capaos del segent: 1. Diferenciar els conceptes de programari bsic i de programari daplicacions informtiques. 2. 3. Descriure els elements principals dun sistema informtic. Diferenciar els diferents tipus de personatges implicats en un sistema informtic. 4. 5. 6. 7. 8. Descriure les funcions principals dels sistemes operatius. Diferenciar la informaci de les dades. Saber aplicar les diferents unitats de mesura de la informaci. Saber aplicar les tcniques de codificaci de la informaci. Diferenciar conceptes relacionats amb els sistemes operatius: la multiprogramaci, la monoprogramaci, el temps real, el temps diferit, el multiprocs, el sistema monousuari i multiusuari, etc. 9. Assenyalar els possibles avantatges i inconvenients dels sistemes operatius. 10. Indicar levoluci dels sistemes operatius i les seves previsions de futur. 11. 12. 13. 14. Saber classificar els sistemes operatius des daspectes diversos. Descriure larquitectura dels sistemes operatius. Descriure la funci del nucli dels sistemes operatius. Explicar el funcionament de la interfcie dusuari en els sistemes operatius. 15. Explicar el funcionament dels principals algorismes de planificaci del processador. 16. Descriure els conceptes de parallelisme, concurrncia, sincronitzaci, comunicaci i interbloqueig.

Sistemes operatius monolloc

Introducci als sistemes operatius

17. 18.

Distingir les diferents tcniques de gesti de la memria real. Interpretar el funcionament de la memria paginada i de la memria segmentada.

19. 20.

Comentar la importncia dels processos. Descriure les diferncies entre la gesti de la memria real i la gesti de la memria lgica.

21.

Explicar la importncia de la gesti dels dispositius dentrada/sortida.

22.

Valorar la importncia de la gesti de la informaci en els suports de discos magntics.

23.

Reconixer diferents alternatives per a estructurar un sistema de fitxers.

24.

Conixer les principals tcniques de seguretat referides als sistemes operatius.

25. 26. 27. 28. 29. 30.

Diferenciar les mquines reals i les mquines virtuals. Conixer el funcionament de les mquines virtuals. Descriure els avantatges dutilitzar les mquines virtuals. Explicar els tipus de virtualitzacions. Diferenciar el programari propietari i el programari lliure. Saber interpretar les diverses fases de la installaci i de la configuraci del programari en un sistema informtic.

31. 32. 33. 34.

Installar el programari per a la creaci de mquines virtuals. Crear mquines virtuals. Configurar mquines virtuals. Comprovar el funcionament del sistema informtic juntament amb les mquines virtuals installades i configurades.

35.

Documentar tot el procs dinstallaci i de configuraci de les mquines virtuals i tamb les incidncies aparegudes i solucions adoptades.

Sistemes operatius monolloc

Introducci als sistemes operatius

1. Caracteritzaci dels sistemes operatius, tipus i aplicacions

Els protagonistes principals dels sistemes informtics sn el maquinari i el programari. Aquests dos elements sn bsics per al correcte funcionament dun sistema informtic. Altres components que tamb cal destacar sn els elements humans i la informaci.

1.1. Els components fsics i lgics dun sistema informtic. El programari base
Els ordinadors no han nascut en els ltims anys, en realitat les persones sempre han buscat tenir dispositius que les ajudin ha efectuar clculs precisos i rpids. Des de laparici de les calculadores binries fins als nostres dies, hi ha molt poques activitats humanes que no estiguin lligades duna manera o una altra a les mquines electrniques. Aix, doncs, podem definir lordinador de moltes maneres i seguidament nindiquem algunes: Lordinador s una mquina formada per una srie delements fsics connectats duna manera lgica i racional que tracten la informaci automticament. Lordinador s una mquina electrnica rpida i exacta que s capa dacceptar dades per un medi dentrada, processar-les automticament sota el control dun programa prviament emmagatzemat i proporcionar la informaci resultant a un medi de sortida. Lordinador s un dispositiu electrnic capa de rebre un conjunt dinstruccions i executar-les fent clculs sobre les dades numriques i relacionant-les amb altres tipus dinformaci per a obtenir un altre conjunt de dades o informaci com a resposta. Lordinador s un sistema electrnic que porta a cap operacions aritmtiques i de lgica a alta velocitat dacord amb les instruccions internes que sn executades sense intervenci humana. A ms, t la capacitat dacceptar i demmagatzemar dades dentrada, processar-les i produir resultats de sortida automticament. La seva funci principal s el processament de dades. El conjunt daccions que sordenen i que executa un ordinador es coneix amb el nom de programa. Lligat a aquest concepte tenim el daplicaci informtica.

Una operaci lgica s aquella en qu el resultat noms pot ser vertader o fals.

El procs de dades equival a la manipulaci de dades.

Sistemes operatius monolloc

10

Introducci als sistemes operatius

A vegades es parla de sistema informtic com una expressi ms concreta del terme informtica. Un sistema informtic s el conjunt delements necessaris per a la realitzaci i lexplotaci daplicacions informtiques. Shi inclouen els elements de programari, de maquinari i els humans. Podem definir la informtica com la cincia que estudia el tractament automtic i racional de la informaci.
Programa i aplicaci informtica En general, un programa s un conjunt daccions que shan de fer seguint un ordre determinat per a resoldre un problema determinat. Una aplicaci informtica s un conjunt dun o ms programes per a dur a terme un treball determinat en un sistema informtic. Lexplotaci duna aplicaci informtica equival a la utilitzaci duna aplicaci informtica.

En un sistema informtic hi ha els elements constitutius interrelacionats segents: la part fsica, la part lgica i la part humana.
El terme informtica t lorigen en les paraules: INFORmaci autoMTICA.

1.1.1. Part fsica dun sistema informtic


Lelement fsic dun sistema informtic tamb es coneix amb el nom de maquinari (hardware). El maquinari (hardware) fa referncia a tot all que podem veure i tocar (el monitor, el teclat, la CPU, etc.).
Les inicials UCP o CPU corresponen a la unitat central de processament o central processing unit.

1.1.2. Part lgica dun sistema informtic


Lelement lgic dun sistema informtica tamb es coneix amb el nom de programari (software). El programari (software) t lorigen en les idees (conceptes) i s compost per tot all que fem servir en el camp de la informtica que no podem veure ni tocar (per exemple, els jocs dordinadors, els programes de comptabilitat, els sistemes operatius, etc.).
Pes del programari Avui dia t ms pes el programari que el maquinari, a causa, sobretot, del cost, del manteniment i del valor que representen els avenos en els seus continguts.

No tots els elements lgics fan les mateixes funcions, per la qual cosa els podem classificar en programari bsic i programari daplicaci.
Exemples de programari Unix i Linux sn sistemes operatius i, per tant, els podem considerar programari bsic. Com a cas de programari daplicaci tenim, per exemple, els jocs dordinador, els programes de gesti comercial, els programes de gesti de nmines, etc.

El programari bsic s el conjunt de programes que lequip fsic necessita per a tenir capacitat de treballar. Aquests configuren el que sanomena en un sistema informtic el sistema operatiu (per exemple, Unix, Linux, etc.). En altres paraules, el programari bsic s format per tots els programes que capaciten el maquinari per a poder funcionar correctament.

Sistemes operatius monolloc

11

Introducci als sistemes operatius

El programari daplicaci sn els programes que fan que lordinador desenvolupi una tasca determinada.

1.1.3. Part humana dun sistema informtic


Lelement hum dun sistema informtic s lelement ms important que forma part de la informtica o dun sistema informtic. Sense les persones que estan al crrec de la informtica, no hi hauria ni la part fsica ni la part lgica. Dins del que hem anomenat part humana, podem distingir els elements segents: Usuari. s la persona que utilitza la informtica com a eina per a desenvolupar el seu treball o com a ajuda en una activitat. Cal tenir uns coneixements informtics basics i, particularment, tenir uns grans coneixements sobre el funcionament de laplicaci informtica que est utilitzant, com, per exemple, lusuari daplicacions ofimtiques. Personal informtic. s el conjunt de persones que desenvolupen diferents funcions relacionades amb la utilitzaci dels ordinadors en una empresa. Controlen i manipulen les mquines perqu donin el servei adequat als usuaris.
El personal informtic El personal informtic es pot classificar en els grups segents: 1) Direcci. Entre altres funcions t la de coordinar i dirigir la part informtica o algunes de les seves rees (un departament, una rea de programaci, una rea danlisi, etc.). 2) Anlisi. El personal que pertany a aquest grup s el responsable dintentar trobar millores informtiques o solucions als problemes que es plantegin. a) Segons el tipus danlisi poden ser: Analistes funcionals. Busquen solucions generals a un problema determinat. Analistes orgnics. Les solucions proposades pels analistes orgnics sn ms concretades o especificades. b) Segons lobjectiu de lanlisi que en facin poden ser: Analistes de sistemes. Socupen de buscar millores o solucions a problemes quant al sistema (per exemple, millorar el sistema operatiu, les comunicacions, etc.). Analistes daplicacions. Socupen de buscar millores o solucions quant als usuaris per a les aplicacions que utilitzen o possibles aplicacions futures que hagin dutilitzar. 3) Programaci. El personal de programaci tradueix al llenguatge de programaci les solucions proposades pels analistes. La seva funci tamb s la de fer la traducci de les diferents accions al llenguatge natiu de la mquina (llenguatge mquina). Per a comprovar que la traducci funciona, utilitzen jocs dassaig que sn proposats pels mateixos analistes. Els programadors poden ser: a) Programadors de sistemes. Tradueixen les accions relacionades amb el sistema i expressades en llenguatge natural, utilitzant llenguatges de programaci. Llenguatges de programaci Els llenguatges de programaci sn un conjunt de regles o normes que fixen la sintaxi que cal utilitzar per a donar ordres a un ordinador. El llenguatge C o el llenguatge Cobol en sn alguns exemples.

Ofimtica Amb el terme ofimtica ens referim a la utilitzaci de la informtica en els departaments de gesti administrativa de lempresa.

Imatge que simbolitza els usuaris

Llenguatge mquina El llenguatge mquina s el llenguatge utilitzat pels ordinadors. s format per senyals binaris. Els senyals binaris sn formats per dos estats: activat i desactivat (on, off).

Sistemes operatius monolloc

12

Introducci als sistemes operatius

b) Programadors daplicacions. Tradueixen les accions relacionades amb un problema de gesti, de disseny, etc., expressades de manera natural, utilitzant els llenguatges de programaci. 4) Explotaci. El personal dexplotaci sencarrega dexecutar els programes o les aplicacions i de comprovar el funcionament dels equips i dels sistemes. 5) Operadors. Sencarreguen del funcionament, lexecuci i els processos directes del sistema, la preparaci dels suports, els perifrics i el material informtic. El llenguatge natural s el llenguatge propi de cada persona.

En un sistema informtic a ms dels elements fsics, lgics i humans tamb podem trobar un altre element no menys important com pot ser la informaci.

1.2. Codificaci de la informaci en diferents sistemes de representaci


Contnuament ens arriba informaci per diferents canals. Les vies poden ser molt variades: les imatges, els sons, els escrits, els senyals, etc. Si pogussim mesurar aquest volum dinformaci, al final del dia comprovarem que s molta la quantitat que en rebem.

1.2.1. Definici de la informaci


Hi ha diverses maneres de definir la informaci.

La informaci s el resultat de la manipulaci de les dades. La informaci s tota forma de representaci de fets, objectes, valors, idees, etc., que permet la comunicaci entre persones i ladquisici del coneixement de les coses.

Tota informaci s formada per dades o unitats relacionades.

1.2.2. Elements de la informaci


La informaci s formada per les dades. Les dades sutilitzen per a produir informaci que ens ajuda a prendre decisions.

Les dades sn tot all que forma la informaci.

Les dades sn fets o objectes que no han estat manipulats.

Les dades no sn totes del mateix tipus. Si pensem en la nostra adrea postal, podem comprovar que hi ha diferents tipus de carcters.

Un carcter s cadascun dels smbols que forma part de la informaci.

Sistemes operatius monolloc

13

Introducci als sistemes operatius

Podem classificar les dades segons els tipus segents: 1) Numriques. Formades per nombres (0, 1, ..., 9). 2) Alfabtiques. Formades per lletres (A, B, ..., Z). 3) Alfanumriques. Formades per tots els carcters.

Nombre i nombre alfanumric La diferncia entre un nombre i un nombre alfanumric s que amb els alfanumrics no es poden fer operacions matemtiques.

En lactualitat, lsser hum expressa, comunica, emmagatzema i manipula la informaci mitjanant un sistema numric amb el sistema decimal i un sistema alfabtic amb un llenguatge o idioma determinats. Aix mateix, lordinador, a causa de la construcci basada fonamentalment en circuits electrnics digitals, tracta aquests dos sistemes utilitzant el sistema binari i un sistema de codis.

Un codi s la manera diferent dinterpretar una mateixa informaci. Per exemple, el smbol X, fent servir el codi alfabtic, s una lletra, mentre que si apliquem el codi de les xifres romanes s el nombre 10.

Per qestions tcniques, en la majoria dels casos, els circuits electrnics dun ordinador estan dissenyats per a reconixer els senyals elctrics digitals; per tant, s necessari que els mtodes de codificaci interna soriginin en el sistema binari i que amb aquests mtodes es pugui representar qualsevol informaci i ordre, perqu aix els podrem manipular amb lordinador. Aix ens obliga a transformar internament totes les dades, tant numriques com alfanumriques, en una representaci binria perqu lordinador sigui capa de manipular-les. En els circuits electrnics, des del punt de vista lgic, s costum representar la presncia de tensi en un punt del circuit per mitj del nombre 1, mentre que el 0 representa labsncia de tensi. Aquesta terminologia es coneix com la lgica positiva. Tamb es pot aplicar la lgica negativa, en qu sintercanvia el significat daquests dos dgits.

Un senyal digital s una magnitud que noms pot tenir dos valors (on i off; activat/desactivat).

Estats dins dun ordinador A lordinador no circulen nombres (zeros i uns), sin que hi pot haver tensi o no. Aquests dos estats, nosaltres els interpretem com a zero i u (passar corrent, no passar corrents).

1.2.3. El sistema binari


Per a un ordinador totes les dades sn nombres: les xifres, les lletres, qualsevol smbol, i fins i tot les instruccions sn nombres. Aix vol dir que qual-

Sistemes operatius monolloc

14

Introducci als sistemes operatius

sevol quantitat, frase o dada semmagatzema en forma de nombre o ms concretament, en forma de zeros i uns. Obligat per aquesta arquitectura, lordinador utilitza un sistema de numeraci diferent del sistema decimal: el sistema binari. Lordinador pot representar les dades de dues maneres: mitjanant sistemes numrics, mitjanant codis alfanumrics.

El sistema binari utilitza dos smbols: el zero i lu.

1.2.4. Mesura de la informaci


En el camp de la informtica, per a mesurar la informaci, sutilitza una unitat base i els seus mltiples. Prendrem com a primera unitat el bit (binary digit).

El bit s la unitat base de mesura de la informaci, que indica la quantitat mnima que forma la informaci. Es representa mitjanant dos smbols, 0 i 1, anomenats bits.

Tota la informaci, les dades i els carcters sn formats per bits. Aleshores, a cada carcter shauria de fer correspondre un bit. Per tant, si utilitzem aquests smbols, noms podem representar la informaci mitjanant els bits de dos carcters: lun assignat al bit 0 i, laltre, al bit 1. Com que tenim i utilitzem ms de dos carcters, aquest sistema no s el ms adient per a representar la informaci. Per aix, es va decidir treballar en grups de quatre bits, anomenats quartets, per a representar tots els carcters. El nombre total de combinacions possibles amb els bits 0 i 1 serien: 16 (24 = 16). Aix permet representar tots els nombres i alguns carcters ms, per no tots els smbols. Finalment, es va decidir treballar en grups de vuit bits, que dna 256 combinacions possibles (28) i permet representar tots els smbols.

Els quartets sn un sistema per a representar la informaci en grups de quatre bits.

Un grup de vuit bits sanomena byte. Aquest grup tamb es coneix amb el nom doctet.

En la taula 1, es mostra un resum dels prefixos utilitzats en la mesura de la informaci que ens resultar molt til.

Sistemes operatius monolloc

15

Introducci als sistemes operatius

Taula 1. Prefixos ds convencional en informtica Nom unitat kilo mega giga tera peta exa zetta yotta k M G T P E Z Y Smbol Potncies binries i valors decimals 20 = 1 210 = 1.024 220 = 1.048.576 230 = 1.073.741.824 240 = 1.099.511.627.776 250 = 1.125.899.906.842.624 260 = 1.152.921.504.606.846.976 270 = 1.180.591.620.717.411.303.424 280 = 1.208.925.819.614.629.174.706.176 Hexad ecimal 160 162,5 165 167,5 1610 1612,5 1615 1617,5 1620 Nombre u(n) mil mili miler bili biliard trili triliard quadrili 100 = 1 103 = 1.000 106 = 1.000.000 109 = 1.000.000.000 1012 = 1.000.000.000.000 1015 = 1.000.000.000.000.000 1018 = 1.000.000.000.000.000.0 00 1021 = 1.000.000.000.000.000.0 00.000 1024 = 1.000.000.000.000.000.0 00.000.000 Valors en el SI Diferncia 0% 2% 5% 7% 10% 13% 15% 18% 21%

Ls convencional ha provocat confusions: 1.024 (210) no s 1.000. Els fabricants de dispositius demmagatzematge, habitualment, utilitzen els prefixos binaris; per tant, un disc dur de 28 GB t una capacitat aproximada de 28 230 bytes. Els enginyers de telecomunicacions, en canvi, utilitzen el SI: una connexi de 1 Mbps equival a una transferncia de 106 bits per segon.
SI s labreviatura de sistema internacional.

Hi ha confusi respecte als smbols de les unitats de mesura de la informaci, ja que no sn part del SI. La prctica recomana que el bit es representi amb el smbol b i el byte amb el smbol B.

Les segents sn les principals unitats de mesura informtica: Un kilobyte sn 1.024 (210) bytes. El smbol s kB. s una unitat de mesura comuna per a la capacitat de memria o emmagatzematge dels microordinadors. Els PC dIBM ms antics, per exemple, tenien una capacitat mxima de 640 K, o prop de 640.000 carcters de dades. El megabyte (MB) s una unitat de mesura de la quantitat de dades informtiques. El smbol s MB. s un mltiple binari del byte, que equival a 220 (1.048.576) bytes i a 1.024 kB, tradut a efectes prctics com a 106 (1.000.000) bytes. Un gigabyte s una unitat de mesura informtica equivalent a 210 megabytes (1.024 MB). El smbol s GB. De vegades, en llenguatge informal, els gigabytes sanomenen gigues. Duna manera similar, un terabyte (de smbol, TB) s igual a 1.024 gigabytes o 240 bytes.

Sistemes operatius monolloc

16

Introducci als sistemes operatius

Un petabyte (de smbol, PB) s igual a 1.024 terabytes. 1 PB = 210 TB = 220 GB = 230 MB = 240 kB = 250 bytes. Un exabyte s una unitat de mesura informtica i el seu smbol s EB. Equival a 260 bytes o a 1.024 petabytes. Un zettabyte s una unitat de mesura informtica i el seu smbol s ZB. Equival a 1.024 (210) exabytes o 270 bytes. Un yottabyte s una unitat de mesura informtica i el seu smbol s YB. Equival a 1.024 (210) zettabytes, o 280 bytes. Un brontobyte s una unitat de mesura informtica i el seu smbol s BB. Equival a 1.024 (210) yottabytes, o 290 bytes.
Exemple de conversi dunitats de mesura Disposem dun disc dur amb una capacitat de 250 GB. A quants bytes i bits equival? 1) Primerament, calculem el nombre de bytes de la manera segent: 250 GB 1.024 MB 1.024 KB 1.024 bytes 268.435.456.000 bytes 1 GB 1 MB 1 KB

2) Podem calcular el nombre de bits a partir del resultat del punt anterior:
268.435.456.000 bytes 8 bits 2.147.483.648.000 bits 1 byte

1.2.5. Sistemes de representaci de la informaci numrica


Un sistema de numeraci permet representar la informaci numrica per mitj de dades de significaci numrica i operar-hi, amb uns smbols i unes regles determinats.

Un sistema de numeraci s el conjunt dels smbols i les normes que sutilitzen per a la representaci de la informaci numrica. En tot sistema de numeraci hi ha una base del sistema que indica el nombre de smbols que podem utilitzar. La notaci s: (base. Els sistemes de numeraci sn conjunts de dgits utilitzats per a representar quantitats. Aix, hi ha els sistemes de numeraci decimal, binari, octal, hexadecimal, rom, etc. Els quatre primers es caracteritzen per tenir una base (nombre de dgits diferents: 10, 2, 8 i 16, respectivament), mentre que el sistema rom no t base i la seva utilitzaci resulta ms complicada, tant amb nombres com en les operacions bsiques (sumes, restes, multiplicacions i divisions).

Sistemes operatius monolloc

17

Introducci als sistemes operatius

Quan la majoria de la gent escolta la paraula digital, immediatament pensa

en un ordinador digital, encara que lordinador sigui una de les moltes aplicacions dels circuits electrnics i dels principis digitals. El terme digital prov de la forma en qu es representen quantitats o magnituds fsiques.
mV s el smbol de millivolts. 1 mV sn 103 volts.

Una magnitud analgica com una tensi elctrica o la velocitat pot tenir qualsevol valor dins dun interval continu. Per exemple, la tensi a la sortida dun micrfon podria ser dins de qualsevol valor entre 0 mV i 10 mV. En la representaci digital, les quantitats representades per dgits no poden tenir qualsevol valor, sin sols valors discrets. Per exemple, un rellotge digital marca el temps del dia en forma de dgits decimals (hores, minuts i segons). Ara b, el temps varia duna manera contnua, per la posici de les busques del rellotge no varia duna manera contnua, sin a passos (segons). s a dir, el rellotge noms pot donar valors discrets.

Un sistema digital s una combinaci de dispositius (generalment electrnics) dissenyada per a manipular quantitats fsiques o informaci que estigui representada de manera digital (per exemple, els ordinadors, les calculadores digitals, els equips dudio i vdeo digital, els telfons digitals, etc.). La tecnologia digital utilitza molts sistemes de nombres. Els ms comuns sn: 1) Sistema decimal. El sistema decimal s el ms conegut, ja que lutilitzem contnuament. s format per deu smbols 0, 1, 2, 3, 4, 5, 6, 7, 8, i 9 amb els quals es pot representar qualsevol quantitat numrica. Aquest sistema tamb s conegut com de base 10. s un sistema de valor posicional. 2) Sistema binari. s el sistema de numeraci que utilitzen internament els circuits digitals que configuren el maquinari dels ordinadors actuals. La base s 2, i aix vol dir que es fan servir dos smbols per a representar la informaci, que sn 0 i 1. Cadascun daquests smbols s conegut per la paraula bit (de langls binary digit). Una combinaci de vuit bits sanomena byte (per exemple, 10011001). 3) Sistema octal. La base s 8. Per tant, els smbols que es poden aplicar sn 0, 1, 2, 3, 4, 5, 6 i 7. 4) Sistema hexadecimal. La base s 16. Per aquest motiu, es fan servir setze smbols, dels quals els deu primers sn els nombres 0, 1, 2, 3, 4, 5, 6, 7, 8 i 9, i els sis segents sn les lletres A, B, C, D, E, F (els valors respectius sn de 10 per a A, 11 per a B, 12 per a C, 13 per a D, 14 per a E i 15 per a F). Per exemple, 19AC3 s un nombre en base hexadecimal.

En un sistema de valor posicional el valor dun dgit depn de la posici.

Sistemes operatius monolloc

18

Introducci als sistemes operatius

1.2.6. Teorema fonamental de la numeraci


Els sistemes de numeraci sn posicionals; s a dir, el valor relatiu de cada smbol s determinat pel seu valor absolut i per la seva posici relativa respecte de la coma decimal. Tot nombre es pot convertir al sistema decimal, utilitzant el teorema fonamental de la numeraci.
Matemticament, es compleix que a0 = 1 (a representa un nombre).

El teorema fonamental de la numeraci (TFN) diu que el valor decimal duna quantitat expressada en altres sistemes de numeraci sexpressa segons el polinomi segent: ... + x4b4 + x3b3 + x2b2 + x1b1 + x0b0 + ... en qu el smbol b representa la base i x sn els dgits del nombre.

Exemples de conversi a decimal 1) Donat el nmero 1011(2, en calculem el valor decimal. Apliquem el TFN: 1011(2 = 1 23 + 0 22 + 1 21 + 1 20 = 8 + 0 + 2 + 1 = 11(10 Recordeu que qualsevol nombre elevat a zero val 1. 2) Tenim la quantitat 3221,03(4 que sexpressa en base 4, aquesta base utilitza per a representar quantitats els dgits 0, 1, 2 i 3. Quin ser el valor corresponent en el sistema decimal? 3 43 + 2 42 + 2 41 + 1 40 + 0 41 + 3 42 = 3 64 + 2 16 + 2 4 + 1 1 + 0 0,25 + 3 0,0645 = 233,1875(10

1.2.7. Conversi entre sistemes de numeraci


Moltes vegades, ens trobarem amb la necessitat de convertir quantitats dun sistema de numeraci a un altre. En aquests casos, cal tenir en compte tota una srie de regles. 1) Conversi de nombres enters Per a comprovar com sefectua la conversi de nombres enters, analitzarem els casos segents amb exemples: a) Conversi duna base b a base 10. Es pot fer mitjanant els mtodes segents: Teorema fonamental de la numeraci
Exemple daplicaci del teorema fonamental de la numeraci Representeu el 4123(5 en base 10 segons el teorema fonamental de la numeraci. 4123(5 = 4 53 + 1 52 + 2 51 + 3 50 = 500 + 25 + 10 + 3 = 538 (10

Sistemes operatius monolloc

19

Introducci als sistemes operatius

Regla de Ruffini (figura 1)


Figura 1. Regla de Ruffini

b) Conversi de base decimal a base b. Hi ha diversos mtodes, per el ms fcil s el de divisions successives per la base. Es tracta danar dividint el nombre i els quocients successius entre la base fins que trobem un quocient ms petit que el divisor (base). La uni de tots els residus obtinguts escrits en ordre invers i de lltim quocient ens donar el resultat buscat.
Exemple de conversi de base decimal a base b Passeu el nombre 75(10 a base 2. 75/2 = 37 + residu 1 37/2 = 18 + residu 1 18/2 = 9 + residu 0 9/2 = 4 + residu 1 4/2 = 2 + residu 0 2/2 = 1 + residu 0 El resultat s: 1 (ltim quocient) 0 (ltim residu) 0 (penltim residu) 1 (antepenltim residu) 0 (...) 1 (...) 1 (...) El resultat ser: 1001011(2

c) Conversi de base b a base b. El mtode que sha de seguir pot ser el segent: Passar el nombre en base b a base 10. Passar el resultat anterior a la base b.
Exemple de conversi de base b a base b Passeu el nombre 101(2 a base 3. 1) 101(2: s el 5 en base 10. Heu daplicar el TFN. 2) 5(10: s el 12(3. Podeu aplicar la regla de Ruffini.

2) Conversi de nombres decimals Comprovarem com es fa la conversi de nombres decimals analitzant els exemples dels casos segents: a) Conversi duna base b a base 10. El mtode que utilitzarem s el del teorema fonamental de la numeraci.

Sistemes operatius monolloc

20

Introducci als sistemes operatius

Exemple de conversi de base b a base 10 Passeu el nombre 210,3(4 a base 10. Apliquem el TFN: 210,3(4 = 2 42 + 1 41 + 0 40 + 3 41 = 32 + 4 + 0 + 3/4 = 32 + 4 + 0 + 0,75 = 36,75(10

b) Conversi de base decimal a 3base b. Ho explicarem mitjanant un exemple.


Exemple de conversi de base decimal a base b Passeu el nombre 12,35(10 a base 2. El mtode que utilitzarem s el segent: 1) Prenem la part entera i seguim el mateix procs que amb els nombres enters (mtode de les divisions successives). 12(10 = 1100(2 2) A continuaci, agafem la part fraccionria del nombre, 0,35, la multipliquem per la base i nagafem la part entera. 0,35 2 = 0,70. Agafem el valor 0 del 0,70. 3) Repetim el procs anterior amb la part fraccionria del resultat anterior. 0,70 2 = 1,40. Agafem el valor 1 d1,40. 4) Repetim el procs anterior amb la part fraccionria del resultat anterior. 0,40 2 = 0,80. Agafem el valor 0 de 0,80. 5) Com ms vegades repetim el procs, ms precs ser el resultat. El resultat ser 1100,010(2

c) Conversi de base b a base b. Sha daplicar el mateix mtode de la conversi de nombres enters, per aplicats a nombres fraccionaris.
Exemple de conversi de base b a base b Transformeu el nombre 12,2(3 a base 2. 1) Passem el nombre 12,2(3 a base 10. 12,2(3 = 1 31 + 2 30 + 2 31 = 3 + 2 + 2/3 = 5 + 0,66 = 5,66(10 2) Passem el nombre 5,66(10 a base 2. 5,66(10 = 101,101(2.

d) Hi ha una regla que ens permet passar ms directament de binari a octal i de binari a hexadecimal. Pas binari-octal: amb el nombre binari fem grups de tres dgits comenant per la dreta i desprs el passem a decimal.
Exemple de binari-octal Passeu el binari 10.111 a octal. El procs pot ser: 1) 111(2. En base 10 s 7; i en octal s el 7. 2) 10(2. En base 10 s 2; i en octal s el 2. El resultat que obtenim s 27(8.

Sistemes operatius monolloc

21

Introducci als sistemes operatius

Pas binari-hexadecimal: amb el nombre binari fem grups de quatre dgits comenant per la dreta.
Exemple de binari-hexadecimal Passeu 101011(2 a hexadecimal. El procs pot ser: 1) 1.011(2 en base 10 s 11; i correspon a lhexadecimal B. 2) 10(2 en base 10 s 2; i correspon a lhexadecimal 2. El resultat que obtenim s 2B(16.

1.2.8. Operacions bsiques amb sistemes de numeraci


De la mateixa manera que en el sistema de numeraci decimal podem fer les operacions bsiques de clcul (suma, resta, multiplicaci i divisi), en el sistema binari octal i hexadecimal tamb les podem fer. En presentem a continuaci alguns exemples. 1) Suma en binari La suma en qualsevol base binria es fa igual que en el sistema decimal. Si el resultat no s en la base corresponent sha dexpressar en base binria.
Exemple de suma en binari Feu la suma segent en binari: 111 + 11 + 1. El procs pot ser el segent: 1) 111 11 + 1 ____ 123 2) Passem el dgit 3 a binari 11. 3) Substitum aquest valor en 3 i tornem a sumar: 12 + 11 ____ 131 4) Cal repetir el procs en tots els dgits que no siguin en la base corresponent. Aix, el resultat ser 1011. No obstant aix, sha de comprovar.

2) Resta en binari Lalgorisme de la resta en binari s el mateix que en el sistema decimal. Les restes bsiques 0 0, 1 0 i 1 1 sn evidents: 0 0 = 0; 1 0 = 1; 1 1 = 0

Sistemes operatius monolloc

22

Introducci als sistemes operatius

La resta 0 1 es resol igual que en el sistema decimal, agafant una unitat prestada de la posici segent: 0 1 = 1 i en porto 1. Aix equival a dir en decimal: 2 1 = 1. Aquesta unitat prestada sha de retornar sumant-la a la posici segent.
Exemples de resta en binari Restem 17 10 = 7 10001 01010 _____ 00111 Exemple de resta en binari Fem loperaci segent en binari: 10110 11 __________ 10011 Comproveu-ho! Restem 217 171 = 46 11011001 10101011 ________ 00101110

3) Multiplicaci en binari La multiplicaci en qualsevol base binria es fa igual que en el sistema decimal. Si el resultat no s en la base corresponent, sha dexpressar en base binria.
Exemple de multiplicaci en binari Fem loperaci segent en binari: 10010 101 ____________ 10010 00000 +1 0 0 1 0 _______________ 1011010 Cal comprovar que el resultat sigui en la base corresponent.

4) Divisi en binari La divisi en qualsevol base binria es fa igual que en el sistema decimal.
Exemple de divisi en binari Fem loperaci segent en binari:
11011 101 101 101 quocient 00111 101 010 residu

Sistemes operatius monolloc

23

Introducci als sistemes operatius

1.2.9. Representaci dels nombres enters

Els ordinadors poden fer servir diferents mtodes per a representar internament els nombres enters, positius i negatius. Entre altres mtodes destaquen: 1) Mdul i signe. 2) Complement a 1. 3) Complement a 2. 4) Excs a 2n 1. La paraula s el nombre de bytes que pot gestionar lordinador, s a dir, el nombre de bits que lordinador s capa de manipular per a fer operacions internes. Aquesta quantitat depn del disseny de la mquina: hi ha ordinadors amb paraules de 8, 16, 32 i 64 bits. Per aix, la representaci dun mateix nombre ser diferent en mquines de paraules diferents.

Paraula En un ordinador disposem dun nombre limitat de bits per a la representaci dun nombre. Aquest lmit s fixat pel concepte de paraula.

Exemples de paraules 1) Paraules d1 byte a) Nombres enters sense signe: 28 = 256 combinacions diferents. Valors possibles: 0 a 255 b) Nombres enters amb signe: 27 = 128 combinacions diferents. Valors possibles: 128 a 127 2) Paraules de 2 bytes a) Nombres enters sense signe: 216 = 65.536 combinacions diferents. Valors possibles: 0 a 65.535 b) Nombres enters amb signe: 215 = 32.768 combinacions diferents. Valors possibles: 32.768 a 32.767 3) Paraules de 4 bytes a) Nombres enters sense signe: 232 = 4.294.967.200 combinacions diferents. Valors possibles: 0 a 4.294.967.199 b) Nombres enters amb signe: 231 = 2.147.483.600 combinacions diferents. Valors possibles 2.147.483.600 a 2.147.483.599

En tots els mtodes que explicarem a continuaci, suposem que treballem amb un ordinador en qu la paraula s dun byte i que el bit del signe s a la part esquerra del byte (nombres positius, 0, i nombres negatius, 1). 1) Mdul i signe

El mtode de mdul i signe representa els nombres positius i negatius de la manera que sindica a continuaci: el nombre es passa a binari i el resultat es colloca en el byte de dreta a esquerra. Cal recordar que el bit en qu es guarda el signe se situa a la part esquerra del byte. Les posicions no utilitzades somplen amb zeros.

Sistemes operatius monolloc

24

Introducci als sistemes operatius

Exemple de mdul i signe Representem el nombre 10(10. Resultat: 0 0 0 0 1 0 1 0 Exemple de mdul i signe Representem el nombre 10(10. Resultat: 1 0 0 0 1 0 1 0

2) Complement a 1 (C 1)

El mtode de complement a 1 (C 1) representa els nombres positius igual que el mtode de mdul i signe. Per als nombres negatius el procs s el segent: a) Es representa com a positiu. b) Es canvien els bits 0 per 1 i els bits 1 per 0.

Exemple de complement a 1 Representem el nombre 10(10. 1) El binari ser 0 0 0 0 1 0 1 0. 2) Canviem els bit 0 per 1 i el bit 1 per 0. El resultat ser: 1 1 1 1 0 1 0 1.

3) Complement a 2 (C 2)

El mtode de complement a 2 (C 2) representa els nombres positius igual que en el mtode de mdul i signe. Per als nombres negatius el procs s el segent: a) Es representa igual que el mtode de complement a 1. b) Se suma el valor 1 al bit que s ms a la dreta.

Exemple de complement a 2 Representem el nombre 10(10. 1) El complement a 1 ser 1 1 1 1 0 1 0 1. 2) Sumem 1 al bit que s ms a la dreta. El resultat ser 1 1 1 1 0 1 1 0.

4) Excs a 2n 1

La variable n representa el nombre de bits que forma la paraula de lordinador. El procs de clcul que seguirem s el segent: a) Valor = 2n 1 + nombre. b) Passem el valor a binari. c) El colloquem en el byte.

Sistemes operatius monolloc

25

Introducci als sistemes operatius

Exemple dexcs a 2n 1 Representem el nombre 10(10. 1) Valor = 2n 1 + 10 = 28 1 + 10 = 128 + 10 = 138. 2) El valor 138 en binari s 1 0 0 0 1 0 1 0. 3) El resultat ser 1 0 0 0 1 0 1 0.

1.2.10. Representaci dels nombres en coma o punt fix


Amb la representaci dels nombres en coma, el punt decimal de les quantitats se situar en un lloc determinat. El punt fix sutilitza per a la representaci de nombres enters, suposant que el punt decimal s implcitament a la dreta dels bits.

Poden emprar els mtodes segents de representaci dels nombres en coma o punt fix: decimal desempaquetat, decimal empaquetat.

1) Mtode del decimal desempaquetat

El procs de clcul que cal seguir en utilitzar el mtode de decimal desempaquetat s el segent: a) Representarem cada dgit utilitzant 1 byte. b) Cada byte s format per dues zones de 4 bits cadascuna. La primera sanomena rea de zona (si posa 1111, si el que volem representar sn nombres) i, laltra, rea de dgit (collocarem el dgit del nombre en binari). c) En lrea de zona del byte que se situa ms a la dreta posarem el signe del nombre (positius, 1100; negatius, 1101, per exemple).

Exemple de format desempaquetat Representem en format desempaquetat el nombre +1999(10. 1 9 9 + 9

11110001 11111001 11111001 11001001 El resultat en binari ser 11110001 11111001 11111001 11001001.

Sistemes operatius monolloc

26

Introducci als sistemes operatius

2) Mtode del decimal empaquetat

El procs de clcul que seguirem en utilitzar el mtode del decimal empaquetat s el segent: a) Cada dgit es representa amb quartets. b) 2 dgits sutilitzen per a omplir un byte. c) El signe se situa en lltim quartet del byte que s ms a la dreta. d) Els quartets no utilitzats dalguns bytes somplen amb zeros.

Exemple de format empaquetat Representem el nombre +1999 en format empaquetat. 0 1 9 9 9 +

0000 0001

1001 1001

1001 1100

1.2.11. Sistemes de representaci de la informaci alfanumrica


A lhora dintroduir dades a lordinador, per a manipular-les, lideal seria comunicar-se amb lordinador de manera parlada o escrita utilitzant el mateix llenguatge que fem servir per a comunicar-nos amb altres persones.

Dades Les dades formen la informaci i es representen mitjanant lletres, nombres i altres smbols, que en conjunt formen el que sanomena en angls character set.

Avui dia, les formes naturals de comunicaci encara no estan suficientment desenvolupades. Lordinador noms entn la informaci en forma de senyals elctrics que nosaltres representem mitjanant dos smbols, el 0 i l1. En aquest sentit, treballa i opera seguint les regles de laritmtica binria.

El teclat dun ordinador o les barres dimpressi tenen gravats el propi joc de carcters. Quan premem una tecla, el dispositiu produeix un senyal elctric que representa i transporta el carcter contingut en aquesta tecla; aquest senyal transmet el carcter corresponent a lordinador per mitj dun cable o daltres dispositius.

Impulsos elctrics Els impulsos elctrics sn formats per senyals que corresponen a zeros i a uns (equivalents a dos estats: off (apagat) i on (engegat).

Cadascun dels senyals elctrics produts per un teclat s format per una srie dimpulsos o tren dimpulsos. Cada carcter es transmet per mitj dun tren dimpulsos i segons un codi determinat. Tant els codis binaris utilitzats pels dispositius dentrada de dades com el teclat i la cinta magntica varien segons el dispositiu que els tracti. Aquests codis sanomenen codis externs.
Teclat

Sistemes operatius monolloc

27

Introducci als sistemes operatius

A lordinador sutilitza un nic codi binari per a totes les dades, independentment don vinguin. Aquest codi sanomena codi intern o codi alfanumric, i s diferent dun fabricant a un altre (IBM fa servir el codi EBCDIC als grans ordinadors i als microordinadors aplica el codi ASCII).

Hi ha dhaver una conversi de codis entre formes externes i internes. Aquesta conversi es pot fer dins del mateix dispositiu dentrada, dins del processador, abans darribar al processador, en un dispositiu anomenat interfcie o connexi. Tamb cal indicar que, en tot aquest procs, hi ha un sistema de control derrors per a assegurar que les dades arribin correctament a la destinaci. Les tcniques de control derrors poden ser molt variades, una delles s lanomenada tcnica de control de paritat.

La interfcie s un dispositiu de connexi que converteix els codis externs en interns o al revs.

El control de paritat s una tcnica de control derrors en la transmissi de la informaci.

Hi ha dos tipus de control de paritat: 1) Paritat parella. El nombre total de bits 1 en cada byte ha de ser parell; si no, en el bit de paritat es posa un 1 i, en cas contrari, es posa un 0. 2) Paritat senar. El nombre total de bits 1 en cada byte ha de ser senar; si no, en el bit de paritat es posa un 1 i, en cas contrari, es posa un 0.

1.2.12. Codificaci interna de les dades

Es denomina codificaci la manera diferent dentendre un mateix smbol en funci del sistema davaluaci que fem servir. No t el mateix significat el smbol X interpretat com a lletra que com a nombre en el sistema de codificaci romana.

Tenim diferents sistemes de codificaci interna de les dades: 1) Codi ASCII. s un codi que es fa servir avui dia per a representar cada carcter en forma dun byte i que saplica principalment en els microordinadors. 2) Codi EBCDIC. Tamb s un codi de 8 bits i saplica principalment en grans ordinadors. A la taula 2 podeu veure la representaci de diversos carcters en codis ASCII i EBCDIC.

ASCII ASCII s la sigla dAmerican standard code for information interchange, en catal, codi estndard americ per a lintercanvi dinformaci.

Sistemes operatius monolloc

28

Introducci als sistemes operatius

Taula 2. Representaci de carcters en els codis ASCII i EBCDIC Carcter A B C D E F G H I J K L M ASCII 01000001 01000010 0100 0011 01000100 01000101 01000110 01000111 01001000 01001001 01001010 01001011 01001100 01001101 EBCDIC 11000001 11000010 11000011 11000100 11000101 11000110 11000111 11001000 11001001 11010001 11010010 11010011 11010100 Carcter N O P Q R S T U V W X Y Z ASCII 01001110 01001111 01010000 01010001 01010010 01010011 01010100 01010101 01010110 0101 0111 01011000 01011000 01011010 EBCDIC 11010101 11010110 11010111 11011000 11011001 11100010 11100011 11100100 11100101 1110 0110 11100111 11101000 11101001 EBCDIC EBCDIC s la sigla dextended binary coded decimal interchange code, en catal, codi ampliat dintercanvi de decimals codificats en binari.

3) Codi Unicode. s un codi de 16 bits; per tant, el nombre de carcters que podem representar s de 216: 65.536 carcters. Tamb cal recordar que en tota comunicaci, a ms de les dades que hem de transmetre, hi ha altres senyals, principalment de control, que cal tenir en compte, com ara: el comenament i la fi de capalera, el comenament i la fi de transmissi, etc. El codi Unicode proporciona un nombre per a cada carcter, independentment de la plataforma, el programa i lidioma. Abans dinventar-se el sistema Unicode, hi havia centenars de sistemes de codificaci diferents per a assignar nombres. Cap codificaci no tenia prou nombres per a representar tots els carcters que sutilitzen en el mn.

Unicode s lacrnim duniversal code, en catal, codi universal.

El consorci Unicode El consorci Unicode s una organitzaci sense nim de lucre creada per a desenvolupar, difondre i promoure ls de la norma Unicode, que especifica la representaci del text en productes i estndards moderns. s integrat per una mplia gamma de corporacions i organitzacions de la indstria informtica i del processament de la informaci. El consorci es finana amb les quotes dels socis. Lafiliaci s oberta a organitzacions i individus de qualsevol part del mn que donin suport a la norma Unicode i que vulguin collaborar en la seva difusi i aplicaci.

1.3. Sistemes transaccionals


La informaci ha estat manipulada i tractada de diferents maneres, segons el moment histric i els avenos tecnolgics que hi ha hagut en cada poca.

Podem definir el tractament de la informaci com el conjunt doperacions que shan defectuar sobre les dades que componen la informaci.

Sistemes operatius monolloc

29

Introducci als sistemes operatius

En tot procs de tractament de la informaci hi ha dhaver tres elements imprescindibles perqu el tractament sigui eficient: lemissor, el canal i el receptor.

Lemissor s el responsable de generar la informaci (per exemple, una persona quan parla, un llibre quan llegim, etc.). El canal s lelement que permet la transmissi de la informaci (per exemple, laire quan parlem, el fil de telfon en les comunicacions telefniques, etc.). El receptor s lelement que rep la informaci (per exemple, en aquest moment concret, sou vosaltres que esteu estudiant aquesta unitat didctica).

Moltes vegades hem sentit la paraula sistema dinformaci i potser ens hem preguntat qu vol dir aix.

Elements dun sistema dinformaci Per a aconseguir els seus objectius, un sistema dinformaci utilitza diversos elements: 1) El maquinari necessari perqu el sistema dinformaci pugui operar. 2) El programari que gestiona la informaci que cal tractar.

Un sistema dinformaci s un conjunt delements que interactuen entre ells amb lobjectiu daconseguir uns fins determinats (per exemple, una empresa, un negoci, etc.).

Un sistema dinformaci fa quatre activitats bsiques: 1) Lentrada dinformaci s el procs mitjanant el qual el sistema dinformaci agafa les dades que necessita per a processar la informaci. Les entrades poden ser manuals o automtiques. Lentrada dinformaci de manera manual consisteix que la informaci s subministrada per lusuari, mentre que en lentrada dinformaci automtica les dades o les informacions sn subministrades per altres sistemes. Les unitats tpiques dentrada de dades als ordinadors sn els terminals, les cintes magntiques, les unitats de discos magntics, els codis de barres, els escners, els teclats, etc. 2) Lemmagatzematge de la informaci s una de les activitats o capacitats ms importants que t un ordinador, ja que mitjanant aquesta propietat el sistema pot recordar la informaci guardada en la fase o en el procs anteriors. Aquesta informaci sacostuma a emmagatzemar en estructures dinformaci anomenades arxius i bases de dades. Els dispositius tpics demmagatzematge sn els discos magntics (per exemple, els discos durs i els discos flexibles o disquets) i les unitats de CD/DVD. 3) El processament de la informaci s la capacitat del sistema dinformaci per a fer clculs dacord amb una seqncia daccions preestablertes

3) Els recursos humans que interactuen amb el sistema dinformaci.

Arxiu i bases de dades Un arxiu s un conjunt dinformaci relacionada. Una base de dades s un conjunt de fitxers relacionats.

Sistemes operatius monolloc

30

Introducci als sistemes operatius

determinada. Aquests clculs es poden fer amb dades introdudes en el sistema o b amb dades que estan emmagatzemades en el mateix sistema. Aquesta caracterstica dels sistemes permet la transformaci de les dades origen en una informaci que pot ser utilitzada per a prendre decisions a posteriori. 4) La sortida de la informaci s la capacitat dun sistema dinformaci per a treure la informaci processada o b les dades dentrades a lexterior. Els dispositius tpics de sortida sn les impressores, els terminals, les cintes magntiques, els discos magntics, els altaveus, etc. Tamb cal dir que la sortida dun sistema dinformaci pot constituir lentrada a un altre sistema dinformaci.
En els propers anys, els sistemes dinformaci intentaran aconseguir dins de les organitzacions els objectius segents: 1) Lautomatitzaci dels processos operatius. 2) Que el subministrament dinformaci sigui la base del procs en la presa de decisions. 3) Lassoliment davantatges competitius a partir de la implementaci i de ls. Objectius dels sistemes dinformaci

Organitzaci Una organitzaci s un conjunt delements que funciona de manera coordinada i que t objectius comuns.

1.3.1. Tipus de sistemes dinformaci


Els sistemes dinformaci que aconsegueixen lautomatitzaci de processos operatius dins duna organitzaci sanomenen sistemes transaccionals, ja que el seu fi s processar transaccions.

Les principals caracterstiques dels sistemes transaccionals Les principals caracterstiques dels sistemes transaccionals sn les segents: 1) Permeten lautomatitzaci de les tasques operatives en les organitzacions. 2) Acostumen a ser els primers sistemes dinformaci que simplementen en una organitzaci. 3) Els processos que duen a terme sn simples i poc sofisticats. 4) Sutilitzen per a subministrar informaci a grans bases de dades. 5) Els avantatges daquests sistemes en una organitzaci sn rpidament visibles.

Un sistema transaccional s un tipus de sistema dinformaci dissenyat per a recollir, emmagatzemar, modificar i recuperar qualsevol tipus dinformaci que s generada en una organitzaci (per exemple, el trasps duna quantitat de diners entre comptes bancaris, sistemes de reserves de bitllets de transports i despectacles, etc.).

1.3.2. Transaccions
Els sistemes transaccionals duen a terme transaccions.

Una transacci s un conjunt daccions que es fa sobre una estructura de dades complexa i que s format per diversos processos que shan daplicar un desprs de laltre. Tota transacci genera o modifica la informaci que es troba eventualment emmagatzemada en un sistema dinformaci.

ACID Tota transacci ha de complir quatre propietats conegudes amb el nom dACID: 1) Atomicitat (atomicity): s la propietat que assegura que loperaci sha fet amb xit o no i, per tant, davant dun problema en el sistema no pot quedar a mitges. 2) Consistncia (consistency): s la propietat que assegura que noms es comena el procs que es pot acabar.

Sistemes operatius monolloc

31

Introducci als sistemes operatius

3) Allament (isolation): s la propietat que assegura que una operaci no en pot afectar daltres. 4) Permanncia (durability): s la propietat que assegura que una vegada executada loperaci, aquesta persistir i no es podr desfer encara que falli el sistema.

1.4. Concepte, elements i estructura dun sistema operatiu


Per a definir qu s un sistema operatiu, cal tenir presents dos aspectes relacionats amb lordinador: el maquinari i el programari.
Maquinari i programari

Lordinador s format per dos elements fonamentals: lelement fsic o maquinari i lelement lgic o programari. Actualment, un ordinador s una mquina molt complexa que pot constar dun o ms processadors, discos, escners, targetes de comunicacions, impressores, mdems, etc. Els dispositius que cont sn de tipus divers (ptics, magntics, etc.), tenen un funcionament molt variat (alguns comparteixen el mateix dispositiu), la tecnologia de funcionament s diferent i el tipus de suport utilitzat t caracterstiques diferents. Aix, si un usuari vol fer servir aquest sistema duna manera eficient, necessita conixer les caracterstiques, controlar-ne el funcionament, etc. Per tant, cal pensar que hi ha dhaver una soluci que permeti als usuaris utilitzar aquesta mquina duna manera ms senzilla, fcil i eficient.

El maquinari (hardware) fa referncia a tot all que podem veure i tocar (el monitor, el teclat, la CPU, etc.). El programari (software) fa referncia als elements que no tenen existncia fsica, com les idees, els conceptes, els programes, les aplicacions, etc.

Una mquina virtual representa la simulaci duna mquina real.

Un sistema informtic monoprocessador s format per una nica unitat central de procs (CPU).

Aplicacions informtiques

Per a facilitar ls de lordinador sha posat per sobre del maquinari una capa de programari amb lobjectiu de gestionar les diferents parts de lordinador duna manera eficient i, alhora, presentar a lusuari una mquina virtual molt ms senzilla dentendre i utilitzar. Aquesta capa de programari s lanomenat programari del sistema, la part ms important del qual s el sistema operatiu.
Les aplicacions informtiques sn un conjunt de programes informtics dmbit divers (exemples: programes de gesti, de jocs, de matemtiques, deines ofimtiques, etc.).

Funci dels elements dun sistema informtic Cadascun dels elements dun sistema informtic t una funci important: 1) El maquinari proporciona els recursos bsics del sistema informtic: el processador, la memria, dispositius dE/S, etc. 2) El sistema operatiu s un conjunt de programes que serveixen dintermediari o interfcie entre els usuaris i el maquinari. 3) Els programes daplicaci sn aplicacions informtiques concretes (per a resoldre els problemes de computaci dels usuaris). 4) Els usuaris sn objectes que fan s de lordinador (persones, altres ordinadors i mquines).

Per a definir el concepte de sistema operatiu, cal conixer el significat de sistema informtic.

Un sistema informtic s un conjunt delements necessaris per a la realitzaci i la utilitzaci de les aplicacions informtiques. Els components principals dun sistema informtic sn: el maquinari, el sistema operatiu, els programes daplicaci, els usuaris.

Sistemes operatius monolloc

32

Introducci als sistemes operatius

1.4.1. Definici de sistema operatiu


Podem definir el sistema operatiu tenint en compte diferents parmetres de valoraci: 1) Segons la funci que tingui. Un sistema operatiu s el suport lgic que controla el funcionament de lequip fsic. 2) Des del punt de vista de lusuari. Un sistema operatiu s un conjunt de programes i funcions que amaguen els detalls del maquinari de manera que donen a lusuari un cam senzill i flexible daccs al sistema. 3) Des del punt de vista de gestor de recursos. Un sistema operatiu s ladministrador de recursos oferts pel maquinari per a obtenir un rendiment eficient. 4) Des del punt de vista del sistema i de loperaci. Un sistema operatiu s el conjunt de programes relacionats entre ells que contribueixen al fet que lordinador faci correctament la feina. 5) En funci de la comoditat i de leficincia. Un sistema operatiu s un conjunt de programes que actuen com a intermediari entre lusuari i el maquinari de lordinador i el seu propsit s proporcionar lentorn en el qual lusuari pot executar programes. Aleshores, lobjectiu principal dun sistema operatiu s aconseguir que el sistema de computaci sutilitzi duna manera cmoda, i lobjectiu secundari s que el maquinari de lordinador sutilitzi duna manera eficient. 6) Des del punt de vista de comunicaci entre lusuari i el maquinari. Un sistema operatiu s un conjunt de programes que controlen lexecuci de programes daplicaci i que actuen com una interfcie entre lusuari i el maquinari dun ordinador; aix, un sistema operatiu explota i administra els recursos de maquinari de lordinador amb lobjectiu de proporcionar un conjunt de serveis als usuaris del sistema. En la figura 2 es mostren els nivells de programari i de maquinari dun ordinador. Tamb hi podeu observar que el sistema operatiu s lnica capa que treballa directament amb el maquinari. Per sobre del sistema operatiu es troba un nivell format pels traductors, editors de text i els intrprets dordres. Els dos primers tipus de programes, juntament amb els enllaadors i els depuradors, sn tils per a crear un nivell dabstracci cmode per al desenvolupament de programes.
Podem imaginar un sistema operatiu com els programes que fan utilitzable el maquinari. El maquinari proporciona la "capacitat bruta doperaci"; els sistemes operatius posen aquesta capacitat doperaci a labast dels usuaris i administren duna manera segura el maquinari per a aconseguir un bon rendiment. Els sistemes operatius sn abans de tot administradors de recursos; el principal recurs que administren s el maquinari de lordinador (els processadors, els mitjans demmagatzematge, els dispositius dE/S, les dades, etc.).

E/S o e/s s labreviatura dentrada-sortida.

Sistema operatiu, un administrador de recursos

Enllaadors i depuradors Els enllaadors sn programes que permeten crear programes executables. Els depuradors sn programes que permeten fer un seguiment dels programes informtics per a comprovar-ne pas a pas el funcionament.

Sistemes operatius monolloc

33

Introducci als sistemes operatius

Figura 2. Nivells de programari i maquinari dun ordinador

La uni dels programes de las dues capes intermdies de la figura conformen el programari de sistemes dun ordinador. Finalment, hi ha el nivell constitut pels programes daplicaci. Aquests programes no donen un servei a altres programes; la seva finalitat s resoldre problemes concrets. Sn els programes que executa un usuari no informtic. Pertanyen a aquesta capa els processadors de text, els fulls de clcul, les agendes electrniques, els jocs, etc. El maquinari facilita els recursos bsics de computaci, mentre que els programes daplicaci defineixen com shan dutilitzar aquests recursos per a resoldre els problemes dels usuaris. Hi pot haver molts usuaris diferents que tractin de resoldre problemes diferents. Consegentment, s habitual lexistncia de diferents programes daplicaci.
Mquina virtual o estesa Una mquina virtual s una interfcie que mant una mquina mitjanant la qual ens dna comunicacions amb els dispositius de lordinador. Daquesta manera, nosaltres treballem a un nivell superior i eliminem la complexitat daquests dispositius. Aix podem mantenir diferents sistemes operatius en funcionament sobre una mateixa mquina.

El sistema operatiu controla i coordina ls del maquinari que fan els diferents programes daplicaci dels diversos usuaris. Els sistemes operatius construeixen recursos dalt nivell que denominem virtuals, a cpia damagar els que realment hi ha en el nivell baix i que anomenem fsics. En conseqncia, des del punt de vista de lusuari o del procs, la mquina fsica s convertida pel sistema operatiu en una mquina virtual, tamb coneguda com a mquina estesa, que, a diferncia de la fsica, ofereix a lusuari moltes ms funcions i ms comoditat a lhora dutilitzar-la.

El sistema operatiu, daltra banda, proporciona serveis dels quals no disposa el maquinari, com, per exemple, la possibilitat dutilitzar lordinador per diversos usuaris, la multiprogramaci, etc. En la figura 3 es pot visualitzar la relaci que hi ha entre els usuaris i el sistema operatiu.

Sistemes operatius monolloc

34

Introducci als sistemes operatius

Figura 3. Esquema de relaci entre els usuaris i el sistema operatiu

1.4.2. Elements dun sistema operatiu

Els sistemes operatius sn formats, bsicament, per les estructures segents: el nucli (kernel), ladministrador de memria, el sistema dentrada/sortida, ladministrador darxius.

Vegem amb detall els elements que formen els sistemes operatius: 1) Nucli. El nucli s el mdul ms baix del sistema operatiu i descansa directament sobre el maquinari de lordinador. Entre les tasques que fa hi ha la manipulaci de les interrupcions, lassignaci de treballs al processador i loferiment duna via de comunicaci entre els diferents programes. En general, el nucli sencarrega de controlar la resta dels mduls i sincronitzar-ne lexecuci. El nucli cont un submdul anomenat planificador, el qual sencarrega dassignar els temps de processador als programes, dacord amb una certa poltica de planificaci que varia dun sistema operatiu a un altre. Normalment sutilitza una jerarquia de prioritats que determinen com sassignar el temps de CPU a cada programa. Una poltica de planificaci molt com en els sistemes operatius multiprogramats i multiaccs sn les tcniques de time slicing (fracci de temps). Sassigna a cada programa un cert interval de temps del processador. Si el programa no ha acabat durant aquest temps, torna a la cua de programes.

Intrpret dordres De vegades, es considera que lintrpret de comandaments, o intrpret dordres, s una estructura ms del sistema operatiu. El sistema operatiu sencarrega de "traduir" les ordres que lusuari ingressa mitjanant el teclat o altres dispositius a un "llenguatge" que la mquina pugui entendre.

Sistemes operatius monolloc

35

Introducci als sistemes operatius

2) Administrador de memria. Aquest mdul sencarrega dassignar certes porcions de la memria principal (RAM) als diferents programes o parts dels programes que la necessiten, mentre que la resta de dades i els programes es mantenen en els dispositius demmagatzematge massiu. Daquesta manera, quan sassigna una part de la memria principal es fa duna manera estructurada, seguint un ordre determinat. La manera ms comuna dadministraci de la memria implica crear una memria virtual; amb aquest sistema, la memria de lordinador apareix, per a qualsevol usuari del sistema, ms gran del que s. 3) Sistema dentrada/sortida (E/S). Aquest component presenta a lusuari les dades com una qesti independent del dispositiu; s a dir, per als usuaris, tots els dispositius tenen les mateixes caracterstiques i sn tractats de la mateixa manera, i el sistema operatiu s el responsable datendre les particularitats de cadascun dells. Una tcnica molt com, especialment en la sortida dinformaci, s ls de gestors de cues (spoolers). Les dades de sortida semmagatzemen duna manera temporal en una cua situada en un dispositiu demmagatzematge massiu (spool), fins que el dispositiu perifric corresponent es troba lliure; daquesta manera, sevita que un programa quedi retingut perqu el perifric no est disponible. 4) Administrador darxius. Aquesta part del sistema operatiu sencarrega de mantenir lestructura de les dades i els programes del sistema corresponents als diferents usuaris i dassegurar ls efectiu dels mitjans demmagatzematge massiu. Ladministrador darxius tamb supervisa la creaci, lactualitzaci i leliminaci dels arxius, i mant un directori amb tots els arxius que hi ha en el sistema en cada moment i coopera amb el mdul dadministraci de memria durant les transferncies de dades des de la memria principal i cap a ella i dels mitjans demmagatzematge massiu per a mantenir lestructura de lorganitzaci.

Privilegis daccs dels arxius Els arxius desats en els dispositius demmagatzematge massiu tenen diferents propsits. Alguns contenen informaci que pot ser compartida. Daltres sn de carcter privat i fins i tot secret. Per tant, cada arxiu est dotat dun conjunt de privilegis daccs, que indiquen lextensi amb la qual es pot compartir la informaci continguda en larxiu. El sistema operatiu comprova que aquests privilegis no siguin violats.

1.4.3. Estructura dun sistema operatiu


Hi ha diferents estructures a escala interna que han de presentar o que presenten els sistemes operatius. Bsicament sn set: 1) Estructura monoltica

Lestructura monoltica dun sistema operatiu s formada per un programa que s integrat per un conjunt de rutines entrellaades de tal manera que cadascuna pot cridar qualsevol altra. Lestructura consisteix en el fet que no hi ha estructura.

Sistemes operatius monolloc

36

Introducci als sistemes operatius

Lestructura monoltica s lestructura dels primers sistemes operatius. Les segents sn les principals caracterstiques daquesta estructura: s una estructura molt com. De fet, no hi ha una estructura prpiament o s mnima. El sistema operatiu s una collecci de procediments que es poden cridar entre ells. Cada procediment t una interfcie ben definida en termes de parmetres i resultats. En la figura 4 podeu veure un esquema de lestructura monoltica dels sistemes operatius.
Figura 4. Sistemes monoltics Una interfcie s un conjunt deines que faciliten la comunicaci entre els usuaris i el sistema. Un procediment s un bloc daccions que es criden des dun mateix programa.

2) Estructura jerrquica o en capes A mesura que anaven creixent les necessitats dels usuaris tamb anaven creixent els sistemes operatius. Aleshores, va caldre una organitzaci del programari ms bona, per la qual cosa va esdevenir necessari un altre tipus dorganitzaci. Una manera dorganitzar millor les coses va consistir a dividir el sistema operatiu en petites parts independents, per amb capacitat de relaci amb les altres, de tal manera que cadascuna estigus perfectament definida i amb una interfcie amb la resta dels elements. Normalment aquest sistema sestructurava en capes en qu cadascuna tenia assignades funcions concretes i especialitzades. Aquesta divisi en capes va donar lloc a la divisi en funcions.

Els sistemes operatius destructura jerrquica sorganitzen en les capes segents: Planificaci del processador: gesti del processador i de la manera com poden accedir al processador els diferents programes.

Sistemes operatius monolloc

37

Introducci als sistemes operatius

Gesti de memria: gesti de la memria i de la utilitzaci que en poden fer els diferents programes. Gesti dentrada/sortida: rutines que gestionen cadascun dels perifrics de lordinador. Sistema de fitxers: gestiona la informaci dels usuaris i fixa els mecanismes de protecci necessaris per a aconseguir un sistema de seguretat acceptable. Programes dusuari: aplicacions especfiques dutilitzaci per part de lusuari.

Lestructura jerrquica tamb es pot representar en forma danelles (capes circulars). Les funcions dun nivell superior en poden invocar daltres dels nivells inferiors, per no dels nivells superiors. En la figura 5 podeu veure un esquema de lestructura jerrquica dels sistemes operatius.
Figura 5. Sistemes jerrquics o en capes

3) Estructura de mquina virtual Aquests sistemes presenten al programa una mquina que sembla idntica a la mquina real, anomenada mquina virtual. El nucli daquest sistema operatiu sanomena monitor virtual. El sistema de mquina virtual separa dos conceptes que solen ser junts en tots els sistemes operatius: la multiprogramaci i la mquina estesa.

El monitor virtual t com a missi fer la multiprogramaci de manera que presenta als nivells superiors tantes mquines virtuals com se sollicitin. No sn mquines esteses sin una rplica exacta de la mquina real, de manera que en cadascuna es pot executar un sistema operatiu diferent, que ser el que ofereixi la mquina estesa a lusuari.

Sistemes operatius monolloc

38

Introducci als sistemes operatius

Les caracterstiques principals del monitor sn: Proporciona diverses mquines virtuals a la capa superior. Las mquines virtuals instrumenten cpies exactes del maquinari simple, amb el seu mode nucli/usuari, E/S, interrupcions i tot el que t una mquina real. Poden executar qualsevol sistema operatiu duna manera directa sobre el maquinari. Les diferents mquines virtuals poden executar diferents sistemes operatius i en general aix ho fan. Suporten perifrics virtuals. 4) Estructura client/servidor Es tracta de traslladar tot el codi possible a les capes superiors i alliberar tant com es pugui les capes inferiors del sistema operatiu per a aconseguir un nucli mnim.

Mode nucli i mode usuari El mode nucli s lentorn en el qual es pot gestionar el maquinari. En el mode usuari no s possible interactuar de manera directa amb el maquinari.

El VM/370 dIBM s un exemple de sistema operatiu representatiu de lestructura de mquina virtual.

La idea principal de lestructura client/servidor s implementar la major part de les funcions del sistema operatiu en la capa dels programes de lusuari. Dos elements sn la base daquesta poltica: el nucli i els processos. Es tracta de dissenyar un nucli tan petit com sigui possible i de subministrar mecanismes per a la gesti daccessos a la memria i la comunicaci entre programes. Les poltiques les fixen els programes que fan moltes vegades les funcions que abans feien els sistemes operatius.

Els processos tant poden ser servidors com clients. Un programa daplicaci normal s un client que crida el servidor corresponent per a accedir a un fitxer o per a fer una operaci dE/S sobre un dispositiu. A la vegada, un programa client pot actuar com a servidor dun altre. El nucli t com a missi establir la comunicaci entre els clients i els servidors. En la figura 6 podeu veure un esquema de lestructura client/servidor dels sistemes operatius. En aquest model, que es presenta en la figura, lnic que fa el nucli s controlar la comunicaci entre els clients i els servidors. En separar el sistema operatiu en parts cadascuna delles controla una faceta del sistema, com el servei a fitxers, servei a processos, servei a terminals o servei a la memria; cada part s petita i controlable. A ms, tots els servidors sexecuten com a processos en mode usuari, i no en mode nucli, i no tenen accs directe al maquinari. En conseqncia, si hi ha un error

El client representa lelement que demana un servei a un altre anomenat servidor.

Crida Les crides sn funcions que t el mateix sistema per a fer determinades tasques que poden ser invocades de diferents maneres en determinats moments. Quan un programa executa una crida, la crida sagafa i senvia al sistema operatiu de la seva prpia mquina virtual perqu la gestioni.

Sistemes operatius monolloc

39

Introducci als sistemes operatius

en el servidor de fitxers, aquest pot fallar, per aix no afectar el funcionament general de tota la mquina.
Figura 6. Estructura de sistema operatiu client/servidor

Mode usuari i mode supervisor El mode usuari ofereix els entorns en qu corren totes les aplicacions dusuari. Per exemple, els programes Win32 corren en el subsistema Win32. El mode nucli, supervisor o privilegiat se situa entre el mode usuari i la capa fsica (el maquinari) i evita que el mode usuari accedeixi directament al maquinari. El mode nucli s la residncia dels diferents serveis del sistema operatiu que sencarrega de totes les operacions internes del sistema operatiu. En resum, podem dir que mentre sexecuta una crida del nucli som en mode nucli i quan executem codi que no pertany al nucli es diu que som en mode usuari. Aix garanteix en lmbit del maquinari que cap programa dusuari no pugui accedir als recursos generals del sistema, tret que utilitzi crides al nucli, les quals podran establir laccs al maquinari en funci dels permisos.

5) Estructura orientada a lobjecte Els nous sistemes operatius sestan desenvolupant dacord amb metodologies orientades a objectes. En comptes de veure el sistema operatiu com una collecci de funcions que es poden executar, la concepci dels nous sistemes es basa en una collecci dobjectes.

Objecte Un objecte s un element que t unes propietats i shi poden fer unes accions determinades. Els ordinadors, els usuaris o les impressores sn alguns exemples dobjectes. Algunes accions que hi podem fer sn crear, modificar, copiar, etc.

El nucli del sistema operatiu s el responsable del manteniment de les definicions dels tipus dobjectes suportats i del control dels privilegis daccs a aquests objectes. Quan un programa vol fer alguna operaci sobre un objecte determinat, haur dexecutar una crida al sistema operatiu en qu indiqui quins drets t per a poder-lo utilitzar i quina operaci interna intenta fer.

6) Estructura multiprocressador Cada cop calen sistemes ms rpids que suportin un volum de feina ms gran o que permetin abordar problemes ms costosos en temps de clcul. Una manera daconseguir-ho es basa en la combinaci de processadors. Aquesta opci s la ms econmica i permet construir sistemes amb un creixement escalar segons les necessitats.

Sistemes operatius monolloc

40

Introducci als sistemes operatius

Podem classificar les arquitectures multiprocessador segon la relaci que hi ha entre processadors i memria: Multiprocessadors acoblats fortament. Aquest sistema tamb sanomena sistema de memria compartida. En aquest cas, cada processador veu la totalitat de la memria i, per tant, hi pot accedir directament. Multiprocessadors acoblats dbilment. Tamb sanomenen sistemes de memria distribuda. Cada processador t accs noms a una memria privada. Els processadors es comuniquen entre ells mitjanant mecanismes de missatges. 7) Estructura per funcions El codi del sistema operatiu es pot organitzar per les seves funcions. En la figura 7 teniu un model de sistema operatiu per tipus de funcions. En aquest cas, les agrupacions es fan segons el tipus de servei que es vol donar, sense tenir en compte la proximitat o la distncia del maquinari, com en el cas de lestructura en capes. Aquestes agrupacions es poden fer a partir de serveis dE/S, la gesti de la memria, etc. Aquesta estructura dna una organitzaci vertical.
Figura 7. Model de sistema operatiu per tipus de funcions

1.5. Funcions del sistema operatiu. Recursos


Un mateix sistema operatiu pot treballar en mltiples plataformes de maquinari; aix que sha de poder adaptar a les necessitats de cadascuna

Sistemes operatius monolloc

41

Introducci als sistemes operatius

delles, de manera que pugui complir els objectius pels quals ha estat dissenyat.

1.5.1. Objectius dels sistemes operatius


Els principals objectius dels sistemes operatius sn: Incrementar la productivitat dels usuaris (facilitant-ne ls). Proporcionar un entorn cmode i labstracci del maquinari a lusuari. Optimitzar la utilitzaci dels components o dels recursos del maquinari. Gestionar els recursos del maquinari i del programari Decidir qui, quan, com i durant quant de temps sutilitza un recurs. Resoldre conflictes entre peticions concurrents de manera que es preservi la integritat del sistema. Maximitzar el rendiment del sistema informtic. Permetre la concurrncia de processos. Possibilitar lexecuci de qualsevol procs en el moment en qu se solliciti sempre que hi hagi prou recursos lliures per a fer-ho. Ser eficient quant a reduir el temps que ocupa cada treball, el temps que no sutilitza la CPU, el temps de resposta en sistemes multiaccs i el termini entre dos assignacions de CPU a un mateix programa. Ser eficient quant a augmentar la utilitzaci de recursos en general, com ara la memria, els processadors, els dispositius dE/S, etc. Ser fiable, s a dir, un sistema operatiu no ha de tenir errors i ha de preveure totes les possibles situacions. Tenir una grandria petita. Possibilitar i facilitar tant com es pugui el dileg entre el maquinari i lusuari. Permetre compartir entre diversos usuaris els recursos de maquinari que t un ordinador. Permetre als usuaris compartir dades entre ells, si escau. Facilitar les operacions dE/S dels diferents dispositius connectats a un ordinador.
Procs i programa Un procs s un programa en execuci. Un programa s un conjunt daccions que permet resoldre una situaci determinada.

Procs concurrent Un procs concurrent s lestat que es dna quan en un mateix moment el sistema operatiu intenta utilitzar un mateix recurs per a processos diferents.

1.5.2. Funcions dels sistemes operatius


Per a aconseguir els seus objectius, el sistema operatiu, com a element controlador dels diferents components del sistema informtic, t encomanades una srie de funcions. Les funcions ms importants sn les segents: Administra el processador. Administra la memria.

Sistemes operatius monolloc

42

Introducci als sistemes operatius

Relaciona dispositius (els gestiona mitjanant el nucli). El sistema operatiu sha dencarregar de comunicar els usuaris amb els dispositius perifrics, quan els usuaris ho demanin. Organitza les dades per a un accs rpid i segur. Gestiona les comunicacions en xarxa. El sistema operatiu permet a lusuari manipular amb molta facilitat tot el que fa referncia a la installaci i a ls de les xarxes dordinadors. Facilita les entrades i sortides. Un sistema operatiu permet fer ms fcil a lusuari laccs i la manipulaci dels dispositius dentrada/sortida de lordinador. Dna tcniques de recuperaci derrors. Evita que altres usuaris interfereixin. El sistema operatiu evita que els usuaris es bloquegin entre ells, i els informa si aquesta aplicaci est sent utilitzada per un altre usuari. Genera estadstiques. Comparteix el maquinari i les dades entre els usuaris. En general, es pot dir que els sistemes operatius fan dues funcions: 1) Faciliten la constituci duna mquina virtual o estesa. El sistema operatiu posa al servei de lusuari una mquina virtual que t unes caracterstiques que sn diferents (i ms fcils dabordar) que les de la mquina real subjacent. Algunes rees en les quals s freqent que la mquina virtual sigui diferent de la mquina real que la suporta sn: a) Entrada/sortida (E/S). La capacitat dE/S dun maquinari bsic pot ser que sigui extremament complexa i que requereixi programes sofisticats per a utilitzar-lo. Un sistema operatiu evita a lusuari el problema dhaver de comprendre el funcionament daquest maquinari i posa al seu abast una mquina virtual ms senzilla dusar. b) Memria. Molts sistemes operatius presenten la imatge duna mquina virtual en qu la memria difereix en grandria de la de la mquina real subjacent. Aix, per exemple, un sistema operatiu pot utilitzar memria secundria (discos magntics, etc.) per a crear la illusi duna memria principal molt ms extensa que la que es t en la realitat. Alternativament, pot repartir la memria principal entre diversos usuaris, de manera que cadascun dells vegi una mquina virtual en qu la memria sigui ms petita que la de la mquina real. c) Sistema de fitxers. La majoria de les mquines virtuals inclouen un sistema de fitxers per a lemmagatzematge a llarg termini tant de programes com de dades. El sistema de fitxers es basa en la capacitat demmagatzematge sobre cinta o disc de la mquina real. El sistema operatiu, no obstant aix, permet a lusuari accedir a la informaci emmagatzemada a partir de noms simblics en lloc de fer-ho a partir de la seva posici fsica en el mitj demmagatzematge.

El kernel s el nucli del sistema operatiu.

Perifrics Un dispositiu perifric s el maquinari que cal que estigui connectat amb lordinador per a poder funcionar. Alguns exemples en sn el teclat, el ratol, etc.

Una xarxa dordinadors s un sistema que permet compartir recursos entre dispositius informtics.

Memries secundries Les memries secundries sn dispositius que permeten emmagatzemar informaci duna manera permanent. Alguns daquests dispositius poden ser: discos durs, disquets, CD, DVD, etc.

Un nom simblic s equivalent al concepte dlies.

Sistemes operatius monolloc

43

Introducci als sistemes operatius

d) Protecci i tractament derrors. Des del moment en qu la majoria dels ordinadors sn compartits per un nombre determinat dusuaris, s essencial que cadascun dells estigui protegit dels efectes dels errors o de la mala fe dels altres. Els ordenadors varien considerablement pel que fa al grau de protecci que proporciona el seu maquinari bsic; la missi del sistema operatiu s constituir una mquina virtual en qu cap usuari no pugui afectar duna manera negativa el treball dels altres. e) Interacci a nivell de programa. Una mquina virtual pot possibilitar la interacci entre els diferents programes dels usuaris de manera que, per exemple, la sortida dun dells sutilitzi com a entrada dun altre. La naturalesa concreta duna mquina virtual dependr de laplicaci particular a qu es destini. Aix, per exemple, las caracterstiques duna mquina virtual que controli un sistema de temps real ser diferent de les duna mquina virtual que sutilitzi per al desenvolupament de programes. 2) Utilitzaci compartida de recursos. Un sistema operatiu ha daconseguir que es comparteixin els recursos dun ordinador entre un cert nombre dusuaris que treballen de manera simultnia. La finalitat s incrementar la disponibilitat de lordinador respecte als usuaris i, alhora, maximitzar la utilitzaci dels recursos com processadors, memries i dispositius dE/S. La importncia de la utilitzaci eficient daquests recursos influeix en el cost dutilitzaci del sistema informtic.
En un sistema de temps real el sistema dna resposta en el mateix moment en qu es demana una petici. El maquinari bsic dun ordinador el forma el maquinari que ns una part fonamental: la memria, la CPU, els bussos, etc. Maquinari bsic dun ordinador

Els sistemes operatius sn un conjunt de programes que creen la interfcie del maquinari amb lusuari i que tenen dues funcions primordials, que sn: Gestionar el maquinari: es refereix al fet dadministrar duna manera ms eficient els recursos de la mquina. Facilitar el treball a lusuari: permet una comunicaci amb els dispositius de la mquina.
Pseudoparallelisme Si noms hi ha un nic processador que gestiona la multiprogramaci, lexecuci simultnia de diverses activitats donar lloc a un pseudoparallelisme, ja que des del punt de vista de lusuari semblar que hi ha una execuci simultnia, encara que noms una activitat pot fer s del processador i en cap cas no es podran executar en el mateix processador dos processos alhora. El pseudoparallelisme s la sensaci dexecuci simultnia dactivitats diferents en un mateix processador.

1.5.3. Recursos dels sistemes operatius. Concurrncia, comunicaci, sincronitzaci i interbloqueig de processos
Una de les tasques dels sistemes operatius s la compartici dels recursos dun ordinador entre usuaris que treballen de manera simultnia. Les tcniques de multiprogramaci i els sistemes multiprocs en qu es poden executar programes de manera simultnia compartint els mateixos recursos solen donar lloc a conflictes importants que ha de resoldre el gestor de processos i, per tant, el processador. Per tot aix, la majoria dels sistemes operatius ofereix als usuaris diferents mecanismes i facilitats per a poder

Sistemes operatius monolloc

44

Introducci als sistemes operatius

controlar lexecuci dels processos i afavorir laccs a les mateixes dades a fi devitar possibles conflictes. Aquests mecanismes es basen en algorismes o eines que permeten la sincronitzaci daquests processos o que afavoreixen la cooperaci entre ells. Per a comprendre els mecanismes que gestionen laccs de ms dun procs a les mateixes dades, shan de comprendre els conceptes de parallelisme, concurrncia, comunicaci, sincronitzaci i interbloqueig de processos. Parallelisme s lexecuci de diverses activitats en processadors diferents al mateix temps. s un concepte fsic, ja que noms hi pot haver parallelisme quan hi ha la presncia de diversos processadors.

Un altre aspecte que hem de considerar fa referncia a la concurrncia. La concurrncia (sistemes concurrents i cooperatius) es produeix quan algunes activitats sexecuten simultniament. Com que necessiten utilitzar els mateixos recursos shan de sincronitzar per a actuar conjuntament.
Condici necessria de la concurrncia Perqu dues activitats siguin concurrents s necessari que hi hagi alguna relaci entre les activitats: cooperaci en un treball determinat o un s conjunt de la informaci o dels recursos. Per exemple, en un sistema monoprocessador lexistncia de la multiprogramaci s una condici, per no s suficient perqu hi hagi concurrncia, ja que els processos es poden executar duna manera independent.

En un sistema multiprocessador tamb es poden presentar situacions de concurrncia sempre que les activitats necessitin actuar entre elles, compartir informaci o per necessitats de funcionament. La sincronitzaci dels processos s absolutament necessria si volem que una activitat impedeixi a una altra accedir a certes dades compartides mentre no es compleix una condici determinada; aleshores hem de sincronitzar les activitats amb aquesta condici. Com que el sistema operatiu no coneix la semntica de les activitats dels processos, el programador s lencarregat dassegurar que la sincronitzaci es duu a terme duna manera correcta. Per a ajudar en aquesta tasca, els sistemes multiprogramats i els llenguatges de programaci ofereixen una srie deines que permeten establir la sincronitzaci i lintercanvi dinformaci entre tots els processos concurrents i cooperatius.

Sincronitzaci La sincronitzaci s la situaci en la qual una activitat impedeix que altres puguin tenir accs a unes dades mentre les est utilitzant un altre procs.

A ms de la sincronitzaci, tamb hi ha una altra manera destablir una connexi entre els processos: la cooperaci o la comunicaci. En els processos concurrents, normalment cal intercanviar resultats parcials, enviar informaci de lestat dels processos o intercanviar informaci general. Els diferents sistemes han proposat diversos mecanismes que permeten comunicar certes quantitats dinformaci entre els processos.
Exemple de concurrncia Un editor de textos i un compilador es poden executar simultniament per no sn concurrents. En canvi, un procs que escriu en un fitxer i un altre procs que intenta llegir les dades escrites en el fitxer s que sn concurrents, ats que el funcionament dun interfereix en el funcionament de laltre.

Sistemes operatius monolloc

45

Introducci als sistemes operatius

En els sistemes en qu hi ha compartici de recursos entre processos es poden donar situacions en qu els processos no es puguin continuar executant i es bloquegin duna manera indefinida. Aquest problema es pot generalitzar a qualsevol tipus de recurs compartit. Un recurs pot ser tant un dispositiu com una certa quantitat dinformaci (per exemple, un registre dun fitxer, etc.). En un ordinador hi pot haver molts tipus de recursos.

Podem definir un recurs com una entitat que sutilitza per a dur a terme un treball determinat en el sistema i que noms el pot fer servir un nic procs en un moment determinat.

Podem classificar els recursos en:


Utilitzar els recursos

Reutilitzables. Noms els pot utilitzar un procs. Aix implica que els altres processos han desperar (estat bloquejat). Consumibles. Sn els recursos que una vegada utilitzats desapareixen. Hi ha dhaver un procs productor i un procs consumidor. Aquest s el cas dels processos que senvien informaci per mitj de missatges, els quals es creen i es consumeixen.
Exemple dutilitzaci dun recurs Suposem que fem una excursi per la muntanya i ens trobem en un pont pel qual noms pot passar una persona. Si intentem passar-hi podem trobar-nos en les situacions segents: 1) Que no hi hagi altres persones que intentin passar en el mateix moment en sentit contrari. En aquest cas, no hi haur cap problema. 2) Que hi hagi a laltre extrem del pont una persona amb la intenci de passar i que cap dels dos no vulguem cedir el pas a laltre. Tots dos comencem a creuar el pont, per tant, tots dos estem fent servir el mateix recurs simultniament. El resultat s que al final xocarem i ning ms no podr utilitzar el pont. Quedar ocupat indefinidament. 3) Per a evitar el cas anterior, es podria pensar a dissenyar un sistema de barreres que sobrissin quan ning no fa servir el pont, per que tanqus la del costat contrari quan sen fes servir una. Podria succeir que en un mateix moment arribessin dues persones als extrems oposats i tanquessin el pas a laltre extrem alhora; aleshores ning no podr creuar el pont i les dues persones quedaran bloquejades a lentrada del pont (interbloqueig). 4) Si una persona dels extrems fos molt educada podria deixar passar la persona que hi ha a laltra banda del pont, per es podria donar el cas que quan aquest encara no ha acabat de passar entrs una altra persona del darrere aprofitant el perms de passar i que aquesta situaci es repets indefinidament (espera indefinida). 5) El pas pel pont podria ser regulat per un guarda que obrs el pas en un extrem o en laltre segons el temps que fa que les persones sn a la cua despera. Aquesta mesura resoldria tots els problemes.

Perqu un procs pugui utilitzar un recurs ha defectuar les operacions segents: 1) Sollicitar el recurs. Si el recurs no est disponible, el procs quedar bloquejat fins que shi pugui assignar el recurs. Si shi assigna un recurs, el procs quedar desbloquejat i passar a lestat de "preparat". 2) Utilitzar el recurs. Fer les operacions que solliciti el procs. 3) Alliberar el recurs. Perqu altres processos el puguin utilitzar.

Linterbloqueig, o abraada mortal (deadlock), es produeix quan cada procs del conjunt espera una acci que noms es pot dur a terme en un altre procs conjunt.

Sistemes operatius monolloc

46

Introducci als sistemes operatius

En qualsevol sistema en qu hi ha processos que esperen operacions sobre els recursos i decisions de planificaci del sistema operatiu, s possible que un determinat procs esperi indefinidament el recurs volgut, mentre que daltres reben latenci del sistema. Aquesta situaci es coneix amb el nom despera indefinida o mort per inanici . Lespera indefinida s una situaci en la qual un procs espera indefinidament lalliberament dalgun recurs que mai no li ser concedit.

1.6. Arquitectura del sistema operatiu


Lestructura dun sistema operatiu varia en funci de molts parmetres; no obstant aix, prcticament tots es poden englobar en tres components: el nucli (kernel), les utilitats de baix nivell del sistema i la interfcie dusuari. En la figura 8 podeu veure com mitjanant el sistema operatiu, lusuari pot interaccionar amb el sistema operatiu.
Figura 8. Estructura dun sistema operatiu

En un procs interactiu hi ha un dileg entre lusuari i el sistema informtic.

1) El nucli (kernel) del sistema operatiu es considera la part bsica. s el programari responsable de facilitar als diferents programes laccs segur al maquinari de lordinador.

Funcions del nucli del sistema operatiu El nucli del sistema operatiu generalment executa les funcions segents: Manipulaci dinterrupcions. Creaci i destrucci de processos. Canvi destats de processos. Distribuci (dispatcher). Suspensi i represa de processos. Sincronitzaci de processos. Comunicaci entre processos. Manipulaci de blocs de control de procs. Suport dactivitats dE/S. Suport de lassignaci i desassignaci demmagatzematge. Suport del sistema darxius. Suport de mecanismes de crida/ retorn al procediment. Suport de certes funcions estadstiques del sistema.

El nucli del sistema operatiu controla totes les operacions que impliquen processos i representen noms una petita part del codi de tot el sistema operatiu per que sutilitza mpliament. s en la memria principal. s la part del sistema operatiu que es troba permanentment carregada a la memria, s a dir, s el conjunt de processos actius propietat del sistema que poden oferir un servei duna manera immediata.

El nucli s un rea dexecuci privilegiada (supervisora o nucli) i, per tant, est dotat dunes proteccions fortes. Quan una rutina que sest executant a lrea dusuari (no supervisora o no privilegiada) demana un servei del sistema, pot accedir al nucli. En la figura 9 podeu veure un esquema dels diferents modes dexecuci dun procs.

Sistemes operatius monolloc

47

Introducci als sistemes operatius

Figura 9. Modes dexecuci dun procs

El distribudor (dispatcher) s un component del nucli del sistema operatiu que planifica el funcionament del processador.

En resum podem dir que les funcions del nucli permeten lexistncia dun ambient en qu sigui possible donar servei a diversos usuaris i mltiples tasques duna manera concurrent, de manera que el processador es reparteixi entre tots ells i intenti mantenir en grau ptim una atenci individualitzada.

El nucli del sistema operatiu El nucli del sistema operatiu Unix (anomenat kernel) s un programa escrit en quasi la seva totalitat en llenguatge C, excepte en una part corresponent a la manipulaci dinterrupcions, expressada en el llenguatge assemblador del processador en qu opera. El kernel opera com un assignador de recursos per a qualsevol procs que necessiti fer s de les facilitats de lordinador. s lelement central del sistema Unix. El kernel t el control sobre lordinador, per tant, cap altre procs no el pot interrompre; noms el pot cridar perqu proporcioni algun servei dels ja indicats. Un procs crida el kernel mitjanant mduls especials anomenats crides al sistema. El kernel consta de dues parts principals: 1) La secci de control de processos: aquesta assigna recursos, programes, processos i dna suport a les demandes de servei. 2) La de control de dispositius: supervisa la transferncia de dades entre la memria principal i els dispositius perifrics. En termes generals, cada vegada que un usuari utilitza qualsevol tecla dun ordinador, o que shagi de llegir o escriure informaci des de les unitats magntiques, sinterromp el processador i el nucli sencarrega defectuar loperaci de transferncia.

Crides al sistema Les crides al sistema sn funcions que t el mateix sistema per a fer determinades tasques que poden ser invocades de diferents maneres i en moments determinats.

2) Les utilitats de baix nivell sn un conjunt de programes que, sense formar part del nucli, ajuden lusuari en les seves tasques. En realitat, no sn ms que programes que sexecuten sobre el nucli. Per exemple, els programes traductors, els programes enllaadors i els programes depuradors.
Traductors, enllaadors i depuradors Els programes traductors converteixen els programes escrits utilitzant algun llenguatge de programaci en programes en llenguatge mquina. Els programes enllaadors permeten crear programes executables. Els depuradors sn programes que permeten fer un seguiment dels programes informtics per a comprovar-ne el funcionament pas a pas.

Sistemes operatius monolloc

48

Introducci als sistemes operatius

3) La interfcie dusuari pot consistir en una interfcie grfica i/o en un intrpret dordres en lnia (shell). La paraula shell en angls significa embolcall. Aix, doncs, com el seu nom indica, lembolcall s una coberta externa del nucli que es comunica directament amb el maquinari. Les interfcies dusuari sn tots els procediments que dna el sistema operatiu per a facilitar el treball entre els usuaris i el sistema. Per a ferho sutilitza un intrpret dordres. La interfcie que es vol definir entre lusuari i el sistema shaur de basar en un llenguatge textual o en un llenguatge grfic (GUI) que fixi les normes de comunicaci.
GUI s labreviatura anglesa dinterfcie grfica dusuari. Els llenguatges textuals es basen en ordres escrites. Els llenguatges grfics es basen en la selecci deines grfiques (botons, icones, etc.). Llenguatges textual i grfic a les interfcies dusuari

Lintrpret dordres s el programa ms important de tots els programes del sistema, ja que crea lentorn de treball de lusuari. Rep totes les ordres de lusuari i dna el control als diferents programes del sistema o a les funcions del nucli, segons les necessitats i les peticions de lusuari. Una vegada que lusuari comena una sessi en el sistema, aquest el rep i li indica que est preparat per a acceptar les ordres de lusuari. Aix ho fa mitjanant un indicador (prompt), que normalment s un smbol que s diferent segons lintrpret dordres amb qu treballem. Aquest indicador, que escriu un programa que est en execuci constantment per cada usuari i que es coneix amb el nom dintrpret dordres, basa el seu funcionament en un llenguatge dordres amb una sintaxi determinada (per exemple, el shell de Bourne o el shell de C dUnix). Els intrprets solen ser un programa del sistema o un mdul del nucli que interpreta un llenguatge dordres amb qu lusuari indicar al sistema operatiu all que vol fer.
Els intrprets dordres tenen com a missi facilitar ls del sistema als usuaris. Tamb, a ms daquesta facilitat, els sistemes ofereixen diverses facilitats amb lobjectiu de facilitar i abreujar el treball diari dels usuaris. Funci dels intrprets dordres

En la figura 10 podeu veure un esquema dels diferents programes del sistema operatiu.
Figura 10. Programes del sistema operatiu

Sistemes operatius monolloc

49

Introducci als sistemes operatius

1.7. Evoluci histrica. Sistemes operatius actuals


Levoluci dels sistemes operatius ha anat de manera parallela amb la dels ordinadors.
Bug Un error (bug) s una situaci que presenta algun tipus de programari que consisteix a repetir un seguit daccions sense fi a causa duna anlisi incorrecta.

Les principals causes de levoluci dels sistemes operatius es poden resumir en: les actualitzacions i nous tipus de maquinari; les demandes de nous serveis; la necessitat de resoldre diferents tipus derrors: bugs, etc.

1.7.1. Generacions informtiques


Els sistemes operatius, igual que el maquinari, han sofert canvis al llarg del temps, els quals els poden agrupar amb el nom de generacions. Levoluci del maquinari ha marcat el parallelisme de levoluci dels sistemes operatius. Tot seguit, farem un petit resum del principals fets que han influt en levoluci dels sistemes operatius i els relacionarem amb les diferents generacions dordinadors. 1) La generaci zero (dcada de 1940) Els ordinadors daquesta poca eren de grans dimensions, difcils dutilitzar, presentaven una falta de recursos i tenien uns preus molt alts. Aquestes mquines eren gestionades per lusuari des dun tauler dendolls, en qu no hi havia sistema operatiu. Lusuari interaccionava directament amb lordinador i lnic llenguatge de programaci possible era el llenguatge mquina. Totes les instruccions shavien de codificar a m. Desprs, la gesti del computador es va fer des duna consola en qu cada usuari, i dun en un, tenia assignat un perode de temps durant el qual es convertia en propietari absolut de tot el sistema. En aquestes mquines, noms era possible la monoprogramaci, s a dir, lexecuci dun sol programa. Com que el procs dintroducci de les ordres era molt lent i llarg, es feia prcticament impossible lexecuci de programes mitjans i grans en aquest entorn. El 1942 J. P. Eckert i J. W. Muachly, de la Universitat de Pennsilvnia, van dissenyar lelectronic numerical integrator and computer (ENIAC), el primer ordinador de propsit general programable.
Monoprogramaci La monoprogramaci s un tipus de funcionament dalguns sistemes operatius que noms pot executar un programa a la vegada. Fins que no acaba dexecutar tot el programa no en pot comenar un altre. Llenguatge mquina El llenguatge mquina s el llenguatge utilitzat pels ordinadors. s format per senyals binaris. Els senyals binaris sn formats per dos estats: activitat i desactivat (on, off).

Generacions dordinadors Les generacions dordinadors sn poques en qu la informtica i els equipaments informtics tenen caracterstiques especials.

La consola s un dispositiu format per un monitor i un teclat.

Sistemes operatius monolloc

50

Introducci als sistemes operatius

2) La primera generaci (1945-1955) En aquesta generaci continua labsncia de sistemes operatius tal com els coneixem en lactualitat. Els sistemes operatius van comenar simplement com una transici entre treballs; aix, mentre un treball sestava executant tenia el control total de la mquina. En finalitzar la tasca, el control era retornat al sistema operatiu, que sencarregava de presentar els resultats i comenar el treball segent. Per a fer tota aquesta feina sutilitzaven les targetes perforades.
ENIAC

El 1952, Grace Murray Hooper va desenvolupar lA-0, el primer compilador, i va participar en la creaci del llenguatge de programaci COBOL. 3) La segona generaci (1955-1965) La invenci del transistor va canviar radicalment el mn dels ordinadors pel fet de ser ms petits i ms fiables que les vlvules de buit, de manera que ja es podien fabricar amb la idea de ser venuts. Eren mquines molt cares i noms eren a labast de grans corporacions (institucions com els exrcits, les universitats i els governs). Apareixen dispositius dentrada/sortida nous (els lectors de targetes perforades i les impressores) i sinventen dispositius demmagatzematge nous: les unitats de cintes magntiques. A ms, es desenvolupa el primer programari que inclou els assembladors, els llenguatges de programaci, els carregadors, els muntadors, les llibreries de diferents tipus i rutines estndard dentrada/sortida dels diferents dispositius que es podien utilitzar en els programes.
Assemblador, carregador i muntador Lassemblador s un programa que tradueix el llenguatge assemblador a llenguatge mquina. El llenguatge assemblador s un llenguatge molt proper al llenguatge mquina. El carregador s una rutina que llegeix un programa executable i lemmagatzema a la memria principal abans dexecutar-lo. El muntador, tamb anomenat editor denlla, s un programa per a crear un codi executable a partir dun o ms mduls objecte. Solucionen les referncies que hi ha entre ells i els assignen adreces definitives. Els dispositius dE/S sn un tipus de maquinari amb qu el mateix dispositiu pot fer operacions de lectura i escriptura de la informaci (exemples: unitats de discos magntics, etc.).

Dispositius dentrada/ sortida (E/S)

Aquest nou entorn millora considerablement el procs de programaci i dexecuci de programes respecte a letapa inicial. La manera doperar dels sistemes continuava sent poc efica a causa de les diverses operacions manuals, per aix sintentava aprofitar el temps perdut i augmentar la utilitzaci des recursos del sistema a fi deliminar els temps morts generats per les operacions manuals. El primer objectiu va ser intentar automatitzar al mxim les operacions mitjanant ls del maquinari. Per aix, es va crear la figura de loperador.

Sistemes operatius monolloc

51

Introducci als sistemes operatius

Loperador s un especialista en el funcionament de lordinador que tenia com a missi controlar el sistema, carregar programes, obtenir els resultats, etc.

A partir daquest moment el programador va deixar de tenir accs directe a lordinador; el procediment de treball era el segent: els programadors donaven als operadors els treballs que volien executar, aquests els ajuntaven els uns darrere dels altres a lordinador, en recollien els resultats i els lliuraven als respectius programadors. Loperador agrupava els treballs amb els recursos fsics i lgics semblants i els executava com si fossin un nic bloc. Per exemple, si en tots els treballs apareixien programes escrits en un mateix llenguatge de programaci, es reunien els programes els uns darrere dels altres, i aix saconseguia que carregant el compilador una sola vegada es pogus utilitzar molt ms. Daquesta manera, sobtenia un estalvi de temps. Aquest sistema sanomena sistema per lots (batch). El sistema per lots (batch) s un conjunt de treballs que lordinador executa lun a continuaci de laltre i de manera seqencial.

Programador i llenguatges de programaci El programador s la persona que escriu utilitzant llenguatges de programaci les accions desenvolupades en llenguatge natural. Els llenguatges de programaci sn un conjunt de normes i regles que permeten donar ordres a lordinador. Alguns exemples de llenguatges sn C, COBOL, Visual Basic, etc.

Malgrat el sistema per lots, la CPU continuava estant molt temps parada. El problema era la diferncia de velocitat que hi havia entre la CPU i els perifrics. Per a intentar reduir-la, va aparixer el treball fora de lnia (offline). Mentre els programes escrits en targetes es llegien i es passaven a cinta en una mquina, en una altra es podien anar executant altres programes que ja havien estat carregats anteriorment. El sistema fora de lnia (off-line) es basa en el fet que els dispositius funcionen sense haver destar connectats a la CPU (per exemple, les mquines perforadores de fitxes i de cintes perforades).

Posteriorment, es van idear altres tcniques com lemmagatzematge a la memria intermdia (buffering). Aquesta tcnica consisteix a carregar les dades de la cinta en una memria (buffer) i, quan s plena, es bolquen de cop a la memria principal. Mentre el processador treballa, es torna a carregar la memria intermdia. Lemmagatzematge a la memria intermdia (buffering) s una tcnica en qu sutilitzen les memries intermdies (buffers) dels dispositius per a lintercanvi de dades entre els dispositius i la memria principal.
Memria intermdia La memria intermdia (buffer) s una zona de memria que tenen alguns dispositius per a lintercanvi dinformaci entre el dispositiu i la memria principal.

Sistemes operatius monolloc

52

Introducci als sistemes operatius

Una altra tcnica va ser la gesti de cues (spooling), que es va comenar a utilitzar en el moment daparixer el disc magntic amb ls de laccs aleatori. Aquesta tcnica es fonamenta en el fet que la sortida dinformaci dun programa senvia a una memria intermdia i, desprs, a un disc magntic en qu espera poder ser tractada per una impressora o qualsevol altre perifric de sortida que en aquests moments no pot donar servei per diferents causes (per exemple, pot estar ocupat). El processador pot estar executant un treball mentre simprimeix una altra feina.
La tcnica FIFO (first input-first output) es basa en la idea que el primer fitxer que arriba a la cua ser el primer en sortir-ne. Accs aleatori Laccs aleatori s una tcnica que utilitzen alguns dispositius (per exemple, els discos magntics), mitjanant la qual poden accedir a la informaci que contenen duna manera directa.

Un sistema de gesti de cues (spool) el podem interpretar com una cua darxius que esperen ser impresos, gravats en cinta, etc., que esperen el seu torn perqu es faci la feina per a la qual van ser creats. La gesti daquesta cua pot ser per la tcnica FIFO o per prioritats, etc. La gesti de cues (spooling) s una tcnica en qu sutilitzen els discos durs per a emmagatzemar temporalment la informaci que ha de gestionar un dispositiu.

El 1963, lAmerican National Standard Institute (ANSI) accepta la primera versi del codi ASCII (American standard code for information interchange) de 7 bits. 4) Tercera generaci (1965-1974) La tercera generaci es fonamenta tecnolgicament en els circuits integrats. Els ordinadors daquesta poca sn molt ms petits i rpids. Sutilitzen nous mecanismes de gesti del maquinari com ara les tcniques de les interrupcions, la protecci de memria, etc. Parallelament, es desenvolupen maquinaris nous amb els programaris corresponents; aix ha donat lloc a lexistncia dun nou entorn de treball amb les caracterstiques segents: Perifrics ms rpids i efectius. Terminals remots per a accedir a bancs de dades. Programari de base adaptat a lusuari. Aix permet la utilitzaci de llenguatges universals pensats per a ser utilitzats en diferents tipus dordinadors; s el que sanomena portabilitat. Sestandarditzen els llenguatges dalt nivell i napareixen altres de nous, com el Basic i el Pascal. Una de les tcniques ms innovadores s la multiprogramaci.
Circuit integrat

Portabilitat La portabilitat s la caracterstica dalguns programes que els permet ser utilitzats en diferents ordinadors sense que necessitin modificacions importants.

Sistemes operatius monolloc

53

Introducci als sistemes operatius

La multiprogramaci o programaci concurrent s una manera de treballar en qu podem executar ms dun programa simultniament (no en el mateix moment) amb lobjectiu daprofitar al mxim els recursos.

En la figura 11 podeu veure un esquema dun sistema informtic multiprogramat.


Figura 11. Esquema dun sistema de multiprogramaci

En el tractament de dades un tant per cent elevat el representen les operacions dentrada/sortida. s necessari millorar el procs per a aconseguir temps de respostes ms baixos. La soluci es basa en la introducci de la programaci concurrent. Durant lexecuci seqencial dels processos se sap que la CPU i els dispositius dE/S sn inactius en alguns moments. La manera de solucionar el problema est en lassignaci dalguna altra tasca a la CPU o als dispositius dentrada/sortida quan per algun motiu estiguin inactius. Aquesta tcnica va fer replantejar lestructura del sistema operatiu. Aix es comena a parlar del nucli (kernel) del sistema operatiu.

El nucli (kernel) s format per rutines que gestionen la memria central, el processador, els perifrics i altres recursos, de manera que respon a les peticions dels dispositius dentrada/sortida. El nucli noms entra en acci si ho demana un programa o b un dispositiu.

Sistemes operatius monolloc

54

Introducci als sistemes operatius

La nova filosofia que comporta el nucli implica nous dispositius: mecanismes dinterrupci, temporitzaci, mecanismes de protecci de la memria, etc. ! El problema de la multiprogramaci s que deixa dexecutar un programa i en passa a executar un altre que estigui pendent dexecuci, sempre que el programa que sest executant faci una operaci dentrada/sortida o b finalitzi. A causa daquest funcionament, el temps de resposta que t un usuari que est connectat de manera interactiva, en dileg continu amb lusuari, pot ser considerablement llarg.

Una interrupci s un senyal que senvia al processador, perqu aturi el procs que estava executant.

Per a resoldre el problema de la multiprogramaci, es proposa un mecanisme nou anomenat temps compartit. Els programes que competeixen pels recursos del sistema tenen assignada la CPU durant un perode de temps limitat, anomenat quntum. Aix, quan un programa es deixa dexecutar, allibera la CPU.

El quntum s el temps que t assignat de processador un programa determinat.

El treball de lordinador mitjanant ls del temps compartit implica que lorganitzaci no es fa per treballs sin per sessions.

Una sessi s tot el conjunt de treballs que es fan des que un usuari es connecta a lordinador fins que acaba o es desconnecta. Durant aquest temps, es pot dur a terme una multitud doperacions controlades per un procs anomenat intrpret dordres, que mant un dileg entre lusuari i el sistema operatiu.

5) Quarta generaci (1974-1984) Amb la utilitzaci dels circuits integrats de diferents nivells dintegraci (LSI/VLSI), sinicia lera dels ordinadors personals, als quals es poden aplicar tots els mecanismes desenvolupats fins a aquell moment, tant de maquinari com de programari.
LSI s labreviatura de gran escala dintegraci. VLSI ho s de molt gran escala dintegraci.

La quarta generaci dordinadors introdueix el concepte de sistema operatiu en temps real, referit als sistemes que tenen un temps de resposta curt referent a qualsevol petici.

Tamb apareixen els conceptes de procs distribut i de sistemes en xarxa, que estan relacionats amb la interconnexi dordinadors entre ells per a poder compartir recursos.

Sistemes operatius monolloc

55

Introducci als sistemes operatius

Una xarxa dordinadors s un conjunt dordinadors interconnectats amb la finalitat de compartir recursos. En funci de la grandria, podem parlar de LAN, MAN i WAN. Un sistema distribut s un entorn en qu diversos ordenadors o nusos es distribueixen les tasques del sistema operatiu.

LAN s labreviatura de xarxa drea local. MAN, de xarxa drea metropolitana, i WAN, de xarxa drea estesa.

En lactualitat, la quantitat dinformaci que sha de manipular augmenta contnuament. Aix implica que moltes vegades els ordinadors actuals no tenen la capacitat per a poder gestionar aquesta gran quantitat dinformaci. Shan buscat possibles solucions, i una pot ser el desenvolupament dordinadors que tinguin ms dun processador i que puguin treballar conjuntament. En aquests ordinadors, el sistema operatiu ha dadministrar els processadors de tal manera que la crrega i el repartiment de la feina sigui equilibrat: s el que anomenem multiprocs.

El multiprocs s una tcnica en la qual podem executar ms duna tasca a la vegada (mateix moment) ja que hi ha ms duna CPU al mateix ordinador.

1.7.2. Sistemes operatius actuals


La cinquena generaci informtica (1984-?) engloba les tendncies actuals i futures dels sistemes operatius i les podem resumir en els punts segents: Parallelisme: Increment de multiprocessadors. Extensi de llenguatges parallels. Commutaci distribuda: lincrement de les xarxes dordinadors connectades. Sistemes tolerants a fallades.
Multimdia i realitat virtual

Interfcies dusuaris ms amigables: Desenvolupament dinterfcies grfiques. Incorporaci del multimdia en les interfcies. Reconeixement de la veu. Immersi en lentorn: la realitat virtual 3D (tres dimensions).
El multimdia s un conjunt dequipament informtic que permet gestionar text, imatges, so, vdeo, etc. La realitat virtual s una tecnologia que permet simular situacions reals.

Sistemes operatius monolloc

56

Introducci als sistemes operatius

Sistemes oberts: lestandarditzaci de sistemes per a compatibilitzar els diferents fabricants quant a: Comunicacions de xarxa. Interfcies dusuari ofertes. Aplicacions ofertes (diverses plataformes). Sistemes orientats a objectes: laplicaci de tcniques dorientaci a objectes als sistemes operatius. Personalitats mltiples: en una mateixa mquina i en un sistema operatiu bsic hi pot haver diferents sistemes operatius. Els sistemes operatius continuen evolucionant. La principal tendncia quant a organitzaci dels treballs s convertir-se en sistemes operatius distributs.

Els sistemes operatius distributs sn dissenyats per a ls en grup dordinadors connectats per independents que comparteixen recursos. En un sistema operatiu distribut, un procs es pot executar en qualsevol ordinador de la xarxa per a augmentar el rendiment daquest procs. En els sistemes distributs totes les funcions bsiques dun sistema operatiu, com, per exemple, mantenir els sistemes darxius, garantir un comportament raonable i recuperar dades en cas de problemes, resulten ms complexes.

No sha de confondre un sistema operatiu de xarxa amb un sistema operatiu distribut. En un sistema operatiu de xarxa, els ordinadors estan interconnectats per mitj de mitjans de comunicacions: programari i maquinari. En aquest tipus de xarxa, els usuaris saben on sest executant el seu treball i desant la informaci. En canvi, en els sistemes operatius distributs hi ha un programari que distribueix les tasques dels usuaris sobre una xarxa dordinadors i per als usuaris s transparent on es fan les seves tasques i es desa la informaci. En el camp informtic, hi ha i ha hagut un gran nombre de sistemes operatius. Alguns sn simples adaptacions o variacions daltres. En podem distingir els segents: 1) Dintre dels sistemes de tipus multiusuari en podem destacar els segents: a) MVS. s un sistema basat en larquitectura 370 dIBM. Al comenament de la dcada de 1980 napareixen les versions ms potents, com la MVS/SP, i un any desprs apareix la versi MVS/ESA, amb ms prestacions. Hi ha
MVS, MV/SP, VM, VAX, OS, DOS, IBM i DEC A continuaci, teniu algunes abreviatures comunes en lmbit informtic. MVS: multiple virtual storage. MVS/SP: multiple virtual storage/ system product. VM: virtual machine. VAX: virtual address extension. OS: operating system. DOS: disk operating system. IBM: international business machines. DEC: digital equipment corporation.

Sistemes operatius monolloc

57

Introducci als sistemes operatius

una varietat denominada VM, que converteix una nica mquina real en un conjunt de mquines virtuals. Dins daquesta mquina, lusuari pot executar qualsevol sistema operatiu. b) DECVMS o VMS de DEC. Es basen en larquitectura de Digital i tenen lorigen en el sistema operatiu VMS dels sistemes VAX. Pretenen que les aplicacions puguin compartir la informaci i els recursos independentment del sistema informtic en qu sexecuten. c) Unix. s un sistema multiusuari, creat a partir del llenguatge C. s modular i admet programes de diferents fabricants. El nucli s interactiu, lintrpret dordres es pot convertir en un llenguatge de programaci, t moltes utilitats i eines de desenvolupament. En el mercat, nhi ha diverses versions amb una certa compatibilitat entre elles: SCO Unix, Linux, BSD, AIX, Solaris, etc. 2) Dins dels sistemes del tipus monousuari tenim:
Altres sistemes multiusuari

a) OS/2. s un sistema multitasca dissenyat per a ordinadors personals. El seu funcionament es basa en un processador per a cada usuari i disposa duna interfcie grfica de connexi. Hi ha versions tamb per a xarxa (OS/ 2 WARP Server). b) DOS. Sistema operatiu monotasca i monousuari. Ha estat un sistema molt utilitzat des de laparici del primer PC. Avui dia, la tendncia s que desaparegui per les limitacions que t. Hi ha diferents fabricants que comercialitzen el DOS amb diferents noms. Les marques ms conegudes sn les versions MS-DOS (Microsoft) i PC-DOS (IBM). c) X-Windows. Tenen una arquitectura de 32 bits, multitasca, que permet executar mltiples aplicacions alhora i de manera completa sempre que les aplicacions siguin de 32 bits. Destaca per tenir un entorn grfic molt potent. Nhi ha diferents versions amb caracterstiques diferents: Windows 3.x, Windows 95, Windows 98, Windows NT Workstation, Windows 2000 Professional Edition, Windows 2003 Standard Edition, Windows Vista, etc.

Theos s un sistema multiusuari destinat a la gesti de petites i mitjanes empreses, t una gran facilitat de programaci i s molt fcil daprendre. Lestructura darxius s semblant a la del sistema DOS. Xenix s una variant dUnix pensada per a entorns multiusuari. Hi ha versions compatibles amb Unix System V.

Logotip de Windows

Tots aquests sistemes operatius, ja siguin monousuari o multiusuari, han incorporat poc o molt la interfcie grfica dusuari (GUI), que permet una utilitzaci ms fcil del sistema a cpia delements grfics. 3) Un altre factor que cal tenir en compte i que est relacionat amb els sistemes operatius actuals sn les xarxes locals, algunes de les quals utilitzen sistemes operatius especials (Windows NT Server, Windows 2000 Server, Windows 2003 Enterprise Edition etc.) i daltres que funcionen efi-

Sistemes operatius monolloc

58

Introducci als sistemes operatius

cientment amb modificacions dels sistemes operatius comentats anteriorment (Unix/Xenix, OS/2 i DOS). !

Cada sistema operatiu t les seves prpies limitacions, normalment a causa de la filosofia de funcionament o de les disponibilitats de memria i de recursos fsics.

En el mn MVS preval la seguretat i la fiabilitat de les aplicacions, mentre que en altres entorns es valoren ms les capacitats de clculs o la rapidesa del desenvolupament. En els sistemes operatius propietaris de lentorn dels miniordinadors, com lOS/400, creat per a lordinador IBM AS/400, i el VMS de DEC, creat per al WAX Computer, el futur que tenen est lligat al maquinari concret. LUnix ha estat creat i pensat per a tot tipus dordinadors. Aix ha provocat que algunes versions hagin hagut de ser redudes per a poder-les utilitzar en els PC (Minix). Avui dia, per, el desenvolupament dels microordinadors de 64 bits, amb capacitats ms potents de maquinari, fan que el seu futur sigui molt prometedor, especialment la versi Linux, per la gratutat dutilitzaci i levoluci contnua. Els sistemes DOS sn limitats pel fet de ser monousuari i monotasca, excepte si es combinen amb versions de lentorn Windows 9x, ja que ofereix la possibilitat de poder treballar en multitasca. Laparici de les xarxes drea local (LAN) ha resolt algunes limitacions, ja que avui dia hi ha la possibilitat de la integraci entre sistemes que fa pocs anys era impensable (Unix/NetWare, Unix/Windowsx, Unix/DOS, etc.). Durant la dcada de 1990 ha sorgit un nou entorn que s el dels sistemes servidors/clients. Aquest concepte no es limita a la grandria dels ordinadors, sin a la funci que tenen. Laparici de les xarxes dordinadors personals interconnectades ha motivat laparici de nous equips, la funci essencial dels quals s centralitzar determinats serveis per a oferir-los a un conjunt dordinadors de la xarxa. Un servidor pot, per exemple, oferir un disc dur a altres ordinadors i ampliar-ne la capacitat demmagatzematge o, fins i tot, tenir una nica cpia de les aplicacions. Els sistemes operatius ms utilitzats per a sistemes servidor/client sn Unix, OS/2 i Windows NT, Windows 2000 Server, Windows 2003 Standard Edition, etc. La majoria dels sistemes operatius actuals han estat dissenyats per a ser fcils dutilitzar. Els sistemes operatius del futur seran dissenyats pel seu fcil s i per la seva capacitat de donar servei a les necessitats dels usuaris. El disseny es far amb la idea de la seva implementaci fcil mitjanant la seva modularitat i estandarditzaci. A causa daquests principis de disUn sistema propietari s el sistema que per a la seva utilitzaci cal estar registrat. El sistemes oberts permeten utilitzarlos de manera lliure.

Sistemes propietaris i sistemes oberts

Sistemes operatius monolloc

59

Introducci als sistemes operatius

seny, el sistema operatiu del futur no ser difcil dimplementar i dutilitzar.

1.8. Classificaci del sistemes operatius


Podem classificar els sistemes operatius seguint els criteris segents: 1) Segons la utilitzaci de recursos. Aquesta classificaci fa referncia al nombre de programes que es volen executar alhora. Bsicament, podem distingir els sistemes monopogramats i els sistemes multiprogramats.

Els sistemes monoprogramats noms admeten un programa en el sistema i no permeten fer s de les tcniques de multiprogramaci. El programa s carregat en memria i shi queda fins que acaba de ser executat. Durant aquest perode de temps no es pot executar cap altre programa. Els sistemes multiprogramats o multitasca utilitzen tcniques de multiprogramaci i poden admetre un o ms programes dun o diversos usuaris simultniament. Aquests sistemes els podem classificar de la manera segent: Multitasca apropiativa. Consisteix en el fet que el sistema operatiu pot treure el control que t un programa sobre el processador. Multitasca cooperativa. El programa controla el processador i s el responsable que altres programes tamb es puguin executar.

2) Segons la interactivitat. Aquesta classificaci t en compte el tipus de feina a qu es destinen els sistemes. Bsicament, podem distingir els sistemes de processament per lots (batch), els sistemes de temps compartit (time sharing) i els sistemes en temps real (real time).
Els paquets sn blocs dinformaci.

Els sistemes de processament per lots poden utilitzar la multiprogramaci per a executar uns quants programes a la vegada. En el procs per lots, cada treball efectua una srie de passos seqencials relacionats. Els sistemes de temps compartit accepten que diversos programes competeixin pels recursos del sistema. Aix implica que la CPU s assignada durant un perode de temps limitat, anomenat quntum. Aix, quan un programa es deixa dexecutar, allibera la CPU.

Sistemes operatius monolloc

60

Introducci als sistemes operatius

Els sistemes en temps real sn sistemes multiprogramats i interactius ms exigents, basats en una resposta rpida sobre els sistemes que es volen controlar a partir de les informacions rebudes. Els sistemes que no necessiten una resposta rpida sanomenen de temps diferit.

3) Segons el nombre dusuaris. Classifiquem els sistemes en funci del nombre dusuaris que poden accedir a un ordinador. Podem distingir els sistemes monousuari i els sistemes multiusuari.

Els sistemes monousuari noms permeten en un determinat moment la connexi dun nic usuari a la vegada en el sistema. Utilitzen tcniques de monoprogramaci executant un nic programa o poden ser sistemes multiprogramats, de manera que faciliten a lusuari lexecuci duns quants programes a la vegada. Els sistemes multiusuari utilitzen tcniques de multiprogramaci i ofereixen la possibilitat que diversos usuaris accedeixin a la vegada al sistema, i es pot utilitzar tamb temps real i temps compartit.

4) Segons el tipus daplicaci. Aquesta classificaci es basa en el tipus daplicacions informtiques que executar el sistema. Bsicament, podem distingir els sistemes de propsit general i els sistemes de propsit especial.

Els sistemes de propsit general es caracteritzen per la capacitat de poder executar qualsevol tipus daplicaci informtica. Els sistemes de propsit especial shan dissenyat especficament per a donar servei a determinades aplicacions informtiques.

5) Segons el nombre de processadors. Aquesta classificaci es basa en la quantitat de processadors de qu disposa lordinador. Podem distingir els sistemes monoprocessadors i els sistemes multiprocessadors o multiprocs.

En els sistemes monoprocessadors lordinador disposa duna nica CPU i, per tant, tots els programes shan dexecutar en la mateixa CPU. En els sistemes multiprocessadors o multiprocs lordinador disposa de diverses CPU; aix permet que un mateix treball o diferents treballs sexecutin en diferents CPU.

Sistemes operatius monolloc

61

Introducci als sistemes operatius

6) Segons la distribuci de les tasques del sistema. La feina es reparteix entre diversos processadors connectats en xarxa. Podem distingir els sistemes distributs i els sistemes centralitzats. En els sistemes distributs cada processador t la seva prpia memria local, no comparteixen rellotge. La comunicaci entre els processadors s per mitj de lnies de comunicaci, busos dalta velocitat o lnies telefniques. Hi pot haver processadors de diferents grandries i funcions. Cada sistema situat a cada mquina pot executar tasques diferents i especfiques i daquesta manera millorar el rendiment del sistema. En els sistemes centralitzats una mateixa mquina executa totes les tasques del sistema operatiu.
Bus Els busos sn lnies de comunicaci entre els components principals de lordinador. Nhi ha de diferents tipus: Bus de control. Sn lnies de comunicaci per on circulen senyals de control. Bus de dades. Sn lnies de comunicaci per on circulen les dades. Bus del sistema. Sn lnies de comunicaci entre el processador, la memria i els perifrics.

1.9. Gesti de processos. Estats dels processos. Prioritat i planificaci


El sistema operatiu, entre altres tasques, ha de gestionar els processos i planificar la feina del processador. La diferncia entre un programa i un procs s que un programa s un conjunt dordres i un procs sn instruccions que sestan executant. Un procs, a ms, s format no solament per les dades, sin tamb pel valor dels registres, les variables, etc., durant lexecuci del programa.

1.9.1. Els processos


El concepte de procs s una entitat molt important per al sistema operatiu. Aix, doncs, tota planificaci que faci el sistema operatiu haur de donar un servei adequat als programes que executin els usuaris, el reflex dels quals seran els processos. El cor del sistema operatiu s el nucli, un programa de control que reacciona contra qualsevol interrupci desdeveniments externs i que dna servei a processos, i que crea, acaba i contesta qualsevol petici de servei que facin els processos.
Algorisme de planificaci Un procs es duu a terme per lacci del processador que executa el programa associat. s a dir, un processador executa un procs, o un procs sexecuta en un processador. Un procs s una activitat dun cert tipus que t un programa, una entrada, una sortida i un estat. Un nic processador pot ser compartit entre diversos processos amb cert algorisme de planificaci, el qual determina quan ha de parar el treball en un procs i donar servei a un altre diferent.

Els esdeveniments sn situacions o fets que succeeixen en moments determinats.

Un programa s una seqncia dinstruccions o accions definides a priori, que poden ser executades per un processador. Un procs s una seqncia daccions derivades de lexecuci duna srie dinstruccions. Aix implica que un procs pot requerir lexecuci dun o diversos programes; i que un programa pot formar part de ms dun procs.

Sistemes operatius monolloc

62

Introducci als sistemes operatius

Moltes vegades les tasques que shan de dur a terme no han de tenir necessriament les mateixes exigncies quant a temps i disponibilitat de recursos, ja que en molts casos hi ha processos que necessiten una atenci immediata a algun esdeveniment que es produeixi. Daltres, en canvi, desenvolupen la seva feina lentament i sense cap urgncia i es poden aparcar en determinats moments en benefici daltres que s que necessiten immediatament aquests recursos.

Un algorisme s la seqncia lgica de les accions que cal desenvolupar per a resoldre un problema determinat.

Alguns processos necessiten accedir al processador ms vegades que daltres. Aix es fa per mitj de les prioritats.

Les prioritats sn algorismes que assignen un ordre de preferncia determinat en la utilitzaci del processador.

Classificaci de les prioritats Podem classificar les prioritats de la manera segent: 1) Prioritats assignades pel sistema operatiu. El sistema assigna prioritats als processos en el moment de comenar lexecuci. 2) Prioritats assignades pel propietari. Lusuari assigna al procs la prioritat amb qu sha dexecutar.

1.9.2. Operacions amb els processos


Els sistemes que administren els processos han de poder crear, destruir, suspendre, reprendre, canviar la prioritat, bloquejar i distribuir (dispatch) un procs. Per a fer-ho, disposen de certes funcions, que faciliten la manipulaci del sistema operatiu mitjanant crides al sistema o des de lintrpret dordres. Les operacions ms comunes sn les segents: 1) Crear s una tcnica que permet crear processos i en la qual, en alguns casos, s necessari passar arguments (el nom, la prioritat del procs, lassignaci de recursos, etc.). Un procs pot crear un nou procs; en aquest cas, el procs creador sanomena procs pare i el procs creat procs fill i sobt una estructura jerrquica de processos. La creaci dun procs pot ser de dues maneres: a) Jerrquica. Cada procs que es crea s fill del procs creador i hereta lentorn dexecuci del pare, de manera que es fixa un arbre de processos. El primer procs executat per un usuari ser fill del procs intrpret dordres amb el qual interactua. Aquest procs ser el que crea la resta de subprocessos o processos fills. b) No jerrquica. Cada procs creat per un altre sexecuta independentment del creador, amb un entorn diferent.

Sistemes operatius monolloc

63

Introducci als sistemes operatius

2) Destruir un procs elimina un procs del sistema operatiu, s a dir, destrueix el seu bloc de control de procs (PCB), retorna els seus recursos al sistema i lelimina de totes les llistes o taules del sistema. En el cas de processos jerrquics, hi pot haver problemes en els processos fills, ja que poden quedar destruts en funci del tipus de disseny que tingui el sistema operatiu. 3) Canviar la prioritat dun procs. 4) Adormir o bloquejar lexecuci dun procs s una tcnica mitjanant la qual un procs passa a lestat de bloquejat fins que no ha passat un temps determinat. 5) Despertar un procs s una manera artificial de desbloquejar-lo que sutilitza per a despertar processos adormits. 6) Suspendre un procs s una operaci dalta prioritat, ja que normalment noms es far en determinades ocasions i sempre amb certa urgncia. Sutilitza en moments de mal funcionament del sistema, sobrecrrega, etc. 7) Continuar un procs s activar un procs susps.
El bloc de control de procs El bloc de control de procs (PCB) s una taula en la qual es desa informaci sobre cada procs. La informaci desada de cada procs pot ser el nmero del procs, lestat del procs, la prioritat, els recursos que t assignats el procs, els privilegis, etc.

1.9.3. Tipus de processos


En funci de la utilitzaci, els processos es poden classificar en els tipus segents: Reutilitzables. Sn processos en qu es poden canviar les dades que es fan servir. En tornar-se a executar, necessiten comenar des de lestat inicial i processar les dades noves. Aquest s el cas dels programes que normalment tenim els usuaris. Reentrants. Sn processos que no tenen dades associades. Les dades que utilitzen es troben en una pila o en registres interns i no poden ser modificades durant la utilitzaci. Aquest s el cas de programes compartits per alguns usuaris a la vegada.
Altres classificacions del processos Una altra classificaci dels processos s segons la capacitat que tenen daccedir al processador i a la resta de recursos: 1) Apropiatius. Els processos que tenen assignat un recurs no permeten que altres processos puguin accedir a aquests recursos fins que shagi acabat dutilitzar-los. 2) No apropiatius. Permeten a altres processos accedir als recursos que estan utilitzant. Tamb podem classificar els processos en funci de la forma dexecuci: 1) Residents. Sn a la memria tot el temps que dura lexecuci.

Sistemes operatius monolloc

64

Introducci als sistemes operatius

2) Intercanviables. Poden ser portats de la memria principal al disc, mentre sn bloquejats. Aleshores, la memria alliberada pot ser utilitzada per altres processos que en aquells moments la necessiten.

1.9.4. Estats dels processos


Els blocs de control de processos (PCB) semmagatzemen en cues, cadascuna de les quals representa un estat particular del procs. Els estats dels processos sn interns del sistema operatiu. Lusuari sempre veur el seu procs en execuci independentment de lestat en qu es trobi internament el procs en execuci.

Lestat dun procs el podem definir com una descripci de la seva activitat en un moment concret.

Els estats dels processos es poden dividir en: 1) Actius. Sn els estats en qu competeixen per a utilitzar el processador o estan en condicions de poder-ho fer. Es poden trobar en les situacions segents: a) Execuci. Estat en qu es troba un procs quan t el control del processador. b) Preparat. Estat dels processos que estan en condicions de ser executats, per no sexecuten per alguna causa (per exemple, per haver entrat en la cua quan hi havia un altre procs en execuci). c) Bloquejat. Estat dels processos que no es poden executar, perqu esperen la utilitzaci dalgun recurs que no est disponible en aquest moment (recursos dE/S). 2) Inactius. Sn els estats en qu se situen els processos que no poden competir pel processador, per que ho poden tornar a fer ms endavant, per mitj de certes operacions. En aquests estats, es mant el bloc de control del procs aparcat fins que torni a ser activat. Es tracta de processos que no han acabat el seu treball per causes diverses (per exemple, per avaria en un dispositiu dentrada/sortida). Els estats en qu es poden trobar sn els segents: a) Susps bloquejat. Procs que ha estat susps mentre esperava un esdeveniment i les causes del bloqueig no han acabat. b) Susps preparat. Procs que ha estat susps, sense que hi hagi una causa per la qual estigui bloquejat.

Sistemes operatius monolloc

65

Introducci als sistemes operatius

Un procs al llarg de la seva vida pot canviar diverses vegades destat. Aquests canvis destat es coneixen amb el nom de transicions destats.

Els canvis destat Podem distingir els canvis destat segents: 1) Comenar lexecuci. Tot procs comena en el moment en qu es dna lordre dexecuci del programa i el procs es posa a la cua deIs processos preparats. 2) Pas a lestat dexecuci. s el moment en qu el processador es troba inactiu i en la cua de processos preparats hi ha algun procs que est en espera per a ser executat. 3) Pas a lestat bloquejat. Un procs que est en execuci i que sollicita una operaci a un dispositiu dentrada/sortida passar de lestat dexecuci a lestat de bloquejat. En aquest moment, el primer procs de la cua de processos preparats passar al processador per a ser executat. Tamb es pot passar a lestat de bloquejat en el cas dun procs que estava susps bloquejat i del qual han desaparegut les causes que provocaven aquest estat. 4) Pas a lestat preparat. Pot tenir lloc en els casos segents: a) Final duna operaci dentrada/sortida. b) A partir del moment en qu es dna lordre dexecuci dun programa. c) Si es produeix una interrupci que obliga el sistema a executar un altre procs, el que est en execuci passa a la cua dels processos preparats. d) Un procs que estava susps preparat passa a lestat de preparat. 5) Pas a susps bloquejat. Si un procs estava bloquejat i el sistema operatiu rep lordre de suspendrel, el passar a la cua dels processos suspesos bloquejats. 6) Pas a susps preparat. Si un procs que s a la cua dels processos preparats rep lordre de suspendrel, passar a la cua dels processos suspesos preparats.

En la figura 12 podeu veure un diagrama amb les transicions destats dun procs.
Figura 12. Diagrama de transicions destats

Lassignaci de la CPU al primer procs de la llista de preparats sanomena distribuci i s executada per una entitat del sistema operatiu anomenada distribudor (dispatcher).

Sistemes operatius monolloc

66

Introducci als sistemes operatius

1.9.5. Planificaci del processador


Sha de tenir present el problema de quan assignar un processador (CPU) i a quin procs. Dalguna manera, cal que el processador planifiqui la feina de la mateixa manera que ho fem amb les nostres tasques diries.
Scheduling s el terme angls que correspon a la planificaci dels treballs del processador.

La planificaci del processador (scheduling) s el conjunt de poltiques i mecanismes que implementa el sistema operatiu per a decidir quin procs ha de fer s del processador en cada moment. El seu objectiu general s donar un bon servei a tots els processos que competeixen en un moment determinat pels recursos del processador.

Diferenciem tres tipus de planificaci (figura 13): 1) Planificaci a llarg termini (planificaci de treballs). Decideix quin ser el proper treball que sexecutar. En el cas de sistemes de temps compartit t com a missi carregar els programes en memria. Aquest nivell s lencarregat de crear els processos.
Figura 13. Nivells de planificaci

Sistemes operatius monolloc

67

Introducci als sistemes operatius

2) Planificaci a mitj termini. Decideix si el procs que est en execuci sha de treure de la memria temporalment i collocar-lo en un dispositiu secundari, com el disc magntic, per a reduir el grau de multiprogramaci. Posteriorment, quan el sistema es trobi ms descarregat, tornar aquest procs a la memria i a lestat dexecuci. Aquesta tcnica es coneix amb el nom de swapping out i el procs invers sanomena swapping in. Saplica en sistemes de temps compartit i en aquells en qu sutilitza memria virtual. Tamb es fa servir quan un procs est bloquejat i lhem de treure per a alliberar memria. La planificaci a mitj termini s la responsable de gestionar les transicions de processos entre la memria principal i la secundria, i actua intentant maximitzar la utilitzaci dels recursos. 3) Planificaci a curt termini (planificaci del processador). s lencarregat de decidir com i quan un procs que s a la cua de processos que shan dexecutar tindr accs al processador. s a dir, t la responsabilitat de fer les funcions de la multiprogramaci. Resideix en memria i sexecuta amb molta freqncia, per aix t una execuci molt rpida. La missi del distribudor consisteix a assignar la CPU a un dels processos executables del sistema, per aix segueix uns algorismes determinats. Perqu el distribudor commuti el processador entre dos processos s necessari fer un canvi de procs.
Memria virtual La memria virtual s una tcnica de gesti de memria en la qual no s necessari tenir en un mateix moment tot el programa en la memria principal per a poder-se executar.

Canvi de procs Un canvi de procs s la situaci en la qual el sistema operatiu executa tota una srie daccions per a canviar el procs que hi ha en processador.

Quan ms dun procs s executable des del punt de vista lgic, el sistema operatiu ha de decidir quin dells sha dexecutar en primer lloc. El planificador s la part del sistema operatiu que decideix i lalgorisme de planificaci s lutilitzat.

Per a la planificaci, sn necessaris uns criteris en lexecuci dels algorismes dels processos. En podem destacar els segents: 1) Temps de resposta, que indica la velocitat amb qu lordinador dna resposta a una petici. 2) Temps de servei, que s el temps que triguen els sistemes a servir lordre demanada (inclosos el temps despera en la cua dels processos preparats, el temps dexecuci en el processador, el temps de crrega del programa en memria i el temps utilitzat en les operacions dentrada/sortida). 3) Temps dexecuci, que coincideix amb el temps de servei menys el temps despera en la cua dels processos; s a dir, s el temps que ne-

Un bon algorisme de planificaci Els criteris respecte dun bon algorisme de planificaci sn: Equitat. Garantir que cada procs obtingui la proporci justa de la CPU. Eficcia. Mantenir ocupada la CPU el cent per cent del temps. Temps de resposta. Minimitzar el temps de resposta per als usuaris interactius. Rendiment. Maximitzar el nombre de tasques processades per hora.

Sistemes operatius monolloc

68

Introducci als sistemes operatius

cessitaria ser en el processador per a ser executat si fos lnic procs en el sistema. 4) Temps del processador, que s el temps en qu un procs est utilitzant el processador sense comptar el temps que es troba bloquejat per una operaci dentrada/ sortida. 5) Temps despera, que indica el temps en qu els processos sn actius per sense ser executats. 6) Eficincia, que indica la relaci existent entre el temps de processador de cada procs i locupaci total del processador. 7) Rendiment, que indica el nombre de treballs o processos executats per unitat de temps. Normalment, sempre ha de ser el mxim possible.

Per a avaluar el comportament de les diferents poltiques de planificaci considerem t com el temps que un procs Z necessita estar en execuci per a fer el seu treball; ti com linstant en qu lusuari dna lordre dexecuci del procs, i tf com linstant en qu el procs acaba lexecuci. En funci daquestes dades tenim les mesures segents per a cada procs: Temps de servei (T): T = tf ti. Temps despera (E): E = T t. ndex de servei (I): I = t/T.

ndex de servei Si noms tenim un procs, aleshores quan I (ndex de servei) sigui proper a 1, el processador s utilitzat per a aquest procs. Quan I tingui un valor proper a 0, el processador ser limitat per les operacions dentrada/sortida. En els casos de ms dun procs sestableixen les mateixes mesures, per amb valors mitjans, obtinguts en considerar el conjunt de processos.

El planificador del processador t com a missi assignar el processador als processos que sn a la cua. Aquesta cua s alimentada des de dos punts diferents: 1) Cada vegada que un usuari inicia lexecuci dun programa, el planificador a llarg termini rep lordre dexecuci, crea el procs i el passa al planificador a curt termini, que el posa a la cua dels processos preparats. 2) Quan un procs deixa destar en lestat dexecuci i no hi ha causes per al bloqueig o deixa destar bloquejat, passa a la cua dels processos preparats. En els sistemes operatius comercials hi ha diferents poltiques de planificaci i en comentarem algunes. Cal recordar que no hi ha una poltica perfecta. Alguns dels objectius i criteris utilitzats poden ser contradictoris, de manera que si afavorim un tipus de procs, normalment perjudiquem al-

Sistemes operatius monolloc

69

Introducci als sistemes operatius

tres processos. Per a lestudi de les diferents poltiques ens basarem en la taula 3, en qu se simula la situaci dun grup de processos existents en el sistema.
Taula 3. Dades dun grup de processos Nom del procs A B C D E Moment darribada 0 2 1 4 5 Temps dexecuci 2 3 1 4 2

Els segents sn alguns algorismes de planificaci tpica que utilitza el planificador a curt termini del sistema operatiu de les dades de la taula 3: 1) Lalgorisme dordre darribada. 2) Lalgorisme de repartiment de temps. 3) Lalgorisme del procs segent. 4) Lalgorisme del procs de temps restant ms curt.

Els algorismes de planificaci a curt termini assignen el processador a un dels processos que es troba en lestat preparat.

Algorisme dordre darribada

En lalgorisme dordre darribada o algorisme FCFS (first come, first served), el processador executa cada procs fins que acaba. Fa la feina de cada procs segons lordre darribada. El primer procs de la cua dels processos preparats ser el primer que executar el processador.

En la figura 14 podeu veure un esquema de lalgorisme FCFS.


Figura 14. Diagrama FCFS

Sistemes operatius monolloc

70

Introducci als sistemes operatius

En tots els exemples de planificaci del processador cal haver dissenyat prviament el diagrama de temps de lalgorisme de planificaci del processador i, a continuaci, emplenar les columnes de la taula de temps corresponents a: temps dacabament, T, E, I i mitjana. A continuaci, teniu una explicaci detallada del funcionament de lalgorisme FCFS.

La poltica de lalgorisme FCFS s que el processador executa cada procs fins que acaba el seu temps dexecuci.

Exemple dalgorisme FCFS A partir de les dades de la taula 3, volem determinar el diagrama de temps i la taula de planificaci del processador utilitzant lalgorisme de planificaci del processador FCFS. El procediment s el segent: 1) El primer procs que agafa el processador s el procs A, ja que s el que arriba el primer t = 0. Hi s 3 unitats de temps, ja que el seu temps dexecuci s t = 3 i acaba en t = 3. 2) En aquest moment, arriba el procs B, t = 3, i comena lexecuci del procs B. En el temps t = 4, arriba el procs C, per com que el processador s ocupat pel procs B, sespera a la cua del processos preparats. El procs B es continua executant fins a t = 5, ja que li falta una unitat de temps pel que fa a utilitzaci de processador. 3) En aquest moment el processador agafa el procs C, que s el primer que hi ha a la cua dels processos preparats, i lexecuta fins a t = 6; en aquest moment, arriba el procs D i es posa a la cua dels processos preparats. El procs C es continua executant i en t = 7 arriba el procs E i es posa a la cua dels processos preparats al darrere del procs D. El procs C acaba lexecuci en t = 8. 4) En aquest moment entra el procs D i sexecuta fins a t = 12. Seguidament, entra el procs E i sexecuta fins a t = 14. En la figura 15, podeu veure el resultat del diagrama de temps i en la taula 4 els clculs de la taula de temps utilitzant lalgorisme FCFS.

Figura 15. Diagrama de temps dels processos amb FCFS

Sistemes operatius monolloc

71

Introducci als sistemes operatius

Taula 4. Clcul de la taula de temps dFCFS Algorisme FCFS Nom del procs A B C D E Moment darribada (ti) 0 2 1 4 5 Mitjana Temps dexecuci (t) 2 3 1 4 2 Temps dacabament (tf) 3 5 8 12 14 T 3 3 7 8 9 6 E 1 0 6 4 7 3,6 I 0,66 1,00 0,14 0,50 0,22 0,50

Algorisme de repartiment de temps

Lalgorisme de repartiment de temps o algorisme RR (Round robin) consisteix a assignar a cada procs en execuci un determinat temps dexecuci anomenat quntum (q), passat el qual, si el procs no ha acabat, es retorna a la cua dels processos preparats i sassigna el processador al procs de la cua de processos preparats seguint lordre darribada.

Quntum El quntum (q) mesura el temps que fixa la durada en qu un procs s en el processador duna manera continuada.

Lassignaci dura fins que es produeix algun dels fets segents: El procs est esperant una operaci dentrada/sortida. El procs ja ha estat un quntum de temps en execuci.
Exemple dalgorisme RR En tots els exemples explicats se suposen les condicions segents: 1) Si un procs acaba durant el seu quntum, sassigna immediatament el processador al primer procs de la cua dels processadors preparats, i shi dna el quntum complet. 2) En crear-se un procs passa al final de la cua dels processos preparats. 3) Si un procs comena la seva execuci (creaci) en el mateix moment que un quntum acaba, se suposa que aquest procs ha arribat a la cua dels processos preparats abans de lacabament del quntum indicat. A partir de les dades de la taula 3, volem determinar el diagrama de temps i la taula de planificaci del processador utilitzant lalgorisme de planificaci del processador RR i un q = 2. El procediment s el segent: 1) El primer procs que agafa el processador s el procs A, ja que s el que arriba el primer, t = 0. Hi s 2 unitats de temps, t = 2, ja que s el seu quntum de temps. Com que no hi ha cap procs en la cua dels processos preparats continua lexecuci del procs A fins a t = 3 que s quan acaba. En aquest moment, arriba el procs B, t = 3, i comena lexecuci del procs B. 2) En el temps t = 4 arriba el procs C, per com que el processador s ocupat pel procs B, sespera a la cua del processos preparats. El procs B es continua executant fins a t = 5, ja que li falta una unitat de temps quant a utilitzaci de processador. En aquest moment, el processador agafa el

Sistemes operatius monolloc

72

Introducci als sistemes operatius

procs C, que s el primer que hi ha a la cua dels processos preparats, i lexecuta fins a t = 6; en aquest moment arriba el procs D i es posa a la cua dels processos preparats. El procs C es continua executant fins a t = 7 (el quntum s 2) i en t = 7 arriba el procs E i es posa a la cua dels processos preparats darrere del procs D i el procs C es posa darrere del procs E, ja que ha acabat el seu quntum de temps. 3) Entra el procs D amb t = 7 i sexecuta durant 2 unitats de temps, t = 9. El procs D es posa a la cua de C i entra el procs E amb t = 9 i acaba la seva execuci en t = 11. En aquest moment, entra el procs C amb t = 11 i sexecuta fins a t = 12. Seguidament, entra el procs D en t = 12 i sexecuta fins a t = 14. En la figura 16, podeu veure el resultat del diagrama de temps i en la taula 5 els clculs de la taula de temps utilitzant lalgorisme RR. Figura 16. Diagrama de temps dels processos amb RR (q = 2)

Taula 5. Clcul de la taula de temps de lRR per a un quntum q = 2 Algorisme RR Nom del procs A B C D E Moment darribada (ti) 0 2 1 4 5 Mitjana Temps dexecuci (t) 2 3 1 4 2 Temps dacabament (tf) 3 5 12 14 11 T 3 3 11 10 6 6,6 E 1 0 10 6 4 4,2 I 0,66 1,00 0,09 0,40 0,33 0,49

Algorisme del procs segent

La poltica seguida en algorisme del procs segent o algorisme SJF (shortest job first) es basa a agafar de la cua dels processos preparats el que necessita menys temps dexecuci per a fer la feina. Per a aix, cal saber el temps de cada procs. Aquesta informaci no s fcil dobtenir, per lusuari la pot aconseguir a partir de dades estadstiques de processos anteriors.

Sistemes operatius monolloc

73

Introducci als sistemes operatius

Exemple dalgorisme SJF A partir de les dades de la taula 3, volem determinar el diagrama de temps i la taula de planificaci del processador utilitzant lalgorisme de planificaci del processador SJF. El procediment s el segent: 1) El primer procs que agafa el processador s el procs A, ja que s el que arriba el primer, t = 0. Hi s 3 unitats de temps, ja que el seu temps dexecuci s t = 3 i acaba en t = 3. 2) En aquest moment, arriba el procs B, t = 3, i comena lexecuci del procs B. En el temps t = 4 arriba el procs C, per com que el processador s ocupat pel procs B, sespera a la cua del processos preparats. El procs B es continua executant fins a t = 5, ja que li falta una unitat de temps pel que fa a utilitzaci de processador. 3) En aquest moment, el processador agafa el procs C, que s el primer que hi ha a la cua dels processos preparats, i lexecuta fins a t = 6; en aquest moment, arriba el procs D i es posa a la cua dels processos preparats. El procs C es continua executant i en t = 7 arriba el procs E i es posa a la cua dels processos preparats darrere del procs D. El procs C acaba la seva execuci en el t = 8. 4) En aquest moment entra el procs E que t menys temps dexecuci que el procs D i sexecuta fins a t = 10. 5) Seguidament, entra el procs D amb t = 10 i sexecuta fins a t = 14. En la figura 17, podeu veure el resultat del diagrama de temps i en la taula 6 els clculs de la taula de temps.

Figura 17. Diagrama de temps dels processos amb lalgorisme SJF

Taula 6. Clcul de la taula de temps amb lalgorisme SJF Algorisme SJF Nom del procs A B C D E Moment darribada (ti) 0 2 1 4 5 Temps dexecuci (t) 2 3 1 4 2 Mitjana Temps dacabament (tf) 3 5 8 14 10

3 3 7 10 5 5,6

1 0 6 6 3 3,2

0,66 1,00 0,14 0,40 0,40 0,52

Sistemes operatius monolloc

74

Introducci als sistemes operatius

Lalgorisme del procs de temps restant ms curt

Lalgorisme del procs de temps restant ms curt o algorisme SRT (shortest remaining time) fa el mateix que lalgorisme SJF, per si entra a la cua dels processos preparats un procs de temps ms curt que el que sest executant, el treu del processador i nocupa el lloc.

Exemple dalgorisme SRT A partir de les dades de la taula 3, volem determinar el diagrama de temps i la taula de planificaci del processador utilitzant lalgorisme de planificaci del processador SRT. El procediment s el segent: 1) El primer procs que agafa el processador s el procs A, ja que s el que arriba el primer, t = 0. Hi s 3 unitats de temps, ja que el seu temps dexecuci s t = 3 i acaba en t = 3. 2) En aquest moment, arriba el procs B, t = 3, i comena la seva execuci. En el temps t = 4 arriba el procs C, per com que el procs C t un temps dexecuci 3 i el B t un temps pendent dexecuci d1 unitat de temps, el processador executa el procs B i el procs C va a la cua dels processos preparats. En el temps t = 5, acaba lexecuci del procs B. 3) En aquest moment, el processador agafa el procs C, que s el primer que hi ha a la cua dels processos preparats, i lexecuta fins a t = 6; en aquest moment, arriba el procs D. El procs C t pendent un temps dexecuci de 2 unitats de temps i el procs D t un temps dexecuci de 4 unitats de temps. Es continua executant el procs C i el procs D es posa a la cua dels processos preparats. El procs C es continua executant i en t = 7 arriba el procs E i es posa a la cua dels processos preparats darrere del procs D. El procs C t pendent 1 unitat de temps dexecuci, el procs D t pendents 4 unitats de temps dexecuci i el procs E t pendents 2 unitats de temps dexecuci. El procs C es continua executant i sacaba la seva execuci en t = 8. En aquest moment, tenim a la cua els processos segents: el procs D amb un temps pendent dexecuci de 4 unitats de temps i el procs E amb 2 unitats de temps pendents dexecuci. 4) Entra el procs E que t menys temps dexecuci que el procs D i sexecuta fins a t = 10. 5) Seguidament, entra el procs D amb t = 10 i sexecuta fins a t = 14. En la figura 18, podeu veure el resultat del diagrama de temps i en la taula 7 els clculs de la taula de temps.

Figura 18. Diagrama de temps dels processos amb SRT

Sistemes operatius monolloc

75

Introducci als sistemes operatius

Taula 7. Clcul de la taula de temps de SRT Algorisme SRT Nom del procs A B C D E Moment darribada (ti) 0 2 1 4 5 Mitjana Temps dexecuci (t) 2 3 1 4 2 Temps dacabament (tf) 3 5 8 14 10

3 3 7 10 5 5,6

1 0 6 6 3 3,2

0,66 1,00 0,14 0,40 0,40 0,52

1.9.6. Algorismes de prioritats


Els planificadors que utilitzen la poltica de les prioritats assignen una prioritat a cada procs, de manera que el processador sassigna el procs de mxima prioritat. Les prioritats es poden assignar duna manera interna o duna manera externa. En el primer cas, la prioritat la fixa el sistema mateix, a partir dunes informacions determinades (temps dexecuci, necessitats de recursos, etc.). En el segon cas, la prioritat s fixada per ladministrador del sistema.

1.10.

Gesti de la memria

En lestudi de la gesti de la memria s important tenir presents les possibles alternatives i variants a lhora dorganitzar i administrar lespai dadreces dun sistema. Per a aix, shan de considerar conceptes generals, com ara el tipus de gesti bsic, el dels sistemes de monoprogramaci que gaireb no necessiten cap tipus dorganitzaci. La irrupci dels sistemes multiprogramats fa necessari prendre decisions sobre aspectes tan diversos com quant espai es dedica a cada procs, de quina manera se li assigna, en quin lloc subica, durant quant de temps roman en memria, qu passa si no hi ha prou espai o com es protegeix davant accessos incorrectes. Tots aquests factors seran valorats de primer per tcniques dassignaci contigua i per mtodes dassignaci no contigua (paginaci, segmentaci i segmentaci paginada).
La gesti de la memria implica, entre altres tasques, les segents: Portar un registre de les zones que queden lliures (s a dir, que no sn utilitzades per cap procs) i de les zones ocupades i per quins processos. Una altra tasca important apareix en sistemes en qu no tots els processos, o no tot el codi i dades dun procs, subiquen en la memria principal. En aquests sistemes, molt sovint sha de passar una part, o la totalitat, del codi i dades dun procs, de memria a disc, o viceversa; el sistema operatiu s el responsable daquesta tasca. Tasques per a la gesti de la memria

1.10.1. Conceptes generals del gestor de memria


Perqu un procs es pugui executar, cal que estigui ubicat a la memria principal de lordinador. Una part del sistema operatiu sencarregar de gestionar la memria principal, de manera que els processos puguin residir en la memria sense conflictes.

Sistemes operatius monolloc

76

Introducci als sistemes operatius

Des del moment en qu diversos processos han de compartir la memria de lordinador apareix el problema de la protecci. En general, es pretn que un procs no pugui modificar les adreces de memria en qu es troba. Aix s aix, ja que en les adreces de memria on no s ubicat el procs, poden residir altres processos, o codi o estructures de dades del sistema operatiu. Alguns sistemes ni permeten que un procs pugui llegir les adreces de memria en les quals no resideix; amb aix saconsegueix privacitat sobre el codi i les dades dels processos. Hi ha diverses maneres de gestionar la memria i aquesta gesti depn de la mquina virtual que sutilitzi i del maquinari que la formi. Els sistemes actuals normalment utilitzen emmagatzematge virtual. Els programes i les dades necessiten ser a la memria principal per a ser executats, o per a poder ser referenciats. Els programes o les dades que no es necessiten dimmediat es poden desar en la memria secundria fins que es necessitin i, en aquest moment, es transfereixen a la memria principal per a ser executats o referenciats. Els suports de memria secundria, com les cintes magntiques o els discos, en general sn ms cars que la memria principal, i la seva capacitat s molt ms gran. Normalment, s ms rpid laccs a la memria principal que la secundria. En els sistemes amb diversos nivells de memria jerarquia de la memria (figura 19), hi ha moltes transferncies de programes i de dades entre els diferents nivells. Aquestes transferncies consumeixen recursos del sistema, com, per exemple, temps de la CPU, etc.
Figura 19. Jerarquia de la memria En la memria podem diferenciar els nivells segents: 1) Els registres. 2) La memria cau. 3) La memria principal. 4) La memria secundria.

Nivells de memria o jerarquia de la memria

La memria t dues limitacions: la primera s de carcter fsic (quantitat de memria comprada) i la segona s imposada per larquitectura de lordinador i del sistema operatiu.

Sistemes operatius monolloc

77

Introducci als sistemes operatius

1.10.2. La gesti de la memria en sistemes monoprogramats

En els sistemes monoprogramats, noms hi ha un procs dusuari que gaudeix de tots els recursos de lordinador. Aix simplifica notablement la gesti de la memria, ja que est sol i la memria ha de ser compartida pels programes del sistema operatiu, i per lnic procs dusuari existent.

Seguidament, comentarem com gestionen la memria els sistemes operatius monoprogramats (figura 20): 1) Memria dedicada. El programador accedeix directament al maquinari i gestiona la memria a la seva manera. Aix obliga a tenir un gran coneixement del maquinari. No hi ha sistema operatiu i, per tant, tampoc no hi ha gestor de memria. 2) Divisi de la memria. La introducci dels sistemes operatius per a utilitzar millor el maquinari va obligar a dividir la memria en dues zones: luna que pogus fer servir lusuari i laltra reservada a la part resident del sistema operatiu. El sistema operatiu, entre altres funcions, sencarrega de gestionar la memria. El sistema operatiu ocupar la part baixa de la memria RAM, o la part alta de la memria ROM (vegeu la figura 20). El PC dIBM ubica part del sistema operatiu en RAM i els gestors de dispositius en ROM; aquesta ltima part sanomena BIOS (basic input/output system, sistema bsic dE/S).
Figura 20. Tres formes dorganitzaci de la memria, amb un sistema operatiu i un procs dusuari

RAM i ROM La memria RAM (random access memory) s un tipus de memria de lectura i escriptura, mentre que la memria ROM (read only memory) s un tipus de memria noms de lectura.

Una adrea absoluta de memria s una adrea fsica (s a dir, una adrea real) de la memria. En contraposici, hi ha les adreces relatives o lgiques. Un programa s escrit en termes dadreces relatives quan sescriu suposant que es comena a carregar en ladrea zero de la memria. Per tant, els usuaris escriuen programes en llenguatge dalt nivell i sn els traductors els encarregats de generar les adreces que ocupen en la memria les variables, els procediments, etc.

Sistemes operatius monolloc

78

Introducci als sistemes operatius

Lusuari no treballa amb adreces reals en el seu programa. Fa servir adreces relatives, que poden variar entre zero i el mxim perms pel sistema operatiu. Aquest espai sanomena espai lgic dadreces. Desprs, el sistema, amb lajuda del maquinari, calcular a partir de les adreces relatives les adreces reals o absolutes que formen lespai fsic dadreces (memria real).

1.10.3. La gesti de la memria en sistemes multiprogramats


Els sistemes dun nic usuari no aprofiten la gran quantitat de recursos de lordinador a causa del segent (figura 21): 1) Quan succeeix una petici dE/S la CPU normalment no pot continuar el procs fins que acaba loperaci dE/S. 2) Els perifrics dE/S frenen lexecuci dels processos, ja que, comparativament, la CPU s diverses ordres de magnitud ms rpida que els dispositius dE/S.
Figura 21. Utilitzaci de la CPU en un sistema dusuari nic Sistemes de multiprogramaci i processos Els sistemes de multiprogramaci permeten que diversos processos dusuaris competeixin al mateix temps pels recursos del sistema: 1) Un treball en espera dE/S cedeix la CPU a un altre treball que est preparat per a fer operacions. 2) Hi ha parallelisme entre el processament i lE/S. 3) Sincrementa la utilitzaci de la CPU i la capacitat global dexecuci del sistema. 4) Cal que diversos treballs resideixin a la vegada en la memria principal.

Per a repartir el processador entre diversos processos necessitem tenir-los en la memria principal, per aix es divideix la memria en trossos denominats particions o regions, en qu es carreguen els diferents processos. El nombre de particions indicar el grau de multiprogramaci del sistema.
Particions o regions i grau de multiprogramaci Les particions o regions de la memria sn trossos o parts de la memria. El grau de multiprogramaci representa el nombre de particions de la memria.

Tot seguit estudiarem algunes tcniques prpies de la multiprogramaci relacionades amb la gesti de la memria: 1) Protecci de la memria. Si hi ha diversos processos en memria cal protegir-ne les respectives particions contra accessos no volguts. Per a fer-

Sistemes operatius monolloc

79

Introducci als sistemes operatius

ho, podem utilitzar dos registres en qu els continguts apunten a la part superior i a la part inferior de la memria de tal manera que cada adrea generada en el procs ha de ser entre aquests lmits. Aquests dos registres sn el registre base i el registre lmit. 2) Particions contiges de grandria fixa. Aquesta tcnica gestiona la memria amb particions contnues de grandria fixa de tal manera que el nombre i la grandria es defineixen quan sinicialitza el sistema i no es pot modificar fins que shagi apagat el sistema (figura 22).
Figura 22. Multiprogramaci de partici fixa

3) Particions contiges de grandria variable. Consisteixen a assignar dinmicament la memria als treballs en funci de la grandria (figura 23). El sistema operatiu porta un registre de les zones lliures i ocupades de la memria.
Figura 23. Assignaci de particions de grandria variable

Memria virtual i dissociaci dadreces

1.10.4. La memria virtual


La gesti de memria es basa en el fet que per a executar un programa cal que aquest estigui totalment carregat en la memria principal. Per no to-

La clau del concepte de memria virtual est en la dissociaci de les adreces disponibles en la memria real i de les adreces a les quals fa referncia un programa.

Sistemes operatius monolloc

80

Introducci als sistemes operatius

tes les parts dun programa sexecuten normalment. Els programadors dissenyen rutines que noms sexecuten en situacions determinades, la qual cosa explica que no calgui que tot el programa estigui carregat en memria per a processar-lo. La memria virtual s una tcnica de gesti que, combinada amb el maquinari i el programari, permet lexecuci de programes parcialment carregats en la memria real, s a dir, programes que ocupen ms espai que la memria real. La memria virtual s la separaci de la memria lgica de lusuari de la memria fsica. Aquesta separaci proporciona als programadors una gran memria virtual quan noms es disposa duna memria fsica ms petita. La memria virtual facilita les tasques de programaci, ja que el programador no sha de preocupar per la quantitat de memria fsica disponible. Els principals conceptes implicats en la gesti de la memria virtual sn: Adreces virtuals. Sn les referides per un procs en execuci. Adreces reals. Sn les disponibles dins de la memria principal. Espai dadreces reals dun ordinador. s el nombre dadreces reals disponibles a lordinador. Espai dadreces virtual dun procs. s el nombre dadreces virtuals a qu pot fer referncia el procs.

Els processos fan referncia a adreces virtuals per aquestes shan dexecutar en emmagatzematge real; per a aix, cal una traducci dadreces: Les adreces virtuals shan de transformar dins de lespai de les adreces reals, mentre el procs sexecuta (figura 24). La traducci dadreces (figura 25) sha de fer rpidament per no degradar el sistema.
Figura 24. Transformaci de lespai dadreces virtuals a lespai dadreces reals

La traducci dadreces consisteix a passar les adreces virtuals a adreces reals.

Sistemes operatius monolloc

81

Introducci als sistemes operatius

Figura 25. Traducci dadreces virtuals a adreces reals

Els mecanismes de traducci dinmica dadreces converteixen les adreces virtuals en reals en executar-ne el procs. Les adreces contiges dins de lespai dadreces virtuals dun procs no cal que siguin contiges dins de lespai demmagatzematge real. Podem diferenciar tres tipus de gesti de la memria virtual, que sn els segents: paginada, segmentada i segmentada-paginada.

Les caracterstiques dels tipus de gesti de la memria virtual sn les segents: 1) Paginada. La paginaci s una tcnica de gesti de la memria que permet assignar la memria duna manera discontnua. Per a aconseguir-ho, es divideix la memria fsica en trossos de grandria fixa anomenats marcs (frames) i la lgica, en blocs de la mateixa grandria anomenats pgines. El sistema operatiu mant internament una taula de pgines en qu cada pgina carregada en la memria principal es relaciona amb el marc que la cont o, el que s el mateix, ladrea inicial es relaciona amb la memria real. Cada adrea que genera el processador ser interceptada i a partir de la taula de pgines es determina ladrea fsica corresponent. 2) Segmentada. La segmentaci s una tcnica mitjanant la qual els programes es desenvolupen normalment entorn dun bloc principal (principal) des del qual es bifurca a altres llocs (rutines) o saccedeix a zones de dades (taules, piles, etc.). Des daquest punt de vista, un programa s un conjunt de components lgics de grandria variable o un conjunt de segments. Lespai lgic dadreces es considera com un conjunt de segments cadascun dels quals s definit per la grandria i un nombre.

Sistemes operatius monolloc

82

Introducci als sistemes operatius

Cada adrea lgica es converteix en una adrea real mitjanant un dispositiu anomenat taula de segments. 3) Segmentada-paginada. La segmentaci i la paginaci tenen avantatges i inconvenients, i sembla lgic combinar aquestes dues tcniques per a aprofitar les caracterstiques principals de les dues tecnologies. Alguns sistemes utilitzen la tcnica de la paginaci segmentada, que consisteix a segmentar les pgines de taules; per aix, mant una taula de segments en qu les entrades indiquen ladrea de comenament de cada taula de pgines i la seva grandria. Una altra tcnica, anomenada segmentaci paginada, opta per paginar els segments.

1.11.

Gesti dentrada/sortida

El control de les operacions dentrada/sortida s una altra de les funcions del sistema operatiu que serveix per a facilitar la utilitzaci dels diferents dispositius que formen lordinador. Els dispositius que permeten lintercanvi dinformaci entre el processador i la memria sn els dispositius perifrics. No s fcil que els processos utilitzin duna manera directa els perifrics; per tant, els processos no necessiten conixer les caracterstiques dels perifrics sin nicament intercanviar dades. Normalment, el programari de gesti de les operacions dentrada/sortida dun sistema representa un tant per cent molt elevat del total del programari que forma el sistema operatiu; per aix, s important conixer la gesti dentrada/sortida, ja que proporciona als programadors i als processos ordres que faciliten ls dels perifrics. Una altra caracterstica del gestor dentrada/sortida s que ofereix una interfcie als programes dusuari que permet manipular de la mateixa manera tots els perifrics gestionats pel sistema operatiu. La interfcie, doncs, s independent del dispositiu i no s necessari modificar els programes si es canvia de perifric.
Ls inadequat dels dispositius dE/S sovint provoca una disminuci del rendiment del sistema,i aix nafecta el funcionament en general.

s inadequat dels dispositius dE/S

Una de les funcions principals dun sistema operatiu s el control de tots els dispositius dE/S dun ordinador. Les principals funcions sn enviar ordres als dispositius, detectar les interrupcions, controlar els errors i proporcionar una interfcie entre els dispositius i la resta del sistema. Aquesta interfcie entre els dispositius i la resta del sistema ha de ser senzilla i fcil dutilitzar, i ha de ser la mateixa (preferentment) per a tots els dispositius (independncia del dispositiu ).

Sistemes operatius monolloc

83

Introducci als sistemes operatius

1.11.1. Interfcie dispositiu perifric - ordinador


La connexi dun dispositiu dentrada/sortida a un sistema operatiu necessita normalment un circuit dinterfcie. El dispositiu dinterfcie pot consistir en uns pocs registres o portes lgiques o en una o ms plaques lgiques. La majoria de les tcniques dentrada/sortida i les interfcies shan dissenyat en forma de circuits integrats, que sutilitzen directament per al control del dispositiu. Aquests controladors es connecten als integrats dentrada/sortida o als busos estndard. En molts casos, la poltica que se segueix per a gestionar les operacions dentrada/sortida dependr de la manera com es connectin els perifrics, per en lactualitat es basen en el tractament dinterrupcions. Els components que sutilitzen per a la connexi dels dispositius a lordinador poden ser, duna banda, controladors i, de laltra, canals.
Conjunt de perifrics

Portes lgiques Les portes lgiques sn una srie de components electrnics que formen la base dels principals elements dels ordinadors.

En el cas de dispositius complexos (per exemple, discos), la connexi no es fa duna manera directa a lordinador sin mitjanant un dispositiu anomenat controlador o adaptador que cont lestat del dispositiu, el controla i fa la transferncia de les dades. Cada controlador pot gestionar diversos dispositius del mateix tipus i model i t uns registres que sutilitzen per a comunicar-se amb el processador i que es coneixen pel nom de registres del dispositiu o registres dentrada/sortida.
Per a intercanviar dades o senyals entre lordinador i els controladors, moltes vegades sutilitzen registres o zones de la memria. Aquests registres tenen les funcions segents: 1) Informar de lestat del dispositiu. 2) Transferir instruccions al dispositiu. 3) Transferir dades des del dispositiu. 4) Transferir dades al dispositiu. Dades entre lordinador i els controladors

Els controladors de dispositius sn la part electrnica dels perifrics, els quals poden tenir la forma duna targeta o dun circuit imprs integrat a la placa base de lordinador (figura 26).
Figura 26. Esquema dun controlador de dispositiu dE/S

Sistemes operatius monolloc

84

Introducci als sistemes operatius

En els grans ordinadors, on hi ha un nombre elevat de dispositius, els controladors es connecten al processador per un canal dentrada/ sortida o IOP (input/output processor). Aquest processador est especialitzat per a dur a terme operacions dentrada/sortida. El propsit dun canal s aconseguir que els dispositius siguin tractats com a virtuals, abstractes o transparents i aix descarregar el processador central de lordinador del treball dutilitzar-los directament. Els canals sn manipulats per ordres que sajuden en lexecuci per mitj de dispositius DMA i quan sacaben dexecutar retornen lestat corresponent del dispositiu que ho va fer i avisen daquesta situaci el processador central.

DMA s labreviatura daccs directe a la memria.

Els canals poden ser de dos tipus: 1) Selectors. Permeten la gesti de diversos dispositius, per noms un en cada moment. 2) Multiplexors. Gestionen diversos dispositius i poden transferir dades simultniament per tots ells.

1.11.2. Programari de control dE/S


Fins ara hem estudiat les operacions dentrada/sortida des de laspecte del maquinari, per des del punt de vista del sistema operatiu cal conixer com es pot utilitzar aquest maquinari des de diferents processos que sexecuten en el sistema. Per a facilitar lestudi dividirem la gesti dentrada/sortida en capes jerrquiques (figura 27) com les segents: 1) Programari independent del dispositiu. s format pel conjunt de rutines del sistema operatiu que processen la informaci dentrada/sortida. Aquestes rutines no depenen del dispositiu. El programari independent del dispositiu t com a missi atendre les crides al sistema que fa el procs dun usuari que sollicita una operaci dentrada/sortida, i ha de comprovar que tots els parmetres sn correctes (ladrea del dispositiu, ladrea de memria, etc.). 2) Programari dependent del dispositiu. Aquesta capa s formada per un conjunt de rutines especficament dissenyades per a fer una operaci dentrada/sortida sobre un dispositiu determinat. Podem dividir aquesta capa en: a) Gestor del dispositiu. Quan loperaci dentrada/sortida necessita actuar sobre aspectes que depenen del perifric, el nucli del sistema operatiu transfereix el control a aquest gestor que controla un tipus determinat de dispositiu dentrada/sortida. Aquest gestor es coneix amb el nom de controlador (driver) i t com a funci principal comprovar que la petici feta s correcta, que es dirigeix cap un tipus de dispositiu que s capa de ges-

El controlador (driver) s el programari que permet gestionar dispositius dentrada/sortida.

Sistemes operatius monolloc

85

Introducci als sistemes operatius

tionar i que les dades passades estan dacord amb les caracterstiques del dispositiu. En el cas derrors, ho comunica a la capa superior del sistema operatiu i aquesta ho comunicar al procs de lusuari. Si les dades sn correctes, ordena al dispositiu que comenci loperaci. b) Gestor dinterrupcions. s una rutina que executa el sistema operatiu quan es produeix una interrupci provocada pel dispositiu per al qual va ser dissenyada. Est lligada al maquinari de cada tipus de dispositiu i manipula duna manera directa els registres del controlador corresponent. Una vegada aquesta rutina ha tractat la interrupci, els resultats sn enviats al gestor del dispositiu o controlador, que far les accions oportunes: normalment, comunicar a la capa superior del sistema operatiu que loperaci dentrada/sortida ha acabat correctament o amb error.
Figura 27. Capes de programari

En general, les capes de programari en qu es divideix la gesti dentrada/sortida sordenen seguint lordre segent: Programes dusuari. Procediments independents dels dispositius. Controladors de dispositius. Gestor dinterrupcions dentrada/sortida.

1.12.

Gesti de la informaci

Cada procs necessita emmagatzemar gran quantitat dinformaci en lespai dadreces virtuals i aix provoca alguns problemes: Grandria escassa per a moltes aplicacions.

Sistemes operatius monolloc

86

Introducci als sistemes operatius

Informaci condicionada pel procs. Informaci no compatible entre processos.

La soluci al fet que cada procs necessiti emmagatzemar gran quantitat dinformaci en lespai dadreces virtuals est en el fet que la informaci sigui independent dels processos que la manipulen.

Requisits en els dispositius demmagatzematge Necessitem emmagatzemar la informaci i, per tant, cal uns certs requisits en els dispositius demmagatzematge: 1) Gran capacitat demmagatzematge dinformaci a llarg termini. 2) Informaci no voltil al procs que la utilitza. 3) Diversos processos han de poder accedir de manera concurrent a la informaci. 4) Varietat de suports en qu poder emmagatzemar la informaci: discos magntics, cintes magntiques, discos ptics, etc.

1.12.1. Estructura de la informaci


La informaci que manipula lordinador s formada per senyals representats per zeros i uns. s el que coneixem com a bits, que es corresponen fsicament amb la presncia o absncia de petits senyals elctrics sobre els diferents elements electrnics que formen el maquinari de lordinador. En lemmagatzematge de la informaci sutilitza un conjunt de carcters. Cada carcter es configura per mitj dun conjunt de bits, generalment vuit, que permeten un joc de 256 elements. Els codis ms emprats en lactualitat sn lASCII i lEBCDIC. Podem destacar els conceptes segents relacionats amb la informaci: 1) Camp, registre, arxiu i base de dades (figura 28)
Figura 28. Esquema de carcter, camp, registre i fitxer

ASCII i EBCDIC LASCII (American standard code for information interchange) i lEBCDIC (extended binary coded decimal interchange code) sn sistemes de codificaci de la informaci formats per 8 bits.

Un conjunt de carcters relacionats forma el camp, el qual pot ser, en funci de la informaci que cont, numric, alfabtic o alfanumric. Diferents camps duna mateixa entitat configuren un registre. Un conjunt de registres relacionats formen un arxiu o fitxer. Un conjunt de fitxers relacionats formen una base de dades.

Un camp clau s un element que permet diferenciar un registre dun altre.

Sistemes operatius monolloc

87

Introducci als sistemes operatius

En general, tot registre t un camp o ms dun que diferencien els registres dun fitxer. Aquests camps sanomenen camps clau. Els suports ms utilitzats en lactualitat per a emmagatzemar la informaci sn els discos magntics, les cintes magntiques i els discos ptics. De tots aquests, ens centrarem en lestudi dels discos magntics. 2) Registres fsic o bloc, sector i registres lgics o registres

La quantitat dinformaci que en cada operaci de lectura o escriptura s gestionada pel maquinari sanomena registre fsic o bloc i en els discos correspon al sector. Lusuari manipula la informaci en unitats lgiques de grandria variable segons laplicaci i larxiu de qu es tracti. Aquestes unitats reben el nom de registres lgics o registres.

Sector dun disc Un sector s un conjunt de pistes. Les pistes sn zones en qu se situa la informaci en cintes magntiques, discos magntics i discos ptics.

Per a millorar la velocitat daccs a la informaci i optimitzar ls dels dispositius, el sistema pot bloquejar els registres lgics agrupant diversos registres lgics en cada bloc fsic i aix crear registres bloquejats.

Els registres bloquejats sn un conjunt o blocs de registres lgics.

1.12.2. Sistema de fitxers


Des del punt de vista dels usuaris, els arxius sn grups dinformacions relacionades sobre les quals podem fer diverses operacions (lectura, escriptura, eliminaci, actualitzaci, etc.). El sistema operatiu ser el responsable de fer aquestes operacions. La part del sistema operatiu encarregada de tot aix sanomena sistema darxius, o sistema de fitxers, i la seva missi s la segent: 1) Gestionar lemmagatzematge. Decidir com sha dassignar en els fitxers lespai demmagatzematge disponible. Quan un usuari vol crear un arxiu, el sistema li ha dassignar un espai perqu pugui emmagatzemar la informaci. Aquest espai lobtindr a partir de lespai lliure disponible. Tamb cal considerar que arribar un moment determinat en qu lusuari deixar de necessitar un fitxer i leliminar, i aleshores el sistema haur dincorporar aquest nou espai lliure al total disponible. Aquesta gesti de lespai demmagatzematge la fa el sistema de fitxers i t com a objectius: a) Control de lespai disponible. Normalment el control es far duna manera separada per a cada dispositiu i el sistema mantindr una llista de lespai lliure que anir actualitzant a mesura que seliminin arxius o que sen formulin a partir de noves peticions.

Sistemes operatius monolloc

88

Introducci als sistemes operatius

b) Directori del dispositiu. El sistema mant en cada disc un espai reservat en qu desa informaci relativa als arxius existents i lespai lliure. Aquest espai reservat rep el nom de directori, que es crear cada vegada que sexecuti el procs de formatar. Lestructura daquest directori la defineix cada sistema operatiu.

Formatar s el procs que consisteix en la creaci de les pistes i sectors en qu se situar la informaci.

Per regla general, un directori o taula de continguts consta duna entrada per a cada arxiu existent en el disc i una altra sobre lespai disponible. En les entrades darxiu, el sistema registra la informaci necessria per a la gesti (nom de larxiu, tipus darxiu, localitzaci en el disc, grandria, protecci, permisos, comptabilitat, data de creaci, propietari, comptadors dutilitzaci, etc.).

La forma com sorganitzen les entrades en un directori condicionar la velocitat daccs a la informaci. Laccs a un fitxer requereix com a primer pas localitzar-lo i aquesta localitzaci ser ms rpida si les entrades en el directori estan ordenades alfabticament. Alguns sistemes, per a augmentar la velocitat daccs, exigeixen que el directori sigui sempre en la mateixa adrea del disc. Daltres permeten definir la situaci mitjanant programes dutilitat de tal manera que la seva posici queda en un bloc fixat. Dins del directori del dispositiu, el sistema operatiu destina un cert nombre de sectors per a contenir dades bsiques didentificaci de cada fitxer. c) Assignaci de lespai demmagatzematge. El sistema operatiu s el responsable de plasmar en els discos els arxius que creen els usuaris subministrant lespai necessari. Quan el sistema rep una petici per a crear un fitxer de n bits, el sistema ha de comprovar si hi ha espai lliure disponible i a continuaci optar per alguna de les estratgies segents: Assignar n bits consecutius de lespai en disc. El sistema colloca cada arxiu en un grup de blocs consecutius del disc. Cada entrada del directori del disc cont, a ms del nom de larxiu i altres dades, ladrea del bloc inicial de larxiu i el nombre de blocs que ocupa. Emmagatzemar larxiu en trossos no consecutius. Cada arxiu s una llista enllaada de blocs del disc que poden ser en qualsevol adrea del disc. En el directori, cada entrada de larxiu tindr, a ms del nom i altres dades, un apuntador al primer bloc de la cadena. A partir daquest primer bloc cadascun dels segents cont un apuntador al bloc que segueix. Lassignaci indexada. Agrupa tots els apuntadors en un bloc dndex. Cada arxiu tindr el seu propi bloc dndex i la seva adrea quedar indicada en el directori del disc en crear larxiu.

Sistema de gesti de directoris dUnix En el sistema Unix, per exemple, es coneix com a node-i el sistema de gesti dels directoris. Cont totes les dades, perqu els usuaris i programes puguin obrir, llegir, escriure i tancar els fitxers. Tamb t definides totes les caracterstiques de protecci del fitxer, la data de creaci, lultima modificaci, la identificaci del propietari, etc. A ms, s on es desa el nom del fitxer, les dades i la seva posici en disc.

Sistemes operatius monolloc

89

Introducci als sistemes operatius

2) Definir mtodes daccs. Definir la manera com lusuari pot accedir a la informaci emmagatzemada. 3) Protegir els arxius i garantir-ne la integritat. Garantir la integritat i privacitat de la informaci continguda. Com calia esperar, hi ha diferents criteris i tcniques per a fer aquestes tasques i cada sistema ser dissenyat segons les que responen millor a les seves necessitats i als seus objectius.

!!
Podeu ampliar els vostres coneixements sobre la manera daccedir a la informaci emmagatzemada, en el subapartat Mtodes daccs als fitxers daquesta unitat.

1.12.3. Mtodes daccs als fitxers


Una vegada creat un fitxer pot succeir que en un moment determinat necessitem accedir a la informaci del fitxer en un suport determinat. Ho podrem fer segons un esquema lgic seqencial o b quasi directe per mitj de part de la informaci continguda en larxiu. El sistema darxius del sistema operatiu defineix quines formes daccs lgic permet i quins mtodes daccs suporta.

Un mtode daccs als fitxers s un conjunt de rutines i taules que permeten accedir a la informaci dels arxius, segons un esquema lgic determinat.

Tot seguit, comentarem alguns mtodes daccs als fitxers: 1) Accs seqencial. Aquest mtode permet laccs als registres dun fitxer en un ordre preestablert des del primer fins a lltim i dun en un. Les rutines daquest mtode mantenen un apuntador al registre lgic segent al qual sha daccedir. Una operaci de lectura o escriptura llegeix o escriu en el registre i avana lapuntador al registre segent. El mtode implica que els registres lgics semmagatzemen segons lordre en qu shi accedir per a tractar-los, s a dir, lordre lgic dels registres ha de coincidir amb lordre fsic. Lactualitzaci s complicada, ja que implica la recollocaci dels registres. 2) Accs directe. Aquest mtode permet laccs a qualsevol part de larxiu, s a dir, no s necessari passar per la informaci anterior per a poder accedir a un registre determinat. Noms poden tenir aquest tipus daccs aquells suports que per la seva naturalesa ho permeten (discos magntics, etc.). Lusuari entn larxiu com un conjunt de registres individualitzats (numerats respecte a linici) als quals pot accedir en qualsevol ordre. Per a fer-ho, davant de la petici dun registre determinat, el programari del mtode daccs calcula ladrea del bloc fsic que el cont i accedeix a la informaci directament. Aquest clcul s neces-

Sistemes operatius monolloc

90

Introducci als sistemes operatius

sari, ja que lusuari utilitza adreces relatives del registre i desconeix la posici dels registres en el disc. 3) Accs directe indexat. En aquest cas, es construeix un ndex o una taula de relacions de claus i els seus blocs fsics per a cada fitxer. La localitzaci dun registre es far accedint primerament a aquest ndex i a partir daqu sobtindr ladrea del bloc corresponent a la clau sollicitada.

1.12.4. Directoris darxius


Hi ha diferents tcniques que permeten la creaci dun arxiu en disc i la seva utilitzaci posterior segons mtodes daccs definits. Ara b, en els sistemes hi ha diferents arxius que el sistema darxius ha de controlar per a poder atendre les peticions que sen facin (creaci, lectura, etc.). Per aix, sutilitzen directoris que a la vegada sn arxius destructura especial els registres dels quals contenen la descripci dels arxius existents en el sistema. Mitjanant aquests directoris, el sistema podr localitzar rpidament un arxiu sollicitat (en quin volum es troba) i conixer-ne les caracterstiques.

Des del punt de vista lgic, un directori s una taula de smbols que indiquen els arxius existents.

Lestructura duna taula de smbols que indiquen els arxius existents en un directori pot ser ms o menys complicada depenent dels sistemes operatius, per ha de permetre fer les operacions bsiques segents: 1) Recerca. Aquesta operaci ha de permetre localitzar un fitxer si existeix. En alguns casos, permet localitzar grups de fitxers amb caracterstiques comunes. 2) Creaci. La creaci dun fitxer nou implica posar una nova entrada en el directori adequat. 3) Eliminaci. Quan un fitxer ja no sigui necessari sha de poder eliminar per a utilitzar lespai lliure. Tamb shaur deliminar en el directori. 4) Llista. Ha de permetre fer una llista dels arxius dun directori i tamb del contingut de lentrada dun arxiu en aquest directori. Seguidament, analitzarem algunes estructures de directoris: 1) Directoris dun nivell. En sistemes petits nhi ha prou de disposar dun nic directori que contindr la descripci de tots els fitxers disponibles (fi-

Sistemes operatius monolloc

91

Introducci als sistemes operatius

gura 29). Un exemple ns el directori de dispositius, en qu es desa la descripci de tots els fitxers existents en aquest dispositiu i de lespai disponible. El directori dun dispositiu s en una adrea predeterminada del disc (per maquinari o per programari) o b apuntant indirectament a un bloc fsic especfic de manera que es localitzi immediatament.
Figura 29. Directori dun nivell

2) Directoris de dos nivells. Consisteix a definir un directori per a cada usuari en el qual queden indicats els fitxers que li pertanyen (figura 30). Per la seva banda, els diferents directoris de lusuari sn controlats mitjanant un directori mestre del sistema. Per a localitzar un arxiu el sistema el buscar en el directori del peticionari. Si es crea un fitxer, aquest es posa en el seu directori. De la mateixa manera, si selimina, lacci afectar el que tingui el nom referenciat en aquest directori i no el daltres usuaris.
Figura 30. Directori de dos nivells

3) Estructures multinivell (estructura jerrquica). Arbres de directoris. Lestructura anterior es pot considerar com una organitzaci en arbre de dos nivells. Generalitzant-la, podem pensar en estructures en arbre de diferents nivells. Cada usuari podr crear subdirectoris en el seu directori i agrupar els arxius de la manera ms convenient (figura 31). En general, el directori mestre sanomena directori arrel. Aquest sistema s avui dia molt utilitzat en els sistemes operatius en qu cada directori dusuari con-

Sistemes operatius monolloc

92

Introducci als sistemes operatius

t entrades que apunten a fitxers o a subdirectoris que, a la vegada, apunten a fitxers o subdirectoris de nivell ms baix.
Figura 31. Directori de multinivells

1.12.5. Seguretat dels arxius


La gesti de la seguretat dels arxius referent al seu contingut es pot enfocar des de dos aspectes que sn els que presentem a continuaci: 1) Disponibilitat dels arxius. Lobjectiu fonamental s poder accedir a la informaci en el moment en qu es necessiti. a) Una primera tcnica consisteix en la realitzaci peridica de cpies de seguretat (back-up) del contingut dels arxius, per tal que en cas que aquests es destrueixin es pugui recuperar la informaci a partir de les cpies. En alguns dels sistemes operatius actuals hi ha eines que permeten la realitzaci automtica daquestes cpies i tamb possibles recuperacions. b) Una altra tcnica s la utilitzaci de fitxers auxiliars en qu es registren totes les operacions que fan els usuaris sobre els fitxers. Aquests fitxers tenen lextensi log; per aix, es coneixen com a fitxers de registres o fitxers LOG, i poden ser manipulats per mitj dutilitats del sistema. 2) Privacitat dels fitxers i protecci. El segon aspecte per a la seguretat dels arxius s controlar que usuaris no autoritzats accedeixin a la informaci continguda en els fitxers. El primer control consisteix en la identificaci de lusuari per mitj del nom de lusuari i duna paraula clau daccs. El sistema validar o no el binomi anterior consultant la taula de noms dusuaris i de claus, i concedir o denegar laccs sollicitat. Normalment,

Lencriptaci s una tcnica que permet que una informaci determinada no sigui fcil de manipular.

Sistemes operatius monolloc

93

Introducci als sistemes operatius

el fitxer de claus s encriptat. Una vegada lusuari ja s dins el sistema, noms podr accedir a determinats recursos i s aix com el sistema operatiu fa un nou nivell de control. Aix ho podem gestionar a partir dels drets, els permisos i els atributs assignats als fitxers.
Ladministrador En els sistemes informtics tamb s necessari controlar ls de molts recursos, ja que el nombre dusuaris que hi poden accedir s molt elevat i aix implica lexistncia de persones dedicades a ladministraci (administrador) de la seguretat del sistema i a millorar leficincia de la protecci utilitzada. Per a ajudar en aquesta tasca, els sistemes solen disposar darxius dincidncies en els quals queden especificades totes les accions succedes en el sistema (intents daccs illegal, altes i baixes de recursos nous, etc.).

Els drets en els fitxers sn unes capacitats assignades als usuaris per a fer determinades tasques en el sistema informtic. En sn exemples: la gesti dusuaris per persones diferents de ladministrador, la gesti del sistema de cpies de seguretat, etc. Els permisos en els fitxers sn autoritzacions assignades a usuaris determinats per a fer unes accions concretes en els fitxers (per exemple, tenir el perms de lectura i descriptura en un fitxer, tenir el perms dexecuci en un fitxer, etc.). Els atributs en els fitxers sn caracterstiques que tenen els fitxers i afecten tots els usuaris que utilitzen aquests fitxers (per exemple, els fitxers comprimits, els fitxers xifrats, etc.).

Sistemes operatius monolloc

94

Introducci als sistemes operatius

2. Configuraci de mquines virtuals

La utilitzaci de les mquines virtuals en el mn de la informtica s un fet que no podem ignorar. Molts usuaris, tant particulars com empreses, utilitzen la tecnologia de la virtualitzaci per manipular la seva informaci i gestionar-la. La virtualitzaci dels sistemes informtics no noms saplica a petits equipaments, sin que cada vegada sutilitza ms en molts mbits relacionats amb el mn de la informtica.

2.1. Descripci de mquina real i de mquina virtual


Moltes vegades neix la necessitat de provar un programa informtic o fer proves dun altre sistema operatiu diferent del que estem utilitzant en el nostre ordinador. Quina s la possible soluci, formatar lequip i installarhi el nou sistema operatiu? Crear una partici i installar-lhi? Buscar un altre equip en qu estigui installat? La soluci s ms senzilla que tot aix: lnic que sha de fer s installar una eina que simuli el sistema operatiu que voleu provar, aix no hi ha necessitat de formatar ni canviar dequip informtic. El sistema operatiu simulat hauria de ser totalment independent del sistema operatiu real, de manera que convisquessin els dos sistemes operatius en total harmonia i es pogus passar de lun o laltre amb facilitat. Tot el que hem comentat anteriorment ho podem aconseguir mitjanant la utilitzaci de les mquines virtuals. Aleshores, en un sistema informtic podem treballar tant en mquines reals o fsiques com en mquines lgiques o virtuals.
USB s labreviatura de bus en srie universal.

Formatar El formateig s un procs que consisteix a preparar un determinat tipus de suport per a gestionar la informaci que shaur de manipular.

Una mquina real (o fsica) s un ordinador que t elements fsics, o tamb anomenats components, que donen un servei a molt baix nivell (nivell fsic) dins duna arquitectura coneguda i en qu sobtenen els millors resultats referents a la velocitat de tractament de la informaci. En la mquina real s on sexecuten els sistemes operatius com altres processos que noms necessiten una arquitectura coneguda. Una mquina virtual (o mquina lgica) s una mquina que simula el funcionament duna mquina real sobre la qual es poden installar sistemes operatius, aplicacions informtiques, navegar de manera segura per Internet, utilitzar diversos dispositius (per exemple, targetes de xarxa, dispositius USB, etc.).

Sistemes operatius monolloc

95

Introducci als sistemes operatius

2.1.1. Virtualitzaci
Una mquina virtual s una mquina que simula una mquina real. Per com saconsegueix aix? Doncs mitjanant un determinat programari. Aquest procs de simulaci es coneix amb el nom de virtualitzaci.

La virtualitzaci s un concepte que descriu la capacitat de tenir diversos sistemes operatius funcionant al mateix temps en un ordinador.

Els conceptes de virtualitzaci i de mquines virtuals van aparixer durant la dcada de 1960 com a resultat duns treballs elaborats per lempresa IBM en la seva famlia dordinadors centrals (mainframes) (IBM System VM/370). La idea que es proposa i saplica s executar sobre el maquinari un petit sistema operatiu que simula el maquinari un nombre determinat de vegades. Cadascuna de les mquines simulades s una cpia exacta del maquinari real per fet de manera lgica. Tot aix saconseguia mitjanant un programari determinat. Aquesta idea encara que podem pensar que podia tenir moltes possibilitats dimplementar-se a escala general no es va generalitzar. Els sistemes operatius Unix van acabar sent els ms utilitzats en el mercat informtic i les mquines virtuals van perdre fora en la dcada de 1980. Amb el pas del temps, els ordinadors comencen a ser ms potents i sorgeix la possibilitat demular mquines antigues en els ordinadors nous. Amb la millora de les prestacions dels ordinadors de taula (desktop) i dels servidors, la idea de la virtualitzaci del maquinari que va nixer amb lIBM VM/370 ha recobrat inters en el mn del PC. Han aparegut algunes aplicacions interessants que creen PC lgics dins dun ordinador fsic i permeten lexecuci simultniament de diversos sistemes operatius.

Mainframes Els ordinadors centrals (mainframes) sn un tipus dordinadors de gamma alta (gran capacitat de memria, velocitat de processament molt alt, etc.).

IBM s labreviatura dnternational bussiness machines.

PC s labreviatura de personal computer.

Tamb podem definir una mquina virtual com un programari que simula una mquina real i on es poden executar programes informtics com si fos una mquina real.

VM s labreviatura de mquina virtual.

2.1.2. Amfitri i hoste


Per a poder utilitzar una mquina virtual necessitem un programari determinat que permeti simular una mquina real. Aquest programari ha destar installat en un sistema operatiu de base anomenat amfitri (per exemple, la famlia de sistemes operatius Windows, les distribucions de Linux, lentorn Macinstosh dApple). Els diversos sistemes operatius installats en les mquines virtuals sanomenen hostes.

Sistemes operatius monolloc

96

Introducci als sistemes operatius

El sistema operatiu sobre el qual sexecuta el programari per a crear les mquines virtuals sanomena amfitri (en angls sanomena host). Per exemple, els sistemes operatius Windows, Linux, MacOS. Els diversos sistemes operatius installats en cada mquina virtuals sanomenen hostes (en angls sanomenen guest).

Recordem que en una mquina real (figura 32) podem identificar els components segents: Les aplicacions informtiques sn els programes informtics que voleu executar en un mquina real. El sistema operatiu s un programari que facilita la comunicaci entre les aplicacions informtiques i el maquinari. El maquinari sn els diferents dispositius que formen la mquina real i sn els responsables de dur a terme les feines finals.
Figura 32. Components duna mquina real
Logotip dApple

2.2. Avantatges i inconvenients de la virtualitzaci i de les mquines virtuals


Les mquines virtuals es poden classificar de moltes maneres igual que hi pot haver molts tipus denfocament de la virtualitzaci. Tenint en compte la funcionalitat de les mquines virtuals les podem classificar en les categories segents: 1) Les mquines virtuals de sistema, tamb anomenades mquines virtuals de maquinari o virtualitzaci de plataforma, permeten a la mquina fsica real simular-se en diverses mquines reals, i cadascuna executa el seu propi sistema operatiu. La capa de programari que permet la virtualitzaci sanomena mquina virtual de maquinari o monitor de mquina virtual. Un monitor de mquina virtual es pot executar o b directament sobre el maquinari, o b sobre el sistema operatiu.

El monitor virtual t com a missi fer la multiprogramaci presentant als nivells superiors tantes mquines virtuals com se sollicitin. No sn mquines esteses sin una rplica exacta de la mquina real, de manera que en cadascuna es pot executar un sistema operatiu diferent, que ser el que ofereixi la mquina estesa a lusuari.

Sistemes operatius monolloc

97

Introducci als sistemes operatius

Les caracterstiques principals del monitor virtual sn: Proporciona diverses mquines virtuals a la capa superior. Las mquines virtuals instrumenten cpies exactes del maquinari simple, amb el seu mode nucli/usuari, els dispositius dE/S, les interrupcions i tot el que t una mquina real. Poden executar qualsevol sistema operatiu de manera directa sobre el maquinari. Suporten perifrics virtuals. Algunes de les tcniques que es poden utilitzar en les mquines virtuals de sistema sn les segents: a) Lemulaci que es basa a crear mquines virtuals (figura 33) que simulen el maquinari duna o diverses plataformes de maquinari diferents.
Figura 33. Emulaci

b) La virtualitzaci completa o nativa permet a una mquina virtual executar sistemes operatius hostes, sense haver-los de modificar, sobre un sistema amfitri, utilitzant un programa anomenat hipervisor o monitor de mquina virtual (VMM) que permet compartir el maquinari real (figura 34). Aquesta capa intermdia s lencarregada de monotorar els sistemes operatius hostels per tal de capturar determinades ordres daccs al maquinari que no es poden fer de manera real, perqu no es t accs directe al maquinari. Un monitor de mquina virtual es pot executar o b directament sobre el maquinari, o b sobre el sistema operatiu. El seu avantatge principal s que els sistemes operatius es poden executar sense cap modificaci sobre la plataforma; ara b, t linconvenient que el sistema operatiu ha destar suportat en larquitectura virtualitzada.

VMM s labreviatura de monitor de mquina virtual.

Sistemes operatius monolloc

98

Introducci als sistemes operatius

Figura 34. Virtualitzaci nativa o completa

c) La paravirtualitzaci s una manera de millorar leficincia de les mquines virtuals i apropar-les al rendiment duna mquina real. Per a ferho, utilitzen modificacions en els sistemes operatius hostes per a poderse executar sobre el monitor de la mquina virtual. 2) Les mquines virtuals de procs, a vegades anomenades mquines virtuals daplicacions, sexecuten com un procs normal dins dun sistema operatiu i suporten un nic procs. La mquina virtual sinicia automticament quan es llana el procs que sha dexecutar i es para quan el procs finalitza. El seu objectiu s proporcionar un entorn dexecuci independent de la plataforma de maquinari i del sistema operatiu que amagui el maquinari real i permeti que un programa sexecuti sempre de la mateixa manera sobre qualsevol plataforma. Un dels exemples ms coneguts actualment daquest tipus de mquina virtual s la mquina virtual Java (JVM). 3) El concepte de la virtualitzaci de plataforma de qu hem parlat anteriorment, tamb es pot estendre a la virtualitzaci de recursos especfics del sistema com, per exemple, la capacitat demmagatzematge, els recursos de la xarxa i els sistemes multiprocessador. La utilitzaci de les mquines virtuals t tot un seguit davantatges i dinconvenients. Alguns dels avantatges de la utilitzaci de les mquines virtuals sn: Consolidaci de servidors: convertir molts servidors fsics en virtuals, daquesta manera saprofita el maquinari disponible de la millor manera possible. Recuperaci davant desastres: lestat duna mquina virtual es pot emmagatzemar en forma de fitxer i, per tant, en el cas de desastre es pot recuperar la informaci amb rapidesa.

JVM s labreviatura de mquina virtual Java.

Sistemes operatius monolloc

99

Introducci als sistemes operatius

Proves daplicacions: moltes vegades es necessita un entorn per a provar una aplicaci. Utilitzar una mquina virtual permet installar un sistema operatiu des de zero, provar aplicacions i desprs eliminar la mquina. Execuci dentorns complets sense installaci i configuraci: la possibilitat de descarregar mquines virtuals des dInternet permet estalviar temps en installacions i configuracions. Hi ha moltes mquines virtuals com a servidors complets per a ser utilitzats (Linux, Apache, mySQL i PHP), mquines amb gestors de continguts i wikis gratuts i funcionals des del primer moment. Aplicacions porttils: amb ls de les mquines virtuals es poden tenir PC completament preparats per a ser utilitzats en dispositius USB, la qual cosa pot ser duna gran utilitat per a tenir un entorn privat i utilitzar-lo en qualsevol PC. Com a inconvenients de les mquines virtuals, en podem indicar els segents: Un dels inconvenients de les mquines virtuals s que afegeixen una gran complexitat al sistema en temps dexecuci. Aix t com a efecte lalentiment del sistema, s a dir, el programari no sexecutar amb la mateixa velocitat que en una mquina real. No obstant aix, la flexibilitat que ofereixen les mquines virtuals compensa aquesta prdua deficincia. Una mquina virtual reservar recursos de maquinari de la mquina amfitri en el moment de la seva posada en funcionament. Tpicament, aquests recursos sn en forma de memria RAM i espai de disc dur que no estaran disponibles per al sistema operatiu amfitri. Una vegada la mquina virtual es para, la memria RAM utilitzada per la mquina virtual queda lliure per no lespai de disc dur que continuar reservat per a la mquina virtual, ja que cont els fitxers que permeten al sistema operatiu hoste executar-se.

Wikis Un wiki s un lloc web en qu les pgines poden ser editades per mltiples usuaris mitjanant els navegadors dInternet.

2.3. Programari lliure i propietari per a la creaci de mquines virtuals: installaci


De programes informtics, nhi ha molts i de caracterstiques molt diferents. Una manera de classificar els programes informtics s tenint-ne en compte la propietat. Aleshores, podem parlar de programari propietari i de programari lliure.

Sistemes operatius monolloc

100

Introducci als sistemes operatius

El programari propietari es refereix a qualsevol programa informtic en el qual els usuaris tenen les limitacions segents: utilitzaci, modificaci, redistribuci (amb modificaci o sense), o el codi font no est disponible o laccs s restringit.

Programari propietari El programari propietari tamb s conegut com a programari no lliure, programari privatiu, programari privat, programari amb propietari o programari de propietat.

En el programari no lliure una persona fsica o jurdica (empresa, corporaci, fundaci, etc.) t tots els drets dautor sobre un programari i negar o no donar, al mateix temps, els drets dutilitzar el programa amb qualsevol propsit; destudiar com funciona el programa i adaptar-lo a les prpies necessitats (en qu laccs al codi font s una condici prvia); de redistribuir cpies, o de millorar el programa i fer-ne pbliques les millores. Daquesta manera, un programari continua sent no lliure encara que el codi font es faci pblic, quan es mant la reserva de drets sobre ls, la modificaci o la distribuci.
El programari lliure tamb sanomena programari obert o programari no propietari.

El programari lliure s la denominaci del programari que dna la llibertat als usuaris sobre el producte adquirit i, per tant, una vegada obtingut, de poder ser utilitzat, copiat, estudiat, modificat i redistribut lliurament.

Segons la Free Software Foundation (FSF), el programari lliure es refereix a la llibertat dels usuaris per a executar, copiar, distribuir, estudiar, canviar i millorar el programari; duna manera ms precisa, es refereix a quatre llibertats dels usuaris del programari: 1) La llibertat dutilitzar el programa amb qualsevol propsit. 2) La llibertat destudiar el funcionament del programa i adaptar-lo a les necessitats. 3) La llibertat de distribuir cpies, amb la qual cosa es pot ajudar els altres usuaris a millorar el programa. 4) La llibertat de fer pbliques les millores, de manera que tota la comunitat sen benefici (per a aconseguir algunes daquestes llibertats cal que laccs al codi font sigui un requisit previ).

Free Software Foundation La Free Software Foundation (FSF) s una organitzaci dedicada a eliminar les restriccions sobre la cpia, la redistribuci, la comprensi i la modificaci de programes informtics.

Un personatge que cal destacar sobre els conceptes del programari lliure s Richard Stallman, creador dels conceptes Free Software Foundation i de lFSF.
Richard Stallman

Sistemes operatius monolloc

101

Introducci als sistemes operatius

Un altre aspecte relacionat amb el tema del programari sn les llicncies. Una llicncia s lautoritzaci formal amb carcter contractual en qu un autor dun programari dna a una persona interessada el perms per a exercir actes dexplotaci legals. Des del punt de vista del programari lliure, hi ha diferents variants del concepte o grups de llicncies (per exemple, la GPL, la BSD, estil MPL, etc.). En la llicncia pblica general de GNU (GNU GPL), lautor conserva els drets dautor (copyrigth) i permet la redistribuci i la modificaci sota condicions fixades per a assegurar-se que totes les versions modificades del programari continuen en les normes de la GNU GPL. s a dir, la llicncia GNU GPL possibilita la modificaci i la redistribuci del programari, per nicament sota aquesta mateixa llicncia. En la taula 8 es presenta una comparativa de diverses eines de virtualitzaci tant lliures com propietries.
Taula 8. Comparativa deines de virtualitzaci Caracterstiques Facilitat dinstallaci Producte VirtualBox, VirtualPC 2007 i VMWare Explicaci Els tres productes sinstallen de manera molt senzilla mitjanant un assistent. VirtualBox: Windows, Linux VMWare Server: Windows, Linux, MacOS Sistemes operatius amfitri suportats VirtualBox, VMWare Server, VirtualPC 2007, QEMU,XEN, KVM, Mac on Linux VirtualPC 2007: Windows, MacOS QEMU: Linux, Windows, MacOS XEN: Linux, Windows KVM: Linux Mac on Linux: MacOS VirtualBox: DOS, Windows, Linux, OS/2, OpenBSD, FreeBSD, Netware, Solaris, etc. VMWare Server: DOS, Windows, Linux, FreeBSD, netware, Solaris, etc. Sistemes operatius hostes suportats VirtualBox, VMWare Server, VirtualPC 2007, QEMU, KVM, Bochs, Mac on Linux, Virtuozzo VirtualPC 2007: DOS, Windows, Linux, OS/2, OpenBSD, FreeBSD, Netware, Solaris, etc. QEMU: Windows, Linux, Solaris, Netware Xen: Linux, FreeBSD, Netware Bochs: Windows, Linux, Dos Mac on Linux: Linux Virtuozzo: Windows, Linux VirtualBox, VMWare Server, VirtualPC 2007 VirtualBox: s VMWare Server: s VirtualPC 2007: no VirtualBox: fcil Facilitat de creaci de mquines virtuals VirtualBox, VMWare Server, VirtuaPC 2007, QEMU, Xen VMWare: fcil VirtualPC 2007: fcil QEMU: fcil Xen: fcil

GPL s labreviatura de general public license; BSD de Berkeley software development, i MPL de Mozilla public license.

GNU La paraula GNU significa GNU. No s Unix. GNU s un projecte que va ser iniciat per Richard Stallman amb lobjectiu de crear un sistema operatiu Unix completament lliure; el sistema GNU.

Suport per USB

Sistemes operatius monolloc

102

Introducci als sistemes operatius

Caracterstiques

Producte

Explicaci VMWare Server disposa de les mquines Virtual Appliances, que sn mquines virtuals preconfigurades i preparades per a utilitzar-les. Els dos sistemes disposen deines que permeten millorar la integraci del sistema hoste amb el sistema amfitri una vegada installat. En el cas de VMWare Server, sanomenen VMWare tools i, en el cas de Virtual PC, virtual machine additions. VMWare Server s capa dimportar mquines creades amb VirtualPC. VirtualBox: molt bo

Existncia de mquines virtuals disponibles a Internet

VMWare Server

Integraci amb el sistema operatiu amfitri: visualitzador (display), carpetes compartides, etc.

VMWare Server, VirtualPC 2007

Capacitat dimportar mquines creades amb altres eines

WMWare Server

Rendiment

VirtualBox, VMware Server, VirtualPC 2007, QEMU, Xen

VMWare Server: molt bo VirtualPC 2007: molt bo QEMU: molt bo Xen: molt bo Lliure: VirtualBox, QEMU, Xen, KVM, Mac on Linux Propietari: VMWare Workstation, Virtuozzo Gratut i propietari: VirtualPC 2007, VMWare VMWare Server: x86, Macintosh VirtualBox: x86

Tipus de llicncia

VirtualBox, VMware Server, VirtualPC 2007, QEMU, Xen, VMWare Workstation, Mac on Linux

Plataformes suportades

VirtualBox, VMware Server, VirtualPC 2007, QEMU, Xen, KVM, Bochs, Mac on Linux

VirtualPC 2007: x86, Macintosh QEMU: x86, SPARC Xen: x86, AMD64, IA64, PPC KVM: x86 Bochs: x86 Mac on Linux: PowerPC, x86

Una vegada que ja coneixem les principals caracterstiques del programari propietari o lliure cal fer la installaci dalgun tipus de programari de mquines virtuals per a poder treballar amb aquesta tecnologia. En tot procs dinstallaci de programari informtic podem destacar les fases segents: 1) Lestudi previ o anlisi previa estan relacionats amb estudiar i avaluar el procs dinstallaci i de configuraci del programari informtic. En aquest procs podem incloure, entre altres elements: a) La determinaci exacte dels objectius. b) La interpretaci de la documentaci tcnica de la installaci del programari informtic.

!!
Podeu trobar informaci sobre diferents aspectes relacionats amb la interpretaci de la documentaci tcnica per a la creaci de mquines virtuals en la secci Annexos del web del crdit.

Sistemes operatius monolloc

103

Introducci als sistemes operatius

c) La justificaci de la convenincia o no de la installaci i de la configuraci dun determinat tipus de programari. d) La font dobtenci del programari que cal installar i configurar: es tracta davaluar la utilitzaci de programaria obert o de programari propietari. Si s lltim cas, hem dhaver donat resposta, entre daltres, a les qestions segents: quines sn les fonts de finanament?, s rendible aquesta inversi?, etc. e) La necessitat de conixer els requisits per a la installaci en el maquinari del programari corresponent (per exemple, el tipus de processador, la velocitat del processador, la quantitat de memria RAM necessria, etc.). f) La necessitat de conixer els requisits de programari per a dur a terme la installaci i la configuraci del programari que sha dinstallar i de configurar (per exemple, el tipus de sistema operatiu, el tipus de navegador dInternet, etc.). g) La disponibilitat dinformaci complementria que facilita o refora el procs dinstallaci i de configuraci del programari corresponent (per exemple, si cal registrar-se una vegada feta la installaci, etc.). h) La necessitat de disposar de la informaci tcnica dels diferents dispositius informtics afectats en el procs dinstallaci i de configuraci del programari corresponent. i) La necessitat de disposar de la informaci tcnica dels diferents programes informtics afectats en el procs dinstallaci i de configuraci del programari corresponent. j) La disponibilitat de la documentaci general del sistema informtic. Tamb cal disposar de la documentaci del sistema informtic relacionada amb les incidncies i les solucions adoptades durant el cicle de vida del sistema informtic. k) Cal tenir molt clar el procs dinstallaci i de configuraci del programari que cal installar. l) Cal disposar duna bateria de proves per a comprovar el funcionament correcte del sistema informtic. 2) En la fase dinstallaci, sinstalla el programa informtic en el maquinari corresponent. Les accions que cal desenvolupar en aquesta fase sn: a) Fer una cpia de seguretat del sistema installat per a evitar possibles problemes finals.

Sistemes operatius monolloc

104

Introducci als sistemes operatius

b) Seguidament, cal executar el programa corresponent i seguir el procs dinstallaci indicat en la documentaci del programari que sha dinstallar. c) Una vegada installat el programari corresponent cal fer les comprovacions corresponents de funcionament del sistema informtic en general. Per exemple, es podrien fer les accions segents: Apagar i engegar el sistema i determinar si el procs sexecuta sense cap problema. Executar algunes aplicacions informtiques i comprovar-ne el funcionament correcte. Executar el programari installat i avaluar-ne el funcionament correcte. Determinar el funcionament correcte del sistema informtic durant lexecuci del programari. Avaluar els resultats de les comprovacions i justificar les decisions adoptades. 3) En la fase de configuraci adaptem el programari installat a les necessitats de funcionament de lusuari i del sistema operatiu. 4) Una vegada hem fet la configuraci del programari installat, cal comprovar-ne el funcionament a individualment (funcionant com un programa independent) i globalment (funcionant en conjunt amb els altres components del sistema informtic). A partir dels resultats obtinguts caldr fer o no modificacions en la installaci i en la configuraci. 5) Finalment, caldr documentar tot el procs dinstallaci i de configuraci definitiu i tamb les diferents incidncies presentades i les solucions emprades en el procs.

!!
Podeu trobar informaci sobre diferents aspectes de la installaci del programari per a la creaci de mquines virtuals utilitzant algun tipus de programari obert en la secci Annexos del web del crdit.

!!
Podeu trobar informaci sobre diferents aspectes de la installaci del programari per a la creaci de mquines virtuals utilitzant algun tipus de programari gratut i de tipus propietari en la secci Annexos del web del crdit.

2.4. Creaci de mquines virtuals per a sistemes operatius lliures i propietaris


Una vegada ja tenim installat el programari per a la creaci de mquines virtuals i hem comprovat que funciona correctament s el moment de la creaci de mquines virtuals. El procs que cal seguir ser el mateix que en la installaci i en la configuraci de qualsevol tipus de programari, s a dir: fer una anlisi prvia, fer la installaci i la configuraci corresponents, comprovar el funcionament del sistema en general i finalment documentar tot el procs dut a terme. Algunes de les pautes que cal tenir en compte durant la creaci de les mquines virtuals sn: Determinar els objectius. Seleccionar el tipus dinstallaci que sha dutilitzar: la tpica, la completa, etc.

Sistemes operatius monolloc

105

Introducci als sistemes operatius

Establir el tipus de sistema operatiu hoste que utilitzarem. Fixar el nom de la mquina virtual. La quantitat de memria RAM que cal utilitzar. Seleccionar el lloc fsic on se situar la mquina virtual. Establir el tipus de comunicaci entre els sistemes operatius hostes. Hi ha tres opcions: la comunicaci pont (bridge), la comunicaci NAT i la comunicaci anomenada host-only. Fixar la capacitat de la mquina virtual. Comprovar el funcionament de la mquina virtual creada i actuar en conseqncia. Documentar tot el procs de creaci de la mquina virtual.

Entre els sistemes operatius hostes es poden establir tres tipus de comunicacions: 1) Comunicaci pont (bridge). Comunicaci en qu sassigna una IP al sistema operatiu de la mquina virtual dins del mateix rang dIP de lordinador amfitri. 2) Comunicaci NAT. Aquest s un sistema que permet al sistema operatiu de la mquina virtual comunicar-se per mitj de lordinador amfitri per no apareix en la xarxa com un ordinador independent, s a dir, no apareix com un ordinador fsic. 3) Comunicaci host-only. Aquesta opci crea una xarxa dins de lordinador amfitri amb la qual cosa tots els sistemes operatius de les mquines virtuals situades en lamfitri es poden comunicar entre ells, per no amb mquines que sn fora de lamfitri, s a dir, amb ordinadors de la xarxa fsica.

IP s labreviatura dInternet protocol; i NAT, de network address translation.

!!
Podeu trobar informaci sobre diferents aspectes de la creaci de mquines virtuals utilitzant algun tipus de programari lliure en la secci Annexos del web del crdit.

!!
Podeu trobar informaci sobre diferents aspectes de la creaci de mquines virtuals utilitzant algun tipus de programari propietari en la secci Annexos del web del crdit.

2.5. Configuraci i utilitzaci de mquines virtuals


Una vegada sha creat la mquina virtual cal comprovar-ne el funcionament correcte a partir de la bateria de proves preparades en la fase danlisi prvia. En funci dels resultats obtinguts en aquesta fase de comprovaci pot ser necessari fer petites o grans correccions en la mquina virtual creada; aquest procs s conegut amb el nom de configuraci.

La configuraci duna mquina virtual sn un conjunt daccions encaminades a aconseguir un funcionament correcte del sistema informtic i poder-ne adaptar el funcionament a les necessitats de lusuari i del sistema operatiu.

Sistemes operatius monolloc

106

Introducci als sistemes operatius

Per a poder fer la configuraci cal disposar deines que moltes vegades sn subministrades pel mateix programari de creaci de les mquines virtuals i, daltres, pel sistema operatiu amfitri.

!!
Podeu trobar informaci sobre diferents aspectes de la configuraci de mquines virtuals utilitzant algun tipus de programari lliure en la secci Annexos del web del crdit.

El procs per a fer la configuraci el podrem resumir en les actuacions segents: 1) Una vegada dutes a terme les fases danlisi prvia, dinstallaci i de comprovaci de la mquina virtual creada cal avaluar a partir dels resultats de la fase de comprovaci la necessitat de modificar la configuraci de la mquina real creada. 2) Cal tenir ben definits els objectius implicats en la configuraci. 3) Determinar els elements de maquinari implicats en la configuraci: la memria RAM, el disc dur, les unitats de CD/DVD, les unitats de disquets, la targeta de comunicacions (Ethernet), les connexions USB, el sistema de so, els processadors, les connexions sries i parallels, la pantalla, el ratol, etc. 4) Determinar els elements de programari implicats en la configuraci: canvi de nom de la mquina virtual i del tipus de sistema operatiu hoste, incorporaci deines complementries que ajuden a millorar el funcionament de lentorn, eliminaci de mquines virtuals, la cpia de mquines virtuals, la importaci i lexportaci de mquines virtuals, larrencada i laturada de les mquines virtuals, els sistemes de tecles per a fer determinades accions duna manera ms rpida, etc. 5) Dur a terme el procs de configuraci a partir de la documentaci tcnica. 6) Comprovar els resultats de la configuraci i actuar en conseqncia. 7) Documentar tot el procs de configuraci.

2.6. Comprovaci del funcionament correcte de les installacions i les configuracions dutes a terme
Una vegada acabada la installaci i la configuraci del programari de creaci de mquines virtuals hem de comprovar que el nou programari i el sistema informtic continuen funcionant correctament i donant el rendiment esperat.

!!
Podeu trobar informaci sobre diferents aspectes de la comprovaci del funcionament correcte de les installacions i configuracions fetes de mquines virtuals en la secci Annexos del web del crdit.

Sistemes operatius monolloc

107

Introducci als sistemes operatius

Entre daltres, podeu fer les accions segents per tal de comprovar el funcionament del nou programari installat i configurat i del mateix sistema informtic en general: Determinar prviament els objectius del procs. Establir un pla de treball. Establir procediments per a avaluar el funcionament del programari installat. Establir mecanismes per a determinar el funcionament del sistema a escala individual. Fixar procediments per a determinar la compatibilitat correcta entre el nou programari de creaci de mquines virtuals i el sistema informtic existent. Avaluar els resultats de les comprovacions i actuar en conseqncia. Documentar el procs.

2.7. Documentaci del procs dinstallaci i de les seves incidncies


Una de les tasques ms feixugues i que normalment els informtics odien fer s la creaci de la documentaci del sistema informtic.

La documentaci dels sistemes informtics s el conjunt dinformaci que diu qu fan els sistemes informtics, com ho fan i per a qu serveixen.

La documentaci consisteix en material que explica les caracterstiques tcniques i loperaci dun sistema. s essencial per a proporcionar comprensi dun sistema a qui lutilitzi per a mantenir-lo, per a permetre auditories del mateix sistema i per a ensenyar als usuaris com interactuar-hi i com interactuar amb als operadors i als administradors com fer-lo funcionar.

Hi ha diversos tipus de documents, entre els quals cal destacar: El del sistema informtic que explica lorganitzaci, el funcionament i les vicissituds del sistema informtic al llarg de la seva existncia. El de programes que explica la lgica dun programa i inclou descripcions, diagrames de flux, llistes de programes i altres documents. El dels usuaris que explica les capacitats del sistema i com utilitzar-lo.

Sistemes operatius monolloc

108

Introducci als sistemes operatius

Moltes organitzacions tenen el que sanomena programa de documentaci, que consisteix en una poltica formal en qu la documentaci s una cosa que sha de fer de manera rutinria per a cada esdeveniment.

Una altra definici per a la documentaci dun sistema informtic seria la de registre fsic, generalment escrit, que cont els elements segents: Les poltiques i normes referents al desenvolupament del sistema, la seva implantaci, operaci i manteniment. El disseny del sistema dinformaci. Els procediments per a installar el sistema dinformaci. Els procediments per a operar amb el sistema dinformaci. Els procediments per a mantenir el sistema dinformaci.

La importncia de la documentaci podria ser comparada amb la importncia de lexistncia duna plissa dassegurana: mentre tot va b no hi ha precauci de confirmar si la nostra plissa dassegurana s vigent o no, per, no obstant aix, s ms que convenient que concretem la nostra plissa quan les coses van b, ja que, ms endavant, pot ser massa tard. Una documentaci adequada i completa duna aplicaci que es vol implantar, mantenir i actualitzar de manera satisfactria s essencial en qualsevol sistema dinformaci; aix no obstant, freqentment i errniament s la part a la qual es dedica menys temps i atenci. Sempre sha de documentar un sistema encara que estigui a punt de desaparixer per sempre. Si la documentaci del sistema s incompleta ladministrador contnuament hi estar involucrat i no es podr moure a un altre projecte. Tota documentaci que es relacioni amb un sistema, ja sigui creada de manera manual o automtica, sigui senzilla o complexa, ha de reunir tot un seguit de requisits bsics. Els estndards bsics de disseny de la documentaci proposen seguir les pautes segents: Ha de ser clara i ben organitzada, amb seccions clarament indicades i estructurades en blocs. Els digrames, si nhi ha, han de ser clars i entenedors. La documentaci ha de ser completa. La documentaci sempre sha de conservar actualitzada. Moltes organitzacions segueixen els seus propis estndards i normatives de documentaci: format de documents fonts, marges, capaleres, peus..., nomenclatura, etc. s important tenir la seguretat que els estndards siguin complets, actualitzats, documentats i llegibles. Natu-

Sistemes operatius monolloc

109

Introducci als sistemes operatius

ralment lestndard ha de ser apropiat i no una barrera que impliqui ms prdues que avantatges. Durant el desenvolupament dun sistema, des de la concepci fins a la posada en marxa, es genera una gran quantitat de documents que, en molts casos, shan vist modificats per documents posteriors a causa de canvis en el sistema. Per a evitar confusions en les revisions de la documentaci, es desenvolupen diferents tipus de documents dirigits a persones que treballaran amb el sistema per a facilitar-ne el manteniment. La documentaci dun sistema ha destar ben organitzada, actualitzada i completa; tots els termes shan dexplicar: la documentaci es far disponible a tots els usuaris dacord amb les seves necessitats i amb les normes de seguretat. La documentaci del sistema informtic pot contenir, entre altres informacions, les segents: 1) La documentaci del cicle de vida del sistema informtic cont tota la documentaci que fa referncia a lhistorial del sistema informtic. Una manera dorganitzar aquesta informaci pot ser en els blocs segents: a) El bloc general descriptiu del sistema informtic (documentaci general del sistema informtic). Cont la informaci que fa referncia a les caracterstiques generals del sistema. Podem destacar com a informaci ms important: Les caracterstiques principals com, per exemple, el nom i la codificaci del sistema informtic, la data de creaci, el nom dels personatges implicats en la installaci, els noms dels administradors, etc. La determinaci dels objectius del sistema informtic. La descripci de tot el procs relacionat amb lestudi previ del sistema. Els dispositius implicats en el sistema informtic (documentaci del maquinari). El programari utilitzat tant daplicacions informtiques com del programari bsic (documentaci del programari). La descripci del procs dinstallaci i de configuraci del maquinari que cal utilitzar. Tamb cal indicar les comprovacions fetes, els resultats obtinguts i les justificacions de les decisions adoptades. Tamb hem de descriure els manteniments duts a terme. La descripci del procs dinstallaci i de configuraci del programari que sha dutilitzar. Tamb cal indicar les comprovacions fetes, els resultats obtinguts i les justificacions de les decisions adoptades. Tamb hem de descriure els manteniments duts a terme. La comprovaci del funcionament del sistema en general i les accions adoptades (documentaci dincidncies i de solucions). La descripci de les incidncies aparegudes amb les causes, les solucions i els resultats (documentaci dincidncies i de solucions). Conclusions finals.

Sistemes operatius monolloc

110

Introducci als sistemes operatius

b) El bloc general descriptiu dels dispositius del sistema informtic (documentaci del maquinari). Cont les caracterstiques generals dels dispositius del sistema (per exemple, els ordinadors, les impressores, els commutadors [switches], els encaminadors [routers], etc.). Podem destacar com a informaci ms important: Les caracterstiques generals del dispositiu, com, per exemple, un ordinador: la descripci del dispositiu, la codificaci del dispositiu, el fabricant i model, la data de compra, les dades del venedor, les persones de contacte i els sistemes de comunicacions, la garantia, el servei tcnic, etc. La documentaci tcnica del dispositiu: les seves caracterstiques i el tipus de format, etc. El programari que acompanya el dispositiu: les seves caracterstiques i format, etc. Les observacions en general sobre el dispositiu. Les incidncies detectades, les solucions proposades i els resultats obtinguts. Els diferents components que formen el dispositiu i les seves caracterstiques tcniques (per exemple, en un ordinador podem trobar entre altres components el processador, la memria principal, la placa base, etc.), la descripci, la codificaci, el fabricant i el model, la situaci, la data de compra, les dades del venedor, la garantia, la documentaci tcnica, el programari que acompanya el component, la installaci i la configuraci del component en el dispositiu, la comprovaci del component, la documentaci del funcionament del component, les observacions en general, les incidncies detectades, etc. c) El bloc general descriptiu del programari del sistema informtic (documentaci del programari). Cont les caracterstiques generals del programari del sistema (per exemple, el programari base dels ordinadors i daltres dispositius, les aplicacions informtiques, etc.). Podem destacar com a informaci ms important: Les caracterstiques generals del programari (per exemple, un sistema operatiu, etc): la descripci del programari, la seva codificaci, el fabricant, el distribudor i la versi, la data de compra, les dades del distribudor, les persones de contacte i els sistemes de comunicacions, la garantia, el servei tcnic, el tipus de programari (lliure o propietari), loriginal o la cpia, la nova installaci o actualitzaci, etc. La documentaci tcnica del programari: les seves caracterstiques i el tipus de format, etc. Les observacions en general sobre el programari. Les incidncies detectades i les solucions proposades i els resultats obtinguts. Etc.
Switches i routers Els commutadors (switches) sn dispositius per a inteconnectar dispositius en xarxes drea local (en angls, local area network, LAN). Els encaminadors (routers) sn dispositius per a connectar xarxes.

!!
Podeu trobar informaci sobre diferents aspectes de la documentaci del maquinari utilitzat en la creaci de mquines virtuals en la secci Annexos del web del crdit.

Sistemes operatius monolloc

111

Introducci als sistemes operatius

2) La documentaci o manual dusuari del sistema informtic cont tota la informaci que necessita lusuari per a poder utilitzar de manera correcta el sistema informtic. Aquesta informaci es pot fer arribar als usuaris per mitj de cursos de formaci sobre el funcionament de determinats aspectes del sistema informtic o per mitj de la documentaci corresponent en qu sexplica el funcionament del sistema que cal utilitzar. 3) La documentaci dincidncies, solucions i les propostes de millores del sistema informtic cont informaci de les situacions especials succedes en el sistema i que han provocat modificacions en el rendiment del mateix sistema. Tamb contenen les possibles propostes de solucions i la justificaci de lopci adoptada. Tamb aquesta documentaci pot contenir estudis referents a la viabilitat en un moment determinat del sistema i avaluar-ne la continutat. Moltes vegades la documentaci daquest apartat pot estar inclosa en la documentaci del cicle de vida dun sistema informtic (documentaci general del sistema informtic, documentaci del maquinari i documentaci del programari).

!!
Podeu trobar informaci sobre diferents aspectes de la documentaci del programari utilitzat en la creaci de mquines virtuals en la secci Annexos del web del crdit.

2.8. Interpretaci de la documentaci tcnica


En tot procs dinstallaci de programari informtic, un dels elements que hem tenir en compte s la interpretaci de la documentaci tcnica de la installaci del programari informtic. Aquest aspecte cal tenir-lo molt present ja que ens donar la informaci necessria i ens permetr establir i avaluar el procs ms adient per a la installaci del programari informtic. La documentaci tcnica sutilitza principalment durant les fases de lanlisi prvia, de la installaci i de la configuraci.
Exemple de documentaci tcnica Dexemples de documentaci tcnica nhi ha molts, per esmentar-ne alguns tenim la compra dun televisor. Lequip sacompanya duna documentaci en qu sespecifiquen les caracterstiques tcniques del producte (la fitxa tcnica),el procs dinstallaci i de configuraci (manual dusuari), la garantia, etc.

La documentaci tcnica dun producte s un conjunt dinformaci en qu se nespecifiquen les caracterstiques generals.

Un exemple que podem comentar sobre la importncia de la documentaci tcnica s el de la creaci de mquines virtuals. Abans dexecutar el procs dinstallaci del programari informtic per a la creaci de mquines virtuals s necessari consultar la documentaci tcnica del programari de creaci de mquines virtuals i, a partir daquesta documentaci, avaluar-ne la convenincia. Quin tipus dinformaci hem dinterpretar? B, podrien indicar la segent: 1) La descripci general del programari. En aquesta part es descriuen els objectius daquest programari, la seva funci i la seva aplicaci. Per exemple, en el cas del programari VirtualBox lobjectiu s la virtualitzaci de plataformes del tipus x86, i daplicaci podem indicar que el podem installar en sistemes Windows, Linux, Mac OS X i Solaris.

Sistemes operatius monolloc

112

Introducci als sistemes operatius

2) Les versions disponibles. Algunes distribucions disposen de versions obertes i de versions privades. Hem davaluar els avantatges i els inconvenients de cadascuna de les distribucions. Tamb hem davaluar la versi que volem installar del programari. 3) El format del programari. Tamb un altre element que cal tenir en compte s el format del programari que sha dinstallar (format binari i, per tant, executable o en format comprimit). 4) Lobtenci del programari. El procediment dobtenci del programari que cal installar estar en funci de si el programari s del tipus obert o propietari. En el cas de programari obert, la font dobtenci del programari ser a partir dun lloc web del qual podrem descarregar laplicaci informtica. El programari propietari es pot obtenir a partir dalgun distribudor del producte. 5) Els requeriments de maquinari. Un element que hem de tenir en compte sn el requeriments mnims de maquinari que necessita el programari informtic. Per a un determinat tipus de plataforma, podem indicar els elements segents: Les caracterstiques del processador: el tipus, la freqncia, etc. La memria RAM mnima necessria per a poder executar laplicaci informtica. Lespai de memria secundria (disc dur). Les caracterstiques de les unitats de disquets. El tipus de targeta de xarxa. Les caracterstiques de les unitats de CD/DVD. Les interfcies srie i parallel. Les unitats USB. Etc. 6) Els requeriments de programari. s un altre aspecte que hem de tenir en compte i fa referncia a quin programari hem de tenir installat i configurat per a poder fer la installaci del programari de creaci de mquines virtuals. Per a poder installar el programari de creaci de mquines virtuals necessitem tenir installat i configurat algun sistema operatiu amfitri com, per exemple, Windows XP Professional Edition o alguna distribuci del sistema GNU/Linux amb el seu programari complementari corresponent (per exemple, els Service Packs de Windows XP). 7) El manual dusuari. Finalment, hem de saber interpretar el manual de lusuari del programari de creaci de mquines virtuals. En aquest document podem trobar informaci sobre el procediment que cal seguir en la installaci, en la configuraci i en la comprovaci del programari que sha dinstallar. El manual dusuari pot ser en diversos formats, per el tpic
Tux, el ping, la mascota de Linux

Sistemes operatius monolloc

113

Introducci als sistemes operatius

s el format pdf. Aleshores, necessitarem tenir installat el programari corresponent per a editar el document corresponent (per exemple, en els formats pdf necessitem el programari Adobe Reader). Quins elements podem destacar del manual dusuari? Entre daltres, els segents: La versi del manual dusuari. La introducci. La installaci en diversos tipus de plataformes: els prerequisits, el procs dinstallaci i de desinstallaci. Lactualitzaci. Lexecuci del programari de creaci de mquines virtuals en entorns grfics. Hem de fixar el nom de la mquina virtual, el tipus de sistema operatiu hoste, la quantitat de memria RAM, la grandria del disc dur virtual, etc. La configuraci de la mquina virtual. Lexecuci de la mquina virtual pot obligar a modificar el funcionament del teclat i del ratol (establir combinacions de tecles per a fer determinades accions). Ladministraci del disc virtual permet gestionar el disc virtual de la mquina virtual creada. La importaci-exportaci de mquines virtuals. Els sistemes operatius hostes suportats. La gesti del sistema en xarxa en mquines virtuals. La possibilitat dinterfcie de programaci. Les diferncies entre versions. Les llicncies. El sistema de seguretat. El glossari. Etc.

You might also like