TEMA 1: INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
TEMA 1: INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS por Mind Map: TEMA 1: INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS

1. 1. ¿QUÉ ES UN SISTEMA OPERATIVO?

1.1. Definición de sistema operativo, proceso, mencionar los tipos de programas y funciones u objetivos del SO

1.2. 1.1 EL SISTEMA OPERATIVO COMO GESTOR/ASIGNADOR DE RECURSOS

1.2.1. Al exisitir conflictivas solicitudes de recursos, cualquier planificacion y asignacion por parte del SO debe tener en cuenta tres factores: Equitatividad, respuesta diferencial y eficiencia

1.2.2. Los respectivos elementos princiales para lllevar a cabo los tres factores

1.2.3. El número de colas a cuanto planificación: a corto plazo y largo plazo

1.3. 1.2 EL SISTEMA OPERATIVO COMO INTERFAZ SIMPLE INTERMEDIARIA

1.3.1. Relacion hardware-programador. El programador desea una abstracción sencilla y fácil de entender. Función del SO. Definición máquina virtual o interfaz intermedia

1.3.2. El sistema operativo, debe proporcionar los siguientes servicios: Ejecución de programas, operaciones de E/S, manipulación y control de sistema de archivos, detección de errores, control de acceso al sistema, monitoreo

2. 2. DISEÑO MODULAR EN NIVELES

2.1. Método de diseño modular: características: 1. mayor libertad de cambio y de ampliación del sistema. 2. menor esfuerzo de mantenimiento. 3. mayor facilidad de corrección de errores y depuración

2.2. EL SISTEMA OPERATIVO LINUX tiene un diseño jerárquico por capas

3. 3. TRANSFORMACIÓN DE UN PROGRAMA EN INSTRUCCIONES MÁQUINA

3.1. Lenguajes de alto nivel, compiladores, lenguaje ensamblador

3.2. 3.1 Ejemplo de paso de lenguaje ensamblador a lenguaje máquina

4. 4. ELEMENTOS BÁSICOS Y ORGANIZACIÓN DE UN COMPUTADOR

4.1. ARQUITECTURA DE VON NEUMANN: un computador electrónico consta de:

4.1.1. Unidad de procesamiento, memoria principal, módulos o controladoras de entrada y salida (E/S).

4.2. MISIÓN PRINCIPAL DE UN CONTROLADOR DE DISPOSITIVO O MÓDULO DE E/S

4.3. 4.1 El procesador y sus registros

4.3.1. Intercambios de datos con la memoria y los dispositvos de E/S. (RDIM,RDAM,RDIE/S...)

4.3.2. Otros tipos de registros y su clasificación en visibles o no al usuario

4.4. 4.2 INTERACCIÓN DE LA CPU CON LA MEMORIA PRINCIPAL

4.4.1. Interacción de los programas con las memoria principal: secuencia de carga y secuencia de almacenamiento

4.4.2. DONDE ESTÁ ALMACENADO EL NÚCLEO: EN EL DISCO DURO

4.5. 4.3 ESTRUCTURA DE E/S: DRIVERS Y CONTROLADORES

4.5.1. No cofundir la controladora de software y hardware

4.5.2. LA SECUENCIA DE COMUNICACIÓN CORRECTA EN UNA OPERACIÓN DE LECTURA DE UN PERIFÉRICO EXTERNA: CPU-DRIVER-CONTROLADORA-PERIFERICO(dispositivo)

5. 5. BÚSQUEDA Y EJECUCIÓN DE INSTRUCCIONES

5.1. El procesador incrementa el PC después de cada instrucción cargada en el IR, de manera que se leerá la siguiente instrucción en orden secuencial

5.1.1. ciclo de instrucción, fase de búsqueda y ejecución

5.2. 5.1 EJEMPLO DE EJECUCIÓN DE INSTRUCCIONES

6. 7. SISTEMAS MULTIPROCESADOR

6.1. Los procesadores se comunican entre sí COMPARTIENDO el bus de la computadora

6.1.1. PROCESADOR DE PROPÓSITO ESPECIAL: ejecuta un conjuntoñlimitado de instrucciones, no ejecutra procesos de usuario

6.1.2. Dsiponen de microprocesadores de propósito especial

6.1.3. El SO debe tener mecanismos que permitan trabajar con varios núcleos y/o varios procesadores

6.2. VENTAJAS

6.2.1. MAYOR RENDIMIENTO

6.2.2. ECONOMÍA DE ESCALA

6.2.3. PREGUNTA EX: CAPACIDAD DE CÓMPUTO

6.3. 7.1 SISTEMAS MULTIPROCESADOR SIMÉTRICOS

6.3.1. SMP: multiprocesamiento simétrico, en dicho sistema todos los procesadroes son iguales

6.3.1.1. SMP como un sistema de computación aislado: --> Características

6.3.2. EN UN SMP : la disponibilidad aumenta con respecto a los sistemas asimétricos

7. 6. INTERRUPCIONES Y MANEJADOR DE INTERRUPCIONES

7.1. Una interrumpción es para la ejecución de un proceso

7.1.1. ejecución hardware

7.1.2. ejecución software

7.1.2.1. UNA DIVISIÓN POR CERO ES: una interrumpción de programa/proceso (excepciones)

7.2. UNA INTERRUMPCIÓN PUEDE SUCEDER EN CUALQUIER PUNTO DE EJECUCUCIÓN DE UN PROGRAMA DE USUARIO, ES IMPREVISIBLE

7.2.1. TABLA DE VECTORES/PUNTEROS: contiene la dirección de la rutina de tratamiento

7.2.1.1. La ISR se ejecuta una vez que el software manejador de interrumpciones determina el tipo de interrumpción a tratar

7.3. 6.1 ADICIÓN A LA FASE DE INTERRUMPCIÓN

7.3.1. Sería como una manera ineficiente de comunicación con los periféricos

7.4. 6.2 INTERRUPCIONES MULTIPLES

7.4.1. un sistema puede estar recibiendo datos en una línea de comunicación e imprimiendo resultados al mismo tiempo

7.4.1.1. se consideran dos alternativas: inhabilitar interrumpciones y definir propiedades para las interrumpciones

7.4.1.1.1. no tiene en cuenta la prioridad relativa o el grado de urgencia

7.4.1.2. EJEMPLO: sistema con dispositovos de E/S

7.4.1.3. El código que se ejecuta con las interrumpciones inhibidas es: ciertas partes críticas del código del SO

8. 8. MULTIPROGRAMACIÓN

8.1. Incrementa el uso de la CPU de manera que ésta no queda ociosa de trabajos

8.2. Tiempo compartido sin multiprogramación: NO ES FACTIBLE

8.3. EN CASOS DONDE EL SITEMA NO FUERA MULTIPROGRAMADO

8.3.1. La CPU se quedaría inactiva hasta que en una operacón de E/S concluyese o el evento esperado se produjese

8.3.1.1. EX: En la E/S programada, la CPU permanece en espera activa si el controlador de E/S no está listo al sondear su estado

8.4. En un sistema multiprogramado, el SO simplemente cambia de trabajo

8.4.1. La decisión del cambio de trabajo es del planificador

8.4.1.1. ejemplo de multiprogramación

9. 9. MULTIPROCESAMIENTO

9.1. Es la ejecucion simultánea de más de un proceso a la vez en un sistema

9.1.1. SE DA EN SISTEMAS CON MAS DE UN PROCESADOR

9.2. 9.1 HYPERTHREADING

9.2.1. CONSISTE EN: simular en cada núcleo físico del procesador dos procesadores lógicos

9.2.1.1. El resultado es una mejoría en el rendimiento del procesador

9.2.2. PREGUNTAS SOBRE EL TEMA

9.2.2.1. ¿Existe paralelismo real en un núcleo con tecnología Hyperthreading (supongamos una CPU con un solo núcleo)?

9.2.2.1.1. EXISTE...

9.2.2.2. ¿Entonces, un núcleo con Hyperthreading realiza también multiprogramación?

9.2.2.2.1. SI...

9.2.2.3. ¿Los hilos tienen que pertenecer al mismo proceso o pueden ser de procesos diferentes?

9.2.2.3.1. Los hilos pueden pertenecer a procesos monohilo diferentes o a dos hilos de un mismo proceso multihilo.

10. 11. LLAMADAS NATIVAS AL SISTEMA Y PASO DE PARÁMETROS

10.1. Función: solicitarle un servicio al sistema operativo. Se ejecutan miles de llamadas nativas al sistema por segundo

10.1.1. Los programadores pueden usar INDIRECTAMENTE las llamadas nativas al sistema de varias formas:

10.1.1.1. llamada nativa al sistema tiene asociado un número identificador, ue hace referencia a la tabla de llamadas al sistema.

10.1.2. proporcionan un interfaz entre un programa o proceso y el núcleo de sistema operativo

10.1.3. Cuando se realiza una llamada nativa al sistema puede ser necesario pasar parámetros al núcleo del sistema operativo.

10.2. ES LO QUE MÁS CARACTERIZA A UN SO. MIARAR PREG PAG 32, 33

10.3. 11.1 Pasos generales en la invocación de una llamada nativa al sistema mediante funciones de tipo TRAP

10.3.1. Proceso general mediante APIS, diferentes versiones

10.3.2. una llamada nativa al sistema se podrían ver interrumpida por algún evento o señal

10.4. 11.2 Ejemplo de llamadas nativas al sistema en sistema GNU/Linux clásico

10.4.1. llamadas nativas al sistema en una arquitectura clásica x86 (32 bits)

10.4.1.1. include/asm-i386/unistd.h

10.5. 11.3 Localizar cuáles son los números (IDs) de llamadas nativas al sistema en un SO GNU/Linux actual

11. 10. MODO DUAL (USUATIO Y KERNELL)

11.1. El código del propio sistema operativo se encuentra codificado en lenguaje máquina al cargarse en memoria principal al arranque del sistema.

11.2. Para no hacer cambios en tiempo real (rutinas)

11.2.1. los diseñadores han buscado una solución basada en un modo dual de operación:

11.2.1.1. modo núcleo, kernel, supervisor o privilegiado, asociado al procesamiento de instrucciones y rutinas del sistema operativo.

11.2.1.2. modo usuario: Este modo está asociado al procesamiento de instrucciones y rutinas de los programas de usuario

11.2.2. ¿cuándo se ejecuta o se accede al código del núcleo?

11.2.2.1. llamada nativa al sistema

11.2.2.2. Cuando un dispositivo de E/S provoca una interrupción

11.2.2.3. interrupción por fallo de tipo hardware

11.2.2.4. planificador debe cambiar de proceso

11.2.2.5. una aplicación provoca una excepción

11.3. FUNCIONES BÁSCIAS DEL NÚCLEO DEL SIETMA OPERATIVO

11.3.1. ¿cómo se cambia de modo?

11.3.2. El SO configura periódicamente una interrupción de reloj vía hardware para evitar perder el control y cambiar a modo núcleo frecuentemente

12. 12. INTÉRPRETE DE COMANDOS

12.1. PATH

13. 13. UN POCO DE HISTORIA