Sunteți pe pagina 1din 7

SISTEMAS OPERATIVOS

El documento presenta la evolucin de los sistemas operativos a lo largo de la historia, introduciendo los conceptos
fundamentales relativos a stos, como podr!an ser la gestin de procesos o su ar"uitectura#
As! mismo, se ha tratado de dar todas las referencias posi$les so$re S#O#%s desconocidos para la ma&or!a & "ue han 'ugado
un papel m(s o menos determinante en la historia# Se han incluido algunos "ue no han pasado del $orrador pero "ue
citamos como simple curiosidad# )e cual"uier manera, la lista proporcionada es mu& incompleta dado el gran n*mero de
Sistemas Operativos "ue e+isten o "ue han e+istido#
,ndice
- .# Introduccin
- /# 0ecesidad de Sistema Operativo
o /#.# Vista histrica
o /#/# )efinicin
- 1# Tipos de gestin de procesos
o 1#.# 2otes
o 1#/# Multiprogramacin
1#/#.# Tiempo compartido
1#/#/# Tiempo real
1#/#1# 3om$inados
o 1#1# )istri$uidos
- 4# Ar"uitectura
o 4#.# 5ernel monol!tico
o 4#/# Micro6ernel
o 4#1# M("uinas virtuales
o 4#4# 3liente7servidor
- 8# 9unciones
- :# Otros aspectos
- ;# <n paseo por la historia
- =i$liograf!a
- 3onclusiones
.# Introduccin
Anta>o, con las primeras m("uinas, era algo mu& complicado ser programador### & no slo por"ue los lengua'es de
programacin no ha$ian evolucionado, sino por"ue se de$!a mane'ar el ordenador desde la consola & la consola en
a"uellos tiempos significa$a un pu>ado de interruptores# Afortunadamente, esto ha ido cam$iando & se lo de$emos, en
parte, a "ue han nacido & evolucionado los sistemas operativos# 3omo tam$in lo han hecho las m("uinas, los lengua'es
de programacin e incluso las ideas#
/# 0ecesidad de Sistema Operativo
- /#.# Vista histrica
En un principio solo e+ist!a el hard?are del computador# 2os primeros computadores eran @f!sicamenteA grandes m("uinas
"ue se opera$an desde una consola# El programador escri$!a un programa & luego lo controla$a directamente# En primer
lugar, el programa se carga$a manualmente en la memoria, desde los interruptores del ta$lero frontal, desde una cinta de
papel o desde tar'etas perforadas# 2uego se pulsa$an los $otones adecuados para esta$lecer la direccin de inicio &
comenBar la e'ecucin del programa# Mientras este se e'ecuta$a, el programador7operador lo pod!a supervisar o$servando
las luces en la consola# Si se descu$r!an errores, el programador pod!a detener el programa, e+aminar el contenido de la
memoria & los registros & depurar el programa directamente desde la consola# 2a salida del programa se imprim!a, o se
perfora$a en cintas de papel o tar'etas para su impresin posterior# <n aspecto importante de ese entorno era su naturaleBa
interactiva directa# El programador tam$in era el operador del sistema de computacin#
2a ma&or!a de los sistemas utiliBa$an un es"uema de reservas o de registro para asignar tiempo de m("uina# Si alguien
"uer!a usar el computador, acud!a a la ho'a de registro, $usca$a el siguiente tiempo li$re de la m("uina "ue fuera
conveniente & se anota$a para usarla# Sin em$argo, con este procedimiento se presenta$an ciertos pro$lemas# Si un
programador se ha$!a registrado para usar una hora de tiempo del computador dedicada a e'ecutar el programa "ue esta$a
desarrollando, pero se topa$a con alg*n error dif!cil & no pod!a terminar en esa hora# Si alguien m(s ha$!a reservado el
siguiente $lo"ue de tiempo, el programador de$!a detenerse, rescatar lo "ue pudiera & volver mas tarde para continuar# Por
otra parte, si el programa se e'ecuta$a sin pro$lemas, podr!a terminar en 18 minutosC pero como pens "ue necesitar!a la
m("uina durante m(s tiempo, se registr para usarla un hora, & permanecer!a inactiva durante /8 minutos#
3onforme transcurri el tiempo, se desarrollaron soft?are & hard?are adicionalesC empeBaron a populariBarse los lectores
de tar'etas, impresoras de lineas & cintas magnticas# Se dise>aron ensam$ladores, cargadores & ligadores para facilitar las
tareas de programacin, & se crearon $i$liotecas de funciones comunes, de manera "ue stas pod!an copiarse a un nuevo
programa sin tener "ue escri$irlas de nuevo#
Se pod!a necesitar un considera$le tiempo de operacin para realiBar un tra$a'o# 3ada tra$a'o consist!a en varios pasos
distintosD cargar la cinta del compilador de 9ORTRA0, e'ecutar el compilador, descargar la cinta del compilador, cargar la
cinta del ensam$lador, e'ecutar el ensam$lador, descargar la cinta del ensam$lador, cargar el programa o$'eto & e'ecutarlo#
Si ocurr!a un error en cual"uiera de los pasos, pro$a$lemente ha$r!a "ue comenBar desde el principio# 3ada paso del
tra$a'o pod!a ocasionar la necesidad de cargar & descargar cintas magnticas, cintas de papel o tar'etas perforadoras, por lo
"ue al avanBar el tiempo aparecieron los primeros sistemas operativos#
2os computadores, so$retodo los centrales de gran tama>o, han sido siempre m("uinas mu& costosas# Por ello, los due>os
han deseado "ue estas m("uinas efectuen la ma&or cantidad posi$le de c(lculos# Eo& en d!a, esta situacin tam$in se
aplica a los microprocesadores de menor coste, de los cuales, a pesar de no ser tan costosos, siempre se espera "ue logren
el ma&or n*mero posi$le de c(lculos# El cam$io a los sistemas por lotes con secuenciacin autom(tica de tra$a'os se
efectu para me'orar el rendimiento# El pro$lema es "ue las personas somos demasiado lentas# Por lo tanto, es desea$le
sustituir la intervencin humana por el soft?are del sistema operativo# A*n con esta secuenciacin autom(tica de tra$a'os,
la <3P todav!a tiene periodos de inactividad# El pro$lema es la velocidad de los dispositivos mec(nicos de EFS, los cuales
son intr!nsecamente m(s lentos "ue los dispositivos electrnicos# <na <3P lenta tra$a'a en el orden de los microsegundos,
pues e'ecuta millones de instrucciones por segundo# 2a solucin "ue se encontr a esto fue el uso de $uffers o tampones
"ue se anticipa$an al programa le&endo los datos & de'(ndolos en memoria antes de "ue se produ'ese la orden de leerlos,
con lo "ue se acelera la e'ecucin total del programa#
- /#/# )efinicin
)efinamos ahora el concepto de Sistema OperativoD Es un programa "ue act*a como intermediario entre el usuario & el
hard?are de un computador & su propsito es proporcionar un entorno en el cual el usuario pueda e'ecutar programas# El
o$'etivo principal de un sistema operativo es lograr "ue el sistema de computacin se use de manera cmoda & el o$'etivo
secundario es "ue el hard?are del computador se emplee de manera eficiente# <na definicin m(s com*n es "ue el
sistema operativo es el programa "ue se e'ecuta todo el tiempo en el computador, siendo programas de aplicacin todos
los dem(s#
o O$'etivo principalD los sistemas operativos e+isten por"ue se supone "ue es mas f(cil tra$a'ar con uno de ellos
"ue sin l# Esta situacin es particularmente clara cuando se o$servan los sistemas operativos para los pe"ue>os
computadores personales#
o O$'etivo secundarioD es la utiliBacin eficiente del sistema de computacin# Este propsito tiene una importancia
especial en los grandes sistemas multiusuario compartidos# En el pasado, las consideraciones de eficiencia a menudo eran
m(s importantes "ue la comodidad, por lo "ue gran parte de la terica de sistemas operativos se concentra en el uso
ptimo de los recursos de computacin#
2os sistemas operativos & la ar"uitectura del computador tienen una gran influencia mutua# 2os sistemas operativos se
desarrollan para facilitar el uso del hard?are# Al ir dise>ando & utiliBando los sistemas operativos, se hiBo patente "ue
podr!an simplificarse con cam$ios en el dise>o del hard?are#
1# Tipos de gestin de procesos de un Sistema Operativo
En un principio, los computadores se utiliBa$an desde la consola central# El soft?are me'or la comodidad de programar,
pero necesita$a un tiempo considera$le de preparacin# Para reducir este tiempo, se contrataron operadores & los tra$a'os
seme'antes se agruparon en lotes# El computador &a no ten!a "ue esperar la intervencin humana, aun as!, la utiliBacin de
la <3P era mu& lenta# 3on el fin de me'orar el rendimiento glo$al del sistema se introdu'o el concepto de
multiprogramacin, gracias al cual se almacenan en la memoria varios tra$a'os al mismo tiempo, lo "ue aumenta el
rendimiento de la <3P & reduce el tiempo de e'ecucin de los tra$a'os#
- 1#.# Sistemas por lotes#
3uando se desarrollaron por primera veB, esta$an caracteriBados por la Gagrupacin en $lo"uesG de tra$a'os similares# 2os
modernos sistemas utiliBan otras caracter!sticas# El rasgo caracter!stico de un sistema por lotes es la ausencia de
interaccin entre el usuario & el tra$a'o mientras ste se e'ecuta# El tra$a'o se prepara & se env!a# Tiempo despus aparece
la salida#
- 1#/# Multiprogramacin#
<n solo usuario no puede, en general, mantener todo el tiempo ocupado a la <3P o a los dispositivos de EFS# 2a
multiprogramacin aumenta la utiliBacin de la <3P organiBando los tra$a'os de manera "ue sta siempre tenga algo "ue
e'ecutar# El S#O# escoge uno de los tra$a'os del depsito & comienBa a e'ecutarlo# En alg*n momento el tra$a'o tendr( "ue
esperar, &a "ue el sistema ha pasado el control a otro programa & as! sucesivamente# Mientras ha&a otro tra$a'o por
e'ecutar, la <3P nunca estar( inactiva#
)entro de los sistemas multiprogramados tenemos tres tiposD
o 1#/#.# Tiempo compartido#
<tiliBa la planificacin de la <3P & la multiprogramacin para proporcionar a cada usuario, "ue tiene su propio programa
en memoria, una pe"ue>a porcin de un computador de tiempo compartido# 2a EFS interactiva es demasiado lenta para un
computador por lo "ue, para "ue la <3P no permaneBca inactiva, el S#O# la cam$iar( al programa de otro usuario# Hsto
ocurre tan r(pidamente "ue cada usuario tiene la impresin de "ue cuenta con su propio computador, cuando en realidad
todos lo comparten#
o 1#/#/ Tiempo real#
Suele usarse como dispositivo de control en una aplicacin dedicada# Tiene restricciones temporales $ien definidas, por lo
"ue el procesamiento de$e llevarse a ca$o dentro de los l!mites definidos o el sistema fallar(# Puede parecernos e+tra>a la
utilidad de este tipo de gestin, as! "ue pondremos un e'emploD una nave espacial se dispone a acoplarse a la estacin
espacial MIR, nos interesa conocer las coordenadas de la MIR en todo momento para compararlas con las nuestras & as!
actuar en consecuencia# )e nada nos sirve "ue se resuelvan los c(lculos una veB nos hemos estrellado por"ue un
astronauta esta$a 'ugando con el mismo ordenador al tetris & este consum!a toda la potencia de c(lculo del ordenador#
o 1#/#1 3om$inados
Es una meBcla de los dos anteriores# Aun"ue se ha intentado com$inar la funcionalidad del tiempo compartido & el tiempo
real en un solo S#O#, los resultados han sido psimos de$ido a los o$vios conflictos entre los re"uisitos de am$os tipos#
- 1#1# Sistemas distri$uidos#
Es un sistema d$ilmente acoplado, es decir, los procesadores no comparten ni memoria ni relo', cada uno cuenta con su
propia memoria local & se comunican a travs de distintas l!neas de comunicacin# 2os procesadores pueden variar de
tama>o & funcin# 2as principales venta'as sonD
o 3omparticin de recursos#
o Aceleracin de los c(lculos#
o 9ia$ilidad#
o 3omunicacin#
4# Ar"uitectura de un S#O#
Para comenBar este apartado podemos plantear la siguiente preguntaD GIJu pasa si el propio sistema operativo necesita
hacer algo "ue es capaB de hacer pero no se encuentra en el cdigo "ue est( e'ecutando en ese momentoKG )icho de otra
manera, vamos a ver dnde se encuentran las diferentes funciones de un S#O# & "u tiene "ue hacer para usarlas# Easta
ahora hemos visto parte del aspecto Ge+teriorG del S#O#, "ue es la organiBacin "ue da a los programas a la hora de
e'ecutarlos# Pasemos a e+aminar las diferentes posi$ilidades de implementacin de un S#O# Gpor dentroG, es decir, no
cmo organiBa el sistema operativo al resto de programas, sino cmo se organiBa respecto a s! mismo#
- 4#.# 5ernel monol!ticoD 2a estructura de esta ar"uitectura es simplemente no tener ninguna# A nivel de n*cleo no
se produce ninguna a$straccin, es decir, si un procedimiento necesita a otro es li$re de hacerlo en cual"uier momento#
9ue el primer enfo"ue en la historia, el resto son evoluciones#
- 4#/# Micro6ernel o micron*cleoD En este caso, el S#O# se ocupa solo de unas pocas funciones, reduciendo el
n*cleo a su m!nima e+presin# El resto de funciones pasan a estar en el espacio de usuario#
- 4#1# Ma"uinas virtualesD El primer sistema con esta esta ar"uitectura naci con la idea de separar completamente
las dos funciones caracter!sticas de un S#O# de tiempo compartidoD multiprogramacin & un interfaB mas apropiado "ue el
del puro EL# El centro del sistema, tam$ien conocido como monitor de la m("uina virtual, se e'ecuta directamente so$re
el propio EL, encarg(ndose de la multiprogramacin# )e esta forma, ofrece al nivel superior varias m("uinas virtuales,
"ue son copias e+actas del hard?are, por lo "ue se puede dar el caso de e'ecutar varios S#O# so$re cada una de ellas @de
hecho, el caso mas usualA#
- 4#4# Modelo cliente7servidorD Esta es la tendencia en cuanto a ar"uitectura de los S#O# ho& en d!a# 3onsiste en
reducir al m!nimo el 6ernel, al igual "ue en el caso de los micro6ernels, pero en este caso la *nica funcin del 6ernel es de
servir de puente entre procesosD cuando una funcin necesita de otra es el 6ernel el "ue se encarga de mantener la
comunicacin entre ellas, pero nada m(s#
8# )iferentes funciones de un S#O#
El sistema operativo crea un entorno para la e'ecucin de cada proceso, adem(s de ofrecer ciertos servicios a los
programas & a sus usuarios# Vamos a ver algunos de ellos#
2os servicios espec!ficos "ue ofrece cada S#O# suelen ser diferentes, dependiendo del sector al "ue est(n destinados,
aun"ue algunas clases de ellos son comunesD las operaciones de EFS, la manipulacin del sistema de archivos, la deteccin
de errores, etc# Estas funciones tienen el propsito, en su ma&or!a, de favorecer la tarea del programador, haciendo m(s
f(cil su tra$a'o# 2o "ue realmente nos est( dando el S#O# es una capa de a$straccin del hard?are particular so$re el "ue
corre# Por si no ha "uedado claro el por"u de estas facilidades, pongamos un e'emploD un programador de $ases de datos
"ue tra$a'e con dos m("uinas distintas en EL se encontrar( con el pro$lema de "ue tiene "ue sa$er manipular los
archivos tanto en una como en otra plataforma# Si el S#O# cumple $ien el o$'etivo de a$straccin, un mismo programa
puede funcionar so$re dos m("uinas de ar"uitectura diferente con el mismo sistema operativo, sin "ue haga falta
modificar el cdigo del programa#
Adem(s de estas funciones, el S#O# tiene otro con'unto destinado al funcionamiento eficiente de la m("uinaD asignacin de
recursos, gestin de procesos, ###
Pr(cticamente, estos dos grandes grupos de funciones determinan todo lo "ue hace un S#O#D por un lado, las "ue facilitan
la vida al programador &, por otro, las "ue hacen "ue stas *ltimas se e'ecuten en un medio con consistencia# )e nada
servir!a "ue el sistema permitiese a$rir 8 archivos simult(neamente si es incapaB de de'ar algo de memoria para la
e'ecucin del programa "ue los ha a$ierto#
Veamos ahora algunos de estos tipos de llamadas al sistema, o servicios "ue ofrece el sistemaD
- Para la gestin de procesosD )entro de este tipo nos encontramos todas a"uellas llamadas necesarias para la
e'ecucin de programas, as! como la eficiente distri$ucin de recursos entre stos#
- Para el acceso a dispositivos de EFSD 3omo hemos dicho antes, el S#O# de$e a$straer el funcionamiento del
hard?are al programador# Para ello, el sistema nos provee de ciertas funciones genricas para su acceso#
- Para la deteccin de errores & respuestaD A pesar de ser m("uinas, en los sistemas se pueden producir multitud de
errores, tanto de SL como de EL, algunos de ellos pueden serD
o Acceso a Bonas prohi$idas de memoria @SLA
o Imposi$ilidad de asignar los recursos solicitados por una aplicacin @SLA
o 9allo de alg*n dispositivo de almacenamiento @ELA
En todos los casos el sistema ha de ser capaB de responder con +ito a estos sucesos, o en su defecto, evitar la prdida de
datos# Alguno de estos pro$lemas, como la imposi$ilidad de asignar recursos solicitados por una aplicacin han causado
muchos "ue$raderos de ca$eBa a los programadores & se han llegado a escri$ir cap!tulos enteros so$re las posi$les
soluciones#
- Para la conta$ilidad del sistemaD Si $ien este tipo de funciones no las encontramos en todos los S#O#, son
$astante comunes en a"uellos "ue tienen la particularidad de ser multiusuario#
:# Otros aspectos#
Easta ahora nos hemos centrado en descri$ir "u es lo "ue nos ofrec!a un S#O# o$'etivamente# Es hora de ver cu(l es el
resultado de emplear un tipo determinado de estructura o de gestin de procesos#
Por norma, nos encontraremos generalmente con el dilema de "ue m(s comodidad significa autom(ticamente menos
eficiencia & viceversa# Ocurre lo mismo con los lengua'es de programacinD el ensam$lador es tremendamente eficiente
pero, sin em$argo, es mucho m(s dif!cil de usar#
Otro aspecto importante a considerar es la facilidad "ue tiene el sistema operativo para adaptarse a los nuevos cam$ios, o
sea, evolucionar# <n 6ernel monol!tico ser( mucho mas dif!cil de mantener "ue un micro6ernel donde podr!amos hacer los
cam$ios simplemente en la capa de usuario#
<n paseo por la historia#
A continuacin se presenta una ta$la cronolgica "ue nos va a a&udar a relacionar diferentes S#O#%s seg*n sus
caracter!sticas m(s nota$les#
Ta$la de caracter!sticas
S#O# A>o Autor Mestin de procesos Ar"uitectura Multiusuario
Atlas
8N7:N <niversit& of Manchester 2otes monol!tico 0o
The
<niversidad de Eindhoven 2otes modular no
R34NNN
=rinch Eansen de Regenecentralen S#O# 3ompleto modular no
Solo
=rinch Eansen de Regenecentralen multiprogramado modular no
3TSS
MIT multiprogramado7tO compartido monol!tico si
Multics
MIT multiprogramado7tO compartido modular si
<ni+
.P:P Ritchie F Thompson multiprogramado7tOcompartido monol!tico si
Sprite
.PQ4 multiprogramado modular si
Merlin
.PQ4 2otes monol!tico no
Lindo?s 0T
.PQ8 Microsoft multiprogramado modular si
Mach
.PQ: )arpa multiprogramado monol!tico si
Amoe$a
.PP4 @En desarrolloA distri$uido micro6ernel si
Lindo?s P8FPQ
.PP8FPQ Microsoft multiprogramado monol!tico no
3o&ote
.PP: Trinit& 3ollege )u$l!n distri$uido modular si
E+o6ernel
En desarrollo micro76ernel monol!tico si
=i$liograf!a
3onsultas varias realiBadas por internet
3onclusiones
3omo hemos visto, e+isten multitud de Sistemas Operativos, muchos de los cualesel p*$lico desconoce, pero "ue
nosotros, como inform(ticos tenemos la %o$ligacin% de sa$er de ellos o incluso pro$arlos# Muchos de ellos son incluso de
li$re distri$ucin#
)e nada nos servir( "ue las tiendas ofreBcan ahora preinstalar Lindo?s o 2inu+, ha$iendo una $ara'a entera de S#O#%s
entre los "ue elegir# Estas iniciativas est(n le'os de complacer a todos a"uellos "ue tratan de llegar m(s le'os, es decir, de
a$rir los o'os#

S-ar putea să vă placă și