Tema 2: Fundamentos
ndice:
Tema 2: Fundamentos
1. Conceptos bsicos
2. Modelos de diseo
3. Ejemplos de organizacin interna
ndice:
Tema 2: Fundamentos
1. Conceptos bsicos
2. Modelos de diseo
3. Ejemplos de organizacin interna
1. Conceptos bsicos
1. Conceptos bsicos sobre arquitectura de ordenadores
Tema 2: Fundamentos
2. Procesos
3. Llamadas al sistema
4. Usuarios 5. Archivos 6. Intrpretes de rdenes 7. Interfaces grficas de usuario
4
1. Conceptos bsicos
1. Conceptos bsicos sobre arquitectura de ordenadores
Tema 2: Fundamentos
2. Procesos
3. Llamadas al sistema
4. Usuarios 5. Archivos 6. Intrpretes de rdenes 7. Interfaces grficas de usuario
5
procesador
Memoria
Adaptador Teclado
Adaptador ratn
Adaptador Pantalla
BUS
DMA
Estado de la CPU = valores de sus registros Dos registros especiales: siguiente instruccin (IP, PC) y estado (CCR)
Tema 2: Fundamentos
Tratamiento:
1. CPU termina de ejecutar instruccin actual 2. Se almacena estado de CPU en la pila 3. CPU pasa a modo supervisor 4. Determina direccin SSI (normalmente: tabla de vectores) 5. Salta a SSI 6. Al retornar de SSI: se restaura estado (y modo de ejecucin) 7. Se prosigue ejecucin por siguiente instruccin
Tema 2: Fundamentos
4. Cargador software (pertenece a SO): carga el sistema operativo y le transfiere el control una vez cargado 5. Inicializacin del sistema operativo:
Se crean estructuras de datos del sistema operativo Comprobacin detallada del sistema: deteccin de nuevos dispositivos, comprobacin del sistema de archivos, etc. Se cargan los componentes opcionales que procedan del SO Se crea uno o ms procesos de inicio de sesin Tras iniciar sesin, se crea un proceso intrprete de comandos (texto o grfico)
10
1. Conceptos bsicos
1. Conceptos bsicos sobre arquitectura de ordenadores
Tema 2: Fundamentos
2. Procesos
3. Llamadas al sistema
4. Usuarios 5. Archivos 6. Intrpretes de rdenes 7. Interfaces grficas de usuario
11
1.2 Procesos
Proceso = programa en ejecucin
Tema 2: Fundamentos
Si se ejecuta dos o ms veces un mismo programa: procesos distintos Un proceso puede cambiar el programa (execve) y sigue siendo el mismo proceso
1. Conceptos bsicos
1. Conceptos bsicos sobre arquitectura de ordenadores
Tema 2: Fundamentos
2. Procesos
3. Llamadas al sistema
4. Usuarios 5. Archivos 6. Intrpretes de rdenes 7. Interfaces grficas de usuario
13
Tema 2: Fundamentos
Formas de implementacin:
Mediante rutinas Mediante interrupciones
14
Tema 2: Fundamentos
Programas hacen referencia a punto de entrada mediante una variable conocida por montador de enlaces (Ej: CALL SYS)
Si cambia de versin de SO, hay que reenlazar los programas!
Tema 2: Fundamentos
Independencia de los programas respecto a ubicacin de punto de entrada en memoria Conmutacin implcita a modo supervisor Posibilidad de llamadas implcitas al sistema
17
1. Conceptos bsicos
1. Conceptos bsicos sobre arquitectura de ordenadores
Tema 2: Fundamentos
2. Procesos
3. Llamadas al sistema
4. Usuarios 5. Archivos 6. Intrpretes de rdenes 7. Interfaces grficas de usuario
18
1.4 Usuarios
Usuario = personas autorizadas a usar el sistema
Tema 2: Fundamentos
Los sistemas multiprogramados mantienen asociacin entre cada proceso y su usuario propietario
Es el usuario quien determina los derechos del proceso a acceder a recursos del sistema
1. Conceptos bsicos
1. Conceptos bsicos sobre arquitectura de ordenadores
Tema 2: Fundamentos
2. Procesos
3. Llamadas al sistema
4. Usuarios 5. Archivos 6. Intrpretes de rdenes 7. Interfaces grficas de usuario
20
1.5 Archivos
Archivo = conjunto de informacin
Tema 2: Fundamentos
21
1. Conceptos bsicos
1. Conceptos bsicos sobre arquitectura de ordenadores
Tema 2: Fundamentos
2. Procesos
3. Llamadas al sistema
4. Usuarios 5. Archivos 6. Intrpretes de rdenes 7. Interfaces grficas de usuario
22
1. Conceptos bsicos
1. Conceptos bsicos sobre arquitectura de ordenadores
Tema 2: Fundamentos
2. Procesos
3. Llamadas al sistema
4. Usuarios 5. Archivos 6. Intrpretes de rdenes 7. Interfaces grficas de usuario
24
Tema 2: Fundamentos
ndice:
Tema 2: Fundamentos
1. Conceptos bsicos
2. Modelos de diseo
3. Ejemplos de organizacin interna
26
2. Modelos de diseo
1. Modelo monoltico
Tema 2: Fundamentos
2. Modelo en estratos
3. Modelo microncleo
4. Mquinas virtuales
27
2. Modelos de diseo
1. Modelo monoltico
Tema 2: Fundamentos
2. Modelo en estratos
3. Modelo microncleo
4. Mquinas virtuales
28
Administracin de Memoria
Gestor de Disco
29
Inconvenientes:
Dificultad de depuracin Complejidad y dificultad mantenimiento
30
Servicio 1
Servicio 2
Servicio 3
Servicio N
Rutina Aux. 1
Rutina Aux. 2
Rutina Aux. 3
SSI Int.1
SSI Int.2
31
voidtabla_servicios seleccionar(int ident_servicio) { servicio1() fun_serv tabla_servicios[] = {servicio1, servicio2() servicio2, servicio3}; servicio3() tabla_servicios[ident_servicio](); }
32
Linux y la mayora de Unix, a excepcin de Solaris Las versiones de windows basadas en MS-DOS
33
2. Modelos de diseo
1. Modelo monoltico
Tema 2: Fundamentos
2. Modelo en estratos
3. Modelo microncleo
4. Mquinas virtuales
34
Tema 2: Fundamentos
Hardware
35
Inconvenientes:
Al ser las capas cajas negras, se pierde la posibilidad de compartir cdigo y datos entre distintas capas
36
2. Modelos de diseo
1. Modelo monoltico
Tema 2: Fundamentos
2. Modelo en estratos
3. Modelo microncleo
4. Mquinas virtuales
37
Saquemos fuera de l toda la funcionalidad posible Funcionalidad sacada del ncleo: se implementa mediante procesos externos
Ncleo mnimo:
Multiprogramacin Comunicacin entre procesos Atencin de interrupciones Administrador Administrador Archivos Memoria Gestor de Disco
Proceso de Usuario
Microncleo
Hardware
38
Inconvenientes:
Sistemas ms lentos Requieren ms memoria
39
2. Modelos de diseo
1. Modelo monoltico
Tema 2: Fundamentos
2. Modelo en estratos
3. Modelo microncleo
4. Mquinas virtuales
40
Tema 2: Fundamentos
Sistema Operativo 1
Sistema Operativo 2
Sistema Operativo n
Hardware (1)
Hardware (2)
Hardware (n)
Hardware
41
Reparte recursos (memoria, disco) Simula dispositivos e interrupciones En particular: simula procesador
Reparte tiempo de procesador entre las mquinas virtuales Simula los cambios de modo de ejecucin
Sistema Operativo 2
Sistema Operativo n
Hardware (1)
OUT DX,AL
Hardware (2)
Hardware (n)
Hardware
42
Ejecucin simultnea de varios SO en una misma mquina Explotacin de Mainframes: mltiples mquinas adaptadas cada una a las necesidades de usuario (escalabilidad) Depurado de sistemas operativos
Tngase en cuenta
Estamos dividiendo la potencia de la mquina Monitor introduce sobrecarga
Suma de potencia de mquinas menor que la de la mquina real
43
Tema 2: Fundamentos
Plex86 (http://plex86.sourceforge.net/)
Lightweight Virtual Machine diseada slo para ejecutar Linux
Xen (http://www.cl.cam.ac.uk/research/srg/netos/xen/)
Paravirtualizador
44
2. Modelos de diseo
1. Modelo monoltico
Tema 2: Fundamentos
2. Modelo en estratos
3. Modelo microncleo
4. Mquinas virtuales
45
46
ndice:
Tema 2: Fundamentos
1. Conceptos bsicos
2. Modelos de diseo
3. Ejemplos de organizacin interna
47
2. Minix
3. Windows 2000
48
2. Minix
3. Windows 2000
49
3.1 Linux
Al igual que dems sistemas Unix, consta de:
Tema 2: Fundamentos
Procesos de usuario
Ncleo
50
3.1 Linux
Ncleo monoltico Problema: dificultad de mantenimiento
Tema 2: Fundamentos
E
51
3.1 Linux
Se suelen cargar como mdulos
Tema 2: Fundamentos
2. Minix
3. Windows 2000
53
3.2 Minix
Organizacin microncleo pura Organizacin de Minix 3:
Tema 2: Fundamentos
En modo supervisor: Todo lo dems en modo usuario proceso 1 de usuario proceso 1 de usuario
init
Tarea del sistema
Administrador de Administrador de Administrador de archivos memoria red Tarea de disco Tarea de terminales Tarea de ethernet
Operating Systems Design and Implementation, 3 Edicin Microncleo Andrew S. Tanenbaum, Albert S. Woodhull-Amherst 54 Prentice Hall
2. Minix
3. Windows 2000
55
Subsistemas de entorno
Procesos de Servicios
Aplicaciones de usuario
Subsistemas de entorno
Executive Kernel
Inside Windows 2000 Hardware Abstraction Layer (HAL) David A. Solomon, Mark E. Russinovich Microsoft Press
Gestores de Dispositivos
56
57