Sei sulla pagina 1di 80

Sistemas Operativos

INTRODUCCIN A LOS
SISTEMAS
INFORMTICOS
Un sistema operativo (SO) explota los recursos de hardware de
uno o ms procesadores para ofrecer un conjunto de servicios a
los usuarios del sistema.
El sistema operativo tambin gestiona la memoria secundaria y
los dispositivos de entrada/salida (E/S) en nombre de los
usuarios.

ELEMENTOS BSICOS
Procesador: Controla la operacin
del computador y lleva a cabo las
funciones de procesamiento de datos.
Se denomina unidad central de
procesamiento
(CPU,
Central
Processing Unit).
Memoria Principal: Almacena los datos y
los
programas.
Esta
memoria
es
normalmente voltil; tambin se le conoce
como memoria real o memoria primaria.

Interconexin de sistemas: Ciertos


mecanismos
y
estructuras
que
permiten la comunicacin entre
procesadores, memoria principal y los
mdulos de E/S.

REGISTROS DEL
PROCESADOR
Registros de control y de estado
Varios registros se emplean para controlar
las operaciones del procesador. En la
mayora de las mquinas, la mayor parte
de estos registros no son visibles para los
usuarios.
MAR:
Memory Address Register. Especifica la
direccin en memoria de la prxima lectura o
escritura.
MBR / MDR: Memory Buffer/Data Register.
Contiene los datos que van a ser escritos a
memoria o que fueron ledos desde ella.
IOAR: Input Output Address Register. Especifica
un dispositivo particular de E/S.
IOBR: Input Output Buffer Register. Permite
intercambiar datos entre un mdulo de E/S y el
procesador.
Contador de programa (PC, Program Counter): Contiene la direccin de la
instruccin a ser leda.
Registro de instruccin (IR, Instruction Regster): Contiene la ltima
instruccin leda.
Todos los diseos de procesadores incluyen adems un registro o conjunto de
registros, conocidos a menudo como palabra de estado del programa (PSW,

REGISTROS DEL PROCESADOR


Registros visibles de
usuario:
Registros de datos pueden ser
asignados por el programador a
diversas funciones. En algunos casos,
son de propsito general y pueden ser
empleados por cualquier instruccin de
mquina que lleve a cabo operaciones
sobre los datos. Por ejemplo, pueden
haber
registros
dedicados
a
operaciones en coma flotante.
Registros de direccin contienen
direcciones en la memoria principal de
datos e instrucciones o una parte de la
direccin que se utiliza en el clculo de
la direccin completa.

Registro ndice: El direccionamiento


indexado es un modo comn de
direccionamiento que implica sumar un
ndice a un valor base para obtener la
direccin efectiva.

Puntero
de
segmento:
Con
direccionamiento
segmentado,
la
memoria se divide en segmentos, que

EJECUCIN DE
INSTRUCCIONES
La tarea bsica que realiza un computador es la
ejecucin de los programas.
El programa a ejecutar consta de un conjunto de
instrucciones almacenadas en memoria. El
procesador lleva a cabo el trabajo, ejecutando las
instrucciones especificadas en el programa.

El procesamiento requerido para una instruccin simple se llama


ciclo de instruccin. Consta de 2 pasos
Los dos pasos se llaman ciclo de lectura (fetch) y ciclo de
ejecucin.
La ejecucin del programa se detiene slo si se apaga la mquina,
ocurre algn tipo de error irrecuperable o se encuentra una
instruccin en el programa que de- tiene el computador.

EJEMPLO:
La figura ilustra la ejecucin parcial de un programa,
mostrando las zonas pertinentes de la memoria y los registros
del procesador.
El fragmento de programa que se muestra suma el contenido
de la palabra de memoria de la direccin 940 al contenido de
la palabra de memoria de la direccin 941 y almacena el
resultado en esta ltima direccin. Se requieren tres
instrucciones, que se pueden describir con tres ciclos de
lectura y tres de ejecucin:

EJECUCIN DE
INSTRUCCIONES
1. El PC contiene 300, la direccin de la primera instruccin. Se carga el
contenido de la ubicacin 300 en el IR. Ntese que este proceso podra
involucrar el uso de un MAR y un MBR. Por simplicidad, se van a ignorar
estos registros intermedios.
2. Los primeros 4 bits del IR indican que se cargar el AC. Los 12 bits
restantes especifican la direccin, que es 940.
3. Se incrementa el PC y se lee la instruccin siguiente,
4. El contenido anterior del AC y el contenido de la ubicacin 941 se
suman y el resultado se almacena en el AC.
5. Se incrementa el PC y se lee la instruccin siguiente.
6. El contenido del AC se almacena en la ubicacin 941.

EJECUCIN DE INSTRUCCIONES

EJECUCIN DE INSTRUCCIONES
DIRECCI
ON

MEMORI
A

200
201
202
203
204
205
206
207

700
701
702
703
704
705
706
707
708

1700
2701
3703
4704
2705
4706
3707
2708

2
3
4
5
3
2
3
1
2

1
2
3
4

TABLA 1
CARGAR AC1
SUMAR AC1
RESTAR AC1
BORRAR Y
CARGAR AC1

PC

200

AC1

IR

1700

PC

201

AC1

IR

2701

INTERRUPCIONES
La interrupcin es bsicamente un suceso que altera la
secuencia de ejecucin de las instrucciones.
El acontecimiento de una interrupcin desencadena una
serie de sucesos, tanto en el HW del procesador como en
el SW

TIPOS DE INTERRUPCIONES
1.

De programa o de
verificacin de programa
Ejemplo: - la divisin por
cero.

2.

De reloj

3.

De Entrada / Salida

4.

Por fallo del Hardware o de


verificacin de mquina
Con el uso de las
interrupciones el procesador
se puede utilizar de una
manera ms eficaz.

5.

Transferencia de control por interrupciones

Ciclo de instruccin con interrupciones

Procesador suspende la
ejecucin del programa en
curso y ejecuta una rutina
de tratamiento de la
interrupcin.

Tratamiento de las
interrupciones

Tratamiento de las interrupciones

El registro IP (Instruction Pointer) tambin


puede ser llamado PC (Program
Counter).
Psw.- palabra de estado del programa

Interrupciones Mltiples
Existen dos enfoques:
1) Inhabilitan las interrupciones mientras se est
procesando una. El procesador ignora la seal de
interrupcin quedando pendiente dicha interrupcin.
2) Se definen las prioridades para las interrupciones,
permitiendo que una interrupcin ms alta interrumpa a
la rutina de tratamiento de una interrupcin de prioridad
ms baja.

Tratamiento de las interrupciones

Tratamiento de las
interrupciones

Algunas Interrupciones
Vector

Dec.
0
1
2
3
4

Hex
0
1
2
3
4

Uso
Error: Divisin por cero
Excepciones para depuracin (ejecucin paso a paso)
Interrupcin no enmascarable
Punto de ruptura interrupcin (Instruccin INT)
Desbordamiento ("Overflow"). Utilizado cuando un clculo
aritmtico se desborda. Instruccin INTO

5
5
(reservado)
6
6
Cdigo de instruccin no vlido
7
7
Coprocesador no disponible
8
8
Fallo doble
9
9
(reservado -Rutina de atencin del Teclado-)
10
A
Dato no vlido
11
B
Segmento no disponible
12
C
Excepcin de pila
13
D
Proteccin general
14
E
Fallo de pgina
15
F
(reservado)
16
1A Error de coprocesador
17-31 1B-1F (reservado)
32-255 20-FF Disponibles para interrupciones enmascarables

Conceptos de Sistemas
Operativos
Programa que facilita el uso del soporte
fsico(P.
Martnez
Cobo

Sistemas
Operativos)
Escrito en lenguaje de alto nivel
Actualizacin continua
Intermediario
ente los programas
aplicacin y el soporte fsico

de

Definicin de S. O.
Es un programa o conjunto de programas.

Estos programas trabajan juntos para lograr


ciertos objetivos.
Se encarga de gestionar ciertos recursos:
Entrada/salida
Tratamiento de la informacin
Almacenamiento masivo

Acta de intermediario entre el hardware y los


programas de aplicacin.

Fundamentos de sistemas
operativos.
Hacer posible el uso eficiente de los
recursos del sistema:
Acta coordinando las diferentes velocidades
de funcionamiento de los dispositivos. P. E. Mas
velocidad de procesadores, mas lentitud de
perifricos.

Simplificar la operacin de trabajo con el


hardware:
Generan una mquina virtual: ordenador
simplificado en el que el S. O. Carga con el
trabajo de acercamiento al hardware.

Funciones de Sistemas
Operativos
William Stallings
un sistema operativo

Segn
cumple las siguientes funciones:

Comodidad: Un
sistema operativo hace
que un computador sea
ms cmoda de utilizar

Eficiencia: Un sistema
operativo permite que
los recursos de un
sistema informtico se
aprovechen de una
manera ms eficiente

Capacidad
de
evolucin: Un sistema
operativo
debe
construirse de modo
que
permita
el
desarrollo efectivo, la
verificacin
y
la
introduccin de nuevas
funciones en el sistema
y, a la vez, no interferir
en los servicios que
brinda.

Servicios de un Sistema
Operativo
De forma resumida, un sistema operativo ofrece servicios en las
reas siguientes:
Creacin de programas: El sistema operativo ofrece una variedad de
caractersticas y servicios, tales como los editores y los depuradores
(debuggers), para ayudar al programador en la creacin de
programas. Normalmente, estos servicios estn en forma de
programas de utilidad que no forman realmente parte del sistema
operativo, pero que son accesibles a travs del mismo.
Ejecucin de programas: Para ejecutar un programa se necesita un
cierto nmero de tareas. Las instrucciones y los datos se deben
cargar en la memoria principal, los archivos y los dispositivos de E/S
se deben inicializar y se deben preparar otros recursos. El sistema
operativo administra todas estas tareas para el usuario.

Servicios de un Sistema
Operativo
Acceso a los dispositivos de E/S: Cada dispositivo de E/S requiere
un conjunto propio y peculiar de instrucciones o de seales de
control para su funcionamiento.
Acceso controlado a los archivos: En el caso de los archivos, el
control debe incluir una comprensin, no slo de la naturaleza
del dispositivo de E/S (controlador de disco, controlador de cinta)
sino del formato de los archivos y del medio de almacenamiento.
Deteccin y respuesta a errores: Cuando un sistema informtico
est en funcionamiento pueden producirse varios errores. Entre
estos se incluyen los errores internos y externos del hardware,
tales como los errores de memoria, fallos o mal funcionamiento
de dispositivos y distintos tipos de errores de software, como el
desbordamiento aritmtico, el intento de acceder a una posicin
prohibida de memoria y la incapacidad del sistema operativo
para satisfacer la solicitud de una aplicacin. En cada caso, el
sistema operativo debe dar una respuesta que elimine la

Servicios de un Sistema
Operativo
Acceso al sistema: En el caso de un sistema compartido
o pblico, el sistema operativo controla el acceso al
sistema como un todo y a los recursos especficos del
sistema.
Contabilidad: Un buen sistema operativo debe recoger
estadsticas de utilizacin de los diversos recursos y
supervisar los parmetros de rendimiento TR, para
ajustar el sistema y as mejorar su rendimiento. En un
sistema multiusuario, la informacin puede ser utilizada
con propsito de cargar en cuenta.

Funciones de los S. O.
Asignacin de tiempo de CPU:

Planificar las diversas actividades.

Control de recursos:

Asignar recursos de forma racional. P. E. Divisin de


la memoria del ordenador entre los programas,
controlar colas de e/s.

Control de entrada/salida:

Gestionar los datos desde y hacia los perifricos.

Control de los errores y proteccin:


Informar de las situaciones anmalas

Interfaz con el usuario:


Facilita el uso.

Facilidades contables:

Clculo de costes de uso de CPU.

Evolucin de Sistemas
Operativos.
Facilidad de evolucin de un sistema
Actualizaciones
del hardware y nuevos tipos de
operativo
hardware:
Por ejemplo, las primeras Nuevos servicios
versiones de UNIX y OS/2 no
empleaban mecanismos de Como
respuesta
a
Las Correcciones
paginacin, el empleo de
terminales grficos y pantalla
completa, en lugar de los
terminales de lneas, pueden
influir en el diseo de los
sistemas operativos. P. E, un
terminal de stos puede
permitirle al usuario ver
diferentes
aplicaciones
al
mismo tiempo, a travs de
ventanas en la pantalla

demandas del usuario o a las


necesidades
de
los
administradores del sistema, el
sistema operativo ampliar su
oferta de servicios
Caracterstica que requiere
actualizaciones mayores en el
sistema operativo

Desafortunadamente,
el
sistema operativo tiene fallos
que se descubrirn con el
curso del tiempo y que es
necesario
corregir.
Por
supuesto, estas correcciones
pueden
introducir
nuevos
fallos a su vez y as
sucesivamente.

Evolucin de Sistemas
Operativos.
Proceso en serie

A finales de los 40 hasta mediados de los 50, el


programador interactuaba directamente con el
hardware; no haba sistema operativo

Problemas: Planificacin - desperdicio del tiempo del


computador
Tiempo de preparacin

Sistemas sencillos de proceso por lotes


El usuario deba entregar los trabajos en tarjetas o en
cinta al operador del computador, quien agrupaba
secuencialmente los trabajos por lotes y ubicaba los
lotes enteros en un dispositivo de entrada para su
empleo por parte del monitor.

El procesador ejecuta entonces las instrucciones del


programa de usuario hasta que encuentre una
condicin de finalizacin o de error

Evolucin de Sistemas
Operativos.

Sistemas por lotes con


multiprogramacin
Dispositivos de E/S son lentos
comparados con el procesador

Se podra ampliar la memoria


para almacenar tres, cuatro o ms
programas y conmutar entre
todos ellos. Este proceso es
conocido como multiprogramador
o multitarea. ste es el punto
central de los sistemas operativos
modernos.

Evolucin de Sistemas
Operativos.
Sistemas
de tiempo

compartido
Con el uso de la multiprogramacin, el tratamiento por lotes

puede llegar a ser bastante eficiente. Sin embargo, para


muchas tareas, es conveniente suministrar un modo en que el
usuario interacte directamente con el computador.
Uno de los primeros sistemas de tiempo compartido que se
desarrollaron fue el Sistema Compatible de Tiempo Compartido
(CTSS, Compatible Time-Sharing System)

Evolucin de Sistemas
Operativos.

EJEMPLO
Supngase que hay cuatro usuarios interactivos con los siguientes
requisitos de memoria:
monitor residente que consuma 5K.
Cada 0,2 segundos (sg). En cada interrupcin de reloj, el sistema
operativo se adueaba del control y le poda asignar el procesador a
otro usuario
TRABAJO1: 15K TRABAJO2: 20K TRABAJO3: 5K TRABAJO4:
I0K

Evolucin de Sistemas
Operativos.
Sistemas de tiempo compartido

Evolucin de Sistemas
Operativos.
Sistemas de tiempo compartido

Sistemas de tiempo compartido

Niveles de Sistemas
Operativos
Los niveles SO deben estar
definidos de forma que los
cambios en un nivel no
requieran cambios en otros
niveles. De este modo, se
descompone un problema en
un nmero de subproblemas
ms manejables.

Nivel 1: Consta de circuitos


electrnicos,
donde
los
objetos que se tratan son
registros, celdas de memoria
y
puertas
lgicas.
Las
operaciones definidas sobre
estos objetos son acciones
tales como borrar un registro
o leer una posicin de
memoria

Nivel 3: Aade el concepto


de
procedimiento
o
subrutina, as como las
operaciones de llamada y
retomo.

Nivel 2: Es el conjunto de
instrucciones del procesador. Las
operaciones a este nivel son
aquellas
permitidas
por
el
conjunto de instrucciones del
lenguaje de la mquina, tales
como SUMAR, RESTAR, CARGAR
y DEPOSITAR.

Nivel 4: Introduce las


interrupciones, las cuales hacen
que el procesador salve el contexto
actual e invoque a una rutina de
tratamiento de la interrupcin.
Estos primeros cuatro niveles no
forman
parte
del
sistema
operativo, sino que constituyen el
hardware del procesador. Sin
embargo, algunos de los elementos
de
los
sistemas
operativos
comienzan a aparecer en estos
niveles

Niveles de Sistemas
Operativos
Tiene que ver con los
dispositivos
de
almacenamiento
secundario
del
computador. En este
nivel
se
sitan
las
funciones de ubicacin
de
las
cabezas
de
lectura y escritura, y se
pro-ducen
las
transferencias reales de
bloques. El nivel 6 se
apoya en el nivel 5 para
planificar
las
operaciones y notificar
al proceso que hizo la
solicitud
que
la

Nivel 6:

Nivel 5:

En este nivel se
introduce la nocin de
proceso como un
programa en ejecucin.
Entre los requisitos
fundamentales de un
sistema operativo que
ofrezca soporte para
mltiples procesos se
incluye la capacidad de
suspender y reanudar
los procesos. Esto exige
salvaguardar los
registros del hardware,
de modo que la
ejecucin pueda
cambiar de un proceso a

Niveles de Sistemas
Operativos
Se dedica a la
comunicacin de
informacin y mensajes
entre los procesos. Mientras que el nivel 5
proporciona el mecanismo
de sealizacin primitivo
que permite la sincronizacin entre procesos,
este nivel trata con una
forma ms completa de
compartir in- formacin.
Una de las herramientas
ms potentes en este nivel
es el tubo (pipe), que es un
canal lgico para el flujo de
datos entre los procesos

Nivel 8:

Nivel 7:

Crea un espacio de
direcciones lgicas para los
procesos. Este nivel
organiza el espacio de
direcciones virtuales en
bloques que se pueden
mover entre la memoria
principal y la memoria
secundaria. Tres son los
esquemas de uso ms
habitual: los que utilizan
pginas de longitud fija, los
que usan segmentos de
longitud variable y los que
utilizan los dos. Cuando el
bloque necesario no est en
memoria, la lgica de este
nivel le solicita una
transferencia al nivel 6.

Niveles de Sistemas
Operativos
Da
soporte
al
almacenamiento a largo
plazo de los archivos con
nombre. En este nivel, los
datos del almacenamiento
secundario se contemplan
en trminos de entidades
abstractas de longitud
variable, en contraste con
el enfoque orientado al
hardware del nivel 6, en
trminos
de
pistas,
sectores y bloques de
tamao fijo.

Nivel 9:

Nivel 8:

Se
dedica
a
la
comunicacin
de
informacin y mensajes
entre
los
procesos.
Mientras que el nivel 5
proporciona el mecanismo
de sealizacin primitivo
que
permite
la
sincronizacin
entre
procesos, este nivel trata
con
una
forma
ms
completa de compartir informacin. Una de las
herramientas
ms
potentes en este nivel es
el tubo (pipe), que es un
canal lgico para el flujo
de
datos
entre
los

Niveles de Sistemas
Operativos
Es responsable de
mantener
la
asociacin entre los
identificadores
externos
e
internos
de
los
recursos y objetos
del
sistema.
El
identificador
externo
es
un
nombre que puede
ser empleado por
una aplicacin o un
usuario.

Nivel 11:

Nivel 10:

Es
el
que
proporciona acceso
a los dispositivos
externos mediante
interfaces
estandarizadas.

Niveles de Sistemas
Operativos
Ofrece al usuario una
interfaz con el sistema
operativo. Se denomina
caparazn
o
shell
porque separa al usuario
de los detalles y le
presenta
el
sistema
operativo
como
un
simple
conjunto
de
servicios. El shell acepta
las rdenes del usuario o
las sentencias de control
de
trabajos,
las
interpreta,
crea
y
controla los procesos
segn sea necesario.

Nivel 13:

Nivel 12:

Proporciona
servicios
completos de soporte a
los procesos. Esto va
mucho ms all que lo
que se ofrece en el nivel
5. En el nivel 5, slo se
mantienen
los
contenidos
de
los
registros del procesador
asociados
con
un
proceso, junto a la lgica
para expedir a
los
procesos. En el nivel 12,
se da soporte a toda la
informacin
necesaria
para la gestin ordenada
de los procesos

COMPONENTES DE UN SISTEMA OPERATIVO


Objetivo de la planificacin: Minimizar el tiempo de espera y
minimizar el tiempo de respuesta. La planificacin (scheduling) es la
base para lograr la multiprogramacin.
Planificador de Trabajos (Job Scheduler) o Shell
Sus funciones principales son:
Se encarga de hacer de interface hombre-mquina
Administra pedidos de recursos
Carga los programas
Crea procesos
Controla accesos de usuarios
Controla protecciones del sistema
Existen dos tipos de Shell:
Uno provee una interfase basada en comandos u rdenes llamadas
C.L.I. (Command Line Interface).
Conocido como G.I.U. (Graphical User Interface) que permite
accesos a travs de iconos o grficos.

COMPONENTES DE UN SISTEMA OPERATIVO


Ncleo o Kernel
Es un conjunto de cdigos usados por todos
programas en el ms bajo nivel. Est compuesto por:

los

Una extensin del set de instrucciones del procesador


Una extensin del mecanismo de secuenciamiento del HW (Switcher o Dispatcher)
Un manejador de Interrupciones (Interrupt Handler)
Un manejador de errores (Error Handler)
Un manejador de E/S (I/O Handler)
Un mecanismo de acceso a memoria central (Direccionamiento)
Un Clock (Timer)
Comunicacin entre procesos (IPC)

Las caractersticas de sus funciones (del nivel cero de la


estructura de un S.O.) son:
Residentes en Memoria Principal
Deben ejecutarse en el mayor nivel de prioridad (Nivel Supervisor)
Escritas en lenguaje ensamblador

Se encarga de:
Interfaces con HW y Administracin de interrupciones y excepciones
Multiprogramacin
Comunicacin entre procesos y Gestin del HW

COMPONENTES DE UN SISTEMA OPERATIVO

Administradores
Administracin del procesador: consta de dos mdulos:
Dispatcher y Controlador de Trfico (se encarga de crear,
modificar y actualizar el contexto asociado a un proceso)
Administracin de memoria (Memory Manager): se encarga de
asignar a los procesos la memoria necesaria para su ejecucin.
Administracin de perifricos (I/O System): posee todos los
mdulos necesarios para la utilizacin de los perifricos.
Administracin de informacin (File System): rutinas que
permite manipular y manejar el sistema de archivos.
Administracin de comunicaciones (Communication Manager):
responsable de compartir los recursos distribuidos mediante una
red de computadoras.

TIPOS DE SISTEMAS
OPERATIVOS

Tipos de S. O.
Sistema operativos
por servicios

Tipos de sistemas
operativos
Sistema
real

operativos

en

tiempo

Diseado
para
soportar
aplicaciones en tiempo real.
Responde a tipos de entrada de
forma extremadamente rpida,
milsimas o millonsimas de
segundo.
Estas aplicaciones son necesarias
para
ejecutar
equipos
de
diagnstico mdico, sistemas de
apoyo a las funciones vitales,
maquinarias,
instrumentos
cientficos y sistemas industriales.
Los sistemas operativos como DOS
y UNIX, no funcionan en tiempo
real.

Tipos de sistemas
operativos Sistemas operativos

usuario/una sola tarea

de un slo

Para un usuario, una tarea es una


funcin como;

imprimir, escribir, editar, o descargar un


archivo

Para el sistemas operativo una tarea


es un proceso pequeo y sencillo del
sistema, que solamente puede
controlar una tarea a la vez.
El MS-DOS y algunos sistemas
operativos diseados para el sistema
Palm
OS,
las
computadoras
handhel son ejemplos de este.
Estos sistemas son limitados, existe
un uso especfico para ellos, debido a
que ocupan muy poco espacio en el
disco o en la memoria cuando estn
ejecutndose y no requieren de una
computadora poderosa y costosa.

Tipos de sistemas
operativos
Sistemas operativos de un slo
usuario/multitareas
Un sistemas que soporta un solo
usuario a la vez, pero permite al
usuario realizar mltiples tareas
en
forma
simultnea,
por
ejemplo
ejecutar
varios
programas al mismo tiempo.
Windows y el sistema operativo
Macintosh OS son ejemplos de
este tipo de sistema.

Tipos de sistemas
operativos
Sistemas
operativos
multiusuarios/multitareas
Sistema
que
permite
que
mltiples
usuarios
ejecuten
programas que funcionen de
manera simultnea en un solo
servidor de red llamado servidor
de terminales.
En este sistema todos o la
mayora, de los procesos de
computacin
ocurren en el
servidor.
Ejemplo: UNIX

Tipos de sistemas
operativos
Ventajas

Pueden ser administrados haciendo simplemente


cambios a un servidor en lugar de tener que hacerlo en
muchas computadoras de escritorio.
Adems, permite al usuario trabajar con aplicaciones
que requieren de una computadora ms poderosa.

Desventaja
Cuando la conexin de red hacia el servidor falla, el
usuario no puede trabajar con las aplicaciones que
estn en el servidor.

Ejemplos de Sistema
Operativo
Familia Windows
Windows 95
Windows 98
Windows ME
Windows NT
Windows 2000
Windows 2000 server
Windows XP
Windows Server 2003
Windows CE
Windows Mobile
Windows XP 64 bits
Windows Vista (Longhorn)
Familia Macintosh
Mac OS 7
Mac OS 8
Mac OS 9
Mac OS X
Familia UNIX
AIX
AMIX
GNU/Linux
GNU / Hurd
HP-UX
Irix
Minix
System V
Solaris
UnixWare

Estructura de los Sistemas


Operativos
Dependiendo de su
finalidad,
los
diseadores darn una
u otra estructura. Mas
habituales

Conceptos de Sistemas
Operativos Juan Perez

Estructura de los Sistemas


Operativos

Sistema de
capas: anillos
concntricos o
rings; donde las
funciones de un
nivel superior
solicitan
servicios de los
niveles
inferiores. Cada
anillo tiene un
punto o funcin
conocida como
puerta o trampa
por donde se
pueden hacer
las llamadas

Estructura de los Sistemas


Operativos

Estructura de un S. O.

Ncleo
Gestin de la memoria
Control de entrada/salida
Gestin de dispositivos de
almacenamiento masivo
Asignacin de recursos y
planificacin
Proteccin
Interfaz de usuario
El Kernel o (ncleo) de

Estructura de un S. O. Ncleo
Descansa directamente sobre el hardware y
proporciona una serie de servicios a las
capas superiores del sistema.
Las tareas principales son:
Manejo de interrupciones
Asignacin de trabajo al procesador
Proporcionar una va de comunicacin entre los
diferentes programas

Estructura de un S. O. Ncleo
Asignacin de trabajo al procesador
comunicacin entre programas

El ncleo transfiere el control al programa que el


planificador ha determinado para que sea el
prximo en ejecutarse.
La comunicacin entre programas se logra
manteniendo una cola de mensajes en espera para
cada uno de los programas activos.
El ncleo recibe los mensajes y los va almacenando
en la cola apropiada al destino en cuestin, para
distribuirlos cuando el programa destino se active.

Ncleo

Gestin de la memoria
La memoria principal de la mayora de los
ordenadores es mucho mas pequea de lo
que sera necesario para manejar todos los
programas y datos.
El mdulo de gestin de memoria es el
encargado de asignar ciertas porciones de la
memoria
principal
a
los
diferentes
programas, mientras el resto de programas y
datos se mantienen en los dispositivos de
almacenamiento masivo.
La forma mas comn de gestin de memoria
es crear una memoria virtual utilizando los
dispositivos de almacenamiento masivo.

Gestin de la memoria

Gestin de la memoria

Divisin de la memoria entre las


tareas
Por pginas: bloques de bytes de igual tamao
para todos los procesos y tareas.
Por segmentos: bloques de bytes con distinto
tamao segn el proceso.
Por segmentos paginados: Los segmentos de
tamao distinto se dividen a su vez en pginas
de distinto tamao.

Control de la entrada/salida
Los problemas derivados de las diferentes
velocidades de funcionamiento de los dispositivos
son tratados por este mdulo presentndolo como
una cuestin independiente del dispositivo.
P.e. En las salidas es frecuente la utilizacin de
spoolers (un spool es un buffer de gran tamao que
se aloja en disco, no en memoria.), los datos se
almacenan temporalmente en una cola situada en
un dispositivo de almacenamiento masivo hasta
que el perifrico requerido quede libre.

Gestin de entradas/salidas
Proceso

Soft E/S

Soft Perif

Peticin E/S
Peticin OK

Ctrl Interr

Hardware

Gestin de los dispositivos de


almacenamiento masivo
Los datos y programas de un dispositivo de
almacenamiento masivo se mantienen en
ficheros.
Supervisa
la
creacin,
actualizacin
y
eliminacin de estos ficheros.
Mantiene un directorio con todos los ficheros que
existen en el sistema en cada momento.
Cada fichero est dotado de un conjunto de
privilegios de acceso, que indican la extensin
con la que pueden compartir la informacin
contenida en el fichero. El S. O. Vigila que estos
privilegios no sean violados.

Sistema de archivos
Todas las aplicaciones computarizadas necesitan
almacenar y recuperar la informacin Superando las
limitaciones del almacenamiento real.
Trascendiendo a la duracin de los procesos que las
utilizan o generan.
Independizando a la informacin de los procesos
permitiendo el acceso a la misma a travs de varios
procesos.
Las condiciones esenciales para el almacenamiento
de la informacin a largo plazo son:
Debe ser posible almacenar una cantidad muy
grande de informacin.
La informacin debe sobrevivir a la conclusin del
proceso que la utiliza.
Debe ser posible que varios procesos tengan
acceso concurrente a la informacin.

Sistema de archivos
La solucin es el almacenamiento de la informacin en discos
y otros medios externos en unidades llamadas archivos:
Los archivos deben ser persistentes, es decir que no
deben verse afectados por la creacin o terminacin de un
proceso.
Los archivos son una coleccin de datos con nombre.
Pueden ser manipulados como una unidad por operaciones
como: open, close, create, destroy, copy, rename, list.
Los elementos de datos individuales dentro del archivo
pueden ser manipulados por operaciones como: read,
write, update, insert, delete.
El Sistema de Archivos es la parte del sistema de
administracin
del
almacenamiento
responsable,
principalmente, de la administracin de los archivos del
almacenamiento secundario.
Es la parte del S. O. responsable de permitir compartir
controladamente la informacin de los archivos.

Sistema de archivos
Los usuarios deben poder crear, modificar y borrar
archivos.
Se deben poder compartir los archivos de una manera
cuidadosamente controlada
El mecanismo encargado de compartir los archivos
debe proporcionar varios tipos de acceso controlado:
Ej.: Acceso de Lectura, Acceso de Escritura,
Acceso de Ejecucin, varias combinaciones de
estos, etc.
Se debe poder estructurar los archivos de la manera
ms apropiada a cada aplicacin. Los usuarios deben
poder ordenar la transferencia de informacin entre
archivos.

Sistema de archivos
Se deben proporcionar posibilidades
recuperacin para prevenirse contra:
La prdida accidental de informacin.
La destruccin maliciosa de informacin.

de

respaldo

Se debe poder referenciar a los archivos mediante Nombres


Simblicos, brindando Independencia de Dispositivos. En
ambientes sensibles, el sistema de archivos debe proporcionar
posibilidades de Cifrado y Descifrado.
El sistema de archivos debe brindar una interfase favorable al
usuario:
Debe suministrar una visin lgica de los datos y de las
funciones que sern ejecutadas, en vez de una visin fsica.
El usuario no debe tener que preocuparse por:
Los dispositivos particulares.
Dnde sern almacenados los datos.
El formato de los datos en los dispositivos.
Los medios fsicos de la transferencia de datos hacia y desde

Sistema de archivos
Un Archivo es un conjunto de registros
relacionados
El Sistema de Archivos es un componente
importante de un S. O. y suele contener:
Mtodos de acceso relacionados con la manera
de acceder a los datos almacenados en archivos.
Administracin de archivos referida a la
provisin de mecanismos para que los archivos
sean almacenados, referenciados, compartidos y
asegurados.
Administracin del almacenamiento auxiliar
para la asignacin de espacio a los archivos en
los dispositivos de almacenamiento secundario.
Integridad del archivo para garantizar la
integridad de la informacin del archivo.

Sistema de archivos
El sistema de archivos est relacionado especialmente con la
administracin del espacio de almacenamiento secundario,
fundamentalmente con el almacenamiento de disco. Una forma
de organizacin de un sistema de archivos puede ser la
siguiente:
Se utiliza una raz para indicar en qu parte del disco
comienza el directorio raz .
El directorio raz apunta a los directorios de usuarios.
Un directorio de usuario contiene una entrada para cada
uno de los archivos del usuario.
Cada entrada de archivo apunta al lugar del disco donde est
almacenado el archivo referenciado.
Los nombres de archivos solo necesitan ser nicos dentro de un
directorio de usuario dado. El nombre del sistema para un
archivo dado debe ser nico para el sistema de archivos.
En sistemas de archivo jerrquicos el nombre del sistema para
un archivo suele estar formado como el nombre de la
trayectoria del directorio raz al archivo.

Sistema de archivos

Asignacin de recursos y
planificacin
La mayor parte del tiempo en que un ordenador
est funcionando, la demanda de recursos es
mayor que los realmente existentes. Este
problema se resuelve aplicando una poltica de
asignacin de recursos.
El mecanismo sera sencillo si se pudiese utilizar
una poltica del tipo: atender primero al que
antes lo solicite, sin embargo esto puede llevar a
situaciones de deadlock (sistema colgado o caido)
cuando dos programas solicitan insistentemente
recursos asignados a otro.
El planificador cuenta con una poltica que varia
de un S. O. a otro. Una poltica muy comn
consiste en el time slicing (asignacin de
intervalos cortos de tiempo a los programas)

Asignacin de recursos y
planificacin
Fin de un intervalo de tiempo

Nuevos
programas

Cola del
procesador

Programas listos
para ejecutarse

Procesador
Ejecucin de
Un programa

Programas
ejecutables

Programas cuyas
peticiones e/s
satisfechas

Programas
terminados

Colas de
Entrada/salida
Programas no ejecutables

Programas bloqueados
por peticiones e/s

Proteccin
Acta contra dos sucesos:
Errores
Abuso deliberado de los recursos del sistema

Bloqueos

Potrebbero piacerti anche