Вы находитесь на странице: 1из 26

1

Instituto Tecnolgico Del Istmo.



Materia: Sistemas Operativos.
Maestro:
Ing. Aragn Reyes Vera Alexandro.

Unidad I.
Introduccin a los Sistemas Operativos.

Integrante:
Garca Snchez Jhonatan Alan.

Grupo: o. Grado: 3er Semestre.

Juchitn de Zaragoza, Oaxaca a 6 de
septiembre del 2014.



2


Introduccin.
En esta unidad veremos lo que es un Sistema Operativo (SO): es una coleccin organizada
de rutinas o extensiones de software del hardware. Consiste en rutinas de control que
hacen funcionar una computadora y proporcionan un entorno para la ejecucin de los
programas. El SO debe brindar una forma de que el usuario se pueda interactuar con l a
travs de una interfaz que le brinde una va de comunicacin con el hardware del sistema
informtico.
El objetivo principal del SO es lograr es el lograr que el hardware de la computadora se
emplee de modo eficiente, y el objetivo secundario se use de manera cmoda y segura.
El SO debe asegurar el correcto funcionamiento del sistema informtico. Para lograr esto
el hardware debe brindar algn mecanismo apropiado que impida que los usuarios
intervengan en el funcionamiento del sistema y as mismo el SO debe poder utilizar este
recurso de hardware de modo que esto se cumpla.
El SO debe ofrecer servicios a los programas y sus usuarios para facilitar la tarea de
programacin.









3


ndice
Introduccin. ....................................................................................................................................... 2
1.1.-Introduccin a los sistemas operativos. ....................................................................................... 4
1.1 Definicin Y Concepto. .................................................................................................................. 4
1.2 Funciones Y Caractersticas. .......................................................................................................... 6
1.3.- Evolucin Histrica ...................................................................................................................... 9
1.4 Clasificacin. ................................................................................................................................ 13
1.5 Estructura (niveles o estratos de diseo). ................................................................................... 15
1.6 Ncleo. ........................................................................................................................................ 18
1.6.1 Interrupciones (FLIH). ............................................................................................................... 20
1.6.2 Despachador (Schedule). ......................................................................................................... 22
1.6.3 Primitivas de Comunicacin. .................................................................................................... 24
Conclusin. ........................................................................................................................................ 25
BIBLIOGRAFIA. ................................................................................................................................... 26










4
1.1.-Introduccin a los sistemas operativos.



1.1 Definicin Y Concepto.

Se define coleccin de mecanismos de software destinados a servir de interface entre un
Sistema informtico y sus usuarios, el cual ofrece herramientas y facilidades para
simplificar las tareas de diseo, codificacin, depuracin, actualizacin, etc.
Administra los recursos hardware y software que constituyen el sistema informtico a
explotar. El S.O naci con la necesidad de llevar el control de quin utiliza los recursos
software.
Componentes principales: manejo de procesos, entrada/salida, manejo de memoria y del
sistema de archivos.
Un sistema de computacin consta de hardware, programas del sistema y programas de
aplicacin.

El sistema operativo guarda al programador del hardware del disco y presenta una
interfaz simple orientada al archivo, tambin disimula mucho del trabajo concerniente a
interrupciones, relojes o cronmetros, manejo de memoria y otras caractersticas de bajo
nivel.
Desde su invento, las computadoras digitales han utilizado un sistema de codificado de
instrucciones en sistema de numeracin binaria, es decir con los 0S. Esto se debe a que los
circuitos integrados funcionan con este principio, es decir, hay corriente o no hay
corriente.
En el origen de la historia de las computadoras, los sistemas operativos no existan y la
introduccin de un programa para ser ejecutado se converta en un increble esfuerzo que

5
solo poda ser llevado a cabo por muy pocos expertos. Esto hacia que las computadoras
fueran muy complicadas de usar y que se requiriera tener altos conocimientos tcnicos
para operarlas. Era tan complejo su manejo, que en algunos casos el resultado llegaba a
ser desastroso.
Adems, el tiempo requerido para introducir un programa en aquellas grandes mquinas
de lento proceso superaba por mucho el de ejecucin y resultaba poco provechosa la
utilizacin de computadoras para resolucin de problemas prcticos.
Se buscaron medios ms elaborados para manipular la computadora, pero que a su vez
simplificaran la labor del operador o el usuario. Es entonces cuando surge la idea de crear
un medio para que el usuario pueda operar la computadora con un entorno, lenguaje y
operacin bien definido para hacer un verdadero uso y explotacin de esta. Surgen los
sistemas operativos.
Un sistema operativo es el encargado de brindar al usuario una forma amigable y sencilla
de operar, interpretar, codificar y emitir las ordenes al procesador central para que este
realice las tareas necesarias y especficas para completar una orden.
El sistema operativo, es el instrumento indispensable para hacer de la computadora un objeto til.
Bajo este nombre se agrupan todos aquellos programas que permiten a los usuarios la utilizacin
de este enredo de cables y circuitos, que de otra manera serian difciles de controlar. Un sistema
operativo se define como un conjunto de procedimientos manuales y automticos, que permiten a
un grupo de usuarios compartir una instalacin de computadora eficazmente.
Existen diversas definiciones de lo que es un Sistema Operativo, pero no hay una
definicin exacta, es decir una que sea estndar; a continuacin se presentan algunas:

1.- Se pueden decir de un Sistema Operativo como los programas, instalados en el
software o firmware, que hacen utilizable el hardware. El hardware proporciona la
"capacidad bruta de cmputo"; los sistemas operativos ponen dicha capacidad de
cmputo al alcance de los usuarios y administran cuidadosamente el hardware para lograr
un buen rendimiento.

2.- Los Sistemas Operativos son ante todo administradores de recursos; el principal
recurso que administran es el hardware del computador; adems de los procesadores, los
medios de almacenamiento, los dispositivos de entrada/salida, los dispositivos de
comunicacin y los datos.

3.- Un Sistema Operativo es un programa que acta como intermediario entre el usuario y
el hardware del computador y su propsito es proporcionar el entorno en el cual el
usuario pueda ejecutar programas. Entonces, el objetivo principal de un Sistema
Operativo es, lograr que el sistema de computacin se use de manera cmoda, y el
objetivo secundario es que el hardware del computador se emplee de manera eficiente.

6

4.- Un Sistema Operativo es un conjunto de programas que controla la ejecucin de
programas de aplicacin y acta como una interfaz entre el usuario y el hardware de una
computadora, esto es, un Sistema Operativo explota y administra los recursos de
hardware de la computadora con el objeto de proporcionar un conjunto de servicios a los
usuarios del sistema.
En resumen, se podra decir que los Sistemas Operativos son un conjunto de programas
que crean la interfaz del hardware con el usuario, y que tiene dos funciones primordiales,
que son:
Gestionar el hardware.- Se refiere al hecho de administrar de una forma ms eficiente los
recursos de la mquina.
Facilitar el trabajo al usuario.-Permite una comunicacin con los dispositivos de la
mquina.
El Sistema Operativo se encuentra almacenado en la memoria secundaria. Primero se
carga y ejecuta un pedazo de cdigo que se encuentra en el procesador, el cual carga el
BIOS, y este a su vez carga el Sistema Operativo que carga todos los programas de
aplicacin y software variado.

1.2 Funciones Y Caractersticas.
Funciones del Sistema Operativo
El SO permite al usuario interactuar con el hardware de la computadora y controla la
ejecucin de los programas de aplicacin. Puede considerarse que sus funciones ms
importantes son:
a) Gestionar los recursos hardware y software de la computadora.
El Sistema Operativo asiste al procesador en el uso de los recursos y el tiempo empleado
para ello, controlando as la ejecucin de los programas y los recursos utilizados en el
traslado, almacenamiento y proceso de datos para el control de estas funciones desde y
hacia los dispositivos de entrada y salida (e/s).

b) El Sistema Operativo como interfaz usuario/computadora.
El SO provee la interfaz de comunicacin entre la computadora y el usuario, as el ltimo
puede interactuar de manera sencilla y rpida con el hardware sin tener que conocer a
profundidad la arquitectura, permitindole operar la computadora en trminos de
aplicaciones.
Actualmente, la mayora de los SO implementan una interfaz grfica de usuario (GUI, por
sus siglas en ingls: Graphical User Interface) que incrementa notablemente la comodidad

7
del usuario al operar el sistema, pero existen otros SO cuya interfaz es modo consola,
tambin conocida como interfaz de lnea de comandos (CLI, por sus siglas en ingls:
Command Line Interface), y para operar el sistema el usuario debe conocer una amplia
gama de instrucciones conocidas como comandos.
El Sistema Operativo, permite al usuario y a los programas de aplicaciones el acceso y uso
del hardware, ofrece un conjunto de servicios en las siguientes reas:

Creacin de programas: Editores y depuradores para programar que no forman
realmente parte del SO, pero que son accesibles a travs del mismo.

Ejecucin de programas: El SO prepara los recursos, instrucciones y datos que
deben cargarse a la memoria principal (RAM) requeridos por un programa antes
de ejecutarse.

Acceso a los dispositivos de entrada y salida: El SO cuenta con un conjunto de
seales de instrucciones y seales de control para su funcionamiento.

Acceso al sistema: El SO brinda un servicio de proteccin a los recursos y datos
ante usuarios no autorizados y resuelve los conflictos de propiedad.

Deteccin y respuesta de errores. Cuando una computadora est funcionando
pueden producirse errores (internos o externos) del hardware tales como el
desbordamiento de memoria, fallas de lectura en el disco duro y problemas de
compatibilidad entre aplicaciones. El SO debe detectar el tipo de error y dar una
respuesta que elimine la condicin provocada por el error con el menor impacto
posible sobre las aplicaciones que se estn ejecutando.

Contabilidad: El SO puede generar estadsticas de uso de los recursos y su
rendimiento.


c) Proveer la plataforma de ejecucin de los programas de aplicacin, as las aplicaciones
pueden explotar los recursos de la computadora a travs del SO.
Los programas de aplicaciones as como los procesos internos de la computadora tambin
son considerados usuarios del sistema, estos programas durante su ejecucin requieren
de un conjunto de recursos hardware y para poder usarlos realizan peticiones al SO, quien
se encarga de gestionar el uso de los recursos solicitados por los usuarios.





8
Caractersticas De Los Sistemas Operativos

Conveniencia: hace ms eficaz el uso de una computadora.

Eficiencia: permite explotar de la forma ms eficiente los recursos de la
computadora.

Escalabilidad: permite el desarrollo, prueba o introduccin efectiva de nuevas
funciones del sistema sin interferir con el servicio o introducir errores de
funcionalidad.

Administra el hardware de la computadora al gestionar de manera compartida y
simultanea el hardware por parte de los procesos.

Permite la comunicacin entre los diferentes dispositivos perifricos, cuando el
usuario o los procesos as lo requieren.
Organizar datos en la memoria y dispositivos de almacenamiento de manera que el
acceso sea lo ms rpido posible y seguro.
Manejar las comunicaciones en red.

Procesamiento por bytes de flujo mediante el bus de datos.

Facilitar la entrada y salida de datos e informacin al sistema a travs de los
dispositivos de entrada/salida.
Integra tcnicas de recuperacin de errores.

Impide que otros usuarios interfieran al evitar que los usuarios se bloqueen entre
ellos, comunicndoles si esa aplicacin est siendo ocupada por algn otro
usuario.

Generacin de estadsticas.

Permite compartir el hardware y los datos entre los usuarios.






9
1.3.- Evolucin Histrica

Los S.O, al igual que el Hardware de los computadores, han tenido una serie de cambios
revolucionarios llamados generaciones. En el caso del Hardware, las generaciones han
sido marcadas por grandes avances en los componentes utilizados, pasando de vlvulas
(primera generacin) a transistores (segunda generacin), a circuitos integrados (tercera
generacin), a circuitos integrados de gran y muy gran escala (cuarta generacin).
Cada generacin Sucesiva de hardware ha ido acompaada de reducciones substanciales
en los costos, tamao, emisin de calor y consumo de energa, y por incrementos notables
en velocidad y capacidad.


Generacin Cero (dcada de 1940)

Los primeros sistemas computacionales no posean sistemas operativos. Los usuarios
tenan completo acceso al lenguaje de la mquina. Todas las instrucciones eran
codificadas a mano.
La generacin cero abarca la dcada de los aos 40 y se caracteriza porque no existan los
SO, el usuario deba codificar manualmente en lenguaje mquina las instrucciones que le
permitan usar los recursos de la computadora y controlar as la ejecucin de sus
programas.






10
Primera Generacin (dcada de 1950)
Los sistemas operativos de los aos cincuenta fueron diseados para hacer ms fluida la
transicin entre trabajos. Antes de que los sistemas fueran diseados, se perda un tiempo
considerable entre la terminacin de un trabajo y el inicio del siguiente. Este fue el
comienzo de los sistemas de procesamiento por lotes, donde los trabajos se reunan por
grupos o lotes. Cuando el trabajo estaba en ejecucin, este tena control total de la
mquina. Al terminar cada trabajo, el control era devuelto al sistema operativo, el cual
limpiaba y lea e iniciaba el trabajo siguiente.
Al inicio de los 50's esto haba mejorado un poco con la introduccin de tarjetas
perforadas (las cuales servan para introducir los programas de lenguajes de mquina),
puesto que ya no haba necesidad de utilizar los tableros enchufables.
En 1955 General Motors y North American Aviation desarrollan el S.O para la
computadora IBM 704, bsicamente lo nico que haca era comenzar la ejecucin de un
programa cuando terminaba el anterior; para 1957 ya se haban desarrollado, de manera
particular, distintos SO para ese modelo de computadora.

Adems el laboratorio de investigacin General Motors implement el primer sistema
operativo para la IBM 701. Los sistemas de los 50's generalmente ejecutaban una sola
tarea, y la transicin entre tareas se suavizaba para lograr la mxima utilizacin del
sistema. Esto se conoce como sistemas de procesamiento por lotes de un slo flujo, ya
que los programas y los datos eran sometidos en grupos o lotes.
La introduccin del transistor a mediados de los 50's cambi la imagen radicalmente. Se
crearon mquinas suficientemente confiables las cuales se instalaban en lugares
especialmente acondicionados, aunque slo las grandes universidades y las grandes
corporaciones o bien las oficinas del gobierno se podan dar el lujo de tenerlas.
Para poder correr un trabajo (programa), tenan que escribirlo en papel (en Fortran o en
lenguaje ensamblador) y despus se perforara en tarjetas. Enseguida se llevara la pila de
tarjetas al cuarto de introduccin al sistema y la entregara a uno de los operadores. Cuando
la computadora terminara el trabajo, un operador se dirigira a la impresora y desprendera
la salida y la llevara al cuarto de salida, para que la recogiera el programador.


11
Segunda Generacin (a mitad de la dcada de 1960)
La caracterstica de los sistemas operativos fue el desarrollo de los sistemas compartidos
con multiprogramacin, y los principios del multiprocesamiento. En los sistemas de
multiprogramacin, varios programas de usuario se encuentran al mismo tiempo en el
almacenamiento principal, y el procesador se cambia rpidamente de un trabajo a otro.
En los sistemas de multiprocesamiento se utilizan varios procesadores en un solo sistema
computacional, con la finalidad de incrementar el poder de procesamiento de la mquina.
La independencia de dispositivos aparece despus. Un usuario que desea escribir datos en
una cinta en sistemas de la primera generacin tena que hacer referencia especfica a una
unidad de cinta particular. En la segunda generacin, el programa del usuario especificaba
tan solo que un archivo iba a ser escrito en una unidad de cinta con cierto nmero de
pistas y cierta densidad.
Se desarroll sistemas compartidos, en la que los usuarios podan acoplarse directamente
con el computador a travs de terminales. Surgieron sistemas de tiempo real, en que los
computadores fueron utilizados en el control de procesos industriales. Los sistemas de
tiempo real se caracterizan por proveer una respuesta inmediata.


Tercera Generacin (mitad de dcada 1960 a mitad dcada de
1970).
Se inicia en 1964, con la introduccin de la familia de computadores Sistema/360 de IBM.
Los computadores de esta generacin fueron diseados como sistemas para usos
generales. Casi siempre eran sistemas grandes, voluminosos, con el propsito de serlo
todo para toda la gente. Eran sistemas de modos mltiples, algunos de ellos soportaban
simultneamente procesos por lotes, tiempo compartido, procesamiento de tiempo real y
multiprocesamiento. Eran grandes y costosos, nunca antes se haba construido algo
similar, y muchos de los esfuerzos de desarrollo terminaron muy por arriba del
presupuesto y mucho despus de lo que el planificador marcaba como fecha de
terminacin.

12
Estos sistemas introdujeron mayor complejidad a los ambientes computacionales; una
complejidad a la cual, en un principio, no estaban acostumbrados los usuarios.



Cuarta Generacin (mitad de dcada de 1970 en adelante).
Los sistemas de la cuarta generacin constituyen el estado actual de la tecnologa.
Muchos diseadores y usuarios se sienten aun incmodos, despus de sus experiencias
con los sistemas operativos de la tercera generacin.
Con la ampliacin del uso de redes de computadores y del procesamiento en lnea los
usuarios obtienen acceso a computadores alejados geogrficamente a travs de varios
tipos de terminales.
Los sistemas de seguridad se han incrementado mucho ahora que la informacin pasa a
travs de varios tipos vulnerables de lneas de comunicacin. La clave de cifrado est
recibiendo mucha atencin; han sido necesario codificar los datos personales o de gran
intimidad para que; aun si los datos son expuestos, no sean de utilidad a nadie ms que a
los receptores adecuados.
El porcentaje de la poblacin que tiene acceso a un computador en la dcada de los
ochenta es mucho mayor que nunca y aumenta rpidamente.
El concepto de mquinas virtuales es utilizado, el usuario ya no se encuentra interesado
en los detalles fsicos de; sistema de computacin que est siendo accedida. En su lugar, el
usuario ve un panorama llamado mquina virtual creada por el sistema operativo.
Los sistemas de bases de datos han adquirido gran importancia. Nuestro mundo es una
sociedad orientada hacia la informacin, y el trabajo de las bases de datos es hacer que
esta informacin sea conveniente accesible de una manera controlada para aquellos que
tienen derechos de acceso.


13
1.4 Clasificacin.

Sistema Operativo Multitareas.
Es el modo de funcionamiento disponible en algunos sistemas operativos, mediante
el cual una computadora procesa varias tareas al mismo tiempo. Existen varios tipos de
multitareas. La conmutacin de contextos (context Switching) es un tipo muy simple de
multitarea en el que dos o ms aplicaciones se cargan al mismo tiempo, pero en el que
solo se est procesando la aplicacin que se encuentra en primer plano (la que ve el
usuario). Para activar otra tarea que se encuentre en segundo plano, el usuario debe traer
al primer plano la ventana o pantalla que contenga esa aplicacin. En la multitarea
cooperativa, la que se utiliza en el sistema operativo Macintosh, las tareas en segundo
plano reciben tiempo de procesado durante los tiempos muertos de la tarea que se
encuentra en primer plano (por ejemplo, cuando esta aplicacin est esperando
informacin del usuario), y siempre que esta aplicacin lo permita. En los sistemas
multitarea de tiempo compartido, como OS/2, cada tarea recibe la atencin del
microprocesador durante una fraccin de segundo. Para mantener el sistema en orden,
cada tarea recibe un nivel de prioridad o se procesa en orden secuencial. Dado que el
sentido temporal del usuario es mucho ms lento que la velocidad de procesamiento del
ordenador, las operaciones de multitarea en tiempo compartido parecen ser simultneas.
Sistema Operativo Monotareas.
Los sistemas operativos monotareas son ms primitivos y es todo lo contrario al
visto anteriormente, es decir, solo pueden manejar un proceso en cada momento o que
solo puede ejecutar las tareas de una en una. Por ejemplo cuando la computadora est
imprimiendo un documento, no puede iniciar otro proceso ni responder a nuevas
instrucciones hasta que se termine la impresin.


Sistema Operativo Monousuario.
Los sistemas monousuarios son aquellos que nada ms puede atender a un solo
usuario, gracias a las limitaciones creadas por el hardware, los programas o el tipo de
aplicacin que se est ejecutando.
Estos tipos de sistemas son muy simples, porque todos los dispositivos de entrada,
salida y control dependen de la tarea que se est utilizando, esto quiere decir, que las
instrucciones que se dan, son procesadas de inmediato; ya que existe un solo usuario. Y
estn orientados principalmente por los microcomputadores.

14
Sistema Operativo Multiusuario.
Es todo lo contrario a monousuario; y en esta categora se encuentran todos los
sistemas que cumplen simultneamente las necesidades de dos o ms usuarios, que
comparten mismos recursos. Este tipo de sistemas se emplean especialmente en redes.
En otras palabras consiste en el fraccionamiento del tiempo (timesharing).

Secuencia por Lotes.
La secuencia por lotes o procesamiento por lotes en microcomputadoras, es la
ejecucin de una lista de comandos del sistema operativo uno tras otro sin intervencin
del usuario. En los ordenadores ms grandes el proceso de recogida de programas y de
conjuntos de datos de los usuarios, la ejecucin de uno o unos pocos cada vez y la entrega
de los recursos a los usuarios. Procesamiento por lotes tambin puede referirse al proceso
de almacenar transacciones durante un cierto lapso antes de su envo a un archivo
maestro, por lo general una operacin separada que se efecta durante la noche.
Los sistemas operativos por lotes (batch), en los que los programas eran tratados
por grupos (lote) en ves de individualmente. La funcin de estos sistemas operativos
consista en cargar en memoria un programa de la cinta y ejecutarlo. Al final este, se
realizaba el salto a una direccin de memoria desde donde reasuma el control del sistema
operativo que cargaba el siguiente programa y lo ejecutaba. De esta manera el tiempo
entre un trabajo y el otro disminua considerablemente.
Tiempo Real.
Un sistema operativo en tiempo real procesa las instrucciones recibidas al instante,
y una vez que han sido procesadas muestra el resultado. Este tipo tiene relacin con los
sistemas operativos monousuarios, ya que existe un solo operador y no necesita
compartir el procesador entre varias solicitudes.
Su caracterstica principal es dar respuestas rpidas; por ejemplo en un caso de
peligro se necesitaran respuestas inmediatas para evitar una catstrofe.
Tiempo Compartido.
El tiempo compartido en ordenadores o computadoras consiste en el uso de un
sistema por ms de una persona al mismo tiempo. El tiempo compartido ejecuta
programas separados de forma concurrente, intercambiando porciones de tiempo
asignadas a cada programa (usuario). En este aspecto, es similar a la capacidad de
multitareas que es comn en la mayora de los microordenadores o las
microcomputadoras. Sin embargo el tiempo compartido se asocia generalmente con el
acceso de varios usuarios a computadoras ms grandes y a organizaciones de servicios,

15
mientras que la multitarea relacionada con las microcomputadoras implica la realizacin
de mltiples tareas por un solo usuario.
Sistemas Operativos De Red.
Son aquellos sistemas que mantienen a dos o ms computadoras unidas a travs de algn
medio de comunicacin (fsico o no), con el objetivo primordial de poder compartir los
diferentes recursos y la informacin del sistema.
El primer Sistema Operativo de red estaba enfocado a equipos con un procesador
Motorola 68000, pasando posteriormente a procesadores Intel como Novell Netware.
Los Sistemas Operativos de red ms ampliamente usados son: Novell Netware, Personal
Netware, LAN Manager, Windows NT Server, UNIX, LANtastic.


Sistemas Operativos Paralelos.
En estos tipos de Sistemas Operativos se pretende que cuando existan dos o ms procesos
que compitan por algn recurso se puedan realizar o ejecutar al mismo tiempo.
En UNIX existe tambin la posibilidad de ejecutar programas sin tener que atenderlos en
forma interactiva, simulando paralelismo (es decir, atender de manera concurrente varios
procesos de un mismo usuario). As, en lugar de esperar a que el proceso termine de
ejecutarse (como lo hara normalmente), regresa a atender al usuario inmediatamente
despus de haber creado el proceso.
Ejemplos de estos tipos de Sistemas Operativos estn: Alpha, PVM, la serie AIX, que es
utilizado en los sistemas RS/6000 de IBM.

1.5 Estructura (niveles o estratos de diseo).
Internamente los sistemas operativos estructuralmente de se clasifican segn como se
hayan organizado internamente en su diseo, por esto la clasificacin ms comn de los
S.O. Son:
Sistemas Monolticos:
Estos sistemas operativos se escriben como un conjunto de procedimientos, cada uno de
los cuales puede llamar a cualquiera de los otros siempre que lo necesite. Cuando se
emplea esta tcnica, cada procedimiento del sistema tiene una interfaz bien definida en

16
trminos de parmetros y resultados, y cada una tiene la libertad de llamar a cualquiera
otra, si la ltima ofrece algn clculo til que la primera necesite.
Para construir el programa objeto real del sistema operativo cuando se usa este mtodo,
se compilan todos los procedimientos individuales a archivos que contienen los
procedimientos y despus se combinan todos en un solo archivo objeto con el enlazador.
En trminos de ocultamiento de informacin, esencialmente no existe ninguno; todo
procedimiento es visible para todos (al contrario de una estructura que contiene mdulos
o paquetes, en los cuales mucha informacin es local a un mdulo y slo pueden llamar
puntos de registro designados oficialmente del exterior del mdulo).
Esta organizacin sugiere una estructura bsica del sistema operativo:
Un programa central que invoque el procedimiento de servicio solicitado (Shell o
Kernel).
Un conjunto de procedimientos de servicios que realice las llamadas al sistema.
Un conjunto de procedimientos de uso general que ayude a los procedimientos de
servicio.

Sistemas En Estratos:
Estos sistemas operativos se organizan como una jerarqua de estratos, cada uno
construido arriba del que est debajo de l. El primer sistema construido en esta forma
fuel el sistema THE que se fabric en Technische Hogeschool Eindhoven de Holanda por E.
W Dijkstra (1968) y sus alumnos. El sistema THE era un sistema de lote para una
computadora alemana, la Electrolgica X8, que tena 32K de palabras de 27 bits (los bits
eran costosos en aquellos das).
El sistema tena 6 estratos, estos se muestran a continuacin:
5 Operador de THE.

4 Programas del usuario.

3 Administracin de Entrada/Salida.

2 Comunicacin entre el operador y el proceso.

1 Administracin de la memoria y el tambor magntico.
0 Distribucin del procesador y multiprogramacin.



17
El Estrato 0: Trabajaba con la distribucin del procesador, cambiando entre procesos
cuando ocurran interrupciones o los relojes expiraban. Sobre el estrato 0, el sistema
constaba de procesos secuenciales, cada uno de los cuales poda programarse sin tener
que preocuparse por el hecho de que mltiples procesos estuvieran corriendo en un solo
procesador. En otras palabras, el estrato 0 ofreca la multiprogramacin bsica de la CPU.
El Estrato 1: Realizaba el manejo de memoria. Este distribua espacio para procesos
contenidos en la memoria central y en un tambor de 512K palabras que se usaba para
contener partes de procesos (pginas) para las cuales no haba espacio en la memoria
central. Sobre el estrato 1, los procesos no tena que preocuparse de si estaban en la
memoria o en el tambor; el software del estrato 1 se haca cargo de asegurar que las
pginas se trajeran a la memoria siempre que se necesitaran.
El Estrato 2: Manejaba la comunicacin entre cada proceso y la consola de operador.
El Estrato 3: Se haca cargo de manejar los dispositivos de E/S y de separar la
informacin en flujo que entraba y sal de ellos. Sobre el estrato 3 cada proceso poda
trabajar con dispositivos de E/S abstractos con propiedades agradables, en vez de
dispositivos reales con muchas peculiaridades.
El Estrato 4: Era donde se encontraban los programas de los usuarios. No tenan que
preocuparse por el manejo de los procesos, memoria, consola o E/S. El proceso operador
del sistema se localizaba en el estrato 5.
En esta unidad examinaremos cuatro estructuras distintas que ya han sido probadas, con
el fin de tener una idea ms extensa de cmo est estructurado el sistema operativo.
Veremos brevemente algunas estructuras de diseos de sistemas operativos.
Estructura Modular: Tambin llamados sistemas monolticos. Este tipo de organizacin
es con mucho la ms comn; bien podra recibir el subttulo de "el gran embrollo". La
estructura consiste en que no existe estructura alguna. El sistema operativo se escribe
como una coleccin de procedimientos, cada uno de los cuales puede llamar a los dems
cada vez que as lo requiera. Cuando se usa esta tcnica, cada procedimiento del sistema
tiene una interfaz bien definida en trminos de parmetros y resultados y cada uno de
ellos es libre de llamar a cualquier otro, si este ltimo proporciona cierto clculo til para
el primero. Sin embargo incluso en este tipo de sistemas es posible tener al menos algo de
estructura. Los servicios (llamadas al sistema) que proporciona el sistema operativo se
solicitan colocando los parmetros en lugares bien definidos, como en los registros o en la
pila, para despus ejecutar una instruccin especial de trampa de nombre "llamada al
ncleo" o "llamada al supervisor".
Esta organizacin sugiere una organizacin bsica del sistema operativo:
1.- un programa principal que llama al procedimiento del servicio solicitado.

18
2.- un conjunto de procedimientos de servicio que llevan a cabo las llamadas al sistema.
3.- un conjunto de procedimientos utilitarios que ayudan al procedimiento de servicio.
En este modelo, para cada llamada al sistema existe un procedimiento de servicio que se
encarga de l. Los procedimientos utilitarios hacen cosas necesarias para varios
procedimientos de servicio, por ejemplo buscar los datos de los programas del usuario.

Estructura Por Microkernel: Las funciones centrales de un SO son controladas por el
ncleo (kernel) mientras que la interfaz del usuario es controlada por el entorno (shell).
Por ejemplo, la parte ms importante del DOS es un programa con el nombre
"COMMAND.COM" Este programa tiene dos partes. El kernel, que se mantiene en
memoria en todo momento, contiene el cdigo mquina de bajo nivel para manejar la
administracin de hardware para otros programas que necesitan estos servicios, y para la
segunda parte del COMMAND.COM el shell, el cual es el interprete de comandos
Las funciones de bajo nivel del SO y las funciones de interpretacin de comandos estn
separadas, de tal forma que puedes mantener el kernel DOS corriendo, pero utilizar una
interfaz de usuario diferente. Esto es exactamente lo que sucede cuando cargas Microsoft
Windows, el cual toma el lugar del shell, reemplazando la interfaz de lnea de comandos
con una interfaz grfica del usuario. Existen muchos "shells" diferentes en el mercado,
ejemplo: NDOS (Norton DOS), XTG, PCTOOLS, o inclusive el mismo SO MS-DOS a partir de
la versin 5.0 incluy un Shell llamado DOS SHELL.


1.6 Ncleo.

Componente que interacta directamente con el hardware. Contiene un conjunto de
rutinas que hacen posible la ejecucin de los programas y la comunicacin entre ellos y el
Hardware, es el que gestiona la entrada y salida del sistema, adaptndolas al hardware del
sistema.
Es el software que constituye el ncleo del sistema operativo, dnde se realizan las
funcionalidades bsicas como la gestin de procesos, la gestin de memoria y de entrada
salida.
El kernel del sistema operativo controla todas las operaciones que implican procesos y
representa slo una pequea porcin del cdigo de todo el Sistema
Operativo pero es de amplio uso.
Para que una computadora pueda arrancar y funcionar, no es necesario que tenga un
ncleo para poder usarse.

19

Los programas pueden cargarse y ejecutarse directamente en una computadora vaca,
siempre que sus autores quieran desarrollarlos sin usar ninguna abstraccin del hardware
ni ninguna ayuda del sistema operativo. sta era la forma normal de usar muchas de las
primeras computadoras: para usar distintos programas se tena que reiniciar y
reconfigurar la computadora cada vez. Con el tiempo, se empez a dejar en memoria (an
entre distintas ejecuciones) pequeos programas auxiliares, como el cargador y el
depurador, o se cargaban desde memoria de slo lectura. A medida que se fueron
desarrollando, se convirtieron en los fundamentos de lo que llegaran a ser los primeros
ncleos de sistema operativo.

El kernel presenta al usuario o los programas de aplicacin una interfaz de programacin
de alto nivel, implementando la mayora de las facilidades requeridas por stos. Rene el
manejo de una serie de siguientes conceptos ligados al hardware de nivel ms bajo:
Procesos (tiempo compartido, espacios de direccionamiento protegidos.
Seales y Semforos.
Memoria Virtual ("swapping", paginado).
Sistema de Archivos;
Tubos ("pipes") y Conexiones de red.





Tipos de Ncleos:

Kernel Monoltico:
Todas las funcionalidades posibles estn integradas en el sistema. Se trata de un programa
de tamao considerable que deberemos recompilar al completo cada vez que se quiera
aadir una nueva posibilidad. Esta es la estructura original de Linux. Por tratarse de una
tcnica clsica y desfasada el creador de Linux fue muy criticado. Ejemplos: los primeros
kernels de Linux, UNIX y DOS.

Kernel Modular:
Se trata de la tendencia actual de desarrollo. En el kernel se centran las funcionalidades
esenciales como la administracin de memoria, la planificacin de procesos, etc. Sin
embargo no tiene sentido que el ncleo de un sistema operativo englobe toda la
parafernalia para comunicarse con todas las posibles de tarjetas de vdeo o de sonido. En
otros sistemas operativos esto se soluciona con unos archivos proporcionados por el

20
fabricante llamados drivers. En Linux se cre una interfaz adecuada para posibilitar el
desarrollo de mdulos que cumplieran esas funcionalidades. Esos mdulos pueden ser
compilados por separado y aadidos al kernel en tiempo de ejecucin. Ejemplo:
Actualmente el kernel de linux.

Estructura De Micro-kernel:
Esta tcnica pretende reducir a su mnima expresin el kernel, dejando a los niveles
superiores el resto de las funcionalidades. Existen algunos kernels que lo utilizan, si bien el
que centra nuestra atencin es Hurd. Se trata del ltimo kernel GNU llamado a sustituir a
Linux como ncleo del sistema operativo. Aunque esta estrategia de diseo es tan antigua
como la modular, no ha sido tenida en cuenta hasta ahora debido a las limitaciones de
rendimiento que tena. Ejemplos: AIX, La familia de micro-ncleos L4, El micro-ncleo
Mach
(Usado en GNU Hurd y en Mac OS X), Minix, MorphOS, QNX, RadiOS, VSTa).


1.6.1 Interrupciones (FLIH).


La interrupcin es el mecanismo mediante el cual otros mdulos pueden interrumpir una
secuencia normal de procesamiento. La interrupcin generada por el hardware del
sistema de cmputo.
Cuando ocurre la interrupcin:
El sistema operativo toma el control (es decir, el hardware pasa el control al sistema
operativo)
El sistema operativo guarda el estado del proceso interrumpido. En muchos
sistemas esta informacin se guarda en el bloque de control de proceso interrumpido.
El sistema operativo analiza la interrupcin y transfiere el control a la rutina
apropiada para atenderla; en muchos sistemas actuales el hardware se encarga de esto
automticamente.
La rutina del manejador de interrupciones procesa la interrupcin.
Se restablece el estado del proceso interrumpido (o del siguiente proceso).
Se ejecuta el proceso interrumpido (o el siguiente proceso).
Una interrupcin puede ser iniciada especficamente por un proceso en ejecucin (en
cuyo caso se suele denominar trampa (trap), y se dice que est sincronizada con la

21
operacin del proceso) o puede ser causada por algn evento que puede estar
relacionado o no con el proceso en ejecucin (en cuyo caso se dice que es asncrona con la
operacin del proceso).
Los sistemas orientados hacia las interrupciones pueden sobrecargarse. Si ests llegan con
mucha frecuencia, el sistema no ser capaz de atenderlas. En algunos sistemas orientados
hacia el teclado, cada tecla presionada almacena en la memoria un cdigo de un byte y
genera una interrupcin para informar a la UCP que un carcter est listo para ser
procesado. Si la UCP no puede procesar el dato antes de que se presione la siguiente tecla,
se pierde el primer carcter.

Formas de determinar el origen de una interrupcin:

Mediante Software:

Mediante una cadena de saltos o IFs (o con una CASE).
El FLIH, tiene un nico punto de entrada:
Ventaja: Es muy sencillo.
Desventaja: Rendimiento muy pobre (Cuantas ms interrupciones, peor rendimiento)
Posible solucin: Poner al principio de la cadena de saltos las comprobaciones de las
interrupciones ms frecuentes.


Mediante Hardware:

Mediante el uso de un comparador simultneo, incluido en el Hardware de
interrupciones.
El origen de la interrupcin, no lo va a detectar el FLIH, lo va a detectar el Hardware de
interrupciones.
El FLIH, tiene N puntos de entrada, siendo N el nmero de interrupciones que reconoce el
sistema.
Ventaja: Es casi simultneo, mucho ms rpido que la secuencia de IFs.
Desventaja: Costo Elevado: Un comparador para muchas interrupciones es muy caro.






22
Combinando Software Y Hardware:

El comparador distingue los TIPOS de interrupcin.
Las interrupciones se agrupan por tipos.
EL Hardware de interrupciones:
1) Salva el contenido del entorno voltil
2) Mediante un comparador simultneo, determina el tipo al que pertenece la
interrupcin producida
3) Se direcciona al FLIH, donde una pequea cadena de saltos determina la interrupcin
en concreto que se ha producido
Si N es el nmero de tipos de interrupciones, el FLIH tiene N puntos de entrada.
Cuando el FLIH est atendiendo una interrupcin, pueden producirse otras.


Tipos De Interrupciones:

o Interrupciones que provocan cambios de estado del proceso en ejecucin.
o Algunos extracdigos: Peticiones de E/S.
o Seales de error para suspensin.
o Interrupciones de reloj: Interrupciones por expiracin del temporizador.
o Interrupciones que provocan cambios de estado en procesos que no estn
en ejecucin.
o Interrupciones de E/S.


1.6.2 Despachador (Schedule).

OBJETIVO PRINCIPAL DEL DESPACHADOR:
Optimizar la eficiencia del sistema, de acuerdo con criterios considerados importantes
para el ambiente del sistema operativo.
FUNCIONES:
El despachador examina la prioridad de los procesos.
Controla los recursos de una computadora y los asigna entre los usuarios.
Permite a los usuarios correr sus programas.
Controla los dispositivos de perifricos conectados a la mquina.
Cambio de contexto.
Cambio a modo usuario.

23

Tipos De Despachadores:

De Largo Plazo :
El despachador de largo plazo, cuando existe, trabaja con la cola de los trabajos en
lotes y selecciona el siguiente trabajo de lotes a ejecutarse. Su objetivo principal es
proporcionar una mezcla balanceada de trabajos al despachador de corto plazo. Este
tipo de despachador es invocado cada vez que un proceso termina y abandona el
sistema. Su utilizacin es relativamente poco frecuente. En trminos del diagrama de
transicin de estados de un proceso, el despachador de largo plazo se encarga de la
transicin de un proceso del estado de dormido al estado de listo.



De Mediano Plazo:
Cuando existen procesos que necesitan un uso intensivo de las facilidades de entrada y
salida, y que por ello permanezcan suspendidos, puede ser que stos procesos se quiten
temporalmente de memoria principal y se guarden en memoria secundaria, hasta que su
condicin de espera haya concluido (a esta actividad se le conoce como:swapping), para
darle oportunidad a otros procesos que quieran ser admitidos. El despachador de
mediano plazo se encarga del manejo de procesos que temporalmente se han enviado a
memoria secundaria. En trminos del diagrama de transicin de estados, el despachador
de mediano plazo se encarga de la transicin suspendido a listo.


De Corto Plazo:
El despachador de corto plazo asigna el CPU entre los procesos listos en memoria
principal. Su objetivo principal es maximizar la eficiencia del sistema de acuerdo con
ciertos criterios. Ya que se encarga de las transiciones de 5listo a ejecutndose. En la
prctica, el despachador de corto plazo se invoca cada vez que ocurre un evento que
modifique el estado global del sistema.
Algunos eventos que provocan tales cambios son:

Pulsos de reloj (interrupciones de tiempo).
Interrupciones y terminaciones de E/S.
La mayora de los llamados operacionales al sistema operativo.
Envo y recepcin de seales-Activacin de programas interactivos.



24
1.6.3 Primitivas de Comunicacin.

Los procesos que se ejecutan concurrentemente pueden ser procesos independientes o
procesos cooperativos. Un proceso es independiente si no puede afectar o verse afectado
por los restantes procesos que se ejecutan en el sistema.

Cualquier proceso que no comparte datos con ningn otro proceso es un proceso
independiente. Un proceso es cooperativo si puede afectar o verse afecta-do por los
dems procesos que se ejecutan en el sistema. Evidentemente, cualquier proceso que
comparte datos con otros procesos es un proceso cooperativo.

Hay varias razones para proporcionar un entorno que permita la cooperacin entre
procesos:

Compartir informacin: Dado que varios usuarios pueden estar interesados en la
misma informacin (por ejemplo, un archivo compartido), debemos proporcionar un
entorno que permita el acceso concurrente a dicha informacin.

Acelerar los clculos: Si deseamos que una determinada tarea se ejecute
rpidamente, debemos dividirla en sub-tareas, ejecutndose cada una de ellas en paralelo
con las dems. Observe que tal aceleracin solo se puede conseguir si la computadora
tiene mltiples elementos de procesamiento, como por ejemplos varias CPU o varios
canales de E/S.

Modularidad: Podemos querer construir el sistema de forma modular, dividiendo las
funciones del sistema en diferentes procesos o hebras.

Conveniencia: Incluso un solo usuario puede querer trabajar en muchas tareas al
mismo tiempo. Por ejemplo, un usuario puede estar editando, imprimiendo y compilando
en paralelo.
La cooperacin entre procesos requiere mecanismos de comunicacin interprocesos (IPC,
interprocesos comunicacin) que les permitan intercambiar datos e informacin. Existen
dos modelos fundamentales de comunicacin interprocesos:





25





Conclusin.



Despus de haber Analizado se puede ver que se han desarrollado varios
tipos de sistemas operativos con diferentes interfaces y categoras. Pero
hemos podido observar que todos los sistemas operativos han sufrido
cambios por parte de los programadores, y siguen evolucionando siguen
teniendo avances tecnolgicos El uso de las GUI es ms sencillo que el de las
interfaces de lnea de comandos. Sin embargo, la introduccin de
instrucciones con una GUI es ms lenta, por lo que las GUI suelen tener la
opcin de emplear un sistema equivalente al de lnea de instrucciones como
alternativa rpida para los usuarios ms expertos. . El sistema operativo
multitarea de Apple se denomina Macintosh OS. El MS-DOS es un SO popular
entre los usuarios de PCs pero solo permite un usuario y una tarea.






26

BIBLIOGRAFIA.


http://florysel.blogspot.mx/

es.scribd.com

http://exa.unne.edu.ar/depar/areas/informatica/
SistemasOperativos/sistope2.PDF 2.

http://rua.ua.es/dspace/bitstream/10045/5268/4
/Tema3_Procesos.pdf

http://es.scribd.com/doc/50620571/7/Interrupci
ones-FLIH

http://www.ac.itdurango.mx/

Вам также может понравиться