Tiempos muertos del procesador
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 6,43 KB
4.Definición de sistema operativo
El SO es un programa (o conjunto de programas) de control.
- Objetivos principales:
facilitar el uso el ordenador; utilizar el ordenador eficientemente
. - Funciones principales: gestiona y asigna recursos Hw; gestiona y mantiene archivos; protege los datos y los programas; identifica y autentica a los usuarios; contabiliza la utilización de los recursos.
6.Arranque del ordenador (Booting)
Al encender un ordenador:
- Programa de autodiagnóstico de encendido (ROM): identifica memoria, discos, teclado, ratón,...
- Cargador inicial (ROM) → Residente
- Invitación a que el usuario inicie su trabajo: intérprete de órdenes/escritorio.
8.Gestión del procesador
Proceso
Programa en ejecución que necesita recursos para realizar su tarea: tiempo de CPU, memoria, archivos y dispositivos de E/S.- El sistema de gestión del operador es responsable de: crear y destruir los procesos; parar y reanudar los procesos; ofrecer mecanismos para que se comuniquen y sincronicen los procesos.
11.Gestión del procesador. Monopropagación
- Funciones del SO de monopropagación: gestión de las operaciones de E/S (llamadas al sistema;
Interrupciones
; planificador de trabajos. - Inconvenientes: se desaprovecha la MM; se desaprovecha el procesador (tiempos A-B y C-D mucho mayores que los tiempos de la CPU); se desaprovechan los periféricos.
12.Gestión del procesador. Multipropagación
- Componentes típicos de un proceso:
Código máquina; datos del programa; pila; bloque de control del proceso (PCB) (identificador; estado; privilegios y prioridades del proceso; identificador del usuario; contenidos de los registros del procesador; etc.).
14.Gestión del procesador Multiprogramación
- Procesamiento concurrente: planificador de trabajos (decide qué programas pendientes de ejecución pasan a preparados)
; planificador a corto plazo (al terminar el servicio a una interrupción, decide qué proceso de entre los preparados pasa a estar activo.
Algoritmos de planificación)
; distribuidor (activa al proceso elegido por el planificador a corto plazo, realizando un cambio de contexto → activo)
.
15.Gestión del procesador. Multiprogramación
- Cambio de contexto: se actualiza el PCB del proceso interrumpido (se pasa a preparado, bloqueado o concluido, se salvan los valores de los registros del procesador, biestables indicadores, punteros a archivos de discos y de pilas, contador de programa, …); se restaura el PCB del proceso que pasa a activo (se pasa a activo, se recuperan los valores de los registros del procesador, biestables indicadores,..).
17.Gestión del procesador. Multiprogramación
Estrategias de asignación del procesador a los procesos
No apropiativa (nonpreemptive)
- Un proceso activo continua ejecutándose hasta: Termina; Se bloquea; Cede el procesador a otro proceso
- MS-DOS (hasta Windows 3.X) y MacOS
- Un proceso puede monopolizar el procesador
Apropiativa (preemptive)
- El SO detiene el proceso activo de acuerdo a un criterio preestablecido
- Windows 95/98, NT, OS/2, Unix y Linux
18.Gestión del procesador. Multiprogramación
- Algoritmos de planificación: Turno rotatorio (a cada proceso se le asocia un intervalo de tiempo fijo. Problemas a la hora de elegir dicho intervalo de tiempo); planificación por prioridad (estáticas, dinámicas o mezcla. Con realimentación); FCFS (First Come First Served); SPN (Shortest Process Next); SRT (Shortest Remaining Time).
19.Gestión del procesador
- El número de trabajos que se pueden ejecutar concurrentemente depende (entre otros factores) de la capacidad de la MM
- Solución: Intercambio memoria principal / disco (swapping
)
: se pasa a disco uno de los procesos que están en MM (bloqueados o preparados), dejando hueco en MM para un nuevo proceso; cuando le llegue el turno al proceso que se pasó a disco se hace otro swapping con este proceso; el swapping es gestionado por el intercambiador (SO); El proceso que se pasa a disco se dice que está en estado intercambiado (preparado o bloqueado); Procesos residentes.
22.Gestión de la memoria
- La memoria (MM) es una gran tabla de palabras o bytes que se referencian mediante una dirección única
. - La MM es de acceso rápido, volátil y es compartida por la UCP y los dispositivos de E/S.
- El sistema de gestión de memoria es responsable de: Conocer que partes de la MM están siendo utilizadas y por quién ;Decidir que se carguen en MM procesos cuando hay espacio libre; Asignar y liberar espacio de MM cuando sea necesario.
24.Gestión de la memoria
- Un programa máquina es una secuencia de instrucciones en código máquina
- Las instrucciones ocupan 1 o más palabras de la memoria.
- Si un programa máquina ocupa n palabras estas se numeran de la 0 a la n-1. Estas son las direcciones lógicas (dl)
- Los programas se cargan en la MM a partir de una dirección base (DB)
- Las direcciones reales donde se carga el programa son las direcciones físicas (df)
- df = dl + DB
31.Gestión de la memoria Paginación
- La MM se divide en páginas (marcos) de longitud fija (512B, 4KiB, 8KiB, 4MiB)
- Los procesos se dividen en páginas lógicas (páginas) de longitud fija
- Para un sistema el tamaño de marco es igual al de página
- Las páginas de un proceso se almacenan en marcos libres estén o no contiguos
- Ventaja
:
No fragmentación externa
Inconveniente
Fragmentación interna