Descargar

Introducción a los Sistemas Operativos (PPT) (página 3)

Enviado por Pablo Turmero


Partes: 1, 2, 3, 4
edu.red

Conceptos básicos. Existe instrucciones restringidas asociadas a la lectura o modificación de registros de control (modo privilegiado o supervisor o modo núcleo, o modo sistema o modo de control). Gestión de procesos. Gestión de la memoria Gestión de la I/O Gestión de las IRQ. Contabilidad. El modo con menores privilegios es el modo usuario. (Gp:) Creación y terminación de procesos. Planificación. Sincronización y comunicación de procesos. Gestión de bloques de control de proceso.

1.2 El núcleo: Modos de ejecución.

edu.red

Conceptos básicos. Existe instrucciones restringidas asociadas a la lectura o modificación de registros de control (modo privilegiado o supervisor o modo núcleo, o modo sistema o modo de control). Gestión de procesos. Gestión de la memoria Gestión de la I/O Gestión de las IRQ. Contabilidad. El modo con menores privilegios es el modo usuario. Asignación de espacios de direcciones a procesos. Swapping. Gestión de páginas y segmentos. 1.2 El núcleo: Modos de ejecución.

edu.red

Conceptos básicos. Existen instrucciones restringidas asociadas a la lectura o modificación de registros de control (modo privilegiado o supervisor o modo núcleo, o modo sistema o modo de control). Gestión de procesos. Gestión de la memoria Gestión de la I/O Gestión de las IRQ. Contabilidad. El modo con menores privilegios es el modo usuario. Asignación de buffers. Asignación de canales de I/O y dispositivos. 1.2 El núcleo: Modos de ejecución.

edu.red

Conceptos básicos. Existe instrucciones restringidas asociadas a la lectura o modificación de registros de control (modo privilegiado o supervisor o modo núcleo, o modo sistema o modo de control). Gestión de procesos. Gestión de la memoria Gestión de la I/O Gestión de las IRQ. Contabilidad. El modo con menores privilegios es el modo usuario. Contabilidad. Supervisión. 1.2 El núcleo: Modos de ejecución.

edu.red

Conceptos básicos. Todo el SO Se diseña como un único módulo formado por distintas funciones que inter-operan. Dependencias entre los componentes internos. Un núcleo central (monitor) permite la comunicación entre los procesos de usuario y las I/O (Modo Supervisor). Comunicación entre procesos compartiendo memoria. La mayor parte del código del sistema operativo se ejecuta en el mismo espacio de memoria ==> fácil corromper datos del sistema. Gran velocidad. Poca versatilidad. Todo el sistema se ejecuta en modo supervisor: poco robusto. 1.2 El núcleo: Diseño Monolítico.

edu.red

Conceptos básicos. Núcleo reducido. Funciones en procesos de sistema externos al núcleo. Varios procesos de servidor: administración de memoria, creación y gestión de procesos, planificación del procesador, gestión de interrupciones, sincronización y comunicación entre procesos. Un gran número de procesos del sistema se pueden ejecutar en modo usuario. Comunicación mediante intercambio de mensajes. Soporte natural para el proceso distribuido. En sistemas distribuidos son comunes las RPC llamadas a procedimientos remotos y el intercambio de mensajes entre clientes y servidores. Los clientes no necesitan saber si una solicitud es atendida por un servidor local o remoto No todos los procesos de sistema comparten el mismo espacio de direcciones. Mejor portabilidad / versatilidad. Modificación del sistema en caliente. Simplifica el sistema operativo base. 1.2 El núcleo: Diseño Micronúcleo.

edu.red

Conceptos básicos.

edu.red

Conceptos básicos. Def.: Mecanismos proporcionados por el hardware que rompen la ejecución normal de los programas. Presentes en todos los sistemas. En todos los ordenadores: gestión de errores, desbordamientos, divisiones por cero, etc, dispositivo está listo, proceso a espera, RESET, reloj del sistema. Interrupción del proceso en ejecución, pasa el control al sistema. En la actualidad varios canales de IRQ, distintos niveles. Se ordenan jerárquicamente las interrupciones para ser procesadas en orden de importancia cuando se produce una interrupción durante la ejecución de otra (DPC y APC son los niveles más bajos en WNT). Tipos: Internas síncronas. Conocidas como traps. Las provoca el proceso en ejecución. Llamadas al sistema. Errores de ejecución. Accesos no permitidos. Divisiones por cero. Fallos de página. 1.3 Interrupciones 1. Externas asíncronas. Son las conocidas propiamente como interrupciones. Se producen fuera del control del proceso de usuario. El sistema operativo toma el control. Interrupciones de reloj. Liberación de dispositivos.

edu.red

Conceptos básicos Pasos de una interrupción. El dispositivo emite la IRQ. La CPU finaliza la instrucción en curso. Se identifica y confirma la existencia de la IRQ, el dispositivo del que procede y la naturaleza de la IRQ. Se anula la señal de IRQ. El hardware salva el contador del programa en la pila. Se carga el nuevo contador del programa desde el vector de interrupciones. Se salvan los registros. Se cambia el valor del puntero de pila. Se conmuta el proceso que estaba en estado de espera de esa interrupción a listo y El planificador pasa a seleccionarlo para ejecución. Se cede el control al nuevo proceso. Tras procesar la IRQ se carga el estado del proceso interrumpido.

Nota: En muchos casos procesar una IRQ no implica el cambio de contexto del proceso. 1.3 Interrupciones 2.

edu.red

Conceptos básicos. Def.: Interface normalizada entre el sistema operativo y proceso. Acceso controlado a los servicios de nivel bajo. Después de recibir la llamada el SO recupera el control. Tipos: Control de procesos y trabajos: Ordenes para la creación, destrucción, ejecución, etc. de procesos. Manipulación de ficheros: Ordenes dedicadas a borrar, leer, escribir,, abrir, cerrar, etc. , ficheros. Manipulación de dispositivos: Peticiones de atributos, estado (ocupado/libre), lectura, escritura, etc. de dispositivos. Mantenimiento de información: Fecha, hora, datos y variables del sistema, atributos de dispositivo y de ficheros, etc. 1.4 Llamadas al sistema. Las llamadas al sistema más comunes (sólo en UNIX) realizadas mediante C son: Abrir: int open (char *fichero, int modo); Cerrar: int close (descriptor); Crear: int creat (char *fichero, int modo); Borrar: int unlink (char *fichero) Leer y escribir: int read (int descriptor, char *buff, ,int nbytes); int write (int descriptor, char *buff, ,int nbytes);

edu.red

Conceptos básicos. Programas para la resolución de problemas corrientes. Entorno más adecuado para la ejecución de los programas. Manipulación de ficheros: Crear, copiar, destruir, listar ficheros y directorios. Información de estado: Fecha, hora, cantidad de memoria disponible, espacio en disco, número de usuarios, etc. La información se formatea y se visualiza. Modificación de ficheros: Editores de textos. Soporte a lenguajes de programación: Compiladores, ensambladores, linkadores. Carga y ejecución de programas: Depuradores y cargadores en memoria. Aplicaciones: Sistemas de bases de datos, sistemas de gráficos, procesadores de texto, sistemas de análisis estadístico, etc. Interprete de comandos es el programa más útil de los que acompañan al sistema operativo. Su función es la de captar el siguiente comando en la línea de ordenes y realizar su ejecución. 1.4 Llamadas al sistema.

edu.red

Conceptos básicos. Se arranca el programa (llamada al sistema): necesita los nombre de archivos de entrada y salida. Si el programa pregunta por los nombre, escribe la petición en pantalla (llamada al sistema) y leerla del teclado, o leerla del dispositivo de entrada (llamada al sistema). Apertura del fichero de entrada y creación del de salida (llamadas al sistema) Si se generan errores (archivo1 no existe o disco lleno) (llamada al sistema). Si el fichero de salida existe se puede borrar (llamada al sistema) y se crea uno nuevo (llamada al sistema), o bien se pide otro nombre al usuario (llamadas al sistema para salidas por monitor y recogida de información). El copiado de los ficheros se hace mediante llamadas al sistema para la lectura y otras para la escritura. El proceso se finaliza (llamada al sistema) con las ordenes de cerrar archivos y terminación del proceso (llamadas al sistema). 1.4 Llamadas al sistema: Ej.: Programa de lectura de datos de un fichero y escritura en otro. .

edu.red

Conceptos básicos. Programas para la resolución de problemas corrientes. Entorno más adecuado para la ejecución de los programas.   Manipulación de ficheros: Crear, copiar, destruir, listar ficheros y directorios. Información de estado: Fecha, hora, cantidad de memoria disponible, espacio en disco, número de usuarios, etc. La información se formatea y se visualiza. Modificación de ficheros: Editores de textos. Soporte a lenguajes de programación: Compiladores, ensambladores, linkadores. Carga y ejecución de programas: Depuradores y cargadores en memoria. Aplicaciones: Sistemas de bases de datos, sistemas de gráficos, procesadores de texto, sistemas de análisis estadístico, etc. Interprete de comandos es el programa más útil de los que acompañan al sistema operativo. Su función es la de captar el siguiente comando en la línea de ordenes y realizar su ejecución. 1.5 Programas de sistema.

edu.red

Conceptos básicos. Comandos Pueden estar implementados en el código del interprete (él hace la llamada al sistema). Pueden estar implementados en archivos especiales. En este último caso ha de existir un mecanismo para que el interprete de comandos le pueda pasar argumentos al programa comando.

Shell Las SHELLs no pertenecen al SO. Están al nivel de los compiladores, linkadores, ensambladores, etc. El nombre SHELL es el nombre del interprete de comandos del UNÍS. En DOS recibe el nombre de COMMAND.COM. La salida y entrada standard es la terminal. Los comandos son ejecutados como procesos hijos.

1.5 Programas de sistema.

edu.red

2. Procesos . La primera idea de proceso surge tras el MULTICS (1968). El sistema ha de gestionar y controlar los procesos. Definiciones. Programa en ejecución. Instancia de un programa funcionando en el ordenador. Entidad que puede ser asignada a un procesador y ejecutada por él. Es el conjunto formado por el programa ejecutable, pila, datos, punteros y todo lo necesario para hacer correr un programa. Unidad de actividad. Ejecución secuencial, estado actual y recursos asignados. Se busca: Mejor aprovechamiento de los recursos físicos. Mejor compartición de recursos lógicos. Creación de un proceso se realiza por (por la emisión de un trabajo). Login del user. Lanzado por lotes. Creado por el SO. Para un servicio. Generado por un proceso.

2.1 Introducción (1).

edu.red

2. Procesos. Partes del proceso. Programa ejecutable. Datos. Variables, buffer, etc. Contexto. Información para la administración del proceso por parte del SO. Registro de contador y datos en la CPU. PCB o Bloque Control Proceso Ubicación. Imagen. Constituida por el programa y los datos. Formada según el esquema de gestión de la MEM del sistema. Para un bloque contiguo: Datos de usuario (modificable). Programa a ejecutar (programa de usuario). Pila del sistema (LIFO). Para el retorno de las llamadas al sistema y a procedimientos. Bloque de control del proceso (PCB). 2.2 Partes de un proceso.

edu.red

2. Procesos. Multiprogramación: Varios procesos simultáneos (pseudoparalelismo) para compartir recursos y CPU buscando eficiencia. Tiempo compartido. Sistema sensible a las necesidades del usuario. Varios usuarios. Planificación: Proceso Planificador y Scheduler Distribución adecuada del uso del tiempo de la CPU, equitativa para todo proceso. Eficiencia: Mantener ocupada la CPU al 100%. Tiempo de respuesta mínimo para las peticiones que los usuarios realizan (tiempo real). Mínimo tiempo de respuesta para la realización de trabajos. Número máximo de trabajos por unidad de tiempo. 2.3 Conceptos asociados a proceso.

edu.red

Planificación de procesos FirstCome-FirstServerd Round Robin. Shortest Job First Prioridades. Prioridades múltiples colas. Planificación.

edu.red

2. Procesos. Asigna un identificador único (id). Asigna espacio. Imagen del proceso (proceso+datos). Inicia el PCB. El estado es de listo, el resto de los valores es dado por defecto o nulo. Enlaces. Se generan e insertan en las colas de planificación. Crean o amplían las estructuras de datos. 2.4 Pasos en la creación de un proceso (1).

edu.red

2. Procesos. Identificador de proceso (único). Será utilizado en las referencias al proceso a MEM, comunicaciones, sistema de archivos, etc. Estado (información) del procesador. Registros de la CPU: Visibles por el usuario. Control y estado: Contador de programa. Estado de esperas por IRQ. Códigos de condición: resultado de operaciones aritméticas. Puntero a Pila. Inf. control de proceso. Planificación: Estado, prioridad, suceso en espera, alg. de planificación. Estructuración (enlaces a otros procesos, similares o padre-hijo). Comunicación. Almacenamiento de Señales, mensajes enviados. Privilegios. MEM, instrucciones, recursos. Punteros a MEM, tablas de páginas, segmentos, etc. Recursos asignados, historial. Área de salvaguarda de registros (c. de contexto).

2.4 Pasos en la creación de un proceso (2). Atributos. .

Partes: 1, 2, 3, 4
 Página anterior Volver al principio del trabajoPágina siguiente