Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Introduccin a los
Sistemas Operativos
1
Introduccin a los Sistemas Operativos
TEMA 8:
O INTRODUCCIN A LOS
B Identificar, Describir y SISTEMAS
J Relacionar la estructura y tareas OPERATIVOS
E de los sistemas operativos. 8.1 Conceptos bsicos
8.2 SO de mayor difusin
T 8.3 Gestin del procesador
8.4 Gestin de la memoria
I 8.5 Gestin de E/S
8.6 Gestin de los archivos
V
O
S
Bibliografa Tema 8:
- Introduccin a la Informtica. 4 Ed. A. PRIETO, A. LLORIS,
J. C. TORRES. (McGraw Hill, 2006). Cap. 13.
- Sistemas Operativos Modernos. 2 Ed. A. S. TANENBAUM.
(Prentice Hall, Pearson Educacin, 2003). Cap. 1. 2
DEFINICIN DE SISTEMA OPERATIVO
o Un SO es un programa (o conjunto de programas)
de control que tiene por objeto facilitar el uso del
ordenador y conseguir que ste se utilice
eficientemente.
3
TAREAS DEL SISTEMA OPERATIVO
o Control: Se encarga de gestionar y asignar los recursos
hardware que requieren los programas:
El procesador
La memoria principal
Los discos
Otros perifricos.
o Facilidad de uso: Hace transparente al usuario las
caractersticas hardware concretas de los dispositivos.
o Eficiencia: Por ejemplo, haciendo que los tiempos muertos
del procesador sean utilizados por la ejecucin de otros
procesos.
4
EL SO COMO MQUINA OPERATIVA
o El sistema operativo junto con el hardware del ordenador
definen un nivel de mquina virtual que permite utilizar el
ordenador sin tener que conocer muchos detalles del hardware.
o El sistema operativo puede considerarse como un programa
constituido por una serie de mdulos. Estos mdulos se lanzan a
ejecucin por medio de llamadas al sistema. Estas llamadas
pueden ser realizadas por los usuarios o por los programas.
o Para comunicarse con el ordenador, el SO va acompaado de
mdulos que definen la interfaz de usuario.
o Cuando un usuario introduce una orden en un ordenador, sta
es captada por el intrprete de comandos (shell). El intrprete
se encarga de traducir o descomponer la orden en llamadas al
sistema.
5
ARRANQUE DE UN SO
o Al encender un ordenador se lanza a ejecucin un programa de
autodiagnstico de encendido (Power On Self Test, POST).
o Este programa identifica la memoria disponible, los discos, el
teclado, la tarjeta de vdeo, el ratn y los dems dispositivos
que lo configuran.
o Posteriormente se lanza a ejecucin el cargador inicial
(bootstrap loader), que busca el SO y carga una parte de l
(denominada residente) en la memoria principal.
o Tanto el programa de autodiagnstico de encendido como el
cargador inicial suelen estar grabados en la memoria ROM del
ordenador.
6
ALGUNOS SO DE MAYOR DIFUSIN
oUnix
oLinux
oMacOS
7
SISTEMAS OPERATIVOS MICROSOFT:
EVOLUCIN
PASOS RELEVANTES EN LA EVOLUCIN
DE SISTEMAS OPERATIVOS MICROSOFT
8
SISTEMAS OPERATIVOS MICROSOFT:
CARACTERSTICAS
MS DOS Windows 3.1 (1992)
Pantalla en modo texto Soporta solamente modo protegido
Interfaz de lnea de comandos Api Win16 (16 bits)
Gran xito entre usuarios y
programadores
Windows 1.0 (1985) y 2.0 (1987)
Extensiones para conectividad,
Basados en chip 8086/8088 WorkGroups
Multitarea no real
Windows 3.0 (1990)
Soporta modo protegido del 386
Amplia difusin de software disponible
9
SISTEMAS OPERATIVOS MICROSOFT:
CARACTERSTICAS
Windows NT (1993)
Windows ME (2000)
Primer SO de 32 bits
Nueva interfaz
Api Win 32
Acceso ms limitado al DOS
Basado en kernel Match
11
UNIX: EVOLUCIN
1.984,
12
LINUX
o Origen
El sistema operativo Linux es una variante de Unix, realizada a
partir de 1991 por un estudiante de computacin en la
Universidad de Helsinki (Linus Torvalds)
Linux tiene algunas mejoras sobre el Unix original, aunque para
los fines del curso los consideraremos similares
GNU/Linux es la denominacin correcta del kernel (GNUs Not
Unix, es un proyecto para construir un SO libre)
o Distribucin (distro)
Conjunto de aplicaciones reunidas por un grupo, empresa o
persona para permitir instalar fcilmente un sistema Linux
o Entornos grficos
Fundamentalmente dos, que rivalizan y cooperan entre s:
GNOME (1997). Surge como entorno para SO libres.
KDE (1996). Surge como interfaz grfica para Unix. Altamente
personalizable.
13
Distribuciones LINUX
o Ejemplos de distribuciones
Debian (18000 paquetes extras)
Fedora Core (sucesor de Red Hat (comercial))
Mandriva Linux (sucesor de Mandrake (muy popular))
SUSE Linux (Comercial. Propiedad de Novell)
Gnoppix y Knoppix (basadas en debian, CD-autnomo)
Kubuntu (Ubuntu con KDE)
Algunas espaolas
LinEx (Junta de Extremadura)
gnUAMix (UAM, basada en Debian, CD-autnomo)
MAX (Comunidad de Madrid, CD-autnomo)
14
MacOS
15
TAREAS DE GESTIN DE UN SO
16
TAREAS DE GESTIN DE UN SO
o Gestin de la memoria
17
GESTIN DEL PROCESADOR
19
MONOPROGRAMACIN
20
MONOPROGRAMACIN
21
MULTIPROGRAMACIN
o El SO multiprogramacin carga en memoria principal varios
programas y el distribuidor asigna el procesador a los procesos
preparados.
o Se aprovechan:
o Los tiempos muertos del procesador
o Los tiempos de acceso a perifricos
o El espacio de memoria principal no ocupado por procesos o por el
SO.
o La ejecucin se realiza de forma solapada en el tiempo
(concurrentemente) de modo que parece que los procesos se
ejecutan simultneamente.
o En un intervalo de tiempo determinado se ejecutan
alternativamente a trozos varios procesos ubicados en la memoria
principal.
22
MULTIPROGRAMACIN
23
MULTIPROGRAMACIN
o Cuando se detiene la ejecucin de un proceso Px para dar
turno a otro Py, el SO realiza un cambio de contexto
consistente en:
Actualizar el PCB del proceso Px, es decir, se cambia su
estado de activo a bloqueado y se salvaguardan los
contenidos de los registros del procesador, punteros de pilas,
etc.
Restaura los contenidos de los registros del procesador,
punteros de pilas, etc. con los valores del PCB del proceso Py
y cambia su estado a activo.
o De esta forma, cuando el distribuidor asigne nuevamente
turno al proceso Px, ste podr continuar su ejecucin
justo en el punto exacto donde se interrumpi.
24
MULTIPROGRAMACIN
25
MULTIPROGRAMACIN
Multiprogramacin no apropiativa:
Es la que se utiliz inicialmente. La emplean los SO
MS-DOS y MacOS.
26
o
MULTIPROGRAMACIN
Multiprogramacin no apropiativa:
Una vez que un proceso est activo contina
ejecutndose hasta que:
Termina.
Se bloquea por el inicio de una operacin de E/S o
por un servicio solicitado por el SO.
El propio proceso hace una llamada al SO para ceder
el procesador a otro proceso.
Tiene el inconveniente de que un proceso con mucho
tiempo de procesador y pocas E/S puede
monopolizar el procesador hasta que acabe su
ejecucin.
27
MULTIPROGRAMACIN
Multiprogramacin apropiativa o preferente:
28
MULTIPROGRAMACIN
Algunos algoritmos de planificacin que puede utilizar el
distribuidor para elegir a qu proceso preparado dar el
turno (pasar a activo) son:
Turno aleatorio (round robin): A cada uno de los procesos en memoria
se le asigna un intervalo de tiempo fijo y se realiza un cambio de
contexto de un proceso activo a otro preparado cuando al activo se le
acabe el tiempo o se bloquee.
Planificacin por prioridad: El distribuidor da el turno al proceso
preparado que tenga mayor prioridad.
FCFS (First Come First Served): Primero en llegar, primero en
procesar.
SPN (Shortest Process Next): Dar el turno al de menor tiempo de
procesador (se debe conocer el tiempo de antemano).
SRT (Shortest Remaining Time): dar el turno al que le queda menos
tiempo de procesador (se debe conocer el tiempo de antemano).
29
MULTIPROGRAMACIN
o El nmero de procesos en memoria principal preparados para su
ejecucin est limitado por el tamao de sta.
o Para evitar esta limitacin se puede trasvasar a disco (memoria
secundaria) un proceso de los que estn en memoria principal
para dar cabida a otro.
o El proceso que permanece en memoria secundaria se carga
nuevamente a memoria principal cuando llegue su turno.
o Este mecanismo se denomina intercambio memoria
principal/disco (swapping).
o Si la relacin capacidad de memoria principal respecto nmero de
procesos es baja, aumenta el intervalo de tiempo entre dos
turnos, ralentizando el funcionamiento del sistema:
o Una posible solucin es aumentar adecuadamente la memoria
principal.
30
ESTADOS DE UN PROCESO
o Nonato: Un programa que no ha iniciado su ejecucin. Se encuentra en la
memoria secundaria.
o Preparado: Se encuentra en memoria principal, sin operaciones de E/S
pendientes y apto para entrar o continuar su ejecucin.
o Activo: El proceso que se est ejecutando en el procesador en ese momento.
o Bloqueado: Se encuentra interrumpido por el procesador por haber atendido a
otro de mayor prioridad o que le corresponda el turno.
o Bloqueado intercambiado: Un proceso bloqueado intercambiado a memoria
secundaria.
o Preparado intercambiado: Un proceso preparado intercambiado a disco.
Ocurre cuando la carga de procesos es grande.
o Concluido: Cuando finaliza la ejecucin del proceso o se le detecta un error
grave.
o Residentes (o no intercambiables): Procesos importantes a los que se obliga a
residir en memoria principal.
31
ESTADOS DE UN PROCESO
32
OTROS MODOS DE PROCESAMIENTO
33
TAREAS DE GESTIN DE UN SO
o Gestin de la memoria
34
GESTIN DE LA MEMORIA
36
GESTIN DE LA MEMORIA
37
PARTICIONES ESTTICAS
38
PARTICIONES DINMICAS
39
SEGMENTACIN
41
MEMORIA VIRTUAL
o Permite a los usuarios hacer programas de una capacidad muy
superior a la que fsicamente tiene el ordenador.
o Los sistemas con memoria virtual presentan al usuario una
memoria principal aparentemente mayor que la memoria fsica
real.
o Para implementar la memoria virtual se puede utilizar gestin de
memoria por pginas, segmentada o una combinacin de ambas.
o Este sistema se basa en dos principios:
o Localidad temporal: las instrucciones de un programa que se
ejecutan sucesivamente (en un corto espacio de tiempo) estn en
direcciones muy prximas.
o Localidad espacial: los programas suelen estar redactados de
forma bastante lineal, sin abundar los saltos entre posiciones de
memoria.
42
MEMORIA VIRTUAL
o En un sistema de memoria virtual se mantiene en disco un archivo
con la imagen del proceso completo, que est troceado en pginas
o segmentos. En memoria principal nicamente se carga la pgina
o segmento que en su momento deba estar en ejecucin,
intercambiando pginas entre la memoria principal y secundaria
cuando sea necesario.
o La memoria virtual se gestiona normalmente:
o Mediante paginacin (en lugar de segmentacin), ya que las pginas
con tamao constante son ms fciles de gestionar.
o Con el mtodo de intercambio perezoso (lazzy swapper):
nicamente se lleva a memoria una pgina cuando sea necesaria para
algn proceso. De esta forma en cada momento los procesos
necesitan utilizar menos memoria aumentando el nmero de
procesos en ejecucin concurrente.
43
MEMORIA VIRTUAL
o Cuando un proceso hace referencia a una instruccin o un dato
que no est en memoria principal se produce un fallo de pgina.
o El SO busca un marco libre para cargar la pgina
correspondiente.
o En el caso de que no haya ningn hueco libre el SO emplea un
algoritmo de reemplazo de pgina para decidir qu pgina de
memoria principal se ha de eliminar antes de introducir la
solicitada.
o Algunos algoritmos de reemplazo son:
o LRU (Least Recently Used): se sustituye la pgina que lleve ms tiempo sin
usar.
o FIFO (First In First Out): se sustituye la que lleve ms tiempo en memoria.
o NRU (Not Recently Used): se sustituye una pgina no utilizada recientemente.
o RELOJ: Se sustituye la pgina ms antigua no utilizada recientemente.
44
TAREAS DE GESTIN DE UN SO
o Gestin de la memoria
45
GESTIN DE E/S
o Sus objetivos son:
46
MODELO DE CAPAS
Programa de usuario
Llamadas al sistema Peticiones satisfechas
Organizacin fsica
Peticiones de E/S Peticiones satisfechas
Dispositivos hardware
47
MODELO DE CAPAS
La gestin de E/S se puede considerar como un modelo formado
por las siguientes capas:
48
MODELO DE CAPAS
o Organizacin fsica: En este nivel ya se tienen en cuenta las
cuestiones especficas de cada tipo de perifrico:
o Ubicacin fsica de los bloques y espacios fsicos libres en un disco.
o Almacenamiento intermedio en la RAM (buffering) para aumentar el
rendimiento.
o Cach de archivos: Una vez localizado en el disco la informacin a la
que se quiere acceder se lee ms de la requerida y se almacena en
memoria principal (basndose en la localidad espacial de datos).
o Controladores software de los dispositivos hardware: La misin
de este nivel es controlar el hardware y generar las instrucciones
concretas para interactuar con l, atendiendo a las interrupciones
que produzca.
o Dispositivos hardware: Controladores fsicos (por ejemplo
controladores DMA o tarjetas controladoras) que implementan las
operaciones E/S del hardware.
49
TAREAS DE GESTIN DE UN SO
o Gestin de la memoria
50
GESTIN DE LOS ARCHIVOS
o Desde el punto de vista del hardware, para almacenar datos o
programas slo existen direcciones fsicas.
o El SO posibilita que el usuario no tenga que utilizar direcciones
fsicas: para acceder a un archivo slo es necesario indicar su
nombre y la operacin que se desea realizar.
o El sistema de archivos es el conjunto de mdulos que se ocupa de
la gestin de los archivos y directorios (o carpetas).
o Los archivos se almacenan en los dispositivos de memoria masiva
en forma de unidades denominadas registros fsicos o bloques.
o Un registro fsico es la capacidad mnima de informacin que
puede transferirse en una operacin de E/S y su tamao viene
determinado por el dispositivo y el SO.
51
SISTEMAS DE ARCHIVOS
52
SISTEMAS DE ARCHIVOS
53
SISTEMAS DE ARCHIVOS
54
SISTEMAS DE ARCHIVOS
55