Rev Smxm2uf1

114
Introducció als sistemes operatius Josep Esteve Estruch Sistemes operatius monolloc

Transcript of Rev Smxm2uf1

Page 1: Rev Smxm2uf1

Introducció als sistemes operatiusJosep Esteve Estruch

Sistemes operatius monolloc

Page 2: Rev Smxm2uf1
Page 3: Rev Smxm2uf1

Sistemes operatius monolloc Introducció als sistemes operatius

Índex

Introducció ............................................................................................... 5

Resultats d’aprenentatge ....................................................................... 7

1. Caracterització dels sistemes operatius, tipus i aplicacions ......................................................................................... 9

1.1. Els components físics i lògics d’un sistema informàtic.

El programari base ...................................................................... 9

1.1.1. Part física d’un sistema informàtic ................................ 10

1.1.2. Part lògica d’un sistema informàtic ............................... 10

1.1.3. Part humana d’un sistema informàtic ........................... 11

1.2. Codificació de la informació en diferents sistemes

de representació .......................................................................... 12

1.2.1. Definició de la informació ............................................... 12

1.2.2. Elements de la informació .............................................. 12

1.2.3. El sistema binari ............................................................... 13

1.2.4. Mesura de la informació .................................................. 14

1.2.5. Sistemes de representació de la informació

numèrica ............................................................................ 16

1.2.6. Teorema fonamental de la numeració ........................... 18

1.2.7. Conversió entre sistemes de numeració ....................... 18

1.2.8. Operacions bàsiques amb sistemes de numeració ....... 21

1.2.9. Representació dels nombres enters ............................... 23

1.2.10.Representació dels nombres en coma o punt fix ......... 25

1.2.11.Sistemes de representació de la informació

alfanumèrica ..................................................................... 26

1.2.12.Codificació interna de les dades ..................................... 27

1.3. Sistemes transaccionals ............................................................. 28

1.3.1. Tipus de sistemes d’informació ...................................... 30

1.3.2. Transaccions ..................................................................... 30

1.4. Concepte, elements i estructura d’un sistema operatiu ........ 31

1.4.1. Definició de sistema operatiu ......................................... 32

1.4.2. Elements d’un sistema operatiu ..................................... 34

1.4.3. Estructura d’un sistema operatiu ................................... 35

1.5. Funcions del sistema operatiu. Recursos ................................. 40

1.5.1. Objectius dels sistemes operatius ................................... 41

1.5.2. Funcions dels sistemes operatius ................................... 41

1.5.3. Recursos dels sistemes operatius. Concurrència,

comunicació, sincronització i interbloqueig

de processos ...................................................................... 43

1.6. Arquitectura del sistema operatiu ............................................. 46

Page 4: Rev Smxm2uf1

Sistemes operatius monolloc Introducció als sistemes operatius

1.7. Evolució històrica. Sistemes operatius actuals ....................... 49

1.7.1. Generacions informàtiques ............................................. 49

1.7.2. Sistemes operatius actuals .............................................. 55

1.8. Classificació del sistemes operatius ......................................... 59

1.9. Gestió de processos. Estats dels processos.

Prioritat i planificació ................................................................. 61

1.9.1. Els processos ..................................................................... 61

1.9.2. Operacions amb els processos ......................................... 62

1.9.3. Tipus de processos ............................................................ 63

1.9.4. Estats dels processos ....................................................... 64

1.9.5. Planificació del processador ............................................ 66

1.9.6. Algorismes de prioritats ................................................... 75

1.10.Gestió de la memòria ................................................................. 75

1.10.1.Conceptes generals del gestor de memòria .................. 75

1.10.2.La gestió de la memòria en sistemes

monoprogramats .............................................................. 77

1.10.3.La gestió de la memòria en sistemes

multiprogramats ............................................................... 78

1.10.4.La memòria virtual .......................................................... 79

1.11.Gestió d’entrada/sortida ............................................................ 82

1.11.1.Interfície dispositiu perifèric - ordinador ...................... 83

1.11.2.Programari de control d’E/S ........................................... 84

1.12.Gestió de la informació .............................................................. 85

1.12.1.Estructura de la informació ............................................ 86

1.12.2.Sistema de fitxers ............................................................ 87

1.12.3.Mètodes d’accés als fitxers ............................................. 89

1.12.4.Directoris d’arxius ........................................................... 90

1.12.5.Seguretat dels arxius ....................................................... 92

2. Configuració de màquines virtuals .................................................. 94

2.1. Descripció de màquina real i de màquina virtual .................... 94

2.1.1. Virtualització ..................................................................... 95

2.1.2. Amfitrió i hoste ................................................................. 95

2.2. Avantatges i inconvenients de la virtualització

i de les màquines virtuals ........................................................... 96

2.3. Programari lliure i propietari per a la creació de màquines

virtuals: instal·lació ..................................................................... 99

2.4. Creació de màquines virtuals per a sistemes operatius

lliures

i propietaris .................................................................................. 104

2.5. Configuració i utilització de màquines virtuals ....................... 105

2.6. Comprovació del funcionament correcte de les instal·lacions

i les configuracions dutes a terme ............................................ 106

2.7. Documentació del procés d’instal·lació i de les seves

incidències ................................................................................... 107

2.8. Interpretació de la documentació tècnica ................................ 111

Page 5: Rev Smxm2uf1

Sistemes operatius monolloc 5 Introducció als sistemes operatius

Introducció

En aquesta unitat formativa estudiareu un tipus de programari bàsic per

al bon funcionament del maquinari, que forma part de l’ordinador i que

s’anomena sistema operatiu (SO).

Segurament us heu plantejat alguna vegada de quina manera els ordina-

dors 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 bàsic (SO) controla tot el maquinari. En aquesta unitat,

anomenada “Introducció als sistemes operatius. Creació de màquines vir-

tuals”, veurem la necessitat de l’existència del sistema operatiu i en dona-

rem algunes definicions. En l’apartat “Caracterització dels sistemes

operatius. Tipus i aplicacions” comentarem l’evolució que han tingut els

sistemes operatius des de diferents aspectes, ja que d’alguna manera la

seva evolució va paral·lela a la dels ordinadors. En aquesta evolució intro-

duirem una sèrie de conceptes que s’apliquen en el disseny de sistemes

operatius, com són la monoprogramació, la multiprogramació, el temps

compartit, el temps real, els sistemes multiusuaris i monousuaris, el mul-

tiprocés, la multitasca, etc. No tots els sistemes operatius tenen les matei-

xes característiques 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 referència als processos: la

importància 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'inter-

canvi d’informació entre els processos concurrents i cooperatius són ele-

ments que cal considerar per assegurar les relacions entre els processos.

També estudiarem la gestió de la memòria: veureu diferents propostes

que van des de la gestió de la memòria real fins a la gestió de la memòria

virtual, i aprendreu el funcionament de les tècniques de paginació, de seg-

mentació... També parlarem dels controladors de dispositius (drivers)

d’entrada/sortida de l’ordinador, que treballareu des de l’aspecte del ma-

quinari 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 magnètics en els aspectes de l’orga-

nització de la informació, de laccés a la informació i des d’altres aspectes.

Page 6: Rev Smxm2uf1

Sistemes operatius monolloc 6 Introducció als sistemes operatius

Així mateix, comentarem la importància de la seguretat en un sistema in-

formàtic i com el sistema operatiu pot participar en aquesta feina.

Es pot investigar el funcionament dels sistemes operatius mitjançant la

utilització de les màquines virtuals, entre d’altres. En l’apartat “Configu-

ració de màquines virtuals” estudiarem la diferència entre les màquines

reals i les màquines virtuals i el seu funcionament. Una vegada ja en co-

negueu el funcionament, instal·lareu algun tipus de programari lliure o

propietari amb aquest tipus de tecnologia. També creareu i configurareu

màquines virtuals, i comprovareu el funcionament del sistema i de les

configuracions fetes.

Així mateix, haureu de documentar tot el procés d’instal·lació, de configu-

ració i de comprovació de les màquines virtuals amb les seves incidències

i solucions adoptades.

Aquesta unitat formativa és bàsica per poder entendre l’ordinador, saber-

lo utilitzar correctament i comprendre el funcionament general dels sis-

temes operatius. Un altre aspecte que heu de considerar és la importància

d’instal·lar i configurar màquines virtuals, ja que cal saber-les utilitzar per

poder instal·lar i configurar sistemes operatius monousuaris i multiusua-

ris en una fase posterior.

En general heu de conèixer com l’ordinador manipula la informació, qui-

nes unitats de mesura utilitza i com codifica la informació que ha de ges-

tionar. Pel que als sistemes operatius, heu de ser conscients de la

importància que tenen avui dia, ja que són necessaris perquè els sistemes

informàtics funcionin correctament. Finalment, heu de saber com funcio-

nen les màquines virtuals, com les heu d’instal·lar, configurar i documen-

tar i conèixer-ne la utilitat.

Page 7: Rev Smxm2uf1

Sistemes operatius monolloc 7 Introducció als sistemes operatius

Resultats d’aprenentatge

En acabar la unitat heu de ser capaços del següent:

1. Diferenciar els conceptes de programari bàsic i de programari

d’aplicacions informàtiques.

2. Descriure els elements principals d’un sistema informàtic.

3. Diferenciar els diferents tipus de personatges implicats en un sis-

tema informàtic.

4. Descriure les funcions principals dels sistemes operatius.

5. Diferenciar la informació de les dades.

6. Saber aplicar les diferents unitats de mesura de la informació.

7. Saber aplicar les tècniques de codificació de la informació.

8. Diferenciar conceptes relacionats amb els sistemes operatius: la

multiprogramació, la monoprogramació, el temps real, el temps

diferit, el multiprocés, el sistema monousuari i multiusuari, etc.

9. Assenyalar els possibles avantatges i inconvenients dels sistemes

operatius.

10. Indicar l’evolució dels sistemes operatius i les seves previsions de

futur.

11. Saber classificar els sistemes operatius des d’aspectes diversos.

12. Descriure l’arquitectura dels sistemes operatius.

13. Descriure la funció del nucli dels sistemes operatius.

14. Explicar el funcionament de la interfície d’usuari en els sistemes

operatius.

15. Explicar el funcionament dels principals algorismes de planifica-

ció del processador.

16. Descriure els conceptes de paral·lelisme, concurrència, sincro-

nització, comunicació i interbloqueig.

Page 8: Rev Smxm2uf1

Sistemes operatius monolloc 8 Introducció als sistemes operatius

17. Distingir les diferents tècniques de gestió de la memòria real.

18. Interpretar el funcionament de la memòria paginada i de la me-

mòria segmentada.

19. Comentar la importància dels processos.

20. Descriure les diferències entre la gestió de la memòria real i la

gestió de la memòria lògica.

21. Explicar la importància de la gestió dels dispositius d’entrada/sor-

tida.

22. Valorar la importància de la gestió de la informació en els suports

de discos magnètics.

23. Reconèixer diferents alternatives per a estructurar un sistema de

fitxers.

24. Conèixer les principals tècniques de seguretat referides als siste-

mes operatius.

25. Diferenciar les màquines reals i les màquines virtuals.

26. Conèixer el funcionament de les màquines virtuals.

27. Descriure els avantatges d’utilitzar les màquines virtuals.

28. Explicar els tipus de virtualitzacions.

29. Diferenciar el programari propietari i el programari lliure.

30. Saber interpretar les diverses fases de la instal·lació i de la confi-

guració del programari en un sistema informàtic.

31. Instal·lar el programari per a la creació de màquines virtuals.

32. Crear màquines virtuals.

33. Configurar màquines virtuals.

34. Comprovar el funcionament del sistema informàtic juntament

amb les màquines virtuals instal·lades i configurades.

35. Documentar tot el procés d’instal·lació i de configuració de les mà-

quines virtuals i també les incidències aparegudes i solucions

adoptades.

Page 9: Rev Smxm2uf1

Sistemes operatius monolloc 9 Introducció als sistemes operatius

1. Caracterització dels sistemes operatius, tipus i aplicacions

Els protagonistes principals dels sistemes informàtics són el maquinari i

el programari. Aquests dos elements són bàsics per al correcte funciona-

ment d’un sistema informàtic. Altres components que també cal destacar

són els elements humans i la informació.

1.1. Els components físics i lògics d’un sistema informàtic.

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 càlculs pre-

cisos i ràpids. Des de l’aparició de les calculadores binàries fins als nostres

dies, hi ha molt poques activitats humanes que no estiguin lligades d’una

manera o una altra a les màquines electròniques. Així, doncs, podem defi-

nir l’ordinador de moltes maneres i seguidament n’indiquem algunes:

• L’ordinador és una màquina formada per una sèrie d’elements físics

connectats d’una manera lògica i racional que tracten la informació au-

tomàticament.

• L’ordinador és una màquina electrònica ràpida i exacta que és capaç

d’acceptar dades per un medi d’entrada, processar-les automàticament

sota el control d’un programa prèviament emmagatzemat i proporcio-

nar la informació resultant a un medi de sortida.

• L’ordinador és un dispositiu electrònic capaç de rebre un conjunt d’ins-

truccions i executar-les fent càlculs sobre les dades numèriques i rela-

cionant-les amb altres tipus d’informació per a obtenir un altre conjunt

de dades o informació com a resposta.

• L’ordinador és un sistema electrònic que porta a cap operacions arit-

mètiques i de lògica a alta velocitat d’acord amb les instruccions inter-

nes que són executades sense intervenció humana. A més, té la

capacitat d’acceptar i d’emmagatzemar dades d’entrada, processar-les

i produir resultats de sortida automàticament. La seva funció principal

és el processament de dades.

El conjunt d’accions que s’ordenen i que executa un ordinador es coneix

amb el nom de programa. Lligat a aquest concepte tenim el d’aplicació in-

formàtica.

Una operació lògica és aquella en què el resultat només pot ser vertader o fals.

El procés de dades equival a la manipulació de dades.

Page 10: Rev Smxm2uf1

Sistemes operatius monolloc 10 Introducció als sistemes operatius

A vegades es parla de sistema informàtic com una expressió més concreta

del terme informàtica.

En un sistema informàtic hi ha els elements constitutius interrelacionats

següents: la part física, la part lògica i la part humana.

1.1.1. Part física d’un sistema informàtic

L’element físic d’un sistema informàtic també es coneix amb el nom de

maquinari (hardware).

1.1.2. Part lògica d’un sistema informàtic

L’element lògic d’un sistema informàtica també es coneix amb el nom de

programari (software).

No tots els elements lògics fan les mateixes funcions, per la qual cosa els

podem classificar en programari bàsic i programari d’aplicació.

Un sistema informàtic és el conjunt d’elements necessaris per a

la realització i l’explotació d’aplicacions informàtiques. S’hi in-

clouen els elements de programari, de maquinari i els humans.

Podem definir la informàtica com la ciència que estudia el trac-

tament automàtic i racional de la informació.

El maquinari (hardware) fa referència a tot allò que podem veure

i tocar (el monitor, el teclat, la CPU, etc.).

El programari (software) té l’origen en les idees (conceptes) i és

compost per tot allò que fem servir en el camp de la informàtica que

no podem veure ni tocar (per exemple, els jocs d’ordinadors, els pro-

grames de comptabilitat, els sistemes operatius, etc.).

El programari bàsic és el conjunt de programes que l’equip físic

necessita per a tenir capacitat de treballar. Aquests configuren el

que s’anomena en un sistema informàtic el sistema operatiu (per

exemple, Unix, Linux, etc.). En altres paraules, el programari bà-

sic és format per tots els programes que capaciten el maquinari

per a poder funcionar correctament.

Programa i aplicació informàtica

En general, un programa és un conjunt d’accions que s’han de fer seguint un ordre determinat per a resoldre un problema determinat.

Una aplicació informàtica és un conjunt d’un o més programes per a dur a terme un treball determinat en un sistema informàtic.

L’explotació d’una aplicació informàtica equival a la utilització d’una aplicació informàtica.

El terme informàtica té l’origen en les paraules: INFORmació autoMÀTICA.

Les inicials UCP o CPU corresponen a la unitat central de processament o central processing unit.

Pes del programari

Avui dia té més pes el programari que el maquinari, a causa, sobretot, del cost, del manteniment i del valor que representen els avenços en els seus continguts.

Exemples de programari

Unix i Linux són sistemes operatius i, per tant, els podem considerar programari bàsic.

Com a cas de programari d’aplicació tenim, per exemple, els jocs d’ordinador, els programes de gestió comercial, els programes de gestió de nòmines, etc.

Page 11: Rev Smxm2uf1

Sistemes operatius monolloc 11 Introducció als sistemes operatius

1.1.3. Part humana d’un sistema informàtic

L’element humà d’un sistema informàtic és l’element més important que

forma part de la informàtica o d’un sistema informàtic. Sense les persones

que estan al càrrec de la informàtica, no hi hauria ni la part física ni la part

lògica.

Dins del que hem anomenat part humana, podem distingir els elements

següents:

• Usuari. És la persona que utilitza la informàtica com a eina per a desen-

volupar el seu treball o com a ajuda en una activitat. Cal tenir uns co-

neixements informàtics basics i, particularment, tenir uns grans

coneixements sobre el funcionament de l’aplicació informàtica que es-

tà utilitzant, com, per exemple, l’usuari d’aplicacions ofimàtiques.

• Personal informàtic. És el conjunt de persones que desenvolupen dife-

rents funcions relacionades amb la utilització dels ordinadors en una

empresa. Controlen i manipulen les màquines perquè donin el servei

adequat als usuaris.

El personal informàtic

El personal informàtic es pot classificar en els grups següents:

1) Direcció. Entre altres funcions té la de coordinar i dirigir la part informàtica o algunes de les sevesàrees (un departament, una àrea de programació, una àrea d’anàlisi, etc.).

2) Anàlisi. El personal que pertany a aquest grup és el responsable d’intentar trobar millores infor-màtiques o solucions als problemes que es plantegin.

a) Segons el tipus d’anàlisi poden ser:

• Analistes funcionals. Busquen solucions generals a un problema determinat.• Analistes orgànics. Les solucions proposades pels analistes orgànics són més concretades o

especificades.

b) Segons l’objectiu de l’anàlisi que en facin poden ser:

• Analistes de sistemes. S’ocupen de buscar millores o solucions a problemes quant al sistema(per exemple, millorar el sistema operatiu, les comunicacions, etc.).

• Analistes d’aplicacions. S’ocupen de buscar millores o solucions quant als usuaris per a lesaplicacions que utilitzen o possibles aplicacions futures que hagin d’utilitzar.

3) Programació. El personal de programació tradueix al llenguatge de programació les solucionsproposades pels analistes. La seva funció també és la de fer la traducció de les diferents accions alllenguatge natiu de la màquina (llenguatge màquina). Per a comprovar que la traducció funciona,utilitzen jocs d’assaig que són proposats pels mateixos analistes. Els programadors poden ser:

a) Programadors de sistemes. Tradueixen les accions relacionades amb el sistema i expressadesen llenguatge natural, utilitzant llenguatges de programació.

El programari d’aplicació són els programes que fan que l’ordina-

dor desenvolupi una tasca determinada.

Ofimàtica

Amb el terme ofimàtica ens referim a la utilització de la informàtica en els departaments de gestió administrativa de l’empresa.

Imatge que simbolitza els usuaris

Llenguatgesde programació

Els llenguatges de programació són 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 són alguns exemples.

Llenguatge màquina

El llenguatge màquina és el llenguatge utilitzat pels ordinadors. És format per senyals binaris. Els senyals binaris són formats per dos estats: activat i desactivat (on, off).

Page 12: Rev Smxm2uf1

Sistemes operatius monolloc 12 Introducció als sistemes operatius

b) Programadors d’aplicacions. Tradueixen les accions relacionades amb un problema de

gestió, de disseny, etc., expressades de manera natural, utilitzant els llenguatges de programa-

ció.

4) Explotació. El personal d’explotació s’encarrega d’executar els programes o les aplicacions i de

comprovar el funcionament dels equips i dels sistemes.

5) Operadors. S’encarreguen del funcionament, l’execució i els processos directes del sistema, la

preparació dels suports, els perifèrics i el material informàtic.

En un sistema informàtic a més dels elements físics, lògics i humans tam-

bé podem trobar un altre element no menys important com pot ser la in-

formació.

1.2. Codificació de la informació en diferents sistemes

de representació

Contínuament ens arriba informació per diferents canals. Les vies poden

ser molt variades: les imatges, els sons, els escrits, els senyals, etc. Si po-

guéssim mesurar aquest volum d’informació, al final del dia comprovarí-

em que és molta la quantitat que en rebem.

1.2.1. Definició de la informació

Hi ha diverses maneres de definir la informació.

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 s’utilitzen per a produir

informació que ens ajuda a prendre decisions.

Les dades no són totes del mateix tipus. Si pensem en la nostra adreça

postal, podem comprovar que hi ha diferents tipus de caràcters.

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

l’adquisició del coneixement de les coses.

Les dades són fets o objectes que no han estat manipulats.

El llenguatge natural és el llenguatge propi de cada persona.

Les dades són tot allò que forma la informació.

Un caràcter és cadascun dels símbols que forma part de la informació.

Page 13: Rev Smxm2uf1

Sistemes operatius monolloc 13 Introducció als sistemes operatius

En l’actualitat, l’ésser humà expressa, comunica, emmagatzema i manipu-

la la informació mitjançant un sistema numèric –amb el sistema decimal–

i un sistema alfabètic –amb un llenguatge o idioma determinats.

Així mateix, l’ordinador, a causa de la construcció basada fonamentalment

en circuits electrònics digitals, tracta aquests dos sistemes utilitzant el sis-

tema binari i un sistema de codis.

Per qüestions tècniques, en la majoria dels casos, els circuits electrònics

d’un ordinador estan dissenyats per a reconèixer els senyals elèctrics di-

gitals; per tant, és necessari que els mètodes de codificació interna s’ori-

ginin en el sistema binari i que amb aquests mètodes es pugui representar

qualsevol informació i ordre, perquè així els podrem manipular amb l’or-

dinador.

Això ens obliga a transformar internament totes les dades, tant numèri-

ques com alfanumèriques, en una representació binària perquè l’ordina-

dor sigui capaç de manipular-les.

En els circuits electrònics, des del punt de vista lògic, és costum represen-

tar la presència de tensió en un punt del circuit per mitjà del nombre 1,

mentre que el 0 representa l’absència de tensió. Aquesta terminologia es

coneix com la lògica positiva. També es pot aplicar la lògica negativa, en

què s’intercanvia el significat d’aquests dos dígits.

1.2.3. El sistema binari

Per a un ordinador totes les dades són nombres: les xifres, les lletres, qual-

sevol símbol, i fins i tot les instruccions són nombres. Això vol dir que qual-

Podem classificar les dades segons els tipus següents:

1) Numèriques. Formades per nombres (0, 1, ..., 9).

2) Alfabètiques. Formades per lletres (A, B, ..., Z).

3) Alfanumèriques. Formades per tots els caràcters.

Un codi és la manera diferent d’interpretar una mateixa informa-

ció. Per exemple, el símbol X, fent servir el codi alfabètic, és una lle-

tra, mentre que si apliquem el codi de les xifres romanes és el

nombre 10.

Nombre i nombre alfanumèric

La diferència entre un nombre i un nombre alfanumèric és que amb els alfanumèrics no es poden fer operacions matemàtiques.

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

Estats dins d’un ordinador

A l’ordinador 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).

Page 14: Rev Smxm2uf1

Sistemes operatius monolloc 14 Introducció als sistemes operatius

sevol quantitat, frase o dada s’emmagatzema en forma de nombre o més

concretament, en forma de zeros i uns.

Obligat per aquesta arquitectura, l’ordinador utilitza un sistema de nume-

ració diferent del sistema decimal: el sistema binari.

L’ordinador pot representar les dades de dues maneres:

• mitjançant sistemes numèrics,

• mitjançant codis alfanumèrics.

1.2.4. Mesura de la informació

En el camp de la informàtica, per a mesurar la informació, s’utilitza una

unitat base i els seus múltiples. Prendrem com a primera unitat el bit (bi-

nary digit).

Tota la informació, les dades i els caràcters són formats per bits. Alesho-

res, a cada caràcter s’hauria de fer correspondre un bit. Per tant, si utilit-

zem aquests símbols, només podem representar la informació mitjançant

els bits de dos caràcters: l’un assignat al bit 0 i, l’altre, al bit 1.

Com que tenim i utilitzem més de dos caràcters, aquest sistema no és el

més adient per a representar la informació. Per això, es va decidir treba-

llar en grups de quatre bits, anomenats quartets, per a representar tots els

caràcters. El nombre total de combinacions possibles amb els bits 0 i 1 se-

rien: 16 (24 = 16). Això permet representar tots els nombres i alguns ca-

ràcters més, però no tots els símbols.

Finalment, es va decidir treballar en grups de vuit bits, que dóna 256 com-

binacions possibles (28) i permet representar tots els símbols.

En la taula 1, es mostra un resum dels prefixos utilitzats en la mesura de

la informació que ens resultarà molt útil.

El bit és la unitat base de mesura de la informació, que indica la

quantitat mínima que forma la informació. Es representa mitjan-

çant dos símbols, 0 i 1, anomenats bits.

Un grup de vuit bits s’anomena byte. Aquest grup també es coneix

amb el nom d’octet.

El sistema binari utilitza dos símbols: el zero i l’u.

Els quartets són un sistema per a representar la informació en grups de quatre bits.

Page 15: Rev Smxm2uf1

Sistemes operatius monolloc 15 Introducció als sistemes operatius

Taula 1. Prefixos d’ús convencional en informàtica

L’ús convencional ha provocat confusions: 1.024 (210) no és 1.000. Els fabri-

cants de dispositius d’emmagatzematge, 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 con-

nexió de 1 Mbps equival a una transferència de 106 bits per segon.

Les següents són les principals unitats de mesura informàtica:

• Un kilobyte són 1.024 (210) bytes. El símbol és kB. És una unitat de me-

sura comuna per a la capacitat de memòria o emmagatzematge dels

microordinadors. Els PC d’IBM més antics, per exemple, tenien una

capacitat màxima de 640 K, o prop de 640.000 caràcters de dades.

• El megabyte (MB) és una unitat de mesura de la quantitat de dades in-

formàtiques. El símbol és MB. És un múltiple binari del byte, que equi-

val a 220 (1.048.576) bytes i a 1.024 kB, traduït a efectes pràctics com a

106 (1.000.000) bytes.

• Un gigabyte és una unitat de mesura informàtica equivalent a 210 me-

gabytes (1.024 MB). El símbol és GB. De vegades, en llenguatge infor-

mal, els gigabytes s’anomenen gigues.

• D’una manera similar, un terabyte (de símbol, TB) és igual a 1.024 gi-

gabytes o 240 bytes.

Nom Símbol Potències binàries i valors decimalsHexadecimal

Nombre Valors en el SI Diferència

unitat 20 = 1 160 u(n) 100 = 1 0%

kilo k 210 = 1.024 162,5 mil 103 = 1.000 2%

mega M 220 = 1.048.576 165 milió 106 = 1.000.000 5%

giga G 230 = 1.073.741.824 167,5 miler 109 = 1.000.000.000 7%

tera T 240 = 1.099.511.627.776 1610 bilió 1012 = 1.000.000.000.000 10%

peta P 250 = 1.125.899.906.842.624 1612,5 biliard 1015 = 1.000.000.000.000.000 13%

exa E 260 = 1.152.921.504.606.846.976 1615 trilió1018 = 1.000.000.000.000.000.0 00

15%

zetta Z 270 = 1.180.591.620.717.411.303.424 1617,5 triliard1021 = 1.000.000.000.000.000.0 00.000

18%

yotta Y 280 = 1.208.925.819.614.629.174.706.176 1620 quadrilió1024 = 1.000.000.000.000.000.0 00.000.000

21%

Hi ha confusió respecte als símbols de les unitats de mesura de la

informació, ja que no són part del SI. La pràctica recomana que el

bit es representi amb el símbol b i el byte amb el símbol B.

SI és l’abreviatura de sistema internacional.

Page 16: Rev Smxm2uf1

Sistemes operatius monolloc 16 Introducció als sistemes operatius

• Un petabyte (de símbol, 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 informàtica i el seu símbol és EB.

Equival a 260 bytes o a 1.024 petabytes.

• Un zettabyte és una unitat de mesura informàtica i el seu símbol és ZB.

Equival a 1.024 (210) exabytes o 270 bytes.

• Un yottabyte és una unitat de mesura informàtica i el seu símbol és

YB. Equival a 1.024 (210) zettabytes, o 280 bytes.

• Un brontobyte és una unitat de mesura informàtica i el seu símbol és

BB. Equival a 1.024 (210) yottabytes, o 290 bytes.

Exemple de conversió d’unitats de mesura

Disposem d’un disc dur amb una capacitat de 250 GB. A quants bytes i bits equival?

1) Primerament, calculem el nombre de bytes de la manera següent:

2) Podem calcular el nombre de bits a partir del resultat del punt anterior:

1.2.5. Sistemes de representació de la informació numèrica

Un sistema de numeració permet representar la informació numèrica per

mitjà de dades de significació numèrica i operar-hi, amb uns símbols i

unes regles determinats.

Un sistema de numeració és el conjunt dels símbols i les normes

que s’utilitzen per a la representació de la informació numèrica.

En tot sistema de numeració hi ha una base del sistema que indi-

ca el nombre de símbols que podem utilitzar. La notació és: (base.

Els sistemes de numeració són conjunts de dígits utilitzats per a repre-

sentar quantitats. Així, hi ha els sistemes de numeració decimal, bina-

ri, octal, hexadecimal, romà, etc. Els quatre primers es caracteritzen

per tenir una base (nombre de dígits diferents: 10, 2, 8 i 16, respectiva-

ment), mentre que el sistema romà no té base i la seva utilització resul-

ta més complicada, tant amb nombres com en les operacions bàsiques

(sumes, restes, multiplicacions i divisions).

250 GB 1.024 MB 1.024 KB

1.024 bytes 268.435.456.000 bytes1 GB 1 MB 1 KB

268.435.456.000 bytes

8 bits 2.147.483.648.000 bits1 byte

Page 17: Rev Smxm2uf1

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 l’ordinador sigui una de les moltes aplica-

cions dels circuits electrònics i dels principis digitals. El terme digital prové

de la forma en què es representen quantitats o magnituds físiques.

Un sistema digital és una combinació de dispositius (generalment elec-

trònics) dissenyada per a manipular quantitats físiques o informació

que estigui representada de manera digital (per exemple, els ordina-

dors, les calculadores digitals, els equips d’àudio i vídeo digital, els te-

lèfons digitals, etc.).

La tecnologia digital utilitza molts sistemes de nombres. Els més co-

muns són:

1) Sistema decimal. El sistema decimal és el més conegut, ja que l’utilit-

zem contínuament. És format per deu símbols –0, 1, 2, 3, 4, 5, 6, 7, 8, i 9–

amb els quals es pot representar qualsevol quantitat numèrica. Aquest sis-

tema 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 símbols per a representar

la informació, que són 0 i 1. Cadascun d’aquests símbols és conegut per la

paraula bit (de l’anglès binary digit). Una combinació de vuit bits s’ano-

mena byte (per exemple, 10011001).

3) Sistema octal. La base és 8. Per tant, els símbols que es poden aplicar

són 0, 1, 2, 3, 4, 5, 6 i 7.

4) Sistema hexadecimal. La base és 16. Per aquest motiu, es fan servir set-

ze símbols, dels quals els deu primers són els nombres 0, 1, 2, 3, 4, 5, 6, 7, 8

i 9, i els sis següents són les lletres A, B, C, D, E, F (els valors respectius

són 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.

Una magnitud analògica –com una tensió elèctrica o la velocitat–

pot tenir qualsevol valor dins d’un interval continu. Per exemple, la

tensió a la sortida d’un micròfon podria ser dins de qualsevol valor

entre 0 mV i 10 mV. En la representació digital, les quantitats –re-

presentades per dígits– no poden tenir qualsevol valor, sinó sols va-

lors discrets. Per exemple, un rellotge digital marca el temps del dia

en forma de dígits decimals (hores, minuts i segons). Ara bé, el

temps varia d’una manera contínua, però la posició de les busques

del rellotge no varia d’una manera contínua, sinó a passos (segons).

És a dir, el rellotge només pot donar valors discrets.

mV és el símbol de mil·livolts. 1 mV són 10–3 volts.

En un sistema de valor posicional el valor d’un dígit depèn de la posició.

Page 18: Rev Smxm2uf1

Sistemes operatius monolloc 18 Introducció als sistemes operatius

1.2.6. Teorema fonamental de la numeració

Els sistemes de numeració són posicionals; és a dir, el valor relatiu de

cada símbol és determinat pel seu valor absolut i per la seva posició rela-

tiva respecte de la coma decimal. Tot nombre es pot convertir al sistema

decimal, utilitzant el teorema fonamental de la numeració.

Exemples de conversió a decimal

1) Donat el número 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 s’expressa en base 4, aquesta base utilitza per a representarquantitats els dígits 0, 1, 2 i 3. Quin serà el valor corresponent en el sistema decimal?

3 43 + 2 42 + 2 41 + 1 40 + 0 4–1 + 3 4–2 = 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

d’un sistema de numeració a un altre. En aquests casos, cal tenir en comp-

te tota una sèrie de regles.

1) Conversió de nombres enters

Per a comprovar com s’efectua la conversió de nombres enters, analitza-

rem els casos següents amb exemples:

a) Conversió d’una base b a base 10. Es pot fer mitjançant els mètodes se-

güents:

• Teorema fonamental de la numeració

Exemple d’aplicació 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

El teorema fonamental de la numeració (TFN) diu que el valor

decimal d’una quantitat expressada en altres sistemes de nume-

ració s’expressa segons el polinomi següent:

... + x4b4 + x3b3 + x2b2 + x1b1 + x0b0 + ...

en què el símbol b representa la base i x són els dígits del nombre.

Matemàticament, es compleix que a0 = 1 (a representa un nombre).

Page 19: Rev Smxm2uf1

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 mètodes, però el més

fàcil és el de divisions successives per la base. Es tracta d’anar dividint el

nombre i els quocients successius entre la base fins que trobem un quocient

més petit que el divisor (base). La unió de tots els residus obtinguts escrits en

ordre invers i de l’últim 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 137/2 = 18 + residu 1 18/2 = 9 + residu 09/2 = 4 + residu 1 4/2 = 2 + residu 02/2 = 1 + residu 0 El resultat és:1 (últim quocient)0 (últim residu)0 (penúltim residu)1 (antepenúltim residu)0 (...)1 (...)1 (...) El resultat serà: 1001011(2

c) Conversió de base b a base b’. El mètode que s’ha de seguir pot ser el

següent:

• 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 d’aplicar 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 següents:

a) Conversió d’una base b a base 10. El mètode que utilitzarem és el del

teorema fonamental de la numeració.

Page 20: Rev Smxm2uf1

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 4–1 = 32 + 4 + 0 + 3/4 = 32 + 4 + 0 + 0,75 = 36,75(10

b) Conversió de base decimal a 3base b. Ho explicarem mitjançant un

exemple.

Exemple de conversió de base decimal a base b

Passeu el nombre 12,35(10 a base 2. El mètode que utilitzarem és el següent:

1) Prenem la part entera i seguim el mateix procés que amb els nombres enters (mètode de les di-visions successives).

12(10 = 1100(2

2) A continuació, agafem la part fraccionària del nombre, 0,35, la multipliquem per la base i n’aga-fem la part entera.

0,35 2 = 0,70. Agafem el valor 0 del 0,70.

3) Repetim el procés anterior amb la part fraccionària del resultat anterior.

0,70 2 = 1,40. Agafem el valor 1 d’1,40.

4) Repetim el procés anterior amb la part fraccionària del resultat anterior.

0,40 2 = 0,80. Agafem el valor 0 de 0,80.

5) Com més vegades repetim el procés, més precís serà el resultat. El resultat serà 1100,010(2

c) Conversió de base b a base b’. S’ha d’aplicar el mateix mètode de la con-

versió 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 3–1 = 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 més directament de binari a oc-

tal i de binari a hexadecimal.

• Pas binari-octal: amb el nombre binari fem grups de tres dígits comen-

çant per la dreta i després el passem a decimal.

Exemple de binari-octal

Passeu el binari 10.111 a octal. El procés 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.

Page 21: Rev Smxm2uf1

Sistemes operatius monolloc 21 Introducció als sistemes operatius

• Pas binari-hexadecimal: amb el nombre binari fem grups de quatre dí-

gits començant per la dreta.

Exemple de binari-hexadecimal

Passeu 101011(2 a hexadecimal. El procés pot ser:

1) 1.011(2 en base 10 és 11; i correspon a l’hexadecimal B.2) 10(2 en base 10 és 2; i correspon a l’hexadecimal 2.

El resultat que obtenim és 2B(16.

1.2.8. Operacions bàsiques amb sistemes de numeració

De la mateixa manera que en el sistema de numeració decimal podem fer

les operacions bàsiques de càlcul (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 binària es fa igual que en el sistema decimal. Si el

resultat no és en la base corresponent s’ha d’expressar en base binària.

Exemple de suma en binari

Feu la suma següent en binari: 111 + 11 + 1.

El procés pot ser el següent:

1)

111 11 + 1 ____ 123

2) Passem el dígit 3 a binari 11.

3) Substituïm aquest valor en 3 i tornem a sumar:

12 + 11 ____ 131

4) Cal repetir el procés en tots els dígits que no siguin en la base corresponent. Així, el resultat serà1011. No obstant això, s’ha de comprovar.

2) Resta en binari

L’algorisme de la resta en binari és el mateix que en el sistema decimal.

Les restes bàsiques 0 – 0, 1 – 0 i 1 – 1 són evidents:

0 – 0 = 0; 1 – 0 = 1; 1 – 1 = 0

Page 22: Rev Smxm2uf1

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ó següent: 0 – 1 = 1 i en porto 1. Això equival a dir en

decimal: 2 – 1 = 1. Aquesta unitat prestada s’ha de retornar sumant-la a la

posició següent.

Exemples de resta en binari

Restem 17 – 10 = 7 Restem 217 – 171 = 46

10001 11011001–01010 –10101011 _____ ________ 00111 00101110

Exemple de resta en binari

Fem l’operació següent en binari:

1 0 1 1 0 – 1 1__________

1 0 0 1 1

Comproveu-ho!

3) Multiplicació en binari

La multiplicació en qualsevol base binària es fa igual que en el sistema de-

cimal. Si el resultat no és en la base corresponent, s’ha d’expressar en base

binària.

Exemple de multiplicació en binari

Fem l’operació següent en binari:

1 0 0 1 0 1 0 1 ____________ 1 0 0 1 0 0 0 0 0 0 +1 0 0 1 0_______________ 1 0 1 1 0 1 0

Cal comprovar que el resultat sigui en la base corresponent.

4) Divisió en binari

La divisió en qualsevol base binària es fa igual que en el sistema decimal.

Exemple de divisió en binari

Fem l’operació següent en binari:

11011 101

101 101 quocient

00111

101

010 residu

Page 23: Rev Smxm2uf1

Sistemes operatius monolloc 23 Introducció als sistemes operatius

1.2.9. Representació dels nombres enters

Exemples de paraules

1) Paraules d’1 byte

a) Nombres enters sense signe: 28 = 256 combinacions diferents. Valors possibles: 0 a 255b) 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.535b) Nombres enters amb signe: 215 = 32.768 combinacions diferents. Valors possibles: –32.768 a32.767

3) Paraules de 4 bytes

a) Nombres enters sense signe: 232 = 4.294.967.200 combinacions diferents. Valors possibles: 0 a4.294.967.199b) 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 mètodes que explicarem a continuació, suposem que treballem

amb un ordinador en què la paraula és d’un byte i que el bit del signe és a

la part esquerra del byte (nombres positius, 0, i nombres negatius, 1).

1) Mòdul i signe

Els ordinadors poden fer servir diferents mètodes per a representar

internament els nombres enters, positius i negatius. Entre altres

mètodes destaquen:

1) Mòdul i signe.

2) Complement a 1.

3) Complement a 2.

4) Excés a 2n – 1.

La paraula és el nombre de bytes que pot gestionar l’ordinador, és a

dir, el nombre de bits que l’ordinador és capaç de manipular per a

fer operacions internes. Aquesta quantitat depèn del disseny de la

màquina: hi ha ordinadors amb paraules de 8, 16, 32 i 64 bits. Per ai-

xò, la representació d’un mateix nombre serà diferent en màquines

de paraules diferents.

El mètode de mòdul i signe representa els nombres positius i nega-

tius de la manera que s’indica a continuació: el nombre es passa a

binari i el resultat es col·loca en el byte de dreta a esquerra. Cal re-

cordar que el bit en què es guarda el signe se situa a la part esquerra

del byte. Les posicions no utilitzades s’omplen amb zeros.

Paraula

En un ordinador disposem d’un nombre limitat de bits per a la representació d’un nombre. Aquest límit és fixat pel concepte de paraula.

Page 24: Rev Smxm2uf1

Sistemes operatius monolloc 24 Introducció als sistemes operatius

Exemple de mòdul i signe

Representem el nombre 10(10.

Resultat: 0 0 0 0 1 0 1 0

Exemple de mòdul i signe

Representem el nombre –10(10.

Resultat: 1 0 0 0 1 0 1 0

2) Complement a 1 (C – 1)

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)

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 més a la dreta. El resultat serà 1 1 1 1 0 1 1 0.

4) Excés a 2n – 1

El mètode de complement a 1 (C – 1) representa els nombres po-

sitius igual que el mètode de mòdul i signe. Per als nombres ne-

gatius el procés és el següent:

a) Es representa com a positiu.

b) Es canvien els bits 0 per 1 i els bits 1 per 0.

El mètode de complement a 2 (C – 2) representa els nombres po-

sitius igual que en el mètode de mòdul i signe. Per als nombres

negatius el procés és el següent:

a) Es representa igual que el mètode de complement a 1.

b) Se suma el valor 1 al bit que és més a la dreta.

La variable n representa el nombre de bits que forma la paraula

de l’ordinador. El procés de càlcul que seguirem és el següent:

a) Valor = 2n – 1 + nombre.

b) Passem el valor a binari.

c) El col·loquem en el byte.

Page 25: Rev Smxm2uf1

Sistemes operatius monolloc 25 Introducció als sistemes operatius

Exemple d’excés 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 quanti-

tats se situarà en un lloc determinat. El punt fix s’utilitza per a la representa-

ció de nombres enters, suposant que el punt decimal és implícitament a la

dreta dels bits.

1) Mètode del decimal desempaquetat

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.

Poden emprar els mètodes següents de representació dels nom-

bres en coma o punt fix:

• decimal desempaquetat,

• decimal empaquetat.

El procés de càlcul que cal seguir en utilitzar el mètode de deci-mal desempaquetat és el següent:

a) Representarem cada dígit utilitzant 1 byte.

b) Cada byte és format per dues zones de 4 bits cadascuna. La pri-

mera s’anomena àrea de zona (si posa 1111, si el que volem repre-

sentar són nombres) i, l’altra, àrea de dígit (col·locarem el dígit

del nombre en binari).

c) En l’àrea de zona del byte que se situa més a la dreta posarem

el signe del nombre (positius, 1100; negatius, 1101, per exemple).

Page 26: Rev Smxm2uf1

Sistemes operatius monolloc 26 Introducció als sistemes operatius

2) Mètode del decimal empaquetat

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ó alfanumèrica

A l’hora d’introduir dades a l’ordinador, per a manipular-les, l’ideal seria co-

municar-se amb l’ordinador de manera parlada o escrita utilitzant el mateix

llenguatge que fem servir per a comunicar-nos amb altres persones.

El teclat d’un ordinador o les barres d’impressió tenen gravats el propi joc

de caràcters. Quan premem una tecla, el dispositiu produeix un senyal

elèctric que representa i transporta el caràcter contingut en aquesta tecla;

aquest senyal transmet el caràcter corresponent a l’ordinador per mitjà

d’un cable o d’altres dispositius.

El procés de càlcul que seguirem en utilitzar el mètode del deci-mal empaquetat és el següent:

a) Cada dígit es representa amb quartets.

b) 2 dígits s’utilitzen per a omplir un byte.

c) El signe se situa en l’últim quartet del byte que és més a la dreta.

d) Els quartets no utilitzats d’alguns bytes s’omplen amb zeros.

Avui dia, les formes naturals de comunicació encara no estan sufici-

entment desenvolupades. L’ordinador només entén la informació

en forma de senyals elèctrics que nosaltres representem mitjan-

çant dos símbols, el 0 i l’1. En aquest sentit, treballa i opera seguint

les regles de l’aritmètica binària.

Dades

Les dades formen la informació i es representen mitjançant lletres, nombres i altres símbols, que en conjunt formen el que s’anomena en anglès character set.

Impulsos elèctrics

Els impulsos elèctrics són formats per senyals que corresponen a zeros i a uns (equivalents a dos estats: off (apagat) i on (engegat).

Teclat

Cadascun dels senyals elèctrics produïts per un teclat és format

per una sèrie d’impulsos o tren d’impulsos. Cada caràcter es

transmet per mitjà d’un tren d’impulsos i segons un codi deter-

minat. Tant els codis binaris utilitzats pels dispositius d’entrada

de dades com el teclat i la cinta magnètica varien segons el dis-

positiu que els tracti. Aquests codis s’anomenen codis externs.

Page 27: Rev Smxm2uf1

Sistemes operatius monolloc 27 Introducció als sistemes operatius

Hi ha d’haver una conversió de codis entre formes externes i internes.

Aquesta conversió es pot fer dins del mateix dispositiu d’entrada, dins del

processador, abans d’arribar al processador, en un dispositiu anomenat

interfície o connexió.

També cal indicar que, en tot aquest procés, hi ha un sistema de control

d’errors per a assegurar que les dades arribin correctament a la destina-

ció. Les tècniques de control d’errors poden ser molt variades, una d’elles

és l’anomenada tècnica de control de paritat.

1.2.12. Codificació interna de les dades

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

caràcter en forma d’un byte i que s’aplica principalment en els microordi-

nadors.

2) Codi EBCDIC. També és un codi de 8 bits i s’aplica principalment en

grans ordinadors. A la taula 2 podeu veure la representació de diversos ca-

ràcters en codis ASCII i EBCDIC.

A l’ordinador s’utilitza un únic codi binari per a totes les dades,

independentment d’on vinguin. Aquest codi s’anomena codi in-tern o codi alfanumèric, i és diferent d’un fabricant a un altre

(IBM fa servir el codi EBCDIC als grans ordinadors i als microor-

dinadors aplica el codi ASCII).

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.

Es denomina codificació la manera diferent d’entendre un mateix

símbol en funció del sistema d’avaluació que fem servir. No té el

mateix significat el símbol X interpretat com a lletra que com a

nombre en el sistema de codificació romana.

La interfície és un dispositiu de connexió que converteix els codis externs en interns o al revés.

El control de paritat és una tècnica de control d’errors en la transmissió de la informació.

ASCII

ASCII és la sigla d’American standard code for information interchange, en català, codi estàndard americà per a l’intercanvi d’informació.

Page 28: Rev Smxm2uf1

Sistemes operatius monolloc 28 Introducció als sistemes operatius

Taula 2. Representació de caràcters en els codis ASCII i EBCDIC

3) Codi Unicode. És un codi de 16 bits; per tant, el nombre de caràcters

que podem representar és de 216: 65.536 caràcters.

També cal recordar que en tota comunicació, a més de les dades que hem

de transmetre, hi ha altres senyals, principalment de control, que cal tenir

en compte, com ara: el començament i la fi de capçalera, el començament

i la fi de transmissió, etc.

El codi Unicode proporciona un nombre per a cada caràcter, independent-

ment de la plataforma, el programa i l’idioma. Abans d’inventar-se el sis-

tema Unicode, hi havia centenars de sistemes de codificació diferents per

a assignar nombres. Cap codificació no tenia prou nombres per a repre-

sentar tots els caràcters que s’utilitzen en el món.

1.3. Sistemes transaccionals

La informació ha estat manipulada i tractada de diferents maneres, se-

gons el moment històric i els avenços tecnològics que hi ha hagut en cada

època.

Caràcter ASCII EBCDIC Caràcter ASCII EBCDIC

A 01000001 11000001 N 01001110 11010101

B 01000010 11000010 O 01001111 11010110

C 0100 0011 11000011 P 01010000 11010111

D 01000100 11000100 Q 01010001 11011000

E 01000101 11000101 R 01010010 11011001

F 01000110 11000110 S 01010011 11100010

G 01000111 11000111 T 01010100 11100011

H 01001000 11001000 U 01010101 11100100

I 01001001 11001001 V 01010110 11100101

J 01001010 11010001 W 0101 0111 1110 0110

K 01001011 11010010 X 01011000 11100111

L 01001100 11010011 Y 01011000 11101000

M 01001101 11010100 Z 01011010 11101001

Podem definir el tractament de la informació com el conjunt d’ope-

racions que s’han d’efectuar sobre les dades que componen la infor-

mació.

EBCDIC

EBCDIC és la sigla d’extended binary coded decimal interchange code, en català, codi ampliat d’intercanvi de decimals codificats en binari.

Unicode és l’acrònim d’universal 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 l’ús de la norma Unicode, que especifica la representació del text en productes i estàndards moderns. És integrat per una àmplia gamma de corporacions i organitzacions de la indústria informàtica i del processament de la informació.El consorci es finança amb les quotes dels socis. L’afiliació és oberta a organitzacions i individus de qualsevol part del món que donin suport a la norma Unicode i que vulguin col·laborar en la seva difusió i aplicació.

Page 29: Rev Smxm2uf1

Sistemes operatius monolloc 29 Introducció als sistemes operatius

En tot procés de tractament de la informació hi ha d’haver tres elements

imprescindibles perquè el tractament sigui eficient: l’emissor, el canal i el

receptor.

Moltes vegades hem sentit la paraula sistema d’informació i potser ens

hem preguntat què vol dir això.

Un sistema d’informació fa quatre activitats bàsiques:

1) L’entrada d’informació és el procés mitjançant el qual el sistema d’infor-

mació agafa les dades que necessita per a processar la informació. Les entra-

des poden ser manuals o automàtiques. L’entrada d’informació de manera

manual consisteix que la informació és subministrada per l’usuari, mentre

que en l’entrada d’informació automàtica les dades o les informacions són

subministrades per altres sistemes. Les unitats típiques d’entrada de dades

als ordinadors són els terminals, les cintes magnètiques, les unitats de discos

magnètics, els codis de barres, els escàners, els teclats, etc.

2) L’emmagatzematge de la informació és una de les activitats o capaci-

tats més importants que té un ordinador, ja que mitjançant aquesta propie-

tat el sistema pot recordar la informació guardada en la fase o en el procés

anteriors. Aquesta informació s’acostuma a emmagatzemar en estructu-

res d’informació anomenades arxius i bases de dades. Els dispositius tí-

pics d’emmagatzematge són els discos magnètics (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 d’informa-

ció per a fer càlculs d’acord amb una seqüència d’accions preestablertes

L’emissor és el responsable de generar la informació (per exem-

ple, una persona quan parla, un llibre quan llegim, etc.).

El canal és l’element que permet la transmissió de la informació

(per exemple, l’aire quan parlem, el fil de telèfon en les comuni-

cacions telefòniques, etc.).

El receptor és l’element que rep la informació (per exemple, en

aquest moment concret, sou vosaltres que esteu estudiant aques-

ta unitat didàctica).

Un sistema d’informació és un conjunt d’elements que interactuen

entre ells amb l’objectiu d’aconseguir uns fins determinats (per

exemple, una empresa, un negoci, etc.).

Elements d’un sistema d’informació

Per a aconseguir els seus objectius, un sistema d’informació utilitza diversos elements:

1) El maquinari necessari perquè el sistema d’informació pugui operar.

2) El programari que gestiona la informació que cal tractar.

3) Els recursos humans que interactuen amb el sistema d’informació.

Arxiu i bases de dades

Un arxiu és un conjunt d’informació relacionada.

Una base de dades és un conjunt de fitxers relacionats.

Page 30: Rev Smxm2uf1

Sistemes operatius monolloc 30 Introducció als sistemes operatius

determinada. Aquests càlculs es poden fer amb dades introduïdes en el

sistema o bé amb dades que estan emmagatzemades en el mateix sistema.

Aquesta característica 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 d’un sistema d’informació

per a treure la informació processada o bé les dades d’entrades a l’exterior.

Els dispositius típics de sortida són les impressores, els terminals, les cin-

tes magnètiques, els discos magnètics, els altaveus, etc. També cal dir que

la sortida d’un sistema d’informació pot constituir l’entrada a un altre sis-

tema d’informació.

1.3.1. Tipus de sistemes d’informació

Els sistemes d’informació que aconsegueixen l’automatització de proces-

sos operatius dins d’una organització s’anomenen sistemes transaccio-

nals, ja que el seu fi és processar transaccions.

1.3.2. Transaccions

Els sistemes transaccionals duen a terme transaccions.

ACID

Tota transacció ha de complir quatre propietats conegudes amb el nom d’ACID:

1) Atomicitat (atomicity): és la propietat que assegura que l’operació s’ha fet amb èxit o no i, pertant, davant d’un problema en el sistema no pot quedar a mitges.

2) Consistència (consistency): és la propietat que assegura que només es comença el procés quees pot acabar.

Un sistema transaccional és un tipus de sistema d’informació disse-

nyat per a recollir, emmagatzemar, modificar i recuperar qualsevol

tipus d’informació que és generada en una organització (per exem-

ple, el traspàs d’una quantitat de diners entre comptes bancaris, sis-

temes de reserves de bitllets de transports i d’espectacles, etc.).

Una transacció és un conjunt d’accions que es fa sobre una estruc-

tura de dades complexa i que és format per diversos processos que

s’han d’aplicar un després de l’altre. Tota transacció genera o modi-

fica la informació que es troba eventualment emmagatzemada en

un sistema d’informació.

Objectius dels sistemes d’informació

En els propers anys, els sistemes d’informació intentaran aconseguir dins de les organitzacions els objectius següents:

1) L’automatització dels processos operatius.

2) Que el subministrament d’informació sigui la base del procés en la presa de decisions.

3) L’assoliment d’avantatges competitius a partir de la implementació i de l’ús.

Organització

Una organització és un conjunt d’elements que funciona de manera coordinada i que té objectius comuns.

Les principals característiques dels sistemes transaccionals

Les principals característiques dels sistemes transaccionals són les següents:

1) Permeten l’automatització de les tasques operatives en les organitzacions.

2) Acostumen a ser els primers sistemes d’informació que s’implementen en una organització.

3) Els processos que duen a terme són simples i poc sofisticats.

4) S’utilitzen per a subministrar informació a grans bases de dades.

5) Els avantatges d’aquests sistemes en una organització són ràpidament visibles.

Page 31: Rev Smxm2uf1

Sistemes operatius monolloc 31 Introducció als sistemes operatius

3) Aïllament (isolation): és la propietat que assegura que una operació no en pot afectar d’altres.

4) Permanència (durability): és la propietat que assegura que una vegada executada l’operació,aquesta persistirà i no es podrà desfer encara que falli el sistema.

1.4. Concepte, elements i estructura d’un sistema operatiu

Per a definir què és un sistema operatiu, cal tenir presents dos aspectes

relacionats amb l’ordinador: el maquinari i el programari.

L’ordinador és format per dos elements fonamentals: l’element físic o ma-

quinari i l’element lògic o programari.

Actualment, un ordinador és una màquina molt complexa que pot cons-

tar d’un o més processadors, discos, escàners, targetes de comunicaci-

ons, impressores, mòdems, etc. Els dispositius que conté són de tipus

divers (òptics, magnètics, etc.), tenen un funcionament molt variat (al-

guns comparteixen el mateix dispositiu), la tecnologia de funcionament

és diferent i el tipus de suport utilitzat té característiques diferents. Així,

si un usuari vol fer servir aquest sistema d’una manera eficient, necessi-

ta conèixer les característiques, controlar-ne el funcionament, etc. Per

tant, cal pensar que hi ha d’haver una solució que permeti als usuaris uti-

litzar aquesta màquina d’una manera més senzilla, fàcil i eficient.

Per a definir el concepte de sistema operatiu, cal conèixer el significat de

sistema informàtic.

Per a facilitar l’ús de l’ordinador s’ha posat per sobre del maquinari

una capa de programari amb l’objectiu de gestionar les diferents

parts de l’ordinador d’una manera eficient i, alhora, presentar a

l’usuari una màquina virtual molt més senzilla d’entendre i utilit-

zar. Aquesta capa de programari és l’anomenat programari del sis-tema, la part més important del qual és el sistema operatiu.

Un sistema informàtic és un conjunt d’elements necessaris per a

la realització i la utilització de les aplicacions informàtiques. Els

components principals d’un sistema informàtic són:

• el maquinari,

• el sistema operatiu,

• els programes d’aplicació,

• els usuaris.

Maquinari i programari

El maquinari (hardware) fa referència a tot allò que podem veure i tocar (el monitor, el teclat, la CPU, etc.).

El programari (software) fa referència als elements que no tenen existència física, com les idees, els conceptes, els programes, les aplicacions, etc.

Una màquina virtual representa la simulació d’una màquina real.

Un sistema informàtic monoprocessador és format per una única unitat central de procés (CPU).

Aplicacions informàtiques

Les aplicacions informàtiques són un conjunt de programes informàtics d’àmbit divers (exemples: programes de gestió, de jocs, de matemàtiques, d’eines ofimàtiques, etc.).

Funció dels elements d’un sistema informàtic

Cadascun dels elements d’un sistema informàtic té una funció important:

1) El maquinari proporciona els recursos bàsics del sistema informàtic: el processador, la memòria, dispositius d’E/S, etc.

2) El sistema operatiu és un conjunt de programes que serveixen d’intermediari o interfície entre els usuaris i el maquinari.

3) Els programes d’aplicació són aplicacions informàtiques concretes (per a resoldre els problemes de computació dels usuaris).

4) Els usuaris són objectes que fan ús de l’ordinador (persones, altres ordinadors i màquines).

Page 32: Rev Smxm2uf1

Sistemes operatius monolloc 32 Introducció als sistemes operatius

1.4.1. Definició de sistema operatiu

Podem definir el sistema operatiu tenint en compte diferents paràme-

tres de valoració:

1) Segons la funció que tingui. Un sistema operatiu és el suport lògic que

controla el funcionament de l’equip físic.

2) Des del punt de vista de l’usuari. Un sistema operatiu és un conjunt de

programes i funcions que amaguen els detalls del maquinari de manera

que donen a l’usuari un camí senzill i flexible d’accés al sistema.

3) Des del punt de vista de gestor de recursos. Un sistema operatiu és l’ad-

ministrador de recursos oferts pel maquinari per a obtenir un rendiment

eficient.

4) Des del punt de vista del sistema i de l’operació. Un sistema operatiu

és el conjunt de programes relacionats entre ells que contribueixen al fet

que l’ordinador faci correctament la feina.

5) En funció de la comoditat i de l’eficiència. Un sistema operatiu és un

conjunt de programes que actuen com a intermediari entre l’usuari i el

maquinari de l’ordinador i el seu propòsit és proporcionar l’entorn en el

qual l’usuari pot executar programes. Aleshores, l’objectiu principal d’un

sistema operatiu és aconseguir que el sistema de computació s’utilitzi

d’una manera còmoda, i l’objectiu secundari és que el maquinari de l’ordi-

nador s’utilitzi d’una manera eficient.

6) Des del punt de vista de comunicació entre l’usuari i el maquinari. Un

sistema operatiu és un conjunt de programes que controlen l’execució de

programes d’aplicació i que actuen com una interfície entre l’usuari i el

maquinari d’un ordinador; així, un sistema operatiu explota i administra

els recursos de maquinari de l’ordinador amb l’objectiu de proporcionar

un conjunt de serveis als usuaris del sistema.

En la figura 2 es mostren els nivells de programari i de maquinari d’un or-

dinador. També hi podeu observar que el sistema operatiu és l’única capa

que treballa directament amb el maquinari. Per sobre del sistema opera-

tiu es troba un nivell format pels traductors, editors de text i els intèrprets

d’ordres.

Els dos primers tipus de programes, juntament amb els enllaçadors i els

depuradors, són útils per a crear un nivell d’abstracció còmode per al des-

envolupament de programes.

E/S o e/s és l’abreviatura d’entrada-sortida.

Sistema operatiu, un administrador de recursos

Podem imaginar un sistema operatiu com els programes que fan utilitzable el maquinari. El maquinari proporciona la "capacitat bruta d’operació"; els sistemes operatius posen aquesta capacitat d’operació a l’abast dels usuaris i administren d’una manera segura el maquinari per a aconseguir un bon rendiment.

Els sistemes operatius són abans de tot administradors de recursos; el principal recurs que administren és el maquinari de l’ordinador (els processadors, els mitjans d’emmagatzematge, els dispositius d’E/S, les dades, etc.).

Enllaçadors i depuradors

Els enllaçadors són programes que permeten crear programes executables.

Els depuradors són programes que permeten fer un seguiment dels programes informàtics per a comprovar-ne pas a pas el funcionament.

Page 33: Rev Smxm2uf1

Sistemes operatius monolloc 33 Introducció als sistemes operatius

Figura 2. Nivells de programari i maquinari d’un ordinador

La unió dels programes de las dues capes intermèdies de la figura confor-

men el programari de sistemes d’un ordinador. Finalment, hi ha el nivell

constituït pels programes d’aplicació. Aquests programes no donen un ser-

vei a altres programes; la seva finalitat és resoldre problemes concrets.

Són els programes que executa un usuari no informàtic. Pertanyen a

aquesta capa els processadors de text, els fulls de càlcul, les agendes elec-

tròniques, els jocs, etc.

El maquinari facilita els recursos bàsics de computació, mentre que els

programes d’aplicació defineixen com s’han d’utilitzar aquests recursos

per a resoldre els problemes dels usuaris. Hi pot haver molts usuaris dife-

rents que tractin de resoldre problemes diferents. Consegüentment, és

habitual l’existència de diferents programes d’aplicació.

El sistema operatiu, d’altra banda, proporciona serveis dels quals no dis-

posa el maquinari, com, per exemple, la possibilitat d’utilitzar l’ordinador

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.

El sistema operatiu controla i coordina l’ús del maquinari que

fan els diferents programes d’aplicació dels diversos usuaris.

Els sistemes operatius construeixen recursos d’alt nivell que denomi-

nem virtuals, a còpia d’amagar els que realment hi ha en el nivell baix

i que anomenem físics. En conseqüència, des del punt de vista de

l’usuari o del procés, la màquina física és convertida pel sistema

operatiu en una màquina virtual, també coneguda com a màquina es-tesa, que, a diferència de la física, ofereix a l’usuari moltes més funci-

ons i més comoditat a l’hora d’utilitzar-la.

Màquina virtual o estesa

Una màquina virtual és una interfície que manté una màquina mitjançant la qual ens dóna comunicacions amb els dispositius de l’ordinador. D’aquesta manera, nosaltres treballem a un nivell superior i eliminem la complexitat d’aquests dispositius. Així podem mantenir diferents sistemes operatius en funcionament sobre una mateixa màquina.

Page 34: Rev Smxm2uf1

Sistemes operatius monolloc 34 Introducció als sistemes operatius

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

1.4.2. Elements d’un sistema operatiu

Vegem amb detall els elements que formen els sistemes operatius:

1) Nucli. El nucli és el mòdul més baix del sistema operatiu i descansa di-

rectament sobre el maquinari de l’ordinador. Entre les tasques que fa hi

ha la manipulació de les interrupcions, l’assignació de treballs al proces-

sador i l’oferiment d’una via de comunicació entre els diferents progra-

mes. En general, el nucli s’encarrega de controlar la resta dels mòduls i

sincronitzar-ne l’execució. El nucli conté un submòdul anomenat planifi-

cador, el qual s’encarrega d’assignar els temps de processador als progra-

mes, d’acord amb una certa política de planificació que varia d’un sistema

operatiu a un altre. Normalment s’utilitza una jerarquia de prioritats que

determinen com s’assignarà el temps de CPU a cada programa. Una polí-

tica de planificació molt comú en els sistemes operatius multiprogramats

i multiaccés són les tècniques de time slicing (fracció de temps). S’assig-

na a cada programa un cert interval de temps del processador. Si el pro-

grama no ha acabat durant aquest temps, torna a la cua de programes.

Els sistemes operatius són formats, bàsicament, per les estructu-

res següents:

• el nucli (kernel),

• l’administrador de memòria,

• el sistema d’entrada/sortida,

• l’administrador d’arxius.

Intèrpret d’ordres

De vegades, es considera que l’intèrpret de comandaments, o intèrpret d’ordres, és una estructura més del sistema operatiu.

El sistema operatiu s’encarrega de "traduir" les ordres que l’usuari ingressa mitjançant el teclat o altres dispositius a un "llenguatge" que la màquina pugui entendre.

Page 35: Rev Smxm2uf1

Sistemes operatius monolloc 35 Introducció als sistemes operatius

2) Administrador de memòria. Aquest mòdul s’encarrega d’assignar cer-

tes porcions de la memòria 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 d’emmagatzematge massiu.

D’aquesta manera, quan s’assigna una part de la memòria principal es fa

d’una manera estructurada, seguint un ordre determinat. La manera més

comuna d’administració de la memòria implica crear una memòria virtual;

amb aquest sistema, la memòria de l’ordinador apareix, per a qualsevol

usuari del sistema, més gran del que és.

3) Sistema d’entrada/sortida (E/S). Aquest component presenta a l’usua-

ri les dades com una qüestió independent del dispositiu; és a dir, per als

usuaris, tots els dispositius tenen les mateixes característiques i són trac-

tats de la mateixa manera, i el sistema operatiu és el responsable d’aten-

dre les particularitats de cadascun d’ells. Una tècnica molt comú,

especialment en la sortida d’informació, és l’ús de gestors de cues (spoo-

lers). Les dades de sortida s’emmagatzemen d’una manera temporal en

una cua situada en un dispositiu d’emmagatzematge massiu (spool), fins

que el dispositiu perifèric corresponent es troba lliure; d’aquesta manera,

s’evita que un programa quedi retingut perquè el perifèric no està dispo-

nible.

4) Administrador d’arxius. Aquesta part del sistema operatiu s’encarrega

de mantenir l’estructura de les dades i els programes del sistema corres-

ponents als diferents usuaris i d’assegurar l’ús efectiu dels mitjans d’em-

magatzematge massiu. L’administrador d’arxius també supervisa la

creació, l’actualització i l’eliminació dels arxius, i manté un directori amb

tots els arxius que hi ha en el sistema en cada moment i coopera amb el

mòdul d’administració de memòria durant les transferències de dades des

de la memòria principal i cap a ella i dels mitjans d’emmagatzematge mas-

siu per a mantenir l’estructura de l’organització.

1.4.3. Estructura d’un sistema operatiu

Hi ha diferents estructures a escala interna que han de presentar o que

presenten els sistemes operatius. Bàsicament són set:

1) Estructura monolítica

L’estructura monolítica d’un sistema operatiu és formada per un

programa que és integrat per un conjunt de rutines entrellaçades de

tal manera que cadascuna pot cridar qualsevol altra. L’estructura

consisteix en el fet que no hi ha estructura.

Privilegis d’accés dels arxius

Els arxius desats en els dispositius d’emmagatzematge massiu tenen diferents propòsits. Alguns contenen informació que pot ser compartida. D’altres són de caràcter privat i fins i tot secret. Per tant, cada arxiu està dotat d’un conjunt de privilegis d’accés, que indiquen l’extensió amb la qual es pot compartir la informació continguda en l’arxiu. El sistema operatiu comprova que aquests privilegis no siguin violats.

Page 36: Rev Smxm2uf1

Sistemes operatius monolloc 36 Introducció als sistemes operatius

L’estructura monolítica és l’estructura dels primers sistemes operatius.

Les següents són les principals característiques d’aquesta estructura:

• És una estructura molt comú. De fet, no hi ha una estructura pròpia-

ment o és mínima.

• El sistema operatiu és una col·lecció de procediments que es poden cri-

dar entre ells.

• Cada procediment té una interfície ben definida en termes de paràme-

tres i resultats.

En la figura 4 podeu veure un esquema de l’estructura monolítica dels sis-

temes operatius.

Figura 4. Sistemes monolítics

2) Estructura jeràrquica 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 més bona, per la qual cosa va esdevenir necessari un altre ti-

pus d’organització. Una manera d’organitzar millor les coses va consistir

a dividir el sistema operatiu en petites parts independents, però amb ca-

pacitat de relació amb les altres, de tal manera que cadascuna estigués

perfectament definida i amb una interfície amb la resta dels elements.

Normalment aquest sistema s’estructurava en capes en què cadascuna te-

nia assignades funcions concretes i especialitzades. Aquesta divisió en ca-

pes va donar lloc a la divisió en funcions.

Els sistemes operatius d’estructura jeràrquica s’organitzen en

les capes següents:

• Planificació del processador: gestió del processador i de la mane-

ra com poden accedir al processador els diferents programes.

Un procediment és un bloc d’accions que es criden des d’un mateix programa.

Una interfície és un conjunt d’eines que faciliten la comunicació entre els usuaris i el sistema.

Page 37: Rev Smxm2uf1

Sistemes operatius monolloc 37 Introducció als sistemes operatius

L’estructura jeràrquica també es pot representar en forma d’anelles (ca-

pes circulars). Les funcions d’un nivell superior en poden invocar d’altres

dels nivells inferiors, però no dels nivells superiors. En la figura 5 podeu

veure un esquema de l’estructura jeràrquica dels sistemes operatius.

Figura 5. Sistemes jeràrquics o en capes

3) Estructura de màquina virtual

Aquests sistemes presenten al programa una màquina que sembla idènti-

ca a la màquina real, anomenada màquina virtual. El nucli d’aquest siste-

ma operatiu s’anomena monitor virtual. El sistema de màquina virtual

separa dos conceptes que solen ser junts en tots els sistemes operatius: la

multiprogramació i la màquina estesa.

• Gestió de memòria: gestió de la memòria i de la utilització que en

poden fer els diferents programes.

• Gestió d’entrada/sortida: rutines que gestionen cadascun dels

perifèrics de l’ordinador.

• Sistema de fitxers: gestiona la informació dels usuaris i fixa els

mecanismes de protecció necessaris per a aconseguir un sistema

de seguretat acceptable.

• Programes d’usuari: aplicacions específiques d’utilització per

part de l’usuari.

El monitor virtual té com a missió fer la multiprogramació de ma-

nera que presenta als nivells superiors tantes màquines virtuals

com se sol·licitin. No són màquines esteses sinó una rèplica exacta

de la màquina real, de manera que en cadascuna es pot executar un

sistema operatiu diferent, que serà el que ofereixi la màquina este-

sa a l’usuari.

Page 38: Rev Smxm2uf1

Sistemes operatius monolloc 38 Introducció als sistemes operatius

Les característiques principals del monitor són:

• Proporciona diverses màquines virtuals a la capa superior.

• Las màquines virtuals instrumenten còpies “exactes” del maquinari

simple, amb el seu mode nucli/usuari, E/S, interrupcions i tot el que té

una màquina real.

• Poden executar qualsevol sistema operatiu d’una manera directa sobre

el maquinari.

• Les diferents màquines virtuals poden executar diferents sistemes

operatius i en general així ho fan.

• Suporten perifèrics 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 mínim.

Els processos tant poden ser servidors com clients. Un programa d’aplica-

ció normal és un client que crida el servidor corresponent per a accedir a

un fitxer o per a fer una operació d’E/S sobre un dispositiu. A la vegada, un

programa client pot actuar com a servidor d’un altre. El nucli té com a mis-

sió establir la comunicació entre els clients i els servidors.

En la figura 6 podeu veure un esquema de l’estructura client/servidor dels

sistemes operatius. En aquest model, que es presenta en la figura, l’únic

que fa el nucli és controlar la comunicació entre els clients i els servidors.

En separar el sistema operatiu en parts cadascuna d’elles controla una fa-

ceta del sistema, com el servei a fitxers, servei a processos, servei a termi-

nals o servei a la memòria; cada part és petita i controlable. A més, tots els

servidors s’executen com a processos en mode usuari, i no en mode nucli,

i no tenen accés directe al maquinari. En conseqüència, si hi ha un error

La idea principal de l’estructura client/servidor és implementar la

major part de les funcions del sistema operatiu en la capa dels pro-

grames de l’usuari. Dos elements són la base d’aquesta política: el

nucli i els processos. Es tracta de dissenyar un nucli tan petit com

sigui possible i de subministrar mecanismes per a la gestió d’acces-

sos a la memòria i la comunicació entre programes. Les polítiques

les fixen els programes que fan moltes vegades les funcions que

abans feien els sistemes operatius.

Mode nucli i mode usuari

El mode nucli és l’entorn 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 d’IBM és un exemple de sistema operatiu representatiu de l’estructura de màquina virtual.

El client representa l’element que demana un servei a un altre anomenat servidor.

Crida

Les crides són 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 s’agafa i s’envia al sistema operatiu de la seva pròpia màquina virtual perquè la gestioni.

Page 39: Rev Smxm2uf1

Sistemes operatius monolloc 39 Introducció als sistemes operatius

en el servidor de fitxers, aquest pot fallar, però això no afectarà el funcio-

nament general de tota la màquina.

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 d’usuari. Per exemple, elsprogrames Win32 corren en el subsistema Win32.

El mode nucli, supervisor o privilegiat se situa entre el mode usuari i la capa física (el maquinari) ievita que el mode usuari accedeixi directament al maquinari. El mode nucli és la residència dels di-

ferents serveis del sistema operatiu que s’encarrega de totes les operacions internes del sistemaoperatiu.

En resum, podem dir que mentre s’executa una crida del nucli som en mode nucli i quan executemcodi que no pertany al nucli es diu que som en mode usuari. Això garanteix en l’àmbit del maquinari

que cap programa d’usuari no pugui accedir als recursos generals del sistema, tret que utilitzi cridesal nucli, les quals podran establir l’accés al maquinari en funció dels permisos.

5) Estructura orientada a l’objecte

Els nous sistemes operatius s’estan desenvolupant d’acord amb metodo-

logies orientades a objectes. En comptes de veure el sistema operatiu com

una col·lecció de funcions que es poden executar, la concepció dels nous

sistemes es basa en una col·lecció d’objectes.

6) Estructura multiprocressador

Cada cop calen sistemes més ràpids que suportin un volum de feina més

gran o que permetin abordar problemes més costosos en temps de càlcul.

Una manera d’aconseguir-ho es basa en la combinació de processadors.

Aquesta opció és la més econòmica i permet construir sistemes amb un

creixement escalar segons les necessitats.

El nucli del sistema operatiu és el responsable del manteniment de

les definicions dels tipus d’objectes suportats i del control dels pri-

vilegis d’accés a aquests objectes. Quan un programa vol fer alguna

operació sobre un objecte determinat, haurà d’executar una crida al

sistema operatiu en què indiqui quins drets té per a poder-lo utilit-

zar i quina operació interna intenta fer.

Objecte

Un objecte és un element que té unes propietats i s’hi poden fer unes accions determinades. Els ordinadors, els usuaris o les impressores són alguns exemples d’objectes. Algunes accions que hi podem fer són crear, modificar, copiar, etc.

Page 40: Rev Smxm2uf1

Sistemes operatius monolloc 40 Introducció als sistemes operatius

Podem classificar les arquitectures multiprocessador segon la relació que

hi ha entre processadors i memòria:

• Multiprocessadors acoblats fortament. Aquest sistema també s’anomena

sistema de memòria compartida. En aquest cas, cada processador veu la

totalitat de la memòria i, per tant, hi pot accedir directament.

• Multiprocessadors acoblats dèbilment. També s’anomenen sistemes

de memòria distribuïda. Cada processador té accés només a una me-

mòria privada. Els processadors es comuniquen entre ells mitjançant

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 distància del maqui-

nari, com en el cas de l’estructura en capes. Aquestes agrupacions es

poden fer a partir de serveis d’E/S, la gestió de la memòria, etc. Aquesta

estructura dóna 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 múltiples plataformes de ma-

quinari; així que s’ha de poder adaptar a les necessitats de cadascuna

Page 41: Rev Smxm2uf1

Sistemes operatius monolloc 41 Introducció als sistemes operatius

d’elles, de manera que pugui complir els objectius pels quals ha estat dis-

senyat.

1.5.1. Objectius dels sistemes operatius

Els principals objectius dels sistemes operatius són:

• Incrementar la productivitat dels usuaris (facilitant-ne l’ús).

• Proporcionar un entorn còmode i l’abstracció del maquinari a l’usuari.

• Optimitzar la utilització dels components o dels recursos del maqui-

nari.

• Gestionar els recursos del maquinari i del programari

• Decidir qui, quan, com i durant quant de temps s’utilitza un recurs.

• Resoldre conflictes entre peticions concurrents de manera que es pre-

servi la integritat del sistema.

• Maximitzar el rendiment del sistema informàtic.

• Permetre la concurrència de processos.

• Possibilitar l’execució de qualsevol procés en el moment en què se sol·-

liciti 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 s’utilitza la CPU, el temps de resposta en sistemes multiaccés 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 memòria, els processadors, els dispositius d’E/S, etc.

• Ser fiable, és a dir, un sistema operatiu no ha de tenir errors i ha de pre-

veure totes les possibles situacions.

• Tenir una grandària petita.

• Possibilitar i facilitar tant com es pugui el diàleg entre el maquinari i

l’usuari.

• 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 d’E/S dels diferents dispositius connectats a un

ordinador.

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 informàtic, té encoma-

nades una sèrie de funcions. Les funcions més importants són les se-

güents:

• Administra el processador.

• Administra la memòria.

Procés concurrent

Un procés concurrent és l’estat que es dóna quan en un mateix moment el sistema operatiu intenta utilitzar un mateix recurs per a processos diferents.

Procés i programa

Un procés és un programa en execució.

Un programa és un conjunt d’accions que permet resoldre una situació determinada.

Page 42: Rev Smxm2uf1

Sistemes operatius monolloc 42 Introducció als sistemes operatius

• Relaciona dispositius (els gestiona mitjançant el nucli). El sistema ope-

ratiu s’ha d’encarregar de comunicar els usuaris amb els dispositius pe-

rifèrics, quan els usuaris ho demanin.

• Organitza les dades per a un accés ràpid i segur.

• Gestiona les comunicacions en xarxa. El sistema operatiu permet a

l’usuari manipular amb molta facilitat tot el que fa referència a la

instal·lació i a l’ús de les xarxes d’ordinadors.

• Facilita les entrades i sortides. Un sistema operatiu permet fer més fà-

cil a l’usuari l’accés i la manipulació dels dispositius d’entrada/sortida

de l’ordinador.

• Dóna tècniques de recuperació d’errors.

• 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 estadístiques.

• 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ó d’una màquina virtual o estesa. El sistema ope-

ratiu posa al servei de l’usuari una màquina virtual que té unes caracterís-

tiques que són diferents (i més fàcils d’abordar) que les de la màquina real

subjacent. Algunes àrees en les quals és freqüent que la màquina virtual

sigui diferent de la màquina real que la suporta són:

a) Entrada/sortida (E/S). La capacitat d’E/S d’un maquinari bàsic pot ser

que sigui extremament complexa i que requereixi programes sofisticats

per a utilitzar-lo. Un sistema operatiu evita a l’usuari el problema d’haver

de comprendre el funcionament d’aquest maquinari i posa al seu abast

una màquina virtual més senzilla d’usar.

b) Memòria. Molts sistemes operatius presenten la imatge d’una màqui-

na virtual en què la memòria difereix en grandària de la de la màquina real

subjacent. Així, per exemple, un sistema operatiu pot utilitzar memòria

secundària (discos magnètics, etc.) per a crear la il·lusió d’una memòria

principal molt més extensa que la que es té en la realitat. Alternativa-

ment, pot repartir la memòria principal entre diversos usuaris, de manera

que cadascun d’ells “vegi” una màquina virtual en què la memòria sigui

més petita que la de la màquina real.

c) Sistema de fitxers. La majoria de les màquines virtuals inclouen un sis-

tema de fitxers per a l’emmagatzematge a llarg termini tant de programes

com de dades. El sistema de fitxers es basa en la capacitat d’emmagatze-

matge sobre cinta o disc de la màquina real. El sistema operatiu, no obs-

tant això, permet a l’usuari accedir a la informació emmagatzemada a

partir de noms simbòlics en lloc de fer-ho a partir de la seva posició física

en el mitjà d’emmagatzematge.

El kernel és el nucli del sistema operatiu.

Perifèrics

Un dispositiu perifèric és el maquinari que cal que estigui connectat amb l’ordinador per a poder funcionar. Alguns exemples en són el teclat, el ratolí, etc.

Una xarxa d’ordinadors és un sistema que permet compartir recursos entre dispositius informàtics.

Memòries secundàries

Les memòries secundàries són dispositius que permeten emmagatzemar informació d’una manera permanent. Alguns d’aquests dispositius poden ser: discos durs, disquets, CD, DVD, etc.

Un nom simbòlic és equivalent al concepte d’àlies.

Page 43: Rev Smxm2uf1

Sistemes operatius monolloc 43 Introducció als sistemes operatius

d) Protecció i tractament d’errors. Des del moment en què la majoria dels

ordinadors són compartits per un nombre determinat d’usuaris, és essen-

cial que cadascun d’ells 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 bàsic; la missió del sis-

tema operatiu és constituir una màquina virtual en què cap usuari no pu-

gui afectar d’una manera negativa el treball dels altres.

e) Interacció a nivell de programa. Una màquina virtual pot possibilitar la

interacció entre els diferents programes dels usuaris de manera que, per

exemple, la sortida d’un d’ells s’utilitzi com a entrada d’un altre. La natu-

ralesa concreta d’una màquina virtual dependrà de l’aplicació particular a

què es destini. Així, per exemple, las característiques d’una màquina vir-

tual que controli un sistema de temps real serà diferent de les d’una mà-

quina virtual que s’utilitzi per al desenvolupament de programes.

2) Utilització compartida de recursos. Un sistema operatiu ha d’aconse-

guir que es comparteixin els recursos d’un ordinador entre un cert nom-

bre d’usuaris que treballen de manera simultània. La finalitat és

incrementar la disponibilitat de l’ordinador respecte als usuaris i, alhora,

maximitzar la utilització dels recursos com processadors, memòries i dis-

positius d’E/S. La importància de la utilització eficient d’aquests recursos

influeix en el cost d’utilització del sistema informàtic.

1.5.3. Recursos dels sistemes operatius. Concurrència,

comunicació, sincronització i interbloqueig de processos

Una de les tasques dels sistemes operatius és la compartició dels recursos

d’un ordinador entre usuaris que treballen de manera simultània. Les tèc-

niques de multiprogramació i els sistemes multiprocés en què es poden

executar programes de manera simultània compartint els mateixos recur-

sos 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

Els sistemes operatius són un conjunt de programes que creen la in-

terfície del maquinari amb l’usuari i que tenen dues funcions pri-

mordials, que són:

• Gestionar el maquinari: es refereix al fet d’administrar d’una

manera més eficient els recursos de la màquina.

• Facilitar el treball a l’usuari: permet una comunicació amb els

dispositius de la màquina.

Maquinari bàsic d’un ordinador

El maquinari bàsic d’un ordinador el forma el maquinari que n’és una part fonamental: la memòria, la CPU, els bussos, etc.

En un sistema de temps real el sistema dóna resposta en el mateix moment en què es demana una petició.

Pseudoparal·lelisme

Si només hi ha un únic processador que gestiona la multiprogramació, l’execució simultània de diverses activitats donarà lloc a un pseudoparal·lelisme, ja que des del punt de vista de l’usuari semblarà que hi ha una execució simultània, encara que només una activitat pot fer ús del processador i en cap cas no es podran executar en el mateix processador dos processos alhora.

El pseudoparal·lelisme és la sensació d’execució simultània d’activitats diferents en un mateix processador.

Page 44: Rev Smxm2uf1

Sistemes operatius monolloc 44 Introducció als sistemes operatius

controlar l’execució dels processos i afavorir l’accés a les mateixes dades

a fi d’evitar possibles conflictes. Aquests mecanismes es basen en algoris-

mes o eines que permeten la sincronització d’aquests processos o que afa-

voreixen la cooperació entre ells. Per a comprendre els mecanismes que

gestionen l’accés de més d’un procés a les mateixes dades, s’han de com-

prendre els conceptes de paral·lelisme, concurrència, comunicació,

sincronització i interbloqueig de processos.

Un altre aspecte que hem de considerar fa referència a la concurrència.

En un sistema multiprocessador també es poden presentar situacions de

concurrència sempre que les activitats necessitin actuar entre elles, com-

partir informació o per necessitats de funcionament.

A més de la sincronització, també hi ha una altra manera d’establir una

connexió entre els processos: la cooperació o la comunicació.

Paral·lelisme és l’execució de diverses activitats en processadors dife-

rents al mateix temps. És un concepte físic, ja que només hi pot haver

paral·lelisme quan hi ha la presència de diversos processadors.

La concurrència (sistemes concurrents i cooperatius) es produeix

quan algunes activitats s’executen simultàniament. Com que neces-

siten utilitzar els mateixos recursos s’han de sincronitzar per a ac-

tuar conjuntament.

La sincronització dels processos és absolutament necessària si volem

que una activitat impedeixi a una altra accedir a certes dades compar-

tides mentre no es compleix una condició determinada; aleshores hem

de sincronitzar les activitats amb aquesta condició. Com que el sistema

operatiu no coneix la semàntica de les activitats dels processos, el pro-

gramador és l’encarregat d’assegurar que la sincronització es duu a ter-

me d’una manera correcta. Per a ajudar en aquesta tasca, els sistemes

multiprogramats i els llenguatges de programació ofereixen una sèrie

d’eines que permeten establir la sincronització i l’intercanvi d’informa-

ció entre tots els processos concurrents i cooperatius.

En els processos concurrents, normalment cal intercanviar resul-

tats parcials, enviar informació de l’estat dels processos o intercan-

viar informació general. Els diferents sistemes han proposat

diversos mecanismes que permeten comunicar certes quantitats

d’informació entre els processos.

Condició necessària de la concurrència

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 l’existència de la multiprogramació és una condició, però no és suficient perquè hi hagi concurrència, ja que els processos es poden executar d’una manera independent.

Sincronització

La sincronització és la situació en la qual una activitat impedeix que altres puguin tenir accés a unes dades mentre les està utilitzant un altre procés.

Exemple de concurrència

Un editor de textos i un compilador es poden executar simultàniament però no són concurrents. En canvi, un procés que escriu en un fitxer i un altre procés que intenta llegir les dades escrites en el fitxer sí que són concurrents, atès que el funcionament d’un interfereix en el funcionament de l’altre.

Page 45: Rev Smxm2uf1

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 exe-

cutant i es bloquegin d’una manera indefinida. Aquest problema es pot ge-

neralitzar a qualsevol tipus de recurs compartit.

Un recurs pot ser tant un dispositiu com una certa quantitat d’informació

(per exemple, un registre d’un fitxer, etc.). En un ordinador hi pot haver

molts tipus de recursos.

Podem classificar els recursos en:

• Reutilitzables. Només els pot utilitzar un procés. Això implica que els

altres processos han d’esperar (estat bloquejat).

• Consumibles. Són els recursos que una vegada utilitzats desapareixen.

Hi ha d’haver un procés productor i un procés consumidor. Aquest és

el cas dels processos que s’envien informació per mitjà de missatges,

els quals es creen i es consumeixen.

Exemple d’utilització d’un recurs

Suposem que fem una excursió per la muntanya i ens trobem en un pont pel qual només pot passaruna persona. Si intentem passar-hi podem trobar-nos en les situacions següents:

1) Que no hi hagi altres persones que intentin passar en el mateix moment en sentit contrari. Enaquest cas, no hi haurà cap problema.

2) Que hi hagi a l’altre extrem del pont una persona amb la intenció de passar i que cap dels dos novulguem cedir el pas a l’altre. Tots dos comencem a creuar el pont, per tant, tots dos estem fentservir el mateix recurs simultàniament. El resultat és que al final xocarem i ningú més no podrà uti-litzar el pont. Quedarà ocupat indefinidament.

3) Per a evitar el cas anterior, es podria pensar a dissenyar un sistema de barreres que s’obrissinquan ningú no fa servir el pont, però que tanqués la del costat contrari quan se’n fes servir una. Po-dria succeir que en un mateix moment arribessin dues persones als extrems oposats i tanquessinel pas a l’altre extrem alhora; aleshores ningú no podrà creuar el pont i les dues persones quedaranbloquejades a l’entrada del pont (interbloqueig).

4) Si una persona dels extrems fos molt educada podria deixar passar la persona que hi ha a l’altrabanda del pont, però es podria donar el cas que quan aquest encara no ha acabat de passar entrésuna altra persona del darrere aprofitant el permís de passar i que aquesta situació es repetís inde-finidament (espera indefinida).

5) El pas pel pont podria ser regulat per un guarda que obrís el pas en un extrem o en l’altre segons eltemps que fa que les persones són a la cua d’espera. Aquesta mesura resoldria tots els problemes.

Podem definir un recurs com una entitat que s’utilitza per a dur a

terme un treball determinat en el sistema i que només el pot fer ser-

vir un únic procés en un moment determinat.

L’interbloqueig, o abraçada mortal (deadlock), es produeix quan

cada procés del conjunt espera una acció que només es pot dur a

terme en un altre procés conjunt.

Utilitzar els recursos

Perquè un procés pugui utilitzar un recurs ha d’efectuar les operacions següents:

1) Sol·licitar el recurs. Si el recurs no està disponible, el procés quedarà bloquejat fins que s’hi pugui assignar el recurs. Si s’hi assigna un recurs, el procés quedarà desbloquejat i passarà a l’estat de "preparat".

2) Utilitzar el recurs. Fer les operacions que sol·liciti el procés.

3) Alliberar el recurs. Perquè altres processos el puguin utilitzar.

Page 46: Rev Smxm2uf1

Sistemes operatius monolloc 46 Introducció als sistemes operatius

1.6. Arquitectura del sistema operatiu

L’estructura d’un sistema operatiu varia en funció de molts paràmetres;

no obstant això, pràcticament tots es poden englobar en tres components:

el nucli (kernel), les utilitats de baix nivell del sistema i la interfície

d’usuari. En la figura 8 podeu veure com mitjançant el sistema operatiu,

l’usuari pot interaccionar amb el sistema operatiu.

Figura 8. Estructura d’un sistema operatiu

1) El nucli (kernel) del sistema operatiu es considera la part bàsica. És el

programari responsable de facilitar als diferents programes l’accés segur

al maquinari de l’ordinador.

El nucli és un àrea d’execució privilegiada (supervisora o nucli) i, per tant,

està dotat d’unes proteccions fortes. Quan una rutina que s’està executant

a l’àrea d’usuari (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 d’execució d’un procés.

En qualsevol sistema en què hi ha processos que esperen opera-

cions sobre els recursos i decisions de planificació del sistema

operatiu, és possible que un determinat procés esperi indefinida-

ment el recurs volgut, mentre que d’altres reben l’atenció del sis-

tema. Aquesta situació es coneix amb el nom d’espera indefinidao mort per inanició.

L’espera indefinida és una situació en la qual un procés espera

indefinidament l’alliberament d’algun recurs que mai no li serà

concedit.

El nucli del sistema operatiu controla totes les operacions que im-

pliquen processos i representen només una petita part del codi de

tot el sistema operatiu però que s’utilitza àmpliament. És en la me-

mòria principal. És la part del sistema operatiu que es troba perma-

nentment carregada a la memòria, és a dir, és el conjunt de

processos actius propietat del sistema que poden oferir un servei

d’una manera immediata.

En un procés interactiu hi ha un diàleg entre l’usuari i el sistema informàtic.

Funcions del nucli del sistema operatiu

El nucli del sistema operatiu generalment executa les funcions següents:

• Manipulació d’interrupcions.

• Creació i destrucció de processos.

• Canvi d’estats de processos.

• Distribució (dispatcher).

• Suspensió i represa de processos.

• Sincronització de processos.

• Comunicació entre processos.

• Manipulació de blocs de control de procés.

• Suport d’activitats d’E/S.

• Suport de l’assignació i desassignació d’emmagatzematge.

• Suport del sistema d’arxius.

• Suport de mecanismes de crida/retorn al procediment.

• Suport de certes funcions estadístiques del sistema.

Page 47: Rev Smxm2uf1

Sistemes operatius monolloc 47 Introducció als sistemes operatius

Figura 9. Modes d’execució d’un procés

El nucli del sistema operatiu

El nucli del sistema operatiu Unix (anomenat kernel) és un programa escrit en quasi la seva totalitaten llenguatge C, excepte en una part corresponent a la manipulació d’interrupcions, expressada enel llenguatge assemblador del processador en què opera.

El kernel opera com un assignador de recursos per a qualsevol procés que necessiti fer ús de lesfacilitats de l’ordinador. És l’element central del sistema Unix.

El kernel té el control sobre l’ordinador, per tant, cap altre procés no el pot interrompre; només elpot cridar perquè proporcioni algun servei dels ja indicats. Un procés crida el kernel mitjançant mò-duls 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 dóna su-port a les demandes de servei.

2) La de control de dispositius: supervisa la transferència de dades entre la memòria principal i elsdispositius perifèrics.

En termes generals, cada vegada que un usuari utilitza qualsevol tecla d’un ordinador, o que s’hagide llegir o escriure informació des de les unitats magnètiques, s’interromp el processador i el nuclis’encarrega d’efectuar l’operació de transferència.

2) Les utilitats de baix nivell són un conjunt de programes que, sense for-

mar part del nucli, ajuden l’usuari en les seves tasques. En realitat, no són

més que programes que s’executen sobre el nucli. Per exemple, els progra-

mes traductors, els programes enllaçadors i els programes depuradors.

Traductors, enllaçadors i depuradors

Els programes traductors converteixen els programes escrits utilitzant algun llenguatge de progra-mació en programes en llenguatge màquina.

Els programes enllaçadors permeten crear programes executables.

Els depuradors són programes que permeten fer un seguiment dels programes informàtics per acomprovar-ne el funcionament pas a pas.

En resum podem dir que les funcions del nucli permeten l’existèn-

cia d’un ambient en què sigui possible donar servei a diversos usua-

ris i múltiples tasques d’una manera concurrent, de manera que el

processador es reparteixi entre tots ells i intenti mantenir en grau

òptim una atenció individualitzada.

El distribuïdor (dispatcher) és un component del nucli del sistema operatiu que planifica el funcionament del processador.

Crides al sistema

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

Page 48: Rev Smxm2uf1

Sistemes operatius monolloc 48 Introducció als sistemes operatius

3) La interfície d’usuari pot consistir en una interfície gràfica i/o en un in-

tèrpret d’ordres en línia (shell). La paraula shell en anglès significa ‘em-

bolcall’. Així, doncs, com el seu nom indica, l’embolcall és una coberta

externa del nucli que es comunica directament amb el maquinari.

L’intèrpret d’ordres és el programa més important de tots els programes

del sistema, ja que crea l’entorn de treball de l’usuari. Rep totes les ordres

de l’usuari i dóna el control als diferents programes del sistema o a les fun-

cions del nucli, segons les necessitats i les peticions de l’usuari.

En la figura 10 podeu veure un esquema dels diferents programes del sis-

tema operatiu.

Figura 10. Programes del sistema operatiu

Les interfícies d’usuari són tots els procediments que dóna el sistema

operatiu per a facilitar el treball entre els usuaris i el sistema. Per a fer-

ho s’utilitza un intèrpret d’ordres. La interfície que es vol definir entre

l’usuari i el sistema s’haurà de basar en un llenguatge textual o en un

llenguatge gràfic (GUI) que fixi les normes de comunicació.

Una vegada que l’usuari comença una sessió en el sistema, aquest

el rep i li indica que està preparat per a acceptar les ordres de l’usuari.

Això ho fa mitjançant un indicador (prompt), que normalment és

un símbol que és diferent segons l’intèrpret d’ordres amb què treba-

llem. Aquest indicador, que escriu un programa que està en execu-

ció constantment per cada usuari i que es coneix amb el nom

d’intèrpret d’ordres, basa el seu funcionament en un llenguatge

d’ordres amb una sintaxi determinada (per exemple, el shell de

Bourne o el shell de C d’Unix). Els intèrprets solen ser un programa

del sistema o un mòdul del nucli que interpreta un llenguatge d’or-

dres amb què l’usuari indicarà al sistema operatiu allò que vol fer.

Llenguatges textual i gràfic a les interfícies d’usuari

Els llenguatges textuals es basen en ordres escrites.

Els llenguatges gràfics es basen en la selecció d’eines gràfiques (botons, icones, etc.).

GUI és l’abreviatura anglesa d’interfície gràfica d’usuari.

Funció dels intèrprets d’ordres

Els intèrprets d’ordres tenen com a missió facilitar l’ús del sistema als usuaris. També, a més d’aquesta facilitat, els sistemes ofereixen diverses facilitats amb l’objectiu de facilitar i abreujar el treball diari dels usuaris.

Page 49: Rev Smxm2uf1

Sistemes operatius monolloc 49 Introducció als sistemes operatius

1.7. Evolució històrica. Sistemes operatius actuals

L’evolució dels sistemes operatius ha anat de manera paral·lela amb la

dels ordinadors.

1.7.1. Generacions informàtiques

Els sistemes operatius, igual que el maquinari, han sofert canvis al llarg

del temps, els quals els poden agrupar amb el nom de generacions. L’evo-

lució del maquinari ha marcat el paral·lelisme de l’evolució dels sistemes

operatius.

Tot seguit, farem un petit resum del principals fets que han influït en

l’evolució dels sistemes operatius i els relacionarem amb les diferents ge-

neracions d’ordinadors.

1) La generació zero (dècada de 1940)

Els ordinadors d’aquesta època eren de grans dimensions, difícils d’utilit-

zar, presentaven una falta de recursos i tenien uns preus molt alts. Aques-

tes màquines eren gestionades per l’usuari des d’un tauler d’endolls, en

què no hi havia sistema operatiu. L’usuari interaccionava directament

amb l’ordinador i l’únic llenguatge de programació possible era el llen-

guatge màquina. Totes les instruccions s’havien de codificar a mà.

Després, la gestió del computador es va fer des d’una consola en què

cada usuari, i d’un en un, tenia assignat un període de temps durant el

qual es convertia en propietari absolut de tot el sistema.

En aquestes màquines, només era possible la monoprogramació, és a dir,

l’execució d’un sol programa. Com que el procés d’introducció de les or-

dres era molt lent i llarg, es feia pràcticament impossible l’execució de

programes mitjans i grans en aquest entorn.

El 1942 J. P. Eckert i J. W. Muachly, de la Universitat de Pennsilvània, van

dissenyar l’electronic numerical integrator and computer (ENIAC), el

primer ordinador de propòsit general programable.

Les principals causes de l’evolució dels sistemes operatius es po-

den resumir en:

• les actualitzacions i nous tipus de maquinari;

• les demandes de nous serveis;

• la necessitat de resoldre diferents tipus d’errors: bugs, etc.

Bug

Un error (bug) és una situació que presenta algun tipus de programari que consisteix a repetir un seguit d’accions sense fi a causa d’una anàlisi incorrecta.

Generacions d’ordinadors

Les generacions d’ordinadors són èpoques en què la informàtica i els equipaments informàtics tenen característiques especials.

Llenguatge màquina

El llenguatge màquina és el llenguatge utilitzat pels ordinadors. És format per senyals binaris. Els senyals binaris són formats per dos estats: activitat i desactivat (on, off).

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

Monoprogramació

La monoprogramació és un tipus de funcionament d’alguns sistemes operatius que només pot executar un programa a la vegada. Fins que no acaba d’executar tot el programa no en pot començar un altre.

Page 50: Rev Smxm2uf1

Sistemes operatius monolloc 50 Introducció als sistemes operatius

2) La primera generació (1945-1955)

En aquesta generació continua l’absència de sistemes operatius tal com

els coneixem en l’actualitat. Els sistemes operatius van començar simple-

ment com una transició entre treballs; així, mentre un treball s’estava exe-

cutant tenia el control total de la màquina. En finalitzar la tasca, el control

era retornat al sistema operatiu, que s’encarregava de presentar els resul-

tats i començar el treball següent. Per a fer tota aquesta feina s’utilitzaven

les targetes perforades.

El 1952, Grace Murray Hooper va desenvolupar l’“A-0”, el primer compila-

dor, 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 món dels ordinadors

pel fet de ser més petits i més fiables que les vàlvules de buit, de manera

que ja es podien fabricar amb la idea de ser venuts. Eren màquines molt

cares i només eren a l’abast de grans corporacions (institucions com els

exèrcits, les universitats i els governs).

Apareixen dispositius d’entrada/sortida nous (els lectors de targetes per-

forades i les impressores) i s’inventen dispositius d’emmagatzematge

nous: les unitats de cintes magnètiques. A més, es desenvolupa el primer

programari que inclou els assembladors, els llenguatges de programació,

els carregadors, els muntadors, les llibreries de diferents tipus i rutines

estàndard d’entrada/sortida dels diferents dispositius que es podien utilit-

zar en els programes.

Assemblador, carregador i muntador

L’assemblador és un programa que tradueix el llenguatge assemblador a llenguatge màquina. Elllenguatge assemblador és un llenguatge molt proper al llenguatge màquina.

El carregador és una rutina que llegeix un programa executable i l’emmagatzema a la memòria prin-cipal abans d’executar-lo.

El muntador, també anomenat editor d’enllaç, és un programa per a crear un codi executable a par-tir d’un o més mòduls objecte. Solucionen les referències que hi ha entre ells i els assignen adrecesdefinitives.

Aquest nou entorn millora considerablement el procés de programació i

d’execució de programes respecte a l’etapa inicial.

La manera d’operar dels sistemes continuava sent poc eficaç a causa de

les diverses operacions manuals, per això s’intentava aprofitar el temps

perdut i augmentar la utilització des recursos del sistema a fi d’eliminar

els temps morts generats per les operacions manuals.

El primer objectiu va ser intentar automatitzar al màxim les operacions

mitjançant l’ús del maquinari. Per això, es va crear la figura de l’operador.

ENIAC

Dispositius d’entrada/sortida (E/S)

Els dispositius d’E/S són un tipus de maquinari amb què el mateix dispositiu pot fer operacions de lectura i escriptura de la informació (exemples: unitats de discos magnètics, etc.).

Page 51: Rev Smxm2uf1

Sistemes operatius monolloc 51 Introducció als sistemes operatius

A partir d’aquest moment el programador va deixar de tenir accés directe

a l’ordinador; el procediment de treball era el següent: els programadors

donaven als operadors els treballs que volien executar, aquests els ajunta-

ven els uns darrere dels altres a l’ordinador, en recollien els resultats i els

lliuraven als respectius programadors.

L’operador agrupava els treballs amb els recursos físics i lògics sem-

blants i els executava com si fossin un únic bloc. Per exemple, si en tots

els treballs apareixien programes escrits en un mateix llenguatge deprogramació, es reunien els programes els uns darrere dels altres, i així

s’aconseguia que carregant el compilador una sola vegada es pogués uti-

litzar molt més. D’aquesta manera, s’obtenia un estalvi de temps. Aquest

sistema s’anomena sistema per lots (batch).

Malgrat el sistema per lots, la CPU continuava estant molt temps parada.

El problema era la diferència de velocitat que hi havia entre la CPU i els

perifèrics. Per a intentar reduir-la, va aparèixer el treball fora de línia (off-

line). Mentre els programes escrits en targetes es llegien i es passaven a

cinta en una màquina, en una altra es podien anar executant altres progra-

mes que ja havien estat carregats anteriorment.

Posteriorment, es van idear altres tècniques com l’emmagatzematge a la

memòria intermèdia (buffering). Aquesta tècnica consisteix a carregar

les dades de la cinta en una memòria (buffer) i, quan és plena, es bolquen

de cop a la memòria principal. Mentre el processador treballa, es torna a

carregar la memòria intermèdia.

L’operador és un especialista en el funcionament de l’ordinador que

tenia com a missió controlar el sistema, carregar programes, obte-

nir els resultats, etc.

El sistema per lots (batch) és un conjunt de treballs que l’ordinador

executa l’un a continuació de l’altre i de manera seqüencial.

El sistema fora de línia (off-line) es basa en el fet que els disposi-

tius funcionen sense haver d’estar connectats a la CPU (per exem-

ple, les màquines perforadores de fitxes i de cintes perforades).

L’emmagatzematge a la memòria intermèdia (buffering) és una tècni-

ca en què s’utilitzen les memòries intermèdies (buffers) dels disposi-

tius per a l’intercanvi de dades entre els dispositius i la memòria

principal.

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ó són un conjunt de normes i regles que permeten donar ordres a l’ordinador. Alguns exemples de llenguatges són C, COBOL, Visual Basic, etc.

Memòria intermèdia

La memòria intermèdia (buffer) és una zona de memòria que tenen alguns dispositius per a l’intercanvi d’informació entre el dispositiu i la memòria principal.

Page 52: Rev Smxm2uf1

Sistemes operatius monolloc 52 Introducció als sistemes operatius

Una altra tècnica va ser la gestió de cues (spooling), que es va començar

a utilitzar en el moment d’aparèixer el disc magnètic amb l’ús de l’accésaleatori. Aquesta tècnica es fonamenta en el fet que la sortida d’informa-

ció d’un programa s’envia a una memòria intermèdia i, després, a un disc

magnètic en què espera poder ser tractada per una impressora o qualsevol

altre perifèric 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 s’imprimeix una altra feina.

El 1963, l’American National Standard Institute (ANSI) accepta la primera

versió del codi ASCII (American standard code for information in-

terchange) de 7 bits.

4) Tercera generació (1965-1974)

La tercera generació es fonamenta tecnològicament en els circuits in-tegrats. Els ordinadors d’aquesta època són molt més petits i ràpids. S’uti-

litzen nous mecanismes de gestió del maquinari com ara les tècniques de

les interrupcions, la protecció de memòria, etc. Paral·lelament, es

desenvolupen maquinaris nous amb els programaris corresponents; això

ha donat lloc a l’existència d’un nou entorn de treball amb les caracterís-

tiques següents:

• Perifèrics més ràpids i efectius.

• Terminals remots per a accedir a bancs de dades.

• Programari de base adaptat a l’usuari. Això permet la utilització de llen-

guatges universals pensats per a ser utilitzats en diferents tipus d’ordi-

nadors; és el que s’anomena portabilitat.

• S’estandarditzen els llenguatges d’alt nivell i n’apareixen altres de

nous, com el Basic i el Pascal.

• Una de les tècniques més innovadores és la multiprogramació.

Un sistema de gestió de cues (spool) el podem interpretar com

una cua d’arxius 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ó d’aquesta cua pot ser per la tècnica FIFO o

per prioritats, etc.

La gestió de cues (spooling) és una tècnica en què s’utilitzen els

discos durs per a emmagatzemar temporalment la informació

que ha de gestionar un dispositiu.

Accés aleatori

L’accés aleatori és una tècnica que utilitzen alguns dispositius (per exemple, els discos magnètics), mitjançant la qual poden accedir a la informació que contenen d’una manera directa.

La tècnica 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.

Circuit integrat

Portabilitat

La portabilitat és la característica d’alguns programes que els permet ser utilitzats en diferents ordinadors sense que necessitin modificacions importants.

Page 53: Rev Smxm2uf1

Sistemes operatius monolloc 53 Introducció als sistemes operatius

En la figura 11 podeu veure un esquema d’un sistema informàtic multi-

programat.

Figura 11. Esquema d’un sistema de multiprogramació

En el tractament de dades un tant per cent elevat el representen les

operacions d’entrada/sortida. És necessari millorar el procés per a acon-

seguir temps de respostes més baixos. La solució es basa en la introducció

de la programació concurrent.

Durant l’execució seqüencial dels processos se sap que la CPU i els

dispositius d’E/S són inactius en alguns moments. La manera de solucio-

nar el problema està en l’assignació d’alguna altra tasca a la CPU o als dis-

positius d’entrada/sortida quan per algun motiu estiguin inactius.

Aquesta tècnica va fer replantejar l’estructura del sistema operatiu. Així

es comença a parlar del nucli (kernel) del sistema operatiu.

La multiprogramació o programació concurrent és una manera de

treballar en què podem executar més d’un programa simultània-

ment (no en el mateix moment) amb l’objectiu d’aprofitar al màxim

els recursos.

El nucli (kernel) és format per rutines que gestionen la memòria

central, el processador, els perifèrics i altres recursos, de manera

que respon a les peticions dels dispositius d’entrada/sortida. El

nucli només entra en acció si ho demana un programa o bé un dis-

positiu.

Page 54: Rev Smxm2uf1

Sistemes operatius monolloc 54 Introducció als sistemes operatius

La nova filosofia que comporta el nucli implica nous dispositius: mecanis-

mes d’interrupció, temporització, mecanismes de protecció de la memò-

ria, etc. !

El problema de la multiprogramació és que deixa d’executar un programa

i en passa a executar un altre que estigui pendent d’execució, sempre que

el programa que s’està executant faci una operació d’entrada/sortida o bé

finalitzi. A causa d’aquest funcionament, el temps de resposta que té un

usuari que està connectat de manera interactiva, en diàleg continu amb

l’usuari, pot ser considerablement llarg.

El treball de l’ordinador mitjançant l’ús del temps compartit implica que

l’organització no es fa per treballs sinó per sessions.

5) Quarta generació (1974-1984)

Amb la utilització dels circuits integrats de diferents nivells d’integració

(LSI/VLSI), s’inicia l’era dels ordinadors personals, als quals es poden

aplicar tots els mecanismes desenvolupats fins a aquell moment, tant de

maquinari com de programari.

També apareixen els conceptes de procés distribuït i de sistemes en xar-

xa, que estan relacionats amb la interconnexió d’ordinadors entre ells per

a poder compartir recursos.

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 du-

rant un període de temps limitat, anomenat quàntum. Així, quan un

programa es deixa d’executar, allibera la CPU.

Una sessió és tot el conjunt de treballs que es fan des que un usuari

es connecta a l’ordinador fins que acaba o es desconnecta. Durant

aquest temps, es pot dur a terme una multitud d’operacions contro-

lades per un procés anomenat intèrpret d’ordres, que manté un dià-

leg entre l’usuari i el sistema operatiu.

La quarta generació d’ordinadors introdueix el concepte de sistema

operatiu en temps real, referit als sistemes que tenen un temps de

resposta curt referent a qualsevol petició.

Una interrupció és un senyal que s’envia al processador, perquè aturi el procés que estava executant.

El quàntum és el temps que té assignat de processador un programa determinat.

LSI és l’abreviatura de gran escala d’integració.

VLSI ho és de molt gran escala d’integració.

Page 55: Rev Smxm2uf1

Sistemes operatius monolloc 55 Introducció als sistemes operatius

En l’actualitat, la quantitat d’informació que s’ha de manipular augmenta

contínuament. Això implica que moltes vegades els ordinadors actuals no

tenen la capacitat per a poder gestionar aquesta gran quantitat d’informa-

ció. S’han buscat possibles solucions, i una pot ser el desenvolupament

d’ordinadors que tinguin més d’un processador i que puguin treballar con-

juntament. En aquests ordinadors, el sistema operatiu ha d’administrar

els processadors de tal manera que la càrrega i el repartiment de la feina

sigui equilibrat: és el que anomenem multiprocés.

1.7.2. Sistemes operatius actuals

La cinquena generació informàtica (1984-?) engloba les tendències actuals

i futures dels sistemes operatius i les podem resumir en els punts se-

güents:

• Paral·lelisme:

– Increment de multiprocessadors.

– Extensió de llenguatges paral·lels.

• Commutació distribuïda: l’increment de les xarxes d’ordinadors con-

nectades.

• Sistemes tolerants a fallades.

• Interfícies d’usuaris més amigables:

– Desenvolupament d’interfícies gràfiques.

– Incorporació del multimèdia en les interfícies.

– Reconeixement de la veu.

– Immersió en l’entorn: la realitat virtual 3D (tres dimensions).

Una xarxa d’ordinadors és un conjunt d’ordinadors interconnec-

tats amb la finalitat de compartir recursos. En funció de la gran-

dària, podem parlar de LAN, MAN i WAN.

Un sistema distribuït és un entorn en què diversos ordenadors o

nusos es distribueixen les tasques del sistema operatiu.

El multiprocés és una tècnica en la qual podem executar més d’una

tasca a la vegada (mateix moment) ja que hi ha més d’una CPU al

mateix ordinador.

LAN és l’abreviatura de xarxa d’àrea local. MAN, de xarxa d’àrea metropolitana, i WAN, de xarxa d’àrea estesa.

Multimèdia i realitat virtual

El multimèdia és un conjunt d’equipament informàtic que permet gestionar text, imatges, so, vídeo, etc.

La realitat virtual és una tecnologia que permet simular situacions reals.

Page 56: Rev Smxm2uf1

Sistemes operatius monolloc 56 Introducció als sistemes operatius

• Sistemes oberts: l’estandardització de sistemes per a compatibilitzar

els diferents fabricants quant a:

– Comunicacions de xarxa.

– Interfícies d’usuari ofertes.

– Aplicacions ofertes (diverses plataformes).

• Sistemes orientats a objectes: l’aplicació de tècniques d’orientació a ob-

jectes als sistemes operatius.

• Personalitats múltiples: en una mateixa màquina i en un sistema ope-

ratiu bàsic hi pot haver diferents sistemes operatius.

Els sistemes operatius continuen evolucionant. La principal tendència

quant a organització dels treballs és convertir-se en sistemes operatius

distribuïts.

No s’ha de confondre un sistema operatiu de xarxa amb un sistema ope-

ratiu distribuït. En un sistema operatiu de xarxa, els ordinadors estan in-

terconnectats per mitjà de mitjans de comunicacions: programari i

maquinari. En aquest tipus de xarxa, els usuaris saben on s’està executant

el seu treball i desant la informació. En canvi, en els sistemes operatius

distribuïts hi ha un programari que distribueix les tasques dels usuaris so-

bre una xarxa d’ordinadors i per als usuaris és transparent on es fan les

seves tasques i es desa la informació.

En el camp informàtic, hi ha i ha hagut un gran nombre de sistemes ope-

ratius. Alguns són simples adaptacions o variacions d’altres. En podem

distingir els següents:

1) Dintre dels sistemes de tipus multiusuari en podem destacar els se-

güents:

a) MVS. És un sistema basat en l’arquitectura 370 d’IBM. Al començament

de la dècada de 1980 n’apareixen les versions més potents, com la MVS/SP,

i un any després apareix la versió MVS/ESA, amb més prestacions. Hi ha

Els sistemes operatius distribuïts són dissenyats per a l’ús en grup

d’ordinadors connectats però independents que comparteixen re-

cursos. En un sistema operatiu distribuït, un procés es pot executar

en qualsevol ordinador de la xarxa per a augmentar el rendiment

d’aquest procés. En els sistemes distribuïts totes les funcions bàsi-

ques d’un sistema operatiu, com, per exemple, mantenir els siste-

mes d’arxius, garantir un comportament raonable i recuperar dades

en cas de problemes, resulten més complexes.

MVS, MV/SP, VM, VAX, OS, DOS, IBM i DEC

A continuació, teniu algunes abreviatures comunes en l’àmbit informàtic.

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.

Page 57: Rev Smxm2uf1

Sistemes operatius monolloc 57 Introducció als sistemes operatius

una varietat denominada VM, que converteix una única màquina real en

un conjunt de màquines virtuals. Dins d’aquesta màquina, l’usuari pot

executar qualsevol sistema operatiu.

b) DECVMS o VMS de DEC. Es basen en l’arquitectura de Digital i tenen

l’origen en el sistema operatiu VMS dels sistemes VAX. Pretenen que les

aplicacions puguin compartir la informació i els recursos indepen-

dentment del sistema informàtic en què s’executen.

c) Unix. És un sistema multiusuari, creat a partir del llenguatge C. És mo-

dular i admet programes de diferents fabricants. El nucli és interactiu,

l’intèrpret d’ordres es pot convertir en un llenguatge de programació, té

moltes utilitats i eines de desenvolupament. En el mercat, n’hi ha diver-

ses versions amb una certa compatibilitat entre elles: SCO Unix, Linux,

BSD, AIX, Solaris, etc.

2) Dins dels sistemes del tipus monousuari tenim:

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

d’una interfície gràfica 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 l’aparició del primer PC. Avui dia, la tendència és que

desaparegui per les limitacions que té. Hi ha diferents fabricants que co-

mercialitzen el DOS amb diferents noms. Les marques més conegudes

són les versions MS-DOS (Microsoft) i PC-DOS (IBM).

c) X-Windows. Tenen una arquitectura de 32 bits, multitasca, que permet

executar múltiples aplicacions alhora i de manera completa sempre que

les aplicacions siguin de 32 bits. Destaca per tenir un entorn gràfic molt

potent. N’hi ha diferents versions amb característiques diferents: Win-

dows 3.x, Windows 95, Windows 98, Windows NT Workstation, Windows

2000 Professional Edition, Windows 2003 Standard Edition, Windows Vis-

ta, etc.

Tots aquests sistemes operatius, ja siguin monousuari o multiusuari, han

incorporat poc o molt la interfície gràfica d’usuari (GUI), que permet una

utilització més fàcil del sistema a còpia d’elements gràfics.

3) Un altre factor que cal tenir en compte i que està relacionat amb els sis-

temes operatius actuals són les xarxes locals, algunes de les quals utilit-

zen sistemes operatius especials (Windows NT Server, Windows 2000

Server, Windows 2003 Enterprise Edition etc.) i d’altres que funcionen efi-

Altres sistemes multiusuari

Theos és un sistema multiusuari destinat a la gestió de petites i mitjanes empreses, té una gran facilitat de programació i és molt fàcil d’aprendre. L’estructura d’arxius és semblant a la del sistema DOS.

Xenix és una variant d’Unix pensada per a entorns multiusuari. Hi ha versions compatibles amb Unix System V.

Logotip de Windows

Page 58: Rev Smxm2uf1

Sistemes operatius monolloc 58 Introducció als sistemes operatius

cientment amb modificacions dels sistemes operatius comentats anterior-

ment (Unix/Xenix, OS/2 i DOS). !

En el món MVS preval la seguretat i la fiabilitat de les aplicacions, mentre

que en altres entorns es valoren més les capacitats de càlculs o la rapidesa

del desenvolupament.

En els sistemes operatius propietaris de l’entorn dels miniordinadors,

com l’OS/400, creat per a l’ordinador IBM AS/400, i el VMS de DEC, creat

per al WAX Computer, el futur que tenen està lligat al maquinari concret.

L’Unix ha estat creat i pensat per a tot tipus d’ordinadors. Això ha pro-

vocat que algunes versions hagin hagut de ser reduïdes per a poder-les

utilitzar en els PC (Minix). Avui dia, però, el desenvolupament dels mi-

croordinadors de 64 bits, amb capacitats més potents de maquinari, fan

que el seu futur sigui molt prometedor, especialment la versió Linux,

per la gratuïtat d’utilització i l’evolució contínua.

Els sistemes DOS són limitats pel fet de ser monousuari i monotasca, ex-

cepte si es combinen amb versions de l’entorn Windows 9x, ja que ofereix

la possibilitat de poder treballar en multitasca. L’aparició de les xarxes

d’àrea local (LAN) ha resolt algunes limitacions, ja que avui dia hi ha la

possibilitat de la integració entre sistemes que fa pocs anys era impensa-

ble (Unix/NetWare, Unix/Windowsx, Unix/DOS, etc.).

Durant la dècada de 1990 ha sorgit un nou entorn que és el dels sistemes

servidors/clients. Aquest concepte no es limita a la grandària dels ordina-

dors, sinó a la funció que tenen. L’aparició de les xarxes d’ordinadors per-

sonals interconnectades ha motivat l’aparició de nous equips, la funció

essencial dels quals és centralitzar determinats serveis per a oferir-los a

un conjunt d’ordinadors de la xarxa. Un servidor pot, per exemple, oferir

un disc dur a altres ordinadors i ampliar-ne la capacitat d’emmagatzemat-

ge o, fins i tot, tenir una única còpia de les aplicacions. Els sistemes ope-

ratius més utilitzats per a sistemes servidor/client són 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

fàcils d’utilitzar. Els sistemes operatius del futur seran dissenyats pel seu

fàcil ú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ó fàcil mitjançant

la seva modularitat i estandardització. A causa d’aquests principis de dis-

Cada sistema operatiu té les seves pròpies limitacions, normalment

a causa de la filosofia de funcionament o de les disponibilitats de

memòria i de recursos físics.

Sistemes propietaris i sistemes oberts

Un sistema propietari és el sistema que per a la seva utilització cal estar registrat. El sistemes oberts permeten utilitzar-los de manera lliure.

Page 59: Rev Smxm2uf1

Sistemes operatius monolloc 59 Introducció als sistemes operatius

seny, el sistema operatiu del futur no serà difícil d’implementar i

d’utilitzar.

1.8. Classificació del sistemes operatius

Podem classificar els sistemes operatius seguint els criteris següents:

1) Segons la utilització de recursos. Aquesta classificació fa referència al

nombre de programes que es volen executar alhora. Bàsicament, podem

distingir els sistemes monopogramats i els sistemes multiprogramats.

2) Segons la interactivitat. Aquesta classificació té en compte el tipus de

feina a què es destinen els sistemes. Bàsicament, podem distingir els sis-

temes de processament per lots (batch), els sistemes de temps compartit

(time sharing) i els sistemes en temps real (real time).

Els sistemes monoprogramats només admeten un programa en el

sistema i no permeten fer ús de les tècniques de multiprogramació.

El programa és carregat en memòria i s’hi queda fins que acaba de

ser executat. Durant aquest període de temps no es pot executar cap

altre programa.

Els sistemes multiprogramats o multitasca utilitzen tècniques de

multiprogramació i poden admetre un o més programes d’un o di-

versos usuaris simultàniament. Aquests sistemes els podem classi-

ficar de la manera següent:

• 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.

Els sistemes de processament per lots poden utilitzar la multipro-

gramació per a executar uns quants programes a la vegada. En el

procés per lots, cada treball efectua una sèrie de passos seqüencials

relacionats.

Els sistemes de temps compartit accepten que diversos programes

competeixin pels recursos del sistema. Això implica que la CPU és as-

signada durant un període de temps limitat, anomenat quàntum. Així,

quan un programa es deixa d’executar, allibera la CPU.

Els paquets són blocs d’informació.

Page 60: Rev Smxm2uf1

Sistemes operatius monolloc 60 Introducció als sistemes operatius

3) Segons el nombre d’usuaris. Classifiquem els sistemes en funció del

nombre d’usuaris que poden accedir a un ordinador. Podem distingir els

sistemes monousuari i els sistemes multiusuari.

4) Segons el tipus d’aplicació. Aquesta classificació es basa en el tipus d’apli-

cacions informàtiques que executarà el sistema. Bàsicament, podem distingir

els sistemes de propòsit general i els sistemes de propòsit especial.

5) Segons el nombre de processadors. Aquesta classificació es basa en la

quantitat de processadors de què disposa l’ordinador. Podem distingir els sis-

temes monoprocessadors i els sistemes multiprocessadors o multiprocés.

Els sistemes en temps real són sistemes multiprogramats i interactius

més exigents, basats en una resposta ràpida sobre els sistemes que es

volen controlar a partir de les informacions rebudes. Els sistemes que

no necessiten una resposta ràpida s’anomenen de temps diferit.

Els sistemes monousuari només permeten en un determinat mo-

ment la connexió d’un únic usuari a la vegada en el sistema. Utilitzen

tècniques de monoprogramació executant un únic programa o poden

ser sistemes multiprogramats, de manera que faciliten a l’usuari

l’execució d’uns quants programes a la vegada.

Els sistemes multiusuari utilitzen tècniques 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.

Els sistemes de propòsit general es caracteritzen per la capacitat

de poder executar qualsevol tipus d’aplicació informàtica.

Els sistemes de propòsit especial s’han dissenyat específicament

per a donar servei a determinades aplicacions informàtiques.

En els sistemes monoprocessadors l’ordinador disposa d’una úni-

ca CPU i, per tant, tots els programes s’han d’executar en la ma-

teixa CPU.

En els sistemes multiprocessadors o multiprocés l’ordinador dis-

posa de diverses CPU; això permet que un mateix treball o dife-

rents treballs s’executin en diferents CPU.

Page 61: Rev Smxm2uf1

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 sis-

temes distribuïts i els sistemes centralitzats.

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 diferència entre un programa i un

procés és que un programa és un conjunt d’ordres i un procés són instruc-

cions que s’estan executant. Un procés, a més, és format no solament per

les dades, sinó també pel valor dels registres, les variables, etc., durant

l’execució del programa.

1.9.1. Els processos

El concepte de procés és una entitat molt important per al sistema opera-

tiu. Així, doncs, tota planificació que faci el sistema operatiu haurà de do-

nar 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ó d’esdeve-

niments externs i que dóna servei a processos, i que crea, acaba i contesta

qualsevol petició de servei que facin els processos.

En els sistemes distribuïts cada processador té la seva pròpia me-

mòria local, no comparteixen rellotge. La comunicació entre els

processadors és per mitjà de línies de comunicació, busos d’alta

velocitat o línies telefòniques. Hi pot haver processadors de dife-

rents grandàries i funcions. Cada sistema situat a cada màquina

pot executar tasques diferents i específiques i d’aquesta manera

millorar el rendiment del sistema.

En els sistemes centralitzats una mateixa màquina executa totes

les tasques del sistema operatiu.

Un programa és una seqüència d’instruccions o accions definides

a priori, que poden ser executades per un processador.

Un procés és una seqüència d’accions derivades de l’execució

d’una sèrie d’instruccions. Això implica que un procés pot reque-

rir l’execució d’un o diversos programes; i que un programa pot

formar part de més d’un procés.

Bus

Els busos són línies de comunicació entre els components principals de l’ordinador.

N’hi ha de diferents tipus:

• Bus de control. Són línies de comunicació per on circulen senyals de control.

• Bus de dades. Són línies de comunicació per on circulen les dades.

• Bus del sistema. Són línies de comunicació entre el processador, la memòria i els perifèrics.

Els esdeveniments són situacions o fets que succeeixen en moments determinats.

Algorisme de planificació

Un procés es duu a terme per l’acció del processador que executa el programa associat. És a dir, un processador executa un procés, o un procés s’executa en un processador.

Un procés és una activitat d’un 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 procés i donar servei a un altre diferent.

Page 62: Rev Smxm2uf1

Sistemes operatius monolloc 62 Introducció als sistemes operatius

Moltes vegades les tasques que s’han de dur a terme no han de tenir ne-

cessàriament les mateixes exigències quant a temps i disponibilitat de re-

cursos, ja que en molts casos hi ha processos que necessiten una atenció

immediata a algun esdeveniment que es produeixi. D’altres, en canvi, des-

envolupen la seva feina lentament i sense cap urgència i es poden “apar-

car” en determinats moments en benefici d’altres que sí que necessiten

immediatament aquests recursos.

Classificació de les prioritats

Podem classificar les prioritats de la manera següent:

1) Prioritats assignades pel sistema operatiu. El sistema assigna prioritats als processos en el mo-ment de començar l’execució.

2) Prioritats assignades pel propietari. L’usuari assigna al procés la prioritat amb què s’ha d’exe-

cutar.

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 procés. Per a fer-ho, disposen de certes funcions, que faciliten la mani-

pulació del sistema operatiu mitjançant crides al sistema o des de l’intèr-

pret d’ordres.

Les operacions més comunes són les següents:

1) Crear és una tècnica que permet crear processos i en la qual, en alguns

casos, és necessari passar arguments (el nom, la prioritat del procés, l’as-

signació de recursos, etc.). Un procés pot crear un nou procés; en aquest

cas, el procés creador s’anomena procés pare i el procés creat procés fill i

s’obté una estructura jeràrquica de processos. La creació d’un procés pot

ser de dues maneres:

a) Jeràrquica. Cada procés que es crea és fill del procés creador i hereta

l’entorn d’execució del pare, de manera que es fixa un arbre de processos.

El primer procés executat per un usuari serà fill del procés intèrpret d’or-

dres amb el qual interactua. Aquest procés serà el que crea la resta de sub-

processos o processos fills.

b) No jeràrquica. Cada procés creat per un altre s’executa independent-

ment del creador, amb un entorn diferent.

Alguns processos necessiten accedir al processador més vegades

que d’altres. Això es fa per mitjà de les prioritats.

Un algorisme és la seqüència lògica de les accions que cal desenvolupar per a resoldre un problema determinat.

Les prioritats són algorismes que assignen un ordre de preferència determinat en la utilització del processador.

Page 63: Rev Smxm2uf1

Sistemes operatius monolloc 63 Introducció als sistemes operatius

2) Destruir un procés elimina un procés del sistema operatiu, és a dir, des-

trueix el seu bloc de control de procés (PCB), retorna els seus recursos al sis-

tema i l’elimina de totes les llistes o taules del sistema. En el cas de processos

jeràrquics, hi pot haver problemes en els processos fills, ja que poden quedar

destruïts en funció del tipus de disseny que tingui el sistema operatiu.

3) Canviar la prioritat d’un procés.

4) Adormir o bloquejar l’execució d’un procés és una tècnica mitjançant

la qual un procés passa a l’estat de bloquejat fins que no ha passat un

temps determinat.

5) Despertar un procés és una manera artificial de desbloquejar-lo que

s’utilitza per a “despertar processos adormits”.

6) Suspendre un procés és una operació d’alta prioritat, ja que normalment

només es farà en determinades ocasions i sempre amb certa urgència. S’uti-

litza en moments de mal funcionament del sistema, sobrecàrrega, etc.

7) Continuar un procés és activar un procés suspès.

1.9.3. Tipus de processos

En funció de la utilització, els processos es poden classificar en els tipus

següents:

• Reutilitzables. Són processos en què es poden canviar les dades que es

fan servir. En tornar-se a executar, necessiten començar des de l’estat

inicial i processar les dades noves. Aquest és el cas dels programes que

normalment tenim els usuaris.

• Reentrants. Són 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 com-

partits per alguns usuaris a la vegada.

Altres classificacions del processos

Una altra classificació dels processos és segons la capacitat que tenen d’accedir al processador ia la resta de recursos:

1) Apropiatius. Els processos que tenen assignat un recurs no permeten que altres processos pu-guin accedir a aquests recursos fins que s’hagi acabat d’utilitzar-los.

2) No apropiatius. Permeten a altres processos accedir als recursos que estan utilitzant.

També podem classificar els processos en funció de la forma d’execució:

1) Residents. Són a la memòria tot el temps que dura l’execució.

El bloc de control de procés

El bloc de control de procés (PCB) és una taula en la qual es desa informació sobre cada procés. La informació desada de cada procés pot ser el número del procés, l’estat del procés, la prioritat, els recursos que té assignats el procés, els privilegis, etc.

Page 64: Rev Smxm2uf1

Sistemes operatius monolloc 64 Introducció als sistemes operatius

2) Intercanviables. Poden ser portats de la memòria principal al disc, mentre són bloquejats. Ales-hores, la memòria alliberada pot ser utilitzada per altres processos que en aquells moments la ne-cessiten.

1.9.4. Estats dels processos

Els blocs de control de processos (PCB) s’emmagatzemen en cues, cadas-

cuna de les quals representa un estat particular del procés. Els estats dels

processos són interns del sistema operatiu. L’usuari sempre veurà el seu

procés en execució independentment de l’estat en què es trobi interna-

ment el procés en execució.

Els estats dels processos es poden dividir en:

1) Actius. Són els estats en què competeixen per a utilitzar el processador

o estan en condicions de poder-ho fer. Es poden trobar en les situacions

següents:

a) Execució. Estat en què es troba un procés quan té el control del proces-

sador.

b) Preparat. Estat dels processos que estan en condicions de ser execu-

tats, però no s’executen per alguna causa (per exemple, per haver entrat

en la cua quan hi havia un altre procés en execució).

c) Bloquejat. Estat dels processos que no es poden executar, perquè espe-

ren la utilització d’algun recurs que no està disponible en aquest moment

(recursos d’E/S).

2) Inactius. Són els estats en què se situen els processos que no poden

competir pel processador, però que ho poden tornar a fer més endavant,

per mitjà de certes operacions. En aquests estats, es manté el bloc de con-

trol del procés aparcat fins que torni a ser activat. Es tracta de processos

que no han acabat el seu treball per causes diverses (per exemple, per ava-

ria en un dispositiu d’entrada/sortida). Els estats en què es poden trobar

són els següents:

a) Suspès bloquejat. Procés que ha estat suspès mentre esperava un esde-

veniment i les causes del bloqueig no han acabat.

b) Suspès preparat. Procés que ha estat suspès, sense que hi hagi una cau-

sa per la qual estigui bloquejat.

L’estat d’un procés el podem definir com una descripció de la seva

activitat en un moment concret.

Page 65: Rev Smxm2uf1

Sistemes operatius monolloc 65 Introducció als sistemes operatius

Els canvis d’estat

Podem distingir els canvis d’estat següents:

1) Començar l’execució. Tot procés comença en el moment en què es dóna l’ordre d’execució delprograma i el procés es posa a la cua deIs processos preparats.

2) Pas a l’estat d’execució. És el moment en què el processador es troba inactiu i en la cua deprocessos preparats hi ha algun procés que està en espera per a ser executat.

3) Pas a l’estat bloquejat. Un procés que està en execució i que sol·licita una operació a un dis-positiu d’entrada/sortida passarà de l’estat d’execució a l’estat de bloquejat. En aquest moment, elprimer procés de la cua de processos preparats passarà al processador per a ser executat. Tambées pot passar a l’estat de bloquejat en el cas d’un procés que estava suspès bloquejat i del qual handesaparegut les causes que provocaven aquest estat.

4) Pas a l’estat preparat. Pot tenir lloc en els casos següents:

a) Final d’una operació d’entrada/sortida.b) A partir del moment en què es dóna l’ordre d’execució d’un programa.c) Si es produeix una interrupció que obliga el sistema a executar un altre procés, el que està enexecució passa a la cua dels processos preparats.d) Un procés que estava suspès preparat passa a l’estat de preparat.

5) Pas a suspès bloquejat. Si un procés estava bloquejat i el sistema operatiu rep l’ordre de sus-pendre’l, el passarà a la cua dels processos suspesos bloquejats.

6) Pas a suspès preparat. Si un procés que és a la cua dels processos preparats rep l’ordre desuspendre’l, passarà a la cua dels processos suspesos preparats.

En la figura 12 podeu veure un diagrama amb les transicions d’estats d’un

procés.

Figura 12. Diagrama de transicions d’estats

Un procés al llarg de la seva vida pot canviar diverses vegades d’estat.

Aquests canvis d’estat es coneixen amb el nom de transicions d’estats.

L’assignació de la CPU al primer procés de la llista de preparats

s’anomena distribució i és executada per una entitat del sistema

operatiu anomenada distribuïdor (dispatcher).

Page 66: Rev Smxm2uf1

Sistemes operatius monolloc 66 Introducció als sistemes operatius

1.9.5. Planificació del processador

S’ha de tenir present el problema de quan assignar un processador

(CPU) i a quin procés. D’alguna manera, cal que el processador plani-

fiqui la feina de la mateixa manera que ho fem amb les nostres tasques

diàries.

Diferenciem tres tipus de planificació (figura 13):

1) Planificació a llarg termini (planificació de treballs). Decideix quin se-

rà el proper treball que s’executarà. En el cas de sistemes de temps com-

partit té com a missió carregar els programes en memòria. Aquest nivell

és l’encarregat de crear els processos.

Figura 13. Nivells de planificació

La planificació del processador (scheduling) és el conjunt de

polítiques i mecanismes que implementa el sistema operatiu per

a decidir quin procés ha de fer ús del processador en cada mo-

ment. El seu objectiu general és donar un bon servei a tots els

processos que competeixen en un moment determinat pels re-

cursos del processador.

Scheduling és el terme anglès que correspon a la planificació dels treballs del processador.

Page 67: Rev Smxm2uf1

Sistemes operatius monolloc 67 Introducció als sistemes operatius

2) Planificació a mitjà termini. Decideix si el procés que està en execu-

ció s’ha de treure de la memòria temporalment i col·locar-lo en un dis-

positiu secundari, com el disc magnètic, per a reduir el grau de

multiprogramació. Posteriorment, quan el sistema es trobi més descar-

regat, tornarà aquest procés a la memòria i a l’estat d’execució. Aques-

ta tècnica es coneix amb el nom de swapping out i el procés invers

s’anomena swapping in. S’aplica en sistemes de temps compartit i en

aquells en què s’utilitza memòria virtual. També es fa servir quan un

procés està bloquejat i l’hem de treure per a alliberar memòria. La pla-

nificació a mitjà termini és la responsable de gestionar les transicions

de processos entre la memòria principal i la secundària, i actua inten-

tant maximitzar la utilització dels recursos.

3) Planificació a curt termini (planificació del processador). És l’en-

carregat de decidir com i quan un procés que és a la cua de processos

que s’han d’executar tindrà accés al processador. És a dir, té la respon-

sabilitat de fer les funcions de la multiprogramació. Resideix en memò-

ria i s’executa amb molta freqüència, per això té una execució molt

ràpida.

La missió del distribuïdor consisteix a assignar la CPU a un dels processos

executables del sistema, per això segueix uns algorismes determinats.

Perquè el distribuïdor commuti el processador entre dos processos és ne-

cessari fer un canvi de procés.

Per a la planificació, són necessaris uns criteris en l’execució dels algoris-

mes dels processos. En podem destacar els següents:

1) Temps de resposta, que indica la velocitat amb què l’ordinador dóna

resposta a una petició.

2) Temps de servei, que és el temps que triguen els sistemes a servir

l’ordre demanada (inclosos el temps d’espera en la cua dels processos

preparats, el temps d’execució en el processador, el temps de càrrega

del programa en memòria i el temps utilitzat en les operacions d’entra-

da/sortida).

3) Temps d’execució, que coincideix amb el temps de servei menys el

temps d’espera en la cua dels processos; és a dir, és el temps que ne-

Quan més d’un procés és executable des del punt de vista lògic, el

sistema operatiu ha de decidir quin d’ells s’ha d’executar en primer

lloc. El planificador és la part del sistema operatiu que decideix i

l’algorisme de planificació és l’utilitzat.

Memòria virtual

La memòria virtual és una tècnica de gestió de memòria en la qual no és necessari tenir en un mateix moment tot el programa en la memòria principal per a poder-se executar.

Canvi de procés

Un canvi de procés és la situació en la qual el sistema operatiu executa tota una sèrie d’accions per a canviar el procés que hi ha en processador.

Un bon algorisme de planificació

Els criteris respecte d’un bon algorisme de planificació són:

• Equitat. Garantir que cada procés obtingui la proporció justa de la CPU.

• Eficàcia. 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.

Page 68: Rev Smxm2uf1

Sistemes operatius monolloc 68 Introducció als sistemes operatius

cessitaria ser en el processador per a ser executat si fos l’únic procés

en el sistema.

4) Temps del processador, que és el temps en què un procés està utilit-

zant el processador sense comptar el temps que es troba bloquejat per una

operació d’entrada/ sortida.

5) Temps d’espera, que indica el temps en què els processos són actius pe-

rò sense ser executats.

6) Eficiència, que indica la relació existent entre el temps de processador

de cada procés i l’ocupació total del processador.

7) Rendiment, que indica el nombre de treballs o processos executats per

unitat de temps. Normalment, sempre ha de ser el màxim possible.

El planificador del processador té com a missió assignar el processador als

processos que són a la cua. Aquesta cua és alimentada des de dos punts di-

ferents:

1) Cada vegada que un usuari inicia l’execució d’un programa, el planifica-

dor a llarg termini rep l’ordre d’execució, crea el procés i el passa al

planificador a curt termini, que el posa a la cua dels processos preparats.

2) Quan un procés deixa d’estar en l’estat d’execució i no hi ha causes

per al bloqueig o deixa d’estar bloquejat, passa a la cua dels processos

preparats.

En els sistemes operatius comercials hi ha diferents polítiques de planifi-

cació i en comentarem algunes. Cal recordar que no hi ha una política per-

fecta. Alguns dels objectius i criteris utilitzats poden ser contradictoris, de

manera que si afavorim un tipus de procés, normalment perjudiquem al-

Per a avaluar el comportament de les diferents polítiques de plani-

ficació considerem t com el temps que un procés Z necessita estar

en execució per a fer el seu treball; ti com l’instant en què l’usuari

dóna l’ordre d’execució del procés, i tf com l’instant en què el procés

acaba l’execució. En funció d’aquestes dades tenim les mesures se-

güents per a cada procés:

• Temps de servei (T): T = tf – ti.

• Temps d’espera (E): E = T – t.

• Índex de servei (I): I = t/T.

Índex de servei

Si només tenim un procés, aleshores quan I (índex de servei) sigui proper a 1, el processador és utilitzat per a aquest procés. Quan I tingui un valor proper a 0, el processador serà limitat per les operacions d’entrada/sortida. En els casos de més d’un procés s’estableixen les mateixes mesures, però amb valors mitjans, obtinguts en considerar el conjunt de processos.

Page 69: Rev Smxm2uf1

Sistemes operatius monolloc 69 Introducció als sistemes operatius

tres processos. Per a l’estudi de les diferents polítiques ens basarem en la

taula 3, en què se simula la situació d’un grup de processos existents en el

sistema.

Taula 3. Dades d’un grup de processos

Els següents són alguns algorismes de planificació típica que utilitza el

planificador a curt termini del sistema operatiu de les dades de la taula 3:

1) L’algorisme d’ordre d’arribada.

2) L’algorisme de repartiment de temps.

3) L’algorisme del procés següent.

4) L’algorisme del procés de temps restant més curt.

Algorisme d’ordre d’arribada

En la figura 14 podeu veure un esquema de l’algorisme FCFS.

Figura 14. Diagrama FCFS

Nom del procés Moment d’arribada Temps d’execució

A 0 2

B 2 3

C 1 1

D 4 4

E 5 2

Els algorismes de planificació a curt termini assignen el processa-

dor a un dels processos que es troba en l’estat preparat.

En l’algorisme d’ordre d’arribada o algorisme FCFS (first come, first

served), el processador executa cada procés fins que acaba. Fa la fei-

na de cada procés segons l’ordre d’arribada. El primer procés de la

cua dels processos preparats serà el primer que executarà el pro-

cessador.

Page 70: Rev Smxm2uf1

Sistemes operatius monolloc 70 Introducció als sistemes operatius

En tots els exemples de planificació del processador cal haver dissenyat

prèviament el diagrama de temps de l’algorisme de planificació del pro-

cessador i, a continuació, emplenar les columnes de la taula de temps cor-

responents a: temps d’acabament, T, E, I i mitjana.

A continuació, teniu una explicació detallada del funcionament de l’algo-

risme FCFS.

Exemple d’algorisme FCFS

A partir de les dades de la taula 3, volem determinar el diagrama de temps i la taula de planificaciódel processador utilitzant l’algorisme de planificació del processador FCFS. El procediment és el se-güent:

1) El primer procés que agafa el processador és el procés A, ja que és el que arriba el primer t = 0.Hi és 3 unitats de temps, ja que el seu temps d’execució és t = 3 i acaba en t = 3.

2) En aquest moment, arriba el procés B, t = 3, i comença l’execució del procés B. En el temps t =4, arriba el procés C, però com que el processador és ocupat pel procés B, s’espera a la cua delprocessos preparats. El procés B es continua executant fins a t = 5, ja que li falta una unitat detemps pel que fa a utilització de processador.

3) En aquest moment el processador agafa el procés C, que és el primer que hi ha a la cua delsprocessos preparats, i l’executa fins a t = 6; en aquest moment, arriba el procés D i es posa ala cua dels processos preparats. El procés C es continua executant i en t = 7 arriba el procésE i es posa a la cua dels processos preparats al darrere del procés D. El procés C acaba l’exe-cució en t = 8.

4) En aquest moment entra el procés D i s’executa fins a t = 12. Seguidament, entra el procés E is’executa fins a t = 14.

En la figura 15, podeu veure el resultat del diagrama de temps i en la taula 4 els càlculs de la taulade temps utilitzant l’algorisme FCFS.

Figura 15. Diagrama de temps dels processos amb FCFS

La política de l’algorisme FCFS és que el processador executa cada

procés fins que acaba el seu temps d’execució.

Page 71: Rev Smxm2uf1

Sistemes operatius monolloc 71 Introducció als sistemes operatius

Taula 4. Càlcul de la taula de temps d’FCFS

Algorisme de repartiment de temps

L’assignació dura fins que es produeix algun dels fets següents:

• El procés està esperant una operació d’entrada/sortida.

• El procés ja ha estat un quàntum de temps en execució.

Exemple d’algorisme RR

En tots els exemples explicats se suposen les condicions següents:

1) Si un procés acaba durant el seu quàntum, s’assigna immediatament el processador al primerprocés de la cua dels processadors preparats, i s’hi dóna el quàntum complet.

2) En crear-se un procés passa al final de la cua dels processos preparats.

3) Si un procés comença la seva execució (creació) en el mateix moment que un quàntum acaba,se suposa que aquest procés ha arribat a la cua dels processos preparats abans de l’acabamentdel quàntum indicat.

A partir de les dades de la taula 3, volem determinar el diagrama de temps i la taula de planificaciódel processador utilitzant l’algorisme de planificació del processador RR i un q = 2. El procedimentés el següent:

1) El primer procés que agafa el processador és el procés A, ja que és el que arriba el primer, t = 0.Hi és 2 unitats de temps, t = 2, ja que és el seu quàntum de temps. Com que no hi ha cap procésen la cua dels processos preparats continua l’execució del procés A fins a t = 3 que és quan acaba.En aquest moment, arriba el procés B, t = 3, i comença l’execució del procés B.

2) En el temps t = 4 arriba el procés C, però com que el processador és ocupat pel procés B, s’es-pera a la cua del processos preparats. El procés B es continua executant fins a t = 5, ja que li faltauna unitat de temps quant a utilització de processador. En aquest moment, el processador agafa el

Algorisme FCFS

Nom del procés

Moment d’arribada (ti)

Temps d’execució (t)

Temps d’acabament (tf)

T E I

A 0 2 3 3 1 0,66

B 2 3 5 3 0 1,00

C 1 1 8 7 6 0,14

D 4 4 12 8 4 0,50

E 5 2 14 9 7 0,22

Mitjana 6 3,6 0,50

L’algorisme de repartiment de temps o algorisme RR (Round ro-

bin) consisteix a assignar a cada procés en execució un determinat

temps d’execució anomenat quàntum (q), passat el qual, si el pro-

cés no ha acabat, es retorna a la cua dels processos preparats i s’as-

signa el processador al procés de la cua de processos preparats

seguint l’ordre d’arribada.

Quàntum

El quàntum (q) mesura el temps que fixa la durada en què un procés és en el processador d’una manera continuada.

Page 72: Rev Smxm2uf1

Sistemes operatius monolloc 72 Introducció als sistemes operatius

procés C, que és el primer que hi ha a la cua dels processos preparats, i l’executa fins a t = 6; enaquest moment arriba el procés D i es posa a la cua dels processos preparats. El procés C es con-tinua executant fins a t = 7 (el quàntum és 2) i en t = 7 arriba el procés E i es posa a la cua delsprocessos preparats darrere del procés D i el procés C es posa darrere del procés E, ja que ha aca-bat el seu quàntum de temps.

3) Entra el procés D amb t = 7 i s’executa durant 2 unitats de temps, t = 9. El procés D es posa a lacua de C i entra el procés E amb t = 9 i acaba la seva execució en t = 11. En aquest moment, entrael procés C amb t = 11 i s’executa fins a t = 12. Seguidament, entra el procés D en t = 12 i s’executafins a t = 14.

En la figura 16, podeu veure el resultat del diagrama de temps i en la taula 5 els càlculs de la taulade temps utilitzant l’algorisme RR.

Figura 16. Diagrama de temps dels processos amb RR (q = 2)

Taula 5. Càlcul de la taula de temps de l’RR per a un quàntum q = 2

Algorisme del procés següent

Algorisme RR

Nom del procés

Moment d’arribada (ti)

Temps d’execució (t)

Temps d’acabament (tf)

T E I

A 0 2 3 3 1 0,66

B 2 3 5 3 0 1,00

C 1 1 12 11 10 0,09

D 4 4 14 10 6 0,40

E 5 2 11 6 4 0,33

Mitjana 6,6 4,2 0,49

La política seguida en algorisme del procés següent o algorisme SJF

(shortest job first) es basa a agafar de la cua dels processos prepa-

rats el que necessita menys temps d’execució per a fer la feina. Per

a això, cal saber el temps de cada procés. Aquesta informació no és

fàcil d’obtenir, però l’usuari la pot aconseguir a partir de dades

estadístiques de processos anteriors.

Page 73: Rev Smxm2uf1

Sistemes operatius monolloc 73 Introducció als sistemes operatius

Exemple d’algorisme SJF

A partir de les dades de la taula 3, volem determinar el diagrama de temps i la taula de planificaciódel processador utilitzant l’algorisme de planificació del processador SJF. El procediment és el se-

güent:

1) El primer procés que agafa el processador és el procés A, ja que és el que arriba el primer, t = 0.

Hi és 3 unitats de temps, ja que el seu temps d’execució és t = 3 i acaba en t = 3.

2) En aquest moment, arriba el procés B, t = 3, i comença l’execució del procés B. En el temps t =4 arriba el procés C, però com que el processador és ocupat pel procés B, s’espera a la cua delprocessos preparats. El procés B es continua executant fins a t = 5, ja que li falta una unitat detemps pel que fa a utilització de processador.

3) En aquest moment, el processador agafa el procés C, que és el primer que hi ha a la cuadels processos preparats, i l’executa fins a t = 6; en aquest moment, arriba el procés D i es posaa la cua dels processos preparats. El procés C es continua executant i en t = 7 arriba el procés

E i es posa a la cua dels processos preparats darrere del procés D. El procés C acaba la sevaexecució en el t = 8.

4) En aquest moment entra el procés E que té menys temps d’execució que el procés D i s’executafins a t = 10.

5) Seguidament, entra el procés D amb t = 10 i s’executa fins a t = 14.

En la figura 17, podeu veure el resultat del diagrama de temps i en la taula 6 els càlculs de la taula

de temps.

Figura 17. Diagrama de temps dels processos amb l’algorisme SJF

Taula 6. Càlcul de la taula de temps amb l’algorisme SJF

Algorisme SJF

Nom del

procés

Moment d’arribada (ti)

Temps d’execució (t)

Temps d’acabament (tf)

T E I

A 0 2 3 3 1 0,66

B 2 3 5 3 0 1,00

C 1 1 8 7 6 0,14

D 4 4 14 10 6 0,40

E 5 2 10 5 3 0,40

Mitjana 5,6 3,2 0,52

Page 74: Rev Smxm2uf1

Sistemes operatius monolloc 74 Introducció als sistemes operatius

L’algorisme del procés de temps restant més curt

Exemple d’algorisme SRT

A partir de les dades de la taula 3, volem determinar el diagrama de temps i la taula de planificaciódel processador utilitzant l’algorisme de planificació del processador SRT. El procediment és el se-güent:

1) El primer procés que agafa el processador és el procés A, ja que és el que arriba el primer, t = 0.Hi és 3 unitats de temps, ja que el seu temps d’execució és t = 3 i acaba en t = 3.

2) En aquest moment, arriba el procés B, t = 3, i comença la seva execució. En el temps t = 4 arribael procés C, però com que el procés C té un temps d’execució 3 i el B té un temps pendent d’exe-cució d’1 unitat de temps, el processador executa el procés B i el procés C va a la cua dels proces-sos preparats. En el temps t = 5, acaba l’execució del procés B.

3) En aquest moment, el processador agafa el procés C, que és el primer que hi ha a la cuadels processos preparats, i l’executa fins a t = 6; en aquest moment, arriba el procés D. El pro-cés C té pendent un temps d’execució de 2 unitats de temps i el procés D té un temps d’execu-ció de 4 unitats de temps. Es continua executant el procés C i el procés D es posa a la cua delsprocessos preparats. El procés C es continua executant i en t = 7 arriba el procés E i es posaa la cua dels processos preparats darrere del procés D. El procés C té pendent 1 unitat detemps d’execució, el procés D té pendents 4 unitats de temps d’execució i el procés E té pen-dents 2 unitats de temps d’execució. El procés C es continua executant i s’acaba la seva exe-cució en t = 8. En aquest moment, tenim a la cua els processos següents: el procés D amb untemps pendent d’execució de 4 unitats de temps i el procés E amb 2 unitats de temps pendentsd’execució.

4) Entra el procés E que té menys temps d’execució que el procés D i s’executa fins a t = 10.

5) Seguidament, entra el procés D amb t = 10 i s’executa fins a t = 14.

En la figura 18, podeu veure el resultat del diagrama de temps i en la taula 7 els càlculs de la taulade temps.

Figura 18. Diagrama de temps dels processos amb SRT

L’algorisme del procés de temps restant més curt o algorisme

SRT (shortest remaining time) fa el mateix que l’algorisme SJF,

però si entra a la cua dels processos preparats un procés de

temps més curt que el que s’està executant, el treu del processa-

dor i n’ocupa el lloc.

Page 75: Rev Smxm2uf1

Sistemes operatius monolloc 75 Introducció als sistemes operatius

Taula 7. Càlcul de la taula de temps de SRT

1.9.6. Algorismes de prioritats

Els planificadors que utilitzen la política de les prioritats assignen una prio-

ritat a cada procés, de manera que el processador s’assigna el procés de

màxima prioritat. Les prioritats es poden assignar d’una manera interna

o d’una manera externa. En el primer cas, la prioritat la fixa el sistema

mateix, a partir d’unes informacions determinades (temps d’execució, ne-

cessitats de recursos, etc.). En el segon cas, la prioritat és fixada per l’ad-

ministrador del sistema.

1.10. Gestió de la memòria

En l’estudi de la gestió de la memòria és important tenir presents les possi-

bles alternatives i variants a l’hora d’organitzar i administrar l’espai d’adreces

d’un sistema. Per a això, s’han de considerar conceptes generals, com ara el

tipus de gestió bàsic, el dels sistemes de monoprogramació que gairebé no ne-

cessiten cap tipus d’organització. La irrupció dels sistemes multiprogramats

fa necessari prendre decisions sobre aspectes tan diversos com quant espai

es dedica a cada procés, de quina manera se li assigna, en quin lloc s’ubica,

durant quant de temps roman en memòria, què passa si no hi ha prou espai

o com es protegeix davant accessos incorrectes. Tots aquests factors seran va-

lorats de primer per tècniques d’assignació contigua i per mètodes d’assigna-

ció no contigua (paginació, segmentació i segmentació paginada).

1.10.1. Conceptes generals del gestor de memòria

Perquè un procés es pugui executar, cal que estigui ubicat a la memòria

principal de l’ordinador. Una part del sistema operatiu s’encarregarà de

gestionar la memòria principal, de manera que els processos puguin resi-

dir en la memòria sense conflictes.

Algorisme SRT

Nom del

procés

Moment d’arribada

(ti)

Temps d’execució

(t)

Temps d’acabament

(tf)T E I

A 0 2 3 3 1 0,66

B 2 3 5 3 0 1,00

C 1 1 8 7 6 0,14

D 4 4 14 10 6 0,40

E 5 2 10 5 3 0,40

Mitjana 5,6 3,2 0,52

Tasques per a la gestió de la memòria

La gestió de la memòria implica, entre altres tasques, les següents:

• Portar un registre de les zones que queden lliures (és a dir, que no són utilitzades per cap procés) 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 d’un procés, s’ubiquen en la memòria principal. En aquests sistemes, molt sovint s’ha de passar una part, o la totalitat, del codi i dades d’un procés, de memòria a disc, o viceversa; el sistema operatiu és el responsable d’aquesta tasca.

Page 76: Rev Smxm2uf1

Sistemes operatius monolloc 76 Introducció als sistemes operatius

Des del moment en què diversos processos han de compartir la memòria

de l’ordinador apareix el problema de la protecció. En general, es pretén

que un procés no pugui modificar les adreces de memòria en què es troba.

Això és així, ja que en les adreces de memòria on no és ubicat el procés,

poden residir altres processos, o codi o estructures de dades del sistema

operatiu. Alguns sistemes ni permeten que un procés pugui llegir les adre-

ces de memòria en les quals no resideix; amb això s’aconsegueix privacitat

sobre el codi i les dades dels processos.

Hi ha diverses maneres de gestionar la memòria i aquesta gestió depèn de

la màquina virtual que s’utilitzi i del maquinari que la formi. Els sistemes

actuals normalment utilitzen emmagatzematge virtual.

Els programes i les dades necessiten ser a la memòria principal per a ser

executats, o per a poder ser referenciats. Els programes o les dades que no

es necessiten d’immediat es poden desar en la memòria secundària fins

que es necessitin i, en aquest moment, es transfereixen a la memòria

principal per a ser executats o referenciats.

Els suports de memòria secundària, com les cintes magnètiques o els

discos, en general són més cars que la memòria principal, i la seva ca-

pacitat és molt més gran. Normalment, és més ràpid l’accés a la memò-

ria principal que la secundària. En els sistemes amb diversos nivells de

memòria –jerarquia de la memòria– (figura 19), hi ha moltes transfe-

rències de programes i de dades entre els diferents nivells. Aquestes

transferències consumeixen recursos del sistema, com, per exemple,

temps de la CPU, etc.

Figura 19. Jerarquia de la memòria

La memòria té dues limitacions: la primera és de caràcter físic(quantitat de memòria comprada) i la segona és imposada per l’ar-quitectura de l’ordinador i del sistema operatiu.

Nivells de memòria o jerarquia de la memòria

En la memòria podem diferenciar els nivells següents:

1) Els registres.

2) La memòria cau.

3) La memòria principal.

4) La memòria secundària.

Page 77: Rev Smxm2uf1

Sistemes operatius monolloc 77 Introducció als sistemes operatius

1.10.2. La gestió de la memòria en sistemes monoprogramats

Seguidament, comentarem com gestionen la memòria els sistemes opera-

tius monoprogramats (figura 20):

1) Memòria dedicada. El programador accedeix directament al maquinari

i gestiona la memòria a la seva manera. Això obliga a tenir un gran conei-

xement del maquinari. No hi ha sistema operatiu i, per tant, tampoc no hi

ha gestor de memòria.

2) Divisió de la memòria. La introducció dels sistemes operatius per a

utilitzar millor el maquinari va obligar a dividir la memòria en dues zones:

l’una que pogués fer servir l’usuari i l’altra reservada a la part resident del

sistema operatiu. El sistema operatiu, entre altres funcions, s’encarrega

de gestionar la memòria. El sistema operatiu ocuparà la part baixa de la

memòria RAM, o la part alta de la memòria ROM (vegeu la figura 20). El

PC d’IBM ubica part del sistema operatiu en RAM i els gestors de disposi-

tius en ROM; aquesta última part s’anomena BIOS (basic input/out-

put system, ‘sistema bàsic d’E/S’).

Figura 20. Tres formes d’organització de la memòria, amb un sistema operatiu i un procés d’usuari

En els sistemes monoprogramats, només hi ha un procés d’usuari

que gaudeix de tots els recursos de l’ordinador. Això simplifica nota-

blement la gestió de la memòria, ja que està sol i la memòria ha de

ser compartida pels programes del sistema operatiu, i per l’únic pro-

cés d’usuari existent.

Una adreça absoluta de memòria és una adreça física (és a dir, una

adreça real) de la memòria. En contraposició, hi ha les adreces relati-ves o lògiques. Un programa és escrit en termes d’adreces relatives

quan s’escriu suposant que es comença a carregar en l’adreça zero de

la memòria. Per tant, els usuaris escriuen programes en llenguatge

d’alt nivell i són els traductors els encarregats de generar les adreces

que ocupen en la memòria les variables, els procediments, etc.

RAM i ROM

La memòria RAM (random access memory) és un tipus de memòria de lectura i escriptura, mentre que la memòria ROM (read only memory) és un tipus de memòria només de lectura.

Page 78: Rev Smxm2uf1

Sistemes operatius monolloc 78 Introducció als sistemes operatius

1.10.3. La gestió de la memòria en sistemes multiprogramats

Els sistemes d’un únic usuari no aprofiten la gran quantitat de recursos de

l’ordinador a causa del següent (figura 21):

1) Quan succeeix una petició d’E/S la CPU normalment no pot continuar

el procés fins que acaba l’operació d’E/S.

2) Els perifèrics d’E/S frenen l’execució dels processos, ja que, compara-

tivament, la CPU és diverses ordres de magnitud més ràpida que els dis-

positius d’E/S.

Figura 21. Utilització de la CPU en un sistema d’usuari únic

Tot seguit estudiarem algunes tècniques pròpies de la multiprogramació

relacionades amb la gestió de la memòria:

1) Protecció de la memòria. Si hi ha diversos processos en memòria cal

protegir-ne les respectives particions contra accessos no volguts. Per a fer-

L’usuari no treballa amb adreces reals en el seu programa. Fa ser-

vir adreces relatives, que poden variar entre zero i el màxim per-

mès pel sistema operatiu. Aquest espai s’anomena espai lògicd’adreces. Després, el sistema, amb l’ajuda del maquinari, calcu-

larà a partir de les adreces relatives les adreces reals o absolutes

que formen l’espai físic d’adreces (memòria real).

Per a repartir el processador entre diversos processos necessitem

tenir-los en la memòria principal, per això es divideix la memòria en

trossos denominats particions o regions, en què es carreguen els di-

ferents processos. El nombre de particions indicarà el grau de mul-tiprogramació del sistema.

Sistemes de multiprogramació i processos

Els sistemes de multiprogramació permeten que diversos processos d’usuaris competeixin al mateix temps pels recursos del sistema:

1) Un treball en espera d’E/S cedeix la CPU a un altre treball que està preparat per a fer operacions.

2) Hi ha paral·lelisme entre el processament i l’E/S.

3) S’incrementa la utilització de la CPU i la capacitat global d’execució del sistema.

4) Cal que diversos treballs resideixin a la vegada en la memòria principal.

Particions o regions i grau de multiprogramació

Les particions o regions de la memòria són trossos o partsde la memòria.

El grau de multiprogramació representa el nombre de particions de la memòria.

Page 79: Rev Smxm2uf1

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 memòria de tal manera que cada adreça

generada en el procés ha de ser entre aquests límits. Aquests dos registres

són el registre base i el registre límit.

2) Particions contigües de grandària fixa. Aquesta tècnica gestiona la me-

mòria amb particions contínues de grandària fixa de tal manera que el

nombre i la grandària es defineixen quan s’inicialitza el sistema i no es pot

modificar fins que s’hagi apagat el sistema (figura 22).

Figura 22. Multiprogramació de partició fixa

3) Particions contigües de grandària variable. Consisteixen a assignar di-

nàmicament la memòria als treballs en funció de la grandària (figura 23).

El sistema operatiu porta un registre de les zones lliures i ocupades de la

memòria.

Figura 23. Assignació de particions de grandària variable

1.10.4. La memòria virtual

La gestió de memòria es basa en el fet que per a executar un programa cal

que aquest estigui totalment carregat en la memòria principal. Però no to-

Memòria virtual i dissociació d’adreces

La clau del concepte de memòria virtual està en la dissociació de les adreces disponibles en la memòria real i de les adreces a les quals fa referència un programa.

Page 80: Rev Smxm2uf1

Sistemes operatius monolloc 80 Introducció als sistemes operatius

tes les parts d’un programa s’executen normalment. Els programadors

dissenyen rutines que només s’executen en situacions determinades, la

qual cosa explica que no calgui que tot el programa estigui carregat en me-

mòria per a processar-lo.

Els processos fan referència a adreces virtuals però aquestes s’han d’exe-

cutar en emmagatzematge real; per a això, cal una traducció d’adreces:

• Les adreces virtuals s’han de transformar dins de l’espai de les adreces

reals, mentre el procés s’executa (figura 24).

• La traducció d’adreces (figura 25) s’ha de fer ràpidament per no degra-

dar el sistema.

Figura 24. Transformació de l’espai d’adreces virtuals a l’espai d’adreces reals

La memòria virtual és una tècnica de gestió que, combinada amb el

maquinari i el programari, permet l’execució de programes parcial-

ment carregats en la memòria real, és a dir, programes que ocupen

més espai que la memòria real. La memòria virtual és la separació

de la memòria lògica de l’usuari de la memòria física. Aquesta sepa-

ració proporciona als programadors una gran memòria virtual quan

només es disposa d’una memòria física més petita. La memòria vir-

tual facilita les tasques de programació, ja que el programador no

s’ha de preocupar per la quantitat de memòria física disponible.

Els principals conceptes implicats en la gestió de la memòria vir-

tual són:

• Adreces virtuals. Són les referides per un procés en execució.

• Adreces reals. Són les disponibles dins de la memòria principal.

• Espai d’adreces reals d’un ordinador. És el nombre d’adreces reals

disponibles a l’ordinador.

• Espai d’adreces virtual d’un procés. És el nombre d’adreces vir-

tuals a què pot fer referència el procés.

La traducció d’adreces consisteix a passar les adreces virtuals a adreces reals.

Page 81: Rev Smxm2uf1

Sistemes operatius monolloc 81 Introducció als sistemes operatius

Figura 25. Traducció d’adreces virtuals a adreces reals

Les característiques dels tipus de gestió de la memòria virtual són les se-

güents:

1) Paginada. La paginació és una tècnica de gestió de la memòria que per-

met assignar la memòria d’una manera discontínua. Per a aconseguir-ho,

es divideix la memòria física en trossos de grandària fixa anomenats

marcs (frames) i la lògica, en blocs de la mateixa grandària anomenats

pàgines. El sistema operatiu manté internament una taula de pàgines en

què cada pàgina carregada en la memòria principal es relaciona amb el

marc que la conté o, el que és el mateix, l’adreça inicial es relaciona amb

la memòria real. Cada adreça que genera el processador serà interceptada

i a partir de la taula de pàgines es determina l’adreça física corresponent.

2) Segmentada. La segmentació és una tècnica mitjançant la qual els progra-

mes es desenvolupen normalment entorn d’un bloc principal (principal) des

del qual es bifurca a altres llocs (rutines) o s’accedeix a zones de dades (taules,

piles, etc.). Des d’aquest punt de vista, un programa és un conjunt de compo-

nents lògics de grandària variable o un conjunt de segments.

Els mecanismes de traducció dinàmica d’adreces converteixen les

adreces virtuals en reals en executar-ne el procés. Les adreces con-

tigües dins de l’espai d’adreces virtuals d’un procés no cal que siguin

contigües dins de l’espai d’emmagatzematge real.

Podem diferenciar tres tipus de gestió de la memòria virtual, que

són els següents: paginada, segmentada i segmentada-paginada.

L’espai lògic d’adreces es considera com un conjunt de segments ca-

dascun dels quals és definit per la grandària i un nombre.

Page 82: Rev Smxm2uf1

Sistemes operatius monolloc 82 Introducció als sistemes operatius

Cada adreça lògica es converteix en una adreça real mitjançant un dispo-

sitiu anomenat taula de segments.

3) Segmentada-paginada. La segmentació i la paginació tenen avantatges

i inconvenients, i sembla lògic combinar aquestes dues tècniques per a

aprofitar les característiques principals de les dues tecnologies. Alguns

sistemes utilitzen la tècnica de la paginació segmentada, que consisteix a

segmentar les pàgines de taules; per això, manté una taula de segments

en què les entrades indiquen l’adreça de començament de cada taula de

pàgines i la seva grandària. Una altra tècnica, anomenada segmentació pa-

ginada, opta per paginar els segments.

1.11. Gestió d’entrada/sortida

El control de les operacions d’entrada/sortida és una altra de les funcions

del sistema operatiu que serveix per a facilitar la utilització dels diferents

dispositius que formen l’ordinador.

Els dispositius que permeten l’intercanvi d’informació entre el proces-

sador i la memòria són els dispositius perifèrics. No és fàcil que els

processos utilitzin d’una manera directa els perifèrics; per tant, els pro-

cessos no necessiten conèixer les característiques dels perifèrics sinó

únicament intercanviar dades. Normalment, el programari de gestió de

les operacions d’entrada/sortida d’un sistema representa un tant per

cent molt elevat del total del programari que forma el sistema opera-

tiu; per això, és important conèixer la gestió d’entrada/sortida, ja que

proporciona als programadors i als processos ordres que faciliten l’ús

dels perifèrics.

Una altra característica del gestor d’entrada/sortida és que ofereix una

interfície als programes d’usuari que permet manipular de la mateixa ma-

nera tots els perifèrics gestionats pel sistema operatiu. La interfície,

doncs, és independent del dispositiu i no és necessari modificar els pro-

grames si es canvia de perifèric.

Una de les funcions principals d’un sistema operatiu és el control

de tots els dispositius d’E/S d’un ordinador. Les principals funci-

ons són enviar ordres als dispositius, detectar les interrupcions,

controlar els errors i proporcionar una interfície entre els dispo-

sitius i la resta del sistema.

Aquesta interfície entre els dispositius i la resta del sistema ha

de ser senzilla i fàcil d’utilitzar, i ha de ser la mateixa (preferent-

ment) per a tots els dispositius (independència del dispositiu).

Ús inadequat dels dispositius d’E/S

L’ús inadequat dels dispositius d’E/S sovint provoca una disminució del rendiment del sistema,i això n’afecta el funcionament en general.

Page 83: Rev Smxm2uf1

Sistemes operatius monolloc 83 Introducció als sistemes operatius

1.11.1. Interfície dispositiu perifèric - ordinador

La connexió d’un dispositiu d’entrada/sortida a un sistema operatiu ne-

cessita normalment un circuit d’interfície. El dispositiu d’interfície

pot consistir en uns pocs registres o portes lògiques o en una o més pla-

ques lògiques. La majoria de les tècniques d’entrada/sortida i les inter-

fícies s’han dissenyat en forma de circuits integrats, que s’utilitzen

directament per al control del dispositiu. Aquests controladors es con-

necten als integrats d’entrada/sortida o als busos estàndard.

En molts casos, la política que se segueix per a gestionar les operacions

d’entrada/sortida dependrà de la manera com es connectin els perifèrics,

però en l’actualitat es basen en el tractament d’interrupcions. Els compo-

nents que s’utilitzen per a la connexió dels dispositius a l’ordinador poden

ser, d’una banda, controladors i, de l’altra, canals.

Els controladors de dispositius són la part electrònica dels perifèrics, els

quals poden tenir la forma d’una targeta o d’un circuit imprès integrat a

la placa base de l’ordinador (figura 26).

Figura 26. Esquema d’un controlador de dispositiu d’E/S

Portes lògiques

Les portes lògiques són una sèrie de components electrònics que formen la base dels principals elements dels ordinadors.

Conjunt de perifèrics

En el cas de dispositius complexos (per exemple, discos), la con-

nexió no es fa d’una manera directa a l’ordinador sinó mitjançant

un dispositiu anomenat controlador o adaptador que conté l’es-

tat del dispositiu, el controla i fa la transferència de les dades.

Cada controlador pot gestionar diversos dispositius del mateix ti-

pus i model i té uns registres que s’utilitzen per a comunicar-se

amb el processador i que es coneixen pel nom de registres deldispositiu o registres d’entrada/sortida.

Dades entre l’ordinador i els controladors

Per a intercanviar dades o senyals entre l’ordinador i els controladors, moltes vegades s’utilitzen registres o zones de la memòria. Aquests registres tenen les funcions següents:

1) Informar de l’estat del dispositiu.

2) Transferir instruccions al dispositiu.

3) Transferir dades des del dispositiu.

4) Transferir dades al dispositiu.

Page 84: Rev Smxm2uf1

Sistemes operatius monolloc 84 Introducció als sistemes operatius

Els canals poden ser de dos tipus:

1) Selectors. Permeten la gestió de diversos dispositius, però només un

en cada moment.

2) Multiplexors. Gestionen diversos dispositius i poden transferir dades

simultàniament per tots ells.

1.11.2. Programari de control d’E/S

Fins ara hem estudiat les operacions d’entrada/sortida des de l’aspecte del

maquinari, però des del punt de vista del sistema operatiu cal conèixer

com es pot utilitzar aquest maquinari des de diferents processos que

s’executen en el sistema. Per a facilitar l’estudi dividirem la gestió d’en-

trada/sortida en capes jeràrquiques (figura 27) com les següents:

1) Programari independent del dispositiu. És format pel conjunt de rutines

del sistema operatiu que processen la informació d’entrada/sortida. Aquestes

rutines no depenen del dispositiu. El programari independent del dispositiu

té com a missió atendre les crides al sistema que fa el procés d’un usuari que

sol·licita una operació d’entrada/sortida, i ha de comprovar que tots els parà-

metres són correctes (l’adreça del dispositiu, l’adreça de memòria, etc.).

2) Programari dependent del dispositiu. Aquesta capa és formada per un

conjunt de rutines específicament dissenyades per a fer una operació d’en-

trada/sortida sobre un dispositiu determinat. Podem dividir aquesta capa en:

a) Gestor del dispositiu. Quan l’operació d’entrada/sortida necessita actuar

sobre aspectes que depenen del perifèric, el nucli del sistema operatiu

transfereix el control a aquest gestor que controla un tipus determinat de

dispositiu d’entrada/sortida. Aquest gestor es coneix amb el nom de con-

trolador (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-

En els grans ordinadors, on hi ha un nombre elevat de dispositius, els

controladors es connecten al processador per un canal d’entrada/

sortida o IOP (input/output processor). Aquest processador es-

tà especialitzat per a dur a terme operacions d’entrada/sortida. El

propòsit d’un canal és aconseguir que els dispositius siguin tractats

com a virtuals, abstractes o transparents i així descarregar el proces-

sador central de l’ordinador del treball d’utilitzar-los directament.

Els canals són manipulats per ordres que s’ajuden en l’execució per

mitjà de dispositius DMA i quan s’acaben d’executar retornen l’estat

corresponent del dispositiu que ho va fer i avisen d’aquesta situació el

processador central.

DMA és l’abreviatura d’accés directe a la memòria.

El controlador (driver) és el programari que permet gestionar dispositius d’entrada/sortida.

Page 85: Rev Smxm2uf1

Sistemes operatius monolloc 85 Introducció als sistemes operatius

tionar i que les dades passades estan d’acord amb les característiques del

dispositiu. En el cas d’errors, ho comunica a la capa superior del sistema

operatiu i aquesta ho comunicarà al procés de l’usuari. Si les dades són

correctes, ordena al dispositiu que comenci l’operació.

b) Gestor d’interrupcions. É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 d’una manera directa els registres del controlador correspo-

nent. Una vegada aquesta rutina ha tractat la interrupció, els resultats són

enviats al gestor del dispositiu o controlador, que farà les accions oportu-

nes: normalment, comunicarà a la capa superior del sistema operatiu que

l’operació d’entrada/sortida ha acabat correctament o amb error.

Figura 27. Capes de programari

1.12. Gestió de la informació

Cada procés necessita emmagatzemar gran quantitat d’informació en l’es-

pai d’adreces virtuals i això provoca alguns problemes:

• Grandària escassa per a moltes aplicacions.

En general, les capes de programari en què es divideix la gestió

d’entrada/sortida s’ordenen seguint l’ordre següent:

• Programes d’usuari.

• Procediments independents dels dispositius.

• Controladors de dispositius.

• Gestor d’interrupcions d’entrada/sortida.

Page 86: Rev Smxm2uf1

Sistemes operatius monolloc 86 Introducció als sistemes operatius

• Informació condicionada pel procés.

• Informació no compatible entre processos.

1.12.1. Estructura de la informació

La informació que manipula l’ordinador és formada per senyals represen-

tats per zeros i uns. És el que coneixem com a bits, que es corresponen fí-

sicament amb la presència o absència de petits senyals elèctrics sobre els

diferents elements electrònics que formen el maquinari de l’ordinador.

En l’emmagatzematge de la informació s’utilitza un conjunt de caràcters.

Cada caràcter es configura per mitjà d’un conjunt de bits, generalment

vuit, que permeten un joc de 256 elements. Els codis més emprats en l’ac-

tualitat són l’ASCII i l’EBCDIC.

Podem destacar els conceptes següents relacionats amb la informació:

1) Camp, registre, arxiu i base de dades (figura 28)

Figura 28. Esquema de caràcter, camp, registre i fitxer

La solució al fet que cada procés necessiti emmagatzemar gran quanti-

tat d’informació en l’espai d’adreces virtuals està en el fet que la infor-

mació sigui independent dels processos que la manipulen.

Un conjunt de caràcters relacionats forma el camp, el qual pot ser,

en funció de la informació que conté, numèric, alfabètic o alfanumè-

ric. Diferents camps d’una 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.

Requisits en els dispositius d’emmagatzematge

Necessitem emmagatzemar la informació i, per tant, cal uns certs requisits en els dispositius d’emmagatzematge:

1) Gran capacitat d’emmagatzematge d’informació a llarg termini.

2) Informació no volàtil al procés 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 magnètics, cintes magnètiques, discos òptics, etc.

ASCII i EBCDIC

L’ASCII (American standard code for information interchange) i l’EBCDIC (extended binary coded decimal interchange code) són sistemes de codificació de la informació formats per 8 bits.

Un camp clau és un element que permet diferenciar un registre d’un altre.

Page 87: Rev Smxm2uf1

Sistemes operatius monolloc 87 Introducció als sistemes operatius

En general, tot registre té un camp o més d’un que diferencien els regis-

tres d’un fitxer. Aquests camps s’anomenen camps clau.

Els suports més utilitzats en l’actualitat per a emmagatzemar la infor-

mació són els discos magnètics, les cintes magnètiques i els discos òp-

tics. De tots aquests, ens centrarem en l’estudi dels discos magnètics.

2) Registres físic o bloc, sector i registres lògics o registres

Per a millorar la velocitat d’accés a la informació i optimitzar l’ús dels

dispositius, el sistema pot bloquejar els registres lògics agrupant diver-

sos registres lògics en cada bloc físic i així crear registres bloquejats.

1.12.2. Sistema de fitxers

Des del punt de vista dels usuaris, els arxius són grups d’informacions

relacionades sobre les quals podem fer diverses operacions (lectura, es-

criptura, eliminació, actualització, etc.). El sistema operatiu serà el res-

ponsable de fer aquestes operacions. La part del sistema operatiu

encarregada de tot això s’anomena sistema d’arxius, o sistema de fitxers,

i la seva missió és la següent:

1) Gestionar l’emmagatzematge. Decidir com s’ha d’assignar en els fit-

xers l’espai d’emmagatzematge disponible. Quan un usuari vol crear un

arxiu, el sistema li ha d’assignar un espai perquè pugui emmagatzemar

la informació. Aquest espai l’obtindrà a partir de l’espai lliure disponi-

ble. També cal considerar que arribarà un moment determinat en què

l’usuari deixarà de necessitar un fitxer i l’eliminarà, i aleshores el sis-

tema haurà d’incorporar aquest nou espai lliure al total disponible.

Aquesta gestió de l’espai d’emmagatzematge la fa el sistema de fitxers

i té com a objectius:

a) Control de l’espai disponible. Normalment el control es farà d’una ma-

nera separada per a cada dispositiu i el sistema mantindrà una llista de

l’espai lliure que anirà actualitzant a mesura que s’eliminin arxius o que

se’n formulin a partir de noves peticions.

La quantitat d’informació que en cada operació de lectura o escrip-

tura és gestionada pel maquinari s’anomena registre físic o bloc i

en els discos correspon al sector. L’usuari manipula la informació

en unitats lògiques de grandària variable segons l’aplicació i l’arxiu

de què es tracti. Aquestes unitats reben el nom de registres lògicso registres.

Sector d’un disc

Un sector és un conjunt de pistes. Les pistes són zones en què se situa la informació en cintes magnètiques, discos magnètics i discos òptics.

Els registres bloquejats són un conjunt o blocs de registres lògics.

Page 88: Rev Smxm2uf1

Sistemes operatius monolloc 88 Introducció als sistemes operatius

b) Directori del dispositiu. El sistema manté en cada disc un espai reser-

vat en què desa informació relativa als arxius existents i l’espai lliure.

Aquest espai reservat rep el nom de directori, que es crearà cada vegada

que s’executi el procés de formatar. L’estructura d’aquest directori la de-

fineix cada sistema operatiu.

La forma com s’organitzen les entrades en un directori condicionarà la velo-

citat d’accés a la informació. L’accés a un fitxer requereix com a primer pas

localitzar-lo i aquesta localització serà més ràpida si les entrades en el direc-

tori estan ordenades alfabèticament. Alguns sistemes, per a augmentar la ve-

locitat d’accés, exigeixen que el directori sigui sempre en la mateixa adreça

del disc. D’altres permeten definir la situació mitjançant programes d’utilitat

de tal manera que la seva posició queda en un bloc fixat.

Dins del directori del dispositiu, el sistema operatiu destina un cert nom-

bre de sectors per a contenir dades bàsiques d’identificació de cada fitxer.

c) Assignació de l’espai d’emmagatzematge. El sistema operatiu és el res-

ponsable de plasmar en els discos els arxius que creen els usuaris

subministrant l’espai 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 dispo-

nible i a continuació optar per alguna de les estratègies següents:

• Assignar n bits consecutius de l’espai en disc. El sistema col·loca cada

arxiu en un grup de blocs consecutius del disc. Cada entrada del direc-

tori del disc conté, a més del nom de l’arxiu i altres dades, l’adreça del

bloc inicial de l’arxiu i el nombre de blocs que ocupa.

• Emmagatzemar l’arxiu en trossos no consecutius. Cada arxiu és una llista

enllaçada de blocs del disc que poden ser en qualsevol adreça del disc. En

el directori, cada entrada de l’arxiu tindrà, a més del nom i altres dades,

un apuntador al primer bloc de la cadena. A partir d’aquest primer bloc ca-

dascun dels següents conté un apuntador al bloc que segueix.

• L’assignació indexada. Agrupa tots els apuntadors en un bloc d’índex.

Cada arxiu tindrà el seu propi bloc d’índex i la seva adreça quedarà in-

dicada en el directori del disc en crear l’arxiu.

Per regla general, un directori o taula de continguts consta d’una

entrada per a cada arxiu existent en el disc i una altra sobre l’espai

disponible. En les entrades d’arxiu, el sistema registra la informació

necessària per a la gestió (nom de l’arxiu, tipus d’arxiu, localització

en el disc, grandària, protecció, permisos, comptabilitat, data de crea-

ció, propietari, comptadors d’utilització, etc.).

Formatar és el procés que consisteix en la creació de les pistes i sectors en què se situarà la informació.

Sistema de gestió de directoris d’Unix

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 característiques de protecció del fitxer, la data de creació, l’ultima modificació, la identificació del propietari, etc. A més, és on es desa el nom del fitxer, les dades i la seva posició en disc.

Page 89: Rev Smxm2uf1

Sistemes operatius monolloc 89 Introducció als sistemes operatius

2) Definir mètodes d’accés. Definir la manera com l’usuari 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 tècniques per a fer aquestes

tasques i cada sistema serà dissenyat segons les que responen millor a les

seves necessitats i als seus objectius.

1.12.3. Mètodes d’accés 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 lògic seqüencial o bé quasi directe per mit-

jà de part de la informació continguda en l’arxiu. El sistema d’arxius del

sistema operatiu defineix quines formes d’accés lògic permet i quins mè-

todes d’accés suporta.

Tot seguit, comentarem alguns mètodes d’accés als fitxers:

1) Accés seqüencial. Aquest mètode permet l’accés als registres d’un fit-

xer en un ordre preestablert des del primer fins a l’últim i d’un en un. Les

rutines d’aquest mètode mantenen un apuntador al registre lògic següent

al qual s’ha d’accedir. Una operació de lectura o escriptura llegeix o escriu

en el registre i avança l’apuntador al registre següent. El mètode implica

que els registres lògics s’emmagatzemen segons l’ordre en què s’hi acce-

dirà per a tractar-los, és a dir, l’ordre lògic dels registres ha de coincidir

amb l’ordre físic. L’actualització és complicada, ja que implica la recol·-

locació dels registres.

2) Accés directe. Aquest mètode permet l’accés a qualsevol part de l’ar-

xiu, és a dir, no és necessari passar per la informació anterior per a poder

accedir a un registre determinat. Només poden tenir aquest tipus d’ac-

cés aquells suports que per la seva naturalesa ho permeten (discos mag-

nètics, etc.). L’usuari entén l’arxiu com un conjunt de registres

individualitzats (numerats respecte a l’inici) als quals pot accedir en

qualsevol ordre. Per a fer-ho, davant de la petició d’un registre determi-

nat, el programari del mètode d’accés calcula l’adreça del bloc físic que

el conté i accedeix a la informació directament. Aquest càlcul és neces-

Un mètode d’accés als fitxers és un conjunt de rutines i taules que

permeten accedir a la informació dels arxius, segons un esquema lò-

gic determinat.

Podeu ampliar els vostres coneixements sobre la manera d’accedir a la informació emmagatzemada, en el subapartat “Mètodes d’accés als fitxers” d’aquesta unitat.

!!

Page 90: Rev Smxm2uf1

Sistemes operatius monolloc 90 Introducció als sistemes operatius

sari, ja que l’usuari utilitza adreces relatives del registre i desconeix la

posició dels registres en el disc.

3) Accés directe indexat. En aquest cas, es construeix un índex o una taula

de relacions de claus i els seus blocs físics per a cada fitxer. La localització

d’un registre es farà accedint primerament a aquest índex i a partir d’aquí

s’obtindrà l’adreça del bloc corresponent a la clau sol·licitada.

1.12.4. Directoris d’arxius

Hi ha diferents tècniques que permeten la creació d’un arxiu en disc i la

seva utilització posterior segons mètodes d’accés definits. Ara bé, en els

sistemes hi ha diferents arxius que el sistema d’arxius ha de controlar per

a poder atendre les peticions que se’n facin (creació, lectura, etc.). Per ai-

xò, s’utilitzen directoris que a la vegada són arxius d’estructura especial

els registres dels quals contenen la descripció dels arxius existents en el

sistema. Mitjançant aquests directoris, el sistema podrà localitzar ràpida-

ment un arxiu sol·licitat (en quin volum es troba) i conèixer-ne les carac-

terístiques.

L’estructura d’una taula de símbols que indiquen els arxius existents en

un directori pot ser més o menys complicada depenent dels sistemes ope-

ratius, però ha de permetre fer les operacions bàsiques següents:

1) Recerca. Aquesta operació ha de permetre localitzar un fitxer si exis-

teix. En alguns casos, permet localitzar grups de fitxers amb característi-

ques comunes.

2) Creació. La creació d’un fitxer nou implica posar una nova entrada en

el directori adequat.

3) Eliminació. Quan un fitxer ja no sigui necessari s’ha de poder eliminar

per a utilitzar l’espai lliure. També s’haurà d’eliminar en el directori.

4) Llista. Ha de permetre fer una llista dels arxius d’un directori i també

del contingut de l’entrada d’un arxiu en aquest directori.

Seguidament, analitzarem algunes estructures de directoris:

1) Directoris d’un nivell. En sistemes petits n’hi ha prou de disposar d’un

únic directori que contindrà la descripció de tots els fitxers disponibles (fi-

Des del punt de vista lògic, un directori és una taula de símbols que

indiquen els arxius existents.

Page 91: Rev Smxm2uf1

Sistemes operatius monolloc 91 Introducció als sistemes operatius

gura 29). Un exemple n’és el directori de dispositius, en què es desa la des-

cripció de tots els fitxers existents en aquest dispositiu i de l’espai

disponible. El directori d’un dispositiu és en una adreça predeterminada

del disc (per maquinari o per programari) o bé apuntant indirectament a

un bloc físic específic de manera que es localitzi immediatament.

Figura 29. Directori d’un 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 l’usuari són controlats mit-

jançant un directori mestre del sistema. Per a localitzar un arxiu el sis-

tema el buscarà en el directori del peticionari. Si es crea un fitxer, aquest

es posa en el seu directori. De la mateixa manera, si s’elimina, l’acció

afectarà el que tingui el nom referenciat en aquest directori i no el d’al-

tres usuaris.

Figura 30. Directori de dos nivells

3) Estructures multinivell (estructura jeràrquica). Arbres de directoris.

L’estructura anterior es pot considerar com una organització en arbre de

dos nivells. Generalitzant-la, podem pensar en estructures en arbre de di-

ferents nivells. Cada usuari podrà crear subdirectoris en el seu directori i

agrupar els arxius de la manera més convenient (figura 31). En general, el

directori mestre s’anomena directori arrel. Aquest sistema és avui dia

molt utilitzat en els sistemes operatius en què cada directori d’usuari con-

Page 92: Rev Smxm2uf1

Sistemes operatius monolloc 92 Introducció als sistemes operatius

té entrades que apunten a fitxers o a subdirectoris que, a la vegada, apun-

ten a fitxers o subdirectoris de nivell més 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 enfo-

car des de dos aspectes que són els que presentem a continuació:

1) Disponibilitat dels arxius. L’objectiu fonamental és poder accedir a la

informació en el moment en què es necessiti.

a) Una primera tècnica consisteix en la realització periòdica de còpies

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

còpies. En alguns dels sistemes operatius actuals hi ha eines que per-

meten la realització automàtica d’aquestes còpies i també possibles re-

cuperacions.

b) Una altra tècnica és la utilització de fitxers auxiliars en què es registren

totes les operacions que fan els usuaris sobre els fitxers. Aquests fitxers

tenen l’extensió log; per això, es coneixen com a fitxers de registres o fi-

txers LOG, i poden ser manipulats per mitjà d’utilitats 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 identifica-

ció de l’usuari per mitjà del nom de l’usuari i d’una paraula clau d’accés.

El sistema validarà o no el binomi anterior consultant la taula de noms

d’usuaris i de claus, i concedirà o denegarà l’accés sol·licitat. Normalment,

L’encriptació és una tècnica que permet que una informació determinada no sigui fàcil de manipular.

Page 93: Rev Smxm2uf1

Sistemes operatius monolloc 93 Introducció als sistemes operatius

el fitxer de claus és encriptat. Una vegada l’usuari ja és dins el sistema,

només podrà accedir a determinats recursos i és així com el sistema ope-

ratiu fa un nou nivell de control. Això ho podem gestionar a partir dels

drets, els permisos i els atributs assignats als fitxers.

Els drets en els fitxers són unes capacitats assignades als usuaris

per a fer determinades tasques en el sistema informàtic. En són

exemples: la gestió d’usuaris per persones diferents de l’adminis-

trador, la gestió del sistema de còpies de seguretat, etc.

Els permisos en els fitxers són autoritzacions assignades a usua-

ris determinats per a fer unes accions concretes en els fitxers

(per exemple, tenir el permís de lectura i d’escriptura en un fit-

xer, tenir el permís d’execució en un fitxer, etc.).

Els atributs en els fitxers són característiques que tenen els fit-

xers i afecten tots els usuaris que utilitzen aquests fitxers (per

exemple, els fitxers comprimits, els fitxers xifrats, etc.).

L’administrador

En els sistemes informàtics també és necessari controlar l’ús de molts recursos, ja que el nombre d’usuaris que hi poden accedir és molt elevat i això implica l’existència de persones dedicades a l’administració (administrador) de la seguretat del sistema i a millorar l’eficiència de la protecció utilitzada. Per a ajudar en aquesta tasca, els sistemes solen disposar d’arxius d’incidències en els quals queden especificades totes les accions succeïdes en el sistema (intents d’accés il·legal, altes i baixes de recursos nous, etc.).

Page 94: Rev Smxm2uf1

Sistemes operatius monolloc 94 Introducció als sistemes operatius

2. Configuració de màquines virtuals

La utilització de les màquines virtuals en el món de la informàtica és

un fet que no podem ignorar. Molts usuaris, tant particulars com em-

preses, utilitzen la tecnologia de la virtualització per manipular la seva

informació i gestionar-la. La virtualització dels sistemes informàtics no

només s’aplica a petits equipaments, sinó que cada vegada s’utilitza

més en molts àmbits relacionats amb el món de la informàtica.

2.1. Descripció de màquina real i de màquina virtual

Moltes vegades neix la necessitat de provar un programa informàtic o fer

proves d’un altre sistema operatiu diferent del que estem utilitzant en el

nostre ordinador. Quina és la possible solució, formatar l’equip i instal·lar-

hi el nou sistema operatiu? Crear una partició i instal·lar-l’hi? Buscar un

altre equip en què estigui instal·lat? La solució és més senzilla que tot ai-

xò: l’únic que s’ha de fer és instal·lar una eina que simuli el sistema ope-

ratiu que voleu provar, així no hi ha necessitat de formatar ni canviar

d’equip informàtic. 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 pogués passar de l’un o l’al-

tre amb facilitat.

Tot el que hem comentat anteriorment ho podem aconseguir mitjançant

la utilització de les màquines virtuals. Aleshores, en un sistema informà-

tic podem treballar tant en màquines reals o físiques com en màquines lò-

giques o virtuals.

Una màquina real (o física) és un ordinador que té elements físics,

o també anomenats components, que donen un servei a molt baix

nivell (nivell físic) dins d’una arquitectura coneguda i en què s’obte-

nen els millors resultats referents a la velocitat de tractament de la

informació. En la màquina real és on s’executen els sistemes opera-

tius com altres processos que només necessiten una arquitectura

coneguda.

Una màquina virtual (o màquina lògica) és una màquina que si-

mula el funcionament d’una màquina real sobre la qual es poden

instal·lar sistemes operatius, aplicacions informàtiques, navegar

de manera segura per Internet, utilitzar diversos dispositius (per

exemple, targetes de xarxa, dispositius USB, etc.).

Formatar

El formateig és un procés que consisteix a preparar un determinat tipus de suport per a gestionar la informació que s’haurà de manipular.

USB és l’abreviatura de bus en sèrie universal.

Page 95: Rev Smxm2uf1

Sistemes operatius monolloc 95 Introducció als sistemes operatius

2.1.1. Virtualització

Una màquina virtual és una màquina que simula una màquina real. Però

com s’aconsegueix això? Doncs mitjançant un determinat programari.

Aquest procés de simulació es coneix amb el nom de virtualització.

Els conceptes de virtualització i de màquines virtuals van aparèixer du-

rant la dècada de 1960 com a resultat d’uns treballs elaborats per l’empre-

sa IBM en la seva família d’ordinadors centrals (mainframes) (IBM

System VM/370). La idea que es proposa i s’aplica és executar sobre el ma-

quinari un petit sistema operatiu que simula el maquinari un nombre de-

terminat de vegades. Cadascuna de les màquines simulades és una còpia

exacta del maquinari real però fet de manera lògica. Tot això s’aconseguia

mitjançant un programari determinat.

Aquesta idea encara que podem pensar que podia tenir moltes possibili-

tats d’implementar-se a escala general no es va generalitzar. Els sistemes

operatius Unix van acabar sent els més utilitzats en el mercat informàtic

i les màquines virtuals van perdre força en la dècada de 1980.

Amb el pas del temps, els ordinadors comencen a ser més potents i sorgeix

la possibilitat d’emular màquines 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 néixer amb

l’IBM VM/370 ha recobrat interès en el món del PC. Han aparegut algunes

aplicacions interessants que creen PC lògics dins d’un ordinador físic i

permeten l’execució simultàniament de diversos sistemes operatius.

2.1.2. Amfitrió i hoste

Per a poder utilitzar una màquina virtual necessitem un programari deter-

minat que permeti simular una màquina real. Aquest programari ha d’es-

tar instal·lat en un sistema operatiu de base anomenat amfitrió (per

exemple, la família de sistemes operatius Windows, les distribucions de

Linux, l’entorn Macinstosh d’Apple). Els diversos sistemes operatius

instal·lats en les màquines virtuals s’anomenen hostes.

La virtualització és un concepte que descriu la capacitat de tenir diver-

sos sistemes operatius funcionant al mateix temps en un ordinador.

També podem definir una màquina virtual com un programari que

simula una màquina real i on es poden executar programes informà-

tics com si fos una màquina real.

Mainframes

Els ordinadors centrals (mainframes) són un tipus d’ordinadors de gamma alta (gran capacitat de memòria, velocitat de processament molt alt, etc.).

IBM és l’abreviatura d’nternational bussiness machines.

PC és l’abreviatura de personal computer.

VM és l’abreviatura de màquina virtual.

Page 96: Rev Smxm2uf1

Sistemes operatius monolloc 96 Introducció als sistemes operatius

Recordem que en una màquina real (figura 32) podem identificar els com-

ponents següents:

• Les aplicacions informàtiques són els programes informàtics que vo-

leu executar en un màquina real.

• El sistema operatiu és un programari que facilita la comunicació entre

les aplicacions informàtiques i el maquinari.

• El maquinari són els diferents dispositius que formen la màquina real

i són els responsables de dur a terme les feines finals.

2.2. Avantatges i inconvenients de la virtualització

i de les màquines virtuals

Les màquines virtuals es poden classificar de moltes maneres igual que hi

pot haver molts tipus d’enfocament de la virtualització. Tenint en compte

la funcionalitat de les màquines virtuals les podem classificar en les cate-

gories següents:

1) Les màquines virtuals de sistema, també anomenades màquines virtuals

de maquinari o virtualització de plataforma, permeten a la màquina física

real simular-se en diverses màquines reals, i cadascuna executa el seu pro-

pi sistema operatiu. La capa de programari que permet la virtualització

s’anomena màquina virtual de maquinari o monitor de màquina virtual.

Un monitor de màquina virtual es pot executar o bé directament sobre el

maquinari, o bé sobre el sistema operatiu.

Logotip d’Apple

El sistema operatiu sobre el qual s’executa el programari per a

crear les màquines virtuals s’anomena amfitrió (en anglès s’ano-

mena host). Per exemple, els sistemes operatius Windows, Li-

nux, MacOS.

Els diversos sistemes operatius instal·lats en cada màquina virtuals

s’anomenen hostes (en anglès s’anomenen guest).

Figura 32. Components d’una màquina real

El monitor virtual té com a missió fer la multiprogramació pre-

sentant als nivells superiors tantes màquines virtuals com se

sol·licitin. No són màquines esteses sinó una rèplica exacta de la

màquina real, de manera que en cadascuna es pot executar un

sistema operatiu diferent, que serà el que ofereixi la màquina es-

tesa a l’usuari.

Page 97: Rev Smxm2uf1

Sistemes operatius monolloc 97 Introducció als sistemes operatius

Les característiques principals del monitor virtual són:

• Proporciona diverses màquines virtuals a la capa superior.

• Las màquines virtuals instrumenten còpies exactes del maquinari

simple, amb el seu mode nucli/usuari, els dispositius d’E/S, les inter-

rupcions i tot el que té una màquina real.

• Poden executar qualsevol sistema operatiu de manera directa sobre el

maquinari.

• Suporten perifèrics virtuals.

Algunes de les tècniques que es poden utilitzar en les màquines virtuals

de sistema són les següents:

a) L’emulació que es basa a crear màquines virtuals (figura 33) que simu-

len el maquinari d’una o diverses plataformes de maquinari diferents.

Figura 33. Emulació

b) La virtualització completa o nativa permet a una màquina virtual exe-

cutar sistemes operatius hostes, sense haver-los de modificar, sobre un

sistema amfitrió, utilitzant un programa anomenat hipervisor o monitor

de màquina virtual (VMM) que permet compartir el maquinari real (fi-

gura 34). Aquesta capa intermèdia és l’encarregada de monotorar els sis-

temes operatius hostels per tal de capturar determinades ordres d’accés

al maquinari que no es poden fer de manera real, perquè no es té accés

directe al maquinari. Un monitor de màquina 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 sen-

se cap modificació sobre la plataforma; ara bé, té l’inconvenient que el

sistema operatiu ha d’estar suportat en l’arquitectura virtualitzada.

VMM és l’abreviatura de monitor de màquina virtual.

Page 98: Rev Smxm2uf1

Sistemes operatius monolloc 98 Introducció als sistemes operatius

Figura 34. Virtualització nativa o completa

c) La paravirtualització és una manera de millorar l’eficiència de les mà-

quines virtuals i apropar-les al rendiment d’una màquina real. Per a fer-

ho, utilitzen modificacions en els sistemes operatius hostes per a poder-

se executar sobre el monitor de la màquina virtual.

2) Les màquines virtuals de procés, a vegades anomenades màquines vir-

tuals d’aplicacions, s’executen com un procés normal dins d’un sistema ope-

ratiu i suporten un únic procés. La màquina virtual s’inicia automàticament

quan es llança el procés que s’ha d’executar i es para quan el procés finalitza.

El seu objectiu és proporcionar un entorn d’execució independent de la pla-

taforma de maquinari i del sistema operatiu que amagui el maquinari real i

permeti que un programa s’executi sempre de la mateixa manera sobre qual-

sevol plataforma. Un dels exemples més coneguts actualment d’aquest tipus

de màquina virtual és la màquina virtual Java (JVM).

3) El concepte de la virtualització de plataforma de què hem parlat an-

teriorment, també es pot estendre a la virtualització de recursos especí-

fics del sistema com, per exemple, la capacitat d’emmagatzematge, els

recursos de la xarxa i els sistemes multiprocessador.

La utilització de les màquines virtuals té tot un seguit d’avantatges i d’in-

convenients. Alguns dels avantatges de la utilització de les màquines vir-

tuals són:

• Consolidació de servidors: convertir molts servidors físics en virtuals,

d’aquesta manera s’aprofita el maquinari disponible de la millor mane-

ra possible.

• Recuperació davant desastres: l’estat d’una màquina virtual es pot em-

magatzemar en forma de fitxer i, per tant, en el cas de desastre es pot

recuperar la informació amb rapidesa.

JVM és l’abreviatura de màquina virtual Java.

Page 99: Rev Smxm2uf1

Sistemes operatius monolloc 99 Introducció als sistemes operatius

• Proves d’aplicacions: moltes vegades es necessita un entorn per a pro-

var una aplicació. Utilitzar una màquina virtual permet instal·lar un

sistema operatiu des de zero, provar aplicacions i després eliminar la

màquina.

• Execució d’entorns complets sense instal·lació i configuració: la possi-

bilitat de descarregar màquines virtuals des d’Internet permet estal-

viar temps en instal·lacions i configuracions. Hi ha moltes màquines

virtuals com a servidors complets per a ser utilitzats (Linux, Apache,

mySQL i PHP), màquines amb gestors de continguts i wikis gratuïts i

funcionals des del primer moment.

• Aplicacions portàtils: amb l’ús de les màquines virtuals es poden tenir

PC completament preparats per a ser utilitzats en dispositius USB, la

qual cosa pot ser d’una gran utilitat per a tenir un entorn privat i utilit-

zar-lo en qualsevol PC.

Com a inconvenients de les màquines virtuals, en podem indicar els se-

güents:

• Un dels inconvenients de les màquines virtuals és que afegeixen una

gran complexitat al sistema en temps d’execució. Això té com a efecte

l’alentiment del sistema, és a dir, el programari no s’executarà amb la

mateixa velocitat que en una màquina real. No obstant això, la flexibi-

litat que ofereixen les màquines virtuals compensa aquesta pèrdua

d’eficiència.

• Una màquina virtual reservarà recursos de maquinari de la màquina

amfitrió en el moment de la seva posada en funcionament. Típica-

ment, aquests recursos són en forma de memòria RAM i espai de disc

dur que no estaran disponibles per al sistema operatiu amfitrió. Una

vegada la màquina virtual es para, la memòria RAM utilitzada per la

màquina virtual queda lliure però no l’espai de disc dur que continuarà

reservat per a la màquina virtual, ja que conté els fitxers que permeten

al sistema operatiu hoste executar-se.

2.3. Programari lliure i propietari per a la creació de màquines

virtuals: instal·lació

De programes informàtics, n’hi ha molts i de característiques molt dife-

rents. Una manera de classificar els programes informàtics és tenint-ne

en compte la propietat. Aleshores, podem parlar de programari propie-

tari i de programari lliure.

Wikis

Un wiki és un lloc web en què les pàgines poden ser editades per múltiples usuaris mitjançant els navegadors d’Internet.

Page 100: Rev Smxm2uf1

Sistemes operatius monolloc 100 Introducció als sistemes operatius

En el programari no lliure una persona física o jurídica (empresa, corpo-

ració, fundació, etc.) té tots els drets d’autor sobre un programari i negar

o no donar, al mateix temps, els drets d’utilitzar el programa amb qual-

sevol propòsit; d’estudiar com funciona el programa i adaptar-lo a les

pròpies necessitats (en què l’accés al codi font és una condició prèvia);

de redistribuir còpies, o de millorar el programa i fer-ne públiques les mi-

llores.

D’aquesta manera, un programari continua sent no lliure encara que el

codi font es faci públic, quan es manté la reserva de drets sobre l’ús, la mo-

dificació o la distribució.

Segons la Free Software Foundation (FSF), el programari lliure es refe-

reix a la llibertat dels usuaris per a executar, copiar, distribuir, estudiar,

canviar i millorar el programari; d’una manera més precisa, es refereix a

quatre llibertats dels usuaris del programari:

1) La llibertat d’utilitzar el programa amb qualsevol propòsit.

2) La llibertat d’estudiar el funcionament del programa i adaptar-lo a les

necessitats.

3) La llibertat de distribuir còpies, amb la qual cosa es pot ajudar els altres

usuaris a millorar el programa.

4) La llibertat de fer públiques les millores, de manera que tota la comu-

nitat se’n beneficiï (per a aconseguir algunes d’aquestes llibertats cal que

l’accés al codi font sigui un requisit previ).

El programari propietari es refereix a qualsevol programa informà-

tic en el qual els usuaris tenen les limitacions següents: utilització,

modificació, redistribució (amb modificació o sense), o el codi font

no està disponible o l’accés és restringit.

El programari lliure és la denominació del programari que dóna la

llibertat als usuaris sobre el producte adquirit i, per tant, una vegada

obtingut, de poder ser utilitzat, copiat, estudiat, modificat i redistri-

buït lliurament.

Programari propietari

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

El programari lliure també s’anomena programari obert o programari no propietari.

Free Software Foundation

La Free Software Foundation (FSF) és una organització dedicada a eliminar les restriccions sobre la còpia, la redistribució, la comprensió i la modificació de programes informàtics.

Richard Stallman

Un personatge que cal destacar sobre els conceptes del programari

lliure és Richard Stallman, creador dels conceptes Free Software

Foundation i de l’FSF.

Page 101: Rev Smxm2uf1

Sistemes operatius monolloc 101 Introducció als sistemes operatius

Un altre aspecte relacionat amb el tema del programari són les llicències.

Una llicència és l’autorització formal amb caràcter contractual en què un

autor d’un programari dóna a una persona interessada el permís per a

“exercir actes d’explotació legals”. Des del punt de vista del programari

lliure, hi ha diferents variants del concepte o grups de llicències (per

exemple, la GPL, la BSD, estil MPL, etc.).

En la llicència pública general de GNU (GNU GPL), l’autor conserva els

drets d’autor (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 llicèn-

cia GNU GPL possibilita la modificació i la redistribució del programari,

però únicament sota aquesta mateixa llicència.

En la taula 8 es presenta una comparativa de diverses eines de virtualitza-

ció tant lliures com propietàries.

Taula 8. Comparativa d’eines de virtualització

Característiques Producte Explicació

Facilitat d’instal·lacióVirtualBox, VirtualPC 2007 i VMWare

Els tres productes s’instal·len de manera molt senzilla mitjançant un assistent.

Sistemes operatius amfitrió suportats

VirtualBox, VMWare Server, VirtualPC 2007, QEMU,XEN, KVM, Mac on Linux

VirtualBox: Windows, Linux

VMWare Server: Windows, Linux, MacOS

VirtualPC 2007: Windows, MacOS

QEMU: Linux, Windows, MacOS

XEN: Linux, Windows

KVM: Linux

Mac on Linux: MacOS

Sistemes operatius hostes suportats

VirtualBox, VMWare Server, VirtualPC 2007, QEMU, KVM, Bochs, Mac on Linux, Virtuozzo

VirtualBox: DOS, Windows, Linux, OS/2, OpenBSD, FreeBSD, Netware, Solaris, etc.

VMWare Server: DOS, Windows, Linux, FreeBSD, netware, Solaris, etc.

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

Suport per USBVirtualBox, VMWare Server, VirtualPC 2007

VirtualBox: sí

VMWare Server: sí

VirtualPC 2007: no

Facilitat de creació de màquines virtuals

VirtualBox, VMWare Server, VirtuaPC 2007, QEMU, Xen

VirtualBox: fàcil

VMWare: fàcil

VirtualPC 2007: fàcil

QEMU: fàcil

Xen: fàcil

GPL és l’abreviatura 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 l’objectiu de crear un sistema operatiu Unix completament lliure; el sistema GNU.

Page 102: Rev Smxm2uf1

Sistemes operatius monolloc 102 Introducció als sistemes operatius

Una vegada que ja coneixem les principals característiques del programari

propietari o lliure cal fer la instal·lació d’algun tipus de programari de mà-

quines virtuals per a poder treballar amb aquesta tecnologia.

En tot procés d’instal·lació de programari informàtic podem destacar les

fases següents:

1) L’estudi previ o anàlisi previa estan relacionats amb estudiar i avaluar

el procés d’instal·lació i de configuració del programari informàtic. En

aquest procés podem incloure, entre altres elements:

a) La determinació exacte dels objectius.

b) La interpretació de la documentació tècnica de la instal·lació del pro-

gramari informàtic.

Característiques Producte Explicació

Existència de màquines virtuals disponibles a Internet

VMWare Server

VMWare Server disposa de les màquines Virtual Appliances, que són màquines virtuals preconfigurades i preparades per a utilitzar-les.

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

VMWare Server, VirtualPC 2007

Els dos sistemes disposen d’eines que permeten millorar la integració del sistema hoste amb el sistema amfitrió una vegada instal·lat. En el cas de VMWare Server, s’anomenen VMWare tools i, en el cas de Virtual PC, virtual machine additions.

Capacitat d’importar màquines creades amb altres eines

WMWare ServerVMWare Server és capaç d’importar màquines creades amb VirtualPC.

RendimentVirtualBox, VMware Server, VirtualPC 2007, QEMU, Xen

VirtualBox: molt bo

VMWare Server: molt bo

VirtualPC 2007: molt bo

QEMU: molt bo

Xen: molt bo

Tipus de llicència

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

Lliure: VirtualBox, QEMU, Xen, KVM, Mac on Linux

Propietari: VMWare Workstation, Virtuozzo

Gratuït i propietari: VirtualPC 2007, VMWare

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

VMWare Server: x86, Macintosh

VirtualBox: x86

VirtualPC 2007: x86, Macintosh

QEMU: x86, SPARC

Xen: x86, AMD64, IA64, PPC

KVM: x86

Bochs: x86

Mac on Linux: PowerPC, x86

Podeu trobar informació sobre diferents aspectes relacionats amb la interpretació de la documentació tècnica per a la creació de màquines virtuals en la secció “Annexos” del web del crèdit.

!!

Page 103: Rev Smxm2uf1

Sistemes operatius monolloc 103 Introducció als sistemes operatius

c) La justificació de la conveniència o no de la instal·lació i de la configu-

ració d’un determinat tipus de programari.

d) La font d’obtenció del programari que cal instal·lar i configurar: es

tracta d’avaluar la utilització de programaria obert o de programari propie-

tari. Si és l’últim cas, hem d’haver donat resposta, entre d’altres, a les

qüestions següents: quines són les fonts de finançament?, és rendible

aquesta inversió?, etc.

e) La necessitat de conèixer els requisits per a la instal·lació en el maquinari

del programari corresponent (per exemple, el tipus de processador, la veloci-

tat del processador, la quantitat de memòria RAM necessària, etc.).

f) La necessitat de conèixer els requisits de programari per a dur a terme

la instal·lació i la configuració del programari que s’ha d’instal·lar i de con-

figurar (per exemple, el tipus de sistema operatiu, el tipus de navegador

d’Internet, etc.).

g) La disponibilitat d’informació complementària que facilita o reforça el

procés d’instal·lació i de configuració del programari corresponent (per

exemple, si cal registrar-se una vegada feta la instal·lació, etc.).

h) La necessitat de disposar de la informació tècnica dels diferents dispo-

sitius informàtics afectats en el procés d’instal·lació i de configuració del

programari corresponent.

i) La necessitat de disposar de la informació tècnica dels diferents pro-

grames informàtics afectats en el procés d’instal·lació i de configuració

del programari corresponent.

j) La disponibilitat de la documentació general del sistema informàtic.

També cal disposar de la documentació del sistema informàtic relaciona-

da amb les incidències i les solucions adoptades durant el cicle de vida del

sistema informàtic.

k) Cal tenir molt clar el procés d’instal·lació i de configuració del progra-

mari que cal instal·lar.

l) Cal disposar d’una bateria de proves per a comprovar el funcionament

correcte del sistema informàtic.

2) En la fase d’instal·lació, s’instal·la el programa informàtic en el maqui-

nari corresponent. Les accions que cal desenvolupar en aquesta fase són:

a) Fer una còpia de seguretat del sistema instal·lat per a evitar possibles

problemes finals.

Page 104: Rev Smxm2uf1

Sistemes operatius monolloc 104 Introducció als sistemes operatius

b) Seguidament, cal executar el programa corresponent i seguir el procés

d’instal·lació indicat en la documentació del programari que s’ha d’instal·lar.

c) Una vegada instal·lat el programari corresponent cal fer les comprova-

cions corresponents de funcionament del sistema informàtic en general.

Per exemple, es podrien fer les accions següents:

• Apagar i engegar el sistema i determinar si el procés s’executa sense

cap problema.

• Executar algunes aplicacions informàtiques i comprovar-ne el funcio-

nament correcte.

• Executar el programari instal·lat i avaluar-ne el funcionament correcte.

• Determinar el funcionament correcte del sistema informàtic durant

l’execució del programari.

• Avaluar els resultats de les comprovacions i justificar les decisions

adoptades.

3) En la fase de configuració adaptem el programari instal·lat a les neces-

sitats de funcionament de l’usuari i del sistema operatiu.

4) Una vegada hem fet la configuració del programari instal·lat, cal com-provar-ne el funcionament a individualment (funcionant com un progra-

ma independent) i globalment (funcionant en conjunt amb els altres

components del sistema informàtic). A partir dels resultats obtinguts cal-

drà fer o no modificacions en la instal·lació i en la configuració.

5) Finalment, caldrà documentar tot el procés d’instal·lació i de configu-

ració definitiu i també les diferents incidències presentades i les solucions

emprades en el procés.

2.4. Creació de màquines virtuals per a sistemes operatius lliures i propietaris

Una vegada ja tenim instal·lat el programari per a la creació de màquines

virtuals i hem comprovat que funciona correctament és el moment de la

creació de màquines virtuals. El procés que cal seguir serà el mateix que

en la instal·lació i en la configuració de qualsevol tipus de programari, és

a dir: fer una anàlisi prèvia, fer la instal·lació i la configuració correspo-

nents, comprovar el funcionament del sistema en general i finalment do-

cumentar tot el procés dut a terme.

Algunes de les pautes que cal tenir en compte durant la creació

de les màquines virtuals són:

• Determinar els objectius.

• Seleccionar el tipus d’instal·lació que s’ha d’utilitzar: la típica, la

completa, etc.

Podeu trobar informació sobre diferents aspectes de la instal·lació del programari per a la creació de màquines virtuals utilitzant algun tipus de programari obert en la secció “Annexos” del web del crèdit.

!!

Podeu trobar informació sobre diferents aspectes de la instal·lació del programari per a la creació de màquines virtuals utilitzant algun tipus de programari gratuït i de tipus propietari en la secció “Annexos” del web del crèdit.

!!

Page 105: Rev Smxm2uf1

Sistemes operatius monolloc 105 Introducció als sistemes operatius

Entre els sistemes operatius hostes es poden establir tres tipus de comu-

nicacions:

1) Comunicació pont (bridge). Comunicació en què s’assigna una IP al sis-

tema operatiu de la màquina virtual dins del mateix rang d’IP de l’ordina-

dor amfitrió.

2) Comunicació NAT. Aquest és un sistema que permet al sistema opera-

tiu de la màquina virtual comunicar-se per mitjà de l’ordinador amfitrió

però no apareix en la xarxa com un ordinador independent, és a dir, no

apareix com un ordinador físic.

3) Comunicació host-only. Aquesta opció crea una xarxa dins de l’ordina-

dor amfitrió amb la qual cosa tots els sistemes operatius de les màquines

virtuals situades en l’amfitrió es poden comunicar entre ells, però no amb

màquines que són fora de l’amfitrió, és a dir, amb ordinadors de la xarxa

física.

2.5. Configuració i utilització de màquines virtuals

Una vegada s’ha creat la màquina virtual cal comprovar-ne el funcionament

correcte a partir de la bateria de proves preparades en la fase d’anàlisi prè-

via. En funció dels resultats obtinguts en aquesta fase de comprovació pot

ser necessari fer petites o grans correccions en la màquina virtual creada;

aquest procés és conegut amb el nom de configuració.

• Establir el tipus de sistema operatiu hoste que utilitzarem.

• Fixar el nom de la màquina virtual.

• La quantitat de memòria RAM que cal utilitzar.

• Seleccionar el lloc físic on se situarà la màquina virtual.

• Establir el tipus de comunicació entre els sistemes operatius

hostes. Hi ha tres opcions: la comunicació pont (bridge), la co-

municació NAT i la comunicació anomenada host-only.• Fixar la capacitat de la màquina virtual.

• Comprovar el funcionament de la màquina virtual creada i actuar

en conseqüència.

• Documentar tot el procés de creació de la màquina virtual.

La configuració d’una màquina virtual són un conjunt d’accions en-

caminades a aconseguir un funcionament correcte del sistema in-

formàtic i poder-ne adaptar el funcionament a les necessitats de

l’usuari i del sistema operatiu.

IP és l’abreviatura d’Internet protocol; i NAT, de network address translation.

Podeu trobar informació sobre diferents aspectes de la creació de màquines virtuals utilitzant algun tipus de programari lliure en la secció “Annexos” del web del crèdit.

!!

Podeu trobar informació sobre diferents aspectes de la creació de màquines virtuals utilitzant algun tipus de programari propietari en la secció “Annexos” del web del crèdit.

!!

Page 106: Rev Smxm2uf1

Sistemes operatius monolloc 106 Introducció als sistemes operatius

Per a poder fer la configuració cal disposar d’eines que moltes vegades són

subministrades pel mateix programari de creació de les màquines virtuals

i, d’altres, pel sistema operatiu amfitrió.

2.6. Comprovació del funcionament correcte de les instal·lacions i les configuracions dutes a terme

Una vegada acabada la instal·lació i la configuració del programari de crea-

ció de màquines virtuals hem de comprovar que el nou programari i el

sistema informàtic continuen funcionant correctament i donant el rendi-

ment esperat.

El procés per a fer la configuració el podríem resumir en les actuacions

següents:

1) Una vegada dutes a terme les fases d’anàlisi prèvia, d’instal·lació i de

comprovació de la màquina virtual creada cal avaluar a partir dels re-

sultats de la fase de comprovació la necessitat de modificar la configu-

ració de la màquina real creada.

2) Cal tenir ben definits els objectius implicats en la configuració.

3) Determinar els elements de maquinari implicats en la configuració:

la memòria RAM, el disc dur, les unitats de CD/DVD, les unitats de dis-

quets, la targeta de comunicacions (Ethernet), les connexions USB, el

sistema de so, els processadors, les connexions sèries i paral·lels, la

pantalla, el ratolí, etc.

4) Determinar els elements de programari implicats en la configu-

ració: canvi de nom de la màquina virtual i del tipus de sistema ope-

ratiu hoste, incorporació d’eines complementàries que ajuden a

millorar el funcionament de l’entorn, eliminació de màquines vir-

tuals, la còpia de màquines virtuals, la importació i l’exportació de

màquines virtuals, l’arrencada i l’aturada de les màquines virtuals,

els sistemes de tecles per a fer determinades accions d’una manera

més ràpida, etc.

5) Dur a terme el procés de configuració a partir de la documentació

tècnica.

6) Comprovar els resultats de la configuració i actuar en conseqüència.

7) Documentar tot el procés de configuració.

Podeu trobar informació sobre diferents aspectes de la configuració de màquines virtuals utilitzant algun tipus de programari lliure en la secció “Annexos” del web del crèdit.

!!

Podeu trobar informació sobre diferents aspectes de la comprovació del funcionament correcte de les instal·lacions i configuracions fetes de màquines virtuals en la secció “Annexos” del web del crèdit.

!!

Page 107: Rev Smxm2uf1

Sistemes operatius monolloc 107 Introducció als sistemes operatius

2.7. Documentació del procés d’instal·lació i de les seves incidències

Una de les tasques més feixugues i que normalment els informàtics odien

fer és la creació de la documentació del sistema informàtic.

La documentació consisteix en material que explica les característiques tèc-

niques i l’operació d’un sistema. És essencial per a proporcionar comprensió

d’un sistema a qui l’utilitzi per a mantenir-lo, per a permetre auditories del

mateix sistema i per a ensenyar als usuaris com interactuar-hi i com interac-

tuar amb als operadors i als administradors com fer-lo funcionar.

Entre d’altres, podeu fer les accions següents per tal de compro-

var el funcionament del nou programari instal·lat i configurat i

del mateix sistema informàtic en general:

• Determinar prèviament els objectius del procés.

• Establir un pla de treball.

• Establir procediments per a avaluar el funcionament del progra-

mari instal·lat.

• Establir mecanismes per a determinar el funcionament del sis-

tema a escala individual.

• Fixar procediments per a determinar la compatibilitat correcta

entre el nou programari de creació de màquines virtuals i el sis-

tema informàtic existent.

• Avaluar els resultats de les comprovacions i actuar en conse-

qüència.

• Documentar el procés.

La documentació dels sistemes informàtics és el conjunt d’informa-

ció que diu què fan els sistemes informàtics, com ho fan i per a què

serveixen.

Hi ha diversos tipus de documents, entre els quals cal destacar:

• El del sistema informàtic que explica l’organització, el funciona-

ment i les vicissituds del sistema informàtic al llarg de la seva

existència.

• El de programes que explica la lògica d’un programa i inclou des-

cripcions, diagrames de flux, llistes de programes i altres docu-

ments.

• El dels usuaris que explica les capacitats del sistema i com utilit-

zar-lo.

Page 108: Rev Smxm2uf1

Sistemes operatius monolloc 108 Introducció als sistemes operatius

Moltes organitzacions tenen el que s’anomena programa de documenta-

ció, que consisteix en una política formal en què la documentació és una

cosa que s’ha de fer de manera rutinària per a cada esdeveniment.

La importància de la documentació podria ser comparada amb la impor-

tància de l’existència d’una pòlissa d’assegurança: mentre tot va bé no hi

ha precaució de confirmar si la nostra pòlissa d’assegurança és vigent o

no, però, no obstant això, és més que convenient que concretem la nostra

pòlissa quan les coses van bé, ja que, més endavant, pot ser massa tard.

Una documentació adequada i completa d’una aplicació que es vol implan-

tar, mantenir i actualitzar de manera satisfactòria és essencial en qualse-

vol sistema d’informació; això no obstant, freqüentment i erròniament és

la part a la qual es dedica menys temps i atenció.

Sempre s’ha de documentar un sistema encara que estigui a punt de des-

aparèixer per sempre. Si la documentació del sistema és incompleta l’ad-

ministrador contínuament hi estarà involucrat i no es podrà moure a un

altre projecte.

Tota documentació que es relacioni amb un sistema, ja sigui creada de ma-

nera manual o automàtica, sigui senzilla o complexa, ha de reunir tot un

seguit de requisits bàsics. Els estàndards bàsics de disseny de la documen-

tació proposen seguir les pautes següents:

• Ha de ser clara i ben organitzada, amb seccions clarament indicades i

estructurades en blocs.

• Els digrames, si n’hi ha, han de ser clars i entenedors.

• La documentació ha de ser completa.

• La documentació sempre s’ha de conservar actualitzada.

Moltes organitzacions segueixen els seus propis estàndards i normati-

ves de documentació: format de documents –fonts, marges, capçaleres,

peus...–, nomenclatura, etc. És important tenir la seguretat que els es-

tàndards siguin complets, actualitzats, documentats i llegibles. Natu-

Una altra definició per a la documentació d’un sistema informàtic

seria la de registre físic, generalment escrit, que conté els elements

següents:

• Les polítiques i normes referents al desenvolupament del siste-

ma, la seva implantació, operació i manteniment.

• El disseny del sistema d’informació.

• Els procediments per a instal·lar el sistema d’informació.

• Els procediments per a operar amb el sistema d’informació.

• Els procediments per a mantenir el sistema d’informació.

Page 109: Rev Smxm2uf1

Sistemes operatius monolloc 109 Introducció als sistemes operatius

ralment l’estàndard ha de ser apropiat i no una barrera que impliqui

més pèrdues que avantatges.

Durant el desenvolupament d’un sistema, des de la concepció fins a la po-

sada en marxa, es genera una gran quantitat de documents que, en molts

casos, s’han 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 treba-

llaran amb el sistema per a facilitar-ne el manteniment. La documentació

d’un sistema ha d’estar ben organitzada, actualitzada i completa; tots els

termes s’han d’explicar: la documentació es farà disponible a tots els usua-

ris d’acord amb les seves necessitats i amb les normes de seguretat.

La documentació del sistema informàtic pot contenir, entre altres infor-

macions, les següents:

1) La documentació del cicle de vida del sistema informàtic conté tota la

documentació que fa referència a l’historial del sistema informàtic. Una

manera d’organitzar aquesta informació pot ser en els blocs següents:

a) El bloc general descriptiu del sistema informàtic (documentació gene-

ral del sistema informàtic). Conté la informació que fa referència a les ca-

racterístiques generals del sistema. Podem destacar com a informació

més important:

• Les característiques principals com, per exemple, el nom i la codifica-

ció del sistema informàtic, la data de creació, el nom dels personatges

implicats en la instal·lació, els noms dels administradors, etc.

• La determinació dels objectius del sistema informàtic.

• La descripció de tot el procés relacionat amb l’estudi previ del sistema.

• Els dispositius implicats en el sistema informàtic (documentació del

maquinari).

• El programari utilitzat tant d’aplicacions informàtiques com del pro-

gramari bàsic (documentació del programari).

• La descripció del procés d’instal·lació i de configuració del maquinari

que cal utilitzar. També cal indicar les comprovacions fetes, els resul-

tats obtinguts i les justificacions de les decisions adoptades. També

hem de descriure els manteniments duts a terme.

• La descripció del procés d’instal·lació i de configuració del programari

que s’ha d’utilitzar. També cal indicar les comprovacions fetes, els re-

sultats 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ó d’incidències i de solucions).

• La descripció de les incidències aparegudes amb les causes, les solu-

cions i els resultats (documentació d’incidències i de solucions).

• Conclusions finals.

Page 110: Rev Smxm2uf1

Sistemes operatius monolloc 110 Introducció als sistemes operatius

b) El bloc general descriptiu dels dispositius del sistema informàtic (do-

cumentació del maquinari). Conté les característiques generals dels dis-

positius del sistema (per exemple, els ordinadors, les impressores, els

commutadors [switches], els encaminadors [routers], etc.). Podem desta-

car com a informació més important:

• Les característiques generals del dispositiu, com, per exemple, un ordina-

dor: 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 tècnic, etc.

• La documentació tècnica del dispositiu: les seves característiques i el

tipus de format, etc.

• El programari que acompanya el dispositiu: les seves característiques i

format, etc.

• Les observacions en general sobre el dispositiu.

• Les incidències detectades, les solucions proposades i els resultats ob-

tinguts.

• Els diferents components que formen el dispositiu i les seves caracte-

rístiques tècniques (per exemple, en un ordinador podem trobar entre

altres components el processador, la memòria 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ó tèc-

nica, el programari que acompanya el component, la instal·lació i la

configuració del component en el dispositiu, la comprovació del com-

ponent, la documentació del funcionament del component, les obser-

vacions en general, les incidències detectades, etc.

c) El bloc general descriptiu del programari del sistema informàtic (do-

cumentació del programari). Conté les característiques generals del pro-

gramari del sistema (per exemple, el programari base dels ordinadors i

d’altres dispositius, les aplicacions informàtiques, etc.). Podem destacar

com a informació més important:

• Les característiques generals del programari (per exemple, un sistema

operatiu, etc): la descripció del programari, la seva codificació, el fabri-

cant, el distribuïdor i la versió, la data de compra, les dades del distri-

buïdor, les persones de contacte i els sistemes de comunicacions, la

garantia, el servei tècnic, el tipus de programari (lliure o propietari),

l’original o la còpia, la nova instal·lació o actualització, etc.

• La documentació tècnica del programari: les seves característiques i el

tipus de format, etc.

• Les observacions en general sobre el programari.

• Les incidències detectades i les solucions proposades i els resultats ob-

tinguts.

• Etc.

Switches i routers

Els commutadors (switches) són dispositius per a inteconnectar dispositius en xarxes d’àrea local (en anglès, local area network, LAN).

Els encaminadors (routers) són dispositius per a connectar xarxes.

Podeu trobar informació sobre diferents aspectes de la documentació del maquinari utilitzat en la creació de màquines virtuals en la secció “Annexos” del web del crèdit.

!!

Page 111: Rev Smxm2uf1

Sistemes operatius monolloc 111 Introducció als sistemes operatius

2) La documentació o manual d’usuari del sistema informàtic conté tota la

informació que necessita l’usuari per a poder utilitzar de manera correcta el

sistema informàtic. Aquesta informació es pot fer arribar als usuaris per mit-

jà de cursos de formació sobre el funcionament de determinats aspectes del

sistema informàtic o per mitjà de la documentació corresponent en què s’ex-

plica el funcionament del sistema que cal utilitzar.

3) La documentació d’incidències, solucions i les propostes de millores

del sistema informàtic conté informació de les situacions especials succeï-

des 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 l’opció adoptada. També aquesta documentació pot conte-

nir estudis referents a la viabilitat en un moment determinat del sistema

i avaluar-ne la continuïtat. Moltes vegades la documentació d’aquest apar-

tat pot estar inclosa en la documentació del cicle de vida d’un sistema in-

formàtic (documentació general del sistema informàtic, documentació

del maquinari i documentació del programari).

2.8. Interpretació de la documentació tècnica

En tot procés d’instal·lació de programari informàtic, un dels elements

que hem tenir en compte és la interpretació de la documentació tècnica

de la instal·lació del programari informàtic. Aquest aspecte cal tenir-lo

molt present ja que ens donarà la informació necessària i ens permetrà es-

tablir i avaluar el procés més adient per a la instal·lació del programari in-

formàtic. La documentació tècnica s’utilitza principalment durant les

fases de l’anàlisi prèvia, de la instal·lació i de la configuració.

Un exemple que podem comentar sobre la importància de la documenta-

ció tècnica és el de la creació de màquines virtuals. Abans d’executar el

procés d’instal·lació del programari informàtic per a la creació de màqui-

nes virtuals és necessari consultar la documentació tècnica del programa-

ri de creació de màquines virtuals i, a partir d’aquesta documentació,

avaluar-ne la conveniència. Quin tipus d’informació hem d’interpretar?

Bé, podrien indicar la següent:

1) La descripció general del programari. En aquesta part es descriuen els

objectius d’aquest programari, la seva funció i la seva aplicació. Per exem-

ple, en el cas del programari VirtualBox l’objectiu és la virtualització de

plataformes del tipus x86, i d’aplicació podem indicar que el podem instal·-

lar en sistemes Windows, Linux, Mac OS X i Solaris.

La documentació tècnica d’un producte és un conjunt d’informació

en què se n’especifiquen les característiques generals.

Podeu trobar informació sobre diferents aspectes de la documentació del programari utilitzat en la creació de màquines virtuals en la secció “Annexos” del web del crèdit.

!!

Exemple de documentació tècnica

D’exemples de documentació tècnica n’hi ha molts, per esmentar-ne alguns tenim la compra d’un televisor. L’equip s’acompanya d’una documentació en què s’especifiquen les característiques tècniques del producte (la fitxa tècnica),el procés d’instal·lació i de configuració (manual d’usuari), la garantia, etc.

Page 112: Rev Smxm2uf1

Sistemes operatius monolloc 112 Introducció als sistemes operatius

2) Les versions disponibles. Algunes distribucions disposen de versions

obertes i de versions privades. Hem d’avaluar els avantatges i els inconve-

nients de cadascuna de les distribucions. També hem d’avaluar la versió

que volem instal·lar del programari.

3) El format del programari. També un altre element que cal tenir en

compte és el format del programari que s’ha d’instal·lar (format binari i,

per tant, executable o en format comprimit).

4) L’obtenció del programari. El procediment d’obtenció del programari

que cal instal·lar estarà en funció de si el programari és del tipus obert o

propietari. En el cas de programari obert, la font d’obtenció del progra-

mari serà a partir d’un lloc web del qual podrem descarregar l’aplicació

informàtica. El programari propietari es pot obtenir a partir d’algun dis-

tribuïdor del producte.

5) Els requeriments de maquinari. Un element que hem de tenir en

compte són el requeriments mínims de maquinari que necessita el pro-

gramari informàtic. Per a un determinat tipus de plataforma, podem indi-

car els elements següents:

• Les característiques del processador: el tipus, la freqüència, etc.

• La memòria RAM mínima necessària per a poder executar l’aplicació

informàtica.

• L’espai de memòria secundària (disc dur).

• Les característiques de les unitats de disquets.

• El tipus de targeta de xarxa.

• Les característiques de les unitats de CD/DVD.

• Les interfícies sèrie i paral·lel.

• Les unitats USB.

• Etc.

6) Els requeriments de programari. És un altre aspecte que hem de tenir

en compte i fa referència a quin programari hem de tenir instal·lat i con-

figurat per a poder fer la instal·lació del programari de creació de màqui-

nes virtuals. Per a poder instal·lar el programari de creació de màquines

virtuals necessitem tenir instal·lat i configurat algun sistema operatiu am-

fitrió com, per exemple, Windows XP Professional Edition o alguna distri-

bució del sistema GNU/Linux amb el seu programari complementari

corresponent (per exemple, els Service Packs de Windows XP).

7) El manual d’usuari. Finalment, hem de saber interpretar el manual de

l’usuari del programari de creació de màquines virtuals. En aquest docu-

ment podem trobar informació sobre el procediment que cal seguir en la

instal·lació, en la configuració i en la comprovació del programari que s’ha

d’instal·lar. El manual d’usuari pot ser en diversos formats, però el típic

Tux, el pingüí, la mascota de Linux

Page 113: Rev Smxm2uf1

Sistemes operatius monolloc 113 Introducció als sistemes operatius

és el format pdf. Aleshores, necessitarem tenir instal·lat el programari

corresponent per a editar el document corresponent (per exemple, en els

formats pdf necessitem el programari Adobe Reader). Quins elements po-

dem destacar del manual d’usuari? Entre d’altres, els següents:

• La versió del manual d’usuari.

• La introducció.

• La instal·lació en diversos tipus de plataformes: els prerequisits, el pro-

cés d’instal·lació i de desinstal·lació.

• L’actualització.

• L’execució del programari de creació de màquines virtuals en entorns

gràfics. Hem de fixar el nom de la màquina virtual, el tipus de sistema

operatiu hoste, la quantitat de memòria RAM, la grandària del disc dur

virtual, etc.

• La configuració de la màquina virtual.

• L’execució de la màquina virtual pot obligar a modificar el funciona-

ment del teclat i del ratolí (establir combinacions de tecles per a fer de-

terminades accions).

• L’administració del disc virtual permet gestionar el disc virtual de la

màquina virtual creada.

• La importació-exportació de màquines virtuals.

• Els sistemes operatius hostes suportats.

• La gestió del sistema en xarxa en màquines virtuals.

• La possibilitat d’interfície de programació.

• Les diferències entre versions.

• Les llicències.

• El sistema de seguretat.

• El glossari.

• Etc.

Page 114: Rev Smxm2uf1