Professional Documents
Culture Documents
siguiente bloque de tiempo, el programador deba detenerse, rescatar lo que logren el mayor nmero posible de clculos. El cambio a los
que pudiera y volver mas tarde para continuar. Por otra parte, si el sistemas por lotes con secuenciacin automtica de trabajos se efectu
programa se ejecutaba sin problemas, podra terminar en 35 minutos; para mejorar el rendimiento. El problema es que las personas somos
pero como pens que necesitara la mquina durante ms tiempo, se demasiado lentas. Por lo tanto, es deseable sustituir la intervencin
registr para usarla una hora, y esta permanecera inactiva durante 25 humana por el software del sistema operativo. An con esta
minutos. secuenciacin automtica de trabajos, la CPU todava tiene periodos de
inactividad. El problema es la velocidad de los dispositivos mecnicos de
Conforme transcurri el tiempo, se desarrollaron hardware y E/S, los cuales son intrnsecamente ms lentos que los dispositivos
software adicionales; empezaron a popularizarse los lectores de tarjetas, electrnicos. Una CPU lenta trabaja en el orden de los microsegundos,
impresoras de lneas y cintas magnticas. Se disearon ensambladores, pues ejecuta millones de instrucciones por segundo. La solucin que se
cargadores y ligadores para facilitar las tareas de programacin, y se encontr a esto fue el uso de buffers que se anticipaban al programa
crearon bibliotecas de funciones comunes, de manera que stas podan leyendo los datos y dejndolos en memoria antes de que se produjese la
copiarse a un nuevo programa sin tener que escribirlas de nuevo. orden de leerlos, con lo que se acelera la ejecucin total del programa.
Los computadores, sobretodo los centrales de gran tamao, han sido Una definicin ms comn es que el sistema operativo es el
siempre mquinas muy costosas. Por ello, los dueos han deseado que programa que se ejecuta todo el tiempo en el computador, siendo todos
estas mquinas efecten la mayor cantidad posible de clculos. Hoy en los dems, programas de aplicacin.
da, esta situacin tambin se aplica a los microprocesadores de menor
costo, de los cuales, a pesar de no ser tan costosos, siempre se espera
El sistema operativo controla y coordina el uso del hardware por parte necesidad de controlar los distintos dispositivos de E/S y los
de los distintos programas de aplicacin de los diversos usuarios. As, al programas de usuario.
sistema operativo lo podemos considerar:
Sin embargo, en general, no existe una definicin
Similar a un GOBIERNO . Los recursos bsicos de un sistema completamente adecuada de SISTEMA OPERATIVO. Los S.O. existen
informtico son el hardware, el software y los datos. El sistema porque son una va razonable para resolver el problema de crear un
operativo facilita los medios para el uso adecuado de estos sistema informtico manejable.
recursos durante la operacin del sistema informtico. Al igual
que un gobierno, el S.O. no realiza por s mismo una funcin til,
simplemente crea el entorno en el que otros programas puedan
hacer un trabajo til.
CARACTERISTICAS GENERALES .-
o Administrar el hardware . (se encarga de manejar de una mejor Consta del programa ejecutable, sus datos y pila,
manera los recursos del computador en cuanto a hardware contador y otros registros, adems de la informacin
se refiere, asignando a cada proceso una parte del necesaria para ejecutar el programa.
procesador para poder compartir los recursos) La informacin de control relacionada con los procesos
o Organizar datos para acceso rpido y seguro . se almacena en una tabla de procesos :
o Permite que se puedan compartir el hardware y los datos entre o Es administrada por el S. O.
los usuarios . o Posee un arreglo de estructuras, una por cada
o Facilitar las Entradas y Salidas . (debe hacerle fcil al usuario la proceso existente en ese momento.
manipulacin de los dispositivos de E/S) Un proceso (suspendido) consta de:
o Evita que otros usuarios interfieran . (e.d. evita que los usuarios o Un espacio de direccin.
se bloqueen entre ellos, informndoles si esa aplicacin esta o Los datos pertinentes de la tabla de procesos.
siendo ocupada por otro usuario) Un proceso puede crear procesos hijo y con estos
o Manejar las comunicaciones en red . (permite al usuario manejar nuevos procesos hijo, conformar un rbol de
con alta facilidad todo lo referente a la instalacin y uso de procesos .
las redes de computadores)
o Tcnicas de recuperacin de errores . 2)ARCHIVOS :
o Habilidad para evolucionar . (deber construirse de manera que
permita el desarrollo, prueba o introduccin efectiva de Una de las funciones principales del S. O. es brindar
nuevas funciones del sistema sin interferir con el servicio) independencia de dispositivos.
Muchos S. O. soportan el concepto de directorio como
una forma de agrupar archivos.
Los directorios se estructuran jerrquicamente, por lo
CONCEPTOS DE SISTEMAS OPERATIVOS .- que a cada archivo le corresponde una ruta de
acceso .
En general los ms representativos son los siguientes: Existen distintos esquemas de seguridad de archivos
en los distintos S. O.
1)PROCESOS :
Es el concepto central de todos los S. O. 3)LLAMADAS AL SISTEMA :
Es bsicamente un programa en ejecucin.
Permiten a los programas comunicarse con el S. O. y
solicitarle servicios.
A cada llamada le corresponde un procedimiento: el trabajo mientras ste se ejecuta. El trabajo se prepara y se enva.
o Pone los parmetros de la llamada en un lugar Tiempo despus aparece la salida.
especfico para luego ejecutar una instruccin
de llamada a procedimiento protegido para
iniciar el S. O.
o Luego el S. O. recupera el control, examina los 2) MULTIPROGRAMACIN.
parmetros y si son vlidos ejecuta el trabajo
solicitado. Un solo usuario no puede, en general, mantener todo el tiempo
o Luego de terminar, el S. O. coloca un cdigo de ocupada a la UCP o a los dispositivos de E/S. La multiprogramacin
estado en un registro indicando si tuvo xito o aumenta la utilizacin de la UCP organizando los trabajos de manera
fracaso y ejecuta una instruccin del tipo que sta siempre tenga algo que ejecutar. El S.O. escoge uno de los
return para regresar el control al trabajos del depsito y comienza a ejecutarlo. En algn momento el
procedimiento. trabajo tendr que esperar, ya que el sistema ha pasado el control a otro
o El procedimiento regresa al programa llamador programa y as sucesivamente. Mientras haya otro trabajo por ejecutar,
con un cdigo de estado como un valor de la UCP nunca estar inactiva.
funcin; dentro de los parmetros pueden
regresar valores adicionales. Los sistemas operativos multiprogramados son bastante
sofisticados. Tener varios trabajos dispuestos para su
ejecucin, supone mantenerlos simultneamente
en memoria.
GESTION DE PROCESOS DE UN SISTEMA OPERATIVO
(Tipos de) .-
s.o.
Fig.3 Imagen abstracta
de la distribucin de
trabajo 1 memoria para un sistema
1) SISTEMAS POR LOTES. mutiprogramado.
trabajo 2
Cuando se desarrollaron por primera vez, estaban
trabajo 3
caracterizados por la "agrupacin en bloques" de trabajos similares. Los
modernos sistemas utilizan otras caractersticas. El rasgo caracterstico
de un sistema por lotes es la ausencia de interaccin entre el usuario y
trabajo 4
Dentro de los sistemas multiprogramados tenemos tres tipos: Fig.4 Tiempo Compartido
SENSOR
UCP tty
UCP
tty
CONTROL
1Periodo : 1 Semestre de 2004.
tty
( Ver. R.003 CIISA 2004 )
Profesor : Ral Carvajal S.
C I I S A 8
Apuntes n1 Sistemas Operativos
Es la estructura de los primeros sistemas operativos constituidos A medida que fueron creciendo las necesidades de los usuarios y
fundamentalmente por un slo programa compuesto de un conjunto de se perfeccionaron los sistemas, se hizo necesaria una mayor
rutinas entrelazadas de tal forma que cada una puede llamar a cualquier organizacin del software, del sistema operativo, donde una parte del
otra. Sus caractersticas principales son: sistema contena subpartes y esto organizado en forma de niveles. Se
dividi el sistema operativo en pequeas partes, de tal forma que cada
Construccin del programa final a base de mdulos una de ellas estuviera perfectamente definida y con una clara interfaz
compilados separadamente que se unen a travs del ligador. con el resto de elementos.
Carecen de protecciones y privilegios al entrar a rutinas que Se constituy una estructura jerrquica o de niveles en los
manejan diferentes aspectos de los recursos de la computadora, sistemas operativos, el primero de los cuales fue denominado THE
como memoria, disco, etc. (Technische Hogeschool, Eindhoven), de Dijkstra, que se utiliz con fines
didcticos (Figura 7). Se puede pensar tambin en estos sistemas como
si fueran `multicapa'. Multics y Unix caen en esa categora y
prcticamente la mayora de los sistemas operativos actuales.
(Fig.6)
(Fig.7)
Estn generalmente hechos a medida, por lo que son eficientes y
rpidos en su ejecucin y gestin, pero por lo mismo carecen de
flexibilidad para soportar diferentes ambientes de trabajo o tipos de
aplicaciones.
Aplicacin Servidor de
(Fig.9) cliente Servidor de red
memoria
Servidor de
Servidor de despliegue
1.4) Cliente-servidor. archivos
COMPARATIVA GRFICA
Figura 11: Sistema operativo monoltico.
2.2 ) Multiusuarios.
2.3 ) Monotareas.
permite un rpido intercambio entre las tareas para el usuario, Existen aplicaciones que fueron hechas para correr en sistemas
mejorando su productividad. monoproceso que no toman ninguna ventaja a menos que el sistema
operativo o el compilador detecte secciones de cdigo paralelizable, los
2.5 ) Uniproceso. cuales son ejecutados al mismo tiempo en procesadores diferentes . Por
otro lado, el programador puede modificar sus algoritmos y aprovechar
Un sistema operativo uniproceso es aqul que es capaz de por s mismo esta facilidad, pero esta ltima opcin las ms de las veces
manejar solamente un procesador de la computadora, de manera que si es costosa en horas hombre y muy tediosa, obligando al programador a
la computadora tuviese ms de uno le sera intil. El ejemplo ms tpico ocupar tanto o ms tiempo a la paralelizacin que a elaborar el algoritmo
de este tipo de sistemas es el DOS y tambin el MacOS. inicial.
2.6 ) Multiproceso.
3) S.O. POR LA FORMA DE OFRECER SUS SERVICIOS . (Visin
Un sistema operativo multiproceso se refiere al nmero de externa)
procesadores del sistema, que es ms de uno y ste es capaz de
usarlos todos para distribuir su carga de trabajo. Generalmente estos Esta clasificacin tambin se refiere a una visin externa, que en
sistemas trabajan de dos formas: simtrica o asimtricamente . este caso se refiere a la del usuario, el cmo accesa los servicios. Bajo
Cuando se trabaja de manera asimtrica, el sistema operativo esta clasificacin se pueden detectar dos tipos principales: sistemas
selecciona a uno de los procesadores el cual jugar el papel de operativos de red y sistemas operativos distribudos propiamente tal.
procesador maestro y servir como pivote para distribuir la carga a los
dems procesadores, que reciben el nombre de esclavos. Cuando se
trabaja de manera simtrica, los procesos o partes de ellos (threads) son 3.1 ) Sistemas Operativos de Red.
enviados indistintamente a cualesquiera de los procesadores
disponibles, teniendo, tericamente, una mejor distribucin y equilibrio
en la carga de trabajo bajo este esquema. Los sistemas operativos de red se definen como aquellos que
tienen la capacidad de interactuar con sistemas operativos en otras
Se dice que un thread es la parte activa en memoria y corriendo computadoras por medio de un medio de transmisin con el objeto de
de un proceso, lo cual puede consistir de un rea de memoria, un intercambiar informacin, transferir archivos, ejecutar comandos remotos
conjunto de registros con valores especficos, la pila y otros valores de y un sin fin de otras actividades. El punto crucial de estos sistemas es
contexto. Un aspecto importante a considerar en estos sistemas es la que el usuario debe saber la sintaxis de un conjunto de comandos o
forma de crear aplicaciones para aprovechar los varios procesadores. llamadas al sistema para ejecutar estas operaciones, adems de la
ubicacin de los recursos que desee accesar. Lo importante es hacer ver recursos como una sola entidad en forma transparente se le llama
que el usuario puede accesar y compartir muchos recursos remotos va sistema operativo distribudo . Las razones para crear o adoptar
el sistema operativo. sistemas distribudos se dan por dos razones principales: por necesidad
( debido a que los problemas a resolver son inherentemente
3.2 ) Sistemas Operativos Distribudos. distribudos ) o porque se desea tener ms confiabilidad y disponibilidad
de recursos. En el primer caso tenemos, por ejemplo, el control de los
cajeros automticos en diferentes regiones de un pas. Ah no es posible
Los sistemas operativos distribudos abarcan los servicios de los ni eficiente mantener un control centralizado, es ms, no existe
sistemas operativos de red, logrando integrar recursos ( impresoras, capacidad de cmputo y de entrada/salida para dar servicio a los
unidades de respaldo, memoria, procesos, unidades centrales de millones de operaciones por minuto. En el segundo caso, supngase
proceso ) en una sola mquina virtual que el usuario accesa en forma que se tienen en una gran empresa varios grupos de trabajo, cada uno
transparente. Es decir, ahora el usuario ya no necesita saber la necesita almacenar grandes cantidades de informacin en disco duro
ubicacin de los recursos, sino que los conoce por nombre y con una alta confiabilidad y disponibilidad. La solucin puede ser que
simplemente los usa como si todos ellos fuesen locales a su lugar de para cada grupo de trabajo se asigne una particin de disco duro en
trabajo habitual. Todo lo anterior es el marco terico de lo que se servidores diferentes, de manera que si uno de los servidores falla, no se
deseara tener como sistema operativo distribudo, pero en la realidad no deje dar el servicio a todos, sino slo a unos cuantos y, ms an, se
se ha conseguido crear uno del todo, por la complejidad que suponen: podra tener un sistema con discos en espejo ( mirror ) a travs de la
distribur los procesos en las varias unidades de procesamiento, red, de manera que si un servidor se cae, el servidor en espejo contina
reintegrar sub-resultados, resolver problemas de concurrencia y trabajando y el usuario ni cuenta se da de estas fallas, es decir, obtiene
paralelismo, recuperarse de fallas de algunos recursos distribudos y acceso a recursos en forma transparente.
consolidar la proteccin y seguridad entre los diferentes componentes
del sistema y los usuarios. Los avances tecnolgicos en las redes de
rea local y la creacin de microprocesadores de 32 y 64 bits lograron TENDENCIAS
que computadoras mas o menos baratas tuvieran el suficiente poder en
forma autnoma para desafiar en cierto grado a los mainframes, y a la
vez se dio la posibilidad de intercomunicarlas, sugiriendo la oportunidad Las principales tendencias en los S. O. son las siguientes:
de partir procesos muy pesados en clculo en unidades ms pequeas y
distribuirlas en los varios microprocesadores para luego reunir los sub- Soporte generalizado para multiprocesamiento.
resultados, creando as una mquina virtual en la red que exceda en
poder a un mainframe. El sistema integrador de los microprocesadores
Migracin hacia el microcdigo de funciones de los S. O.
realizadas por software.
que hace ver a las varias memorias, procesadores, y todos los dems