23
UTFSM - Sistemas Operativos

UTFSM - Sistemas Operativos. El sistema operativo Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Embed Size (px)

Citation preview

Page 1: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

UTFSM - Sistemas Operativos

Page 2: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

El sistema operativo

Conceptos básicos:Proceso: Instancia de un programa,

tiene uno o más threads.○ Thread

Gestión de memoriaGestión de E/SSistema de archivosSeguridad

2Ayudantía Sistemas Operativoshttp://villaseca.wordpress.com

Page 3: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Labor

No hay algo específico, puede ir de:Manejar los recursos.Controlar ejecución de los programas.Seguridad

Hasta:Facilitar desarrollo de aplicaciones.Ofrecer interfaz multimedia.

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 3

Page 4: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Componentes

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 4

Page 5: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Interrupciones

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 5

Page 6: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Proceso con interrupción de I/O sincrónica

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 6

Page 7: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Ejemplo:

Proceso con interrupción de I/O sincrónica:Proceso va a I/O cada: 20sDuración I/O: 10s

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 7

Page 8: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Proceso con interrupción de I/O asincrónica

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 8

Page 9: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Ejemplo

Proceso con interrupción de I/O asincrónica:Proceso va a I/O cada: 20sDuración I/O: 10s

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 9

Page 10: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Conceptos avanzados

MultiprogramaciónEficiencia, usar CPU siempreCiclar cuando hay interrupciones.

TimesharingCompartir tiempo entre aplicaciones

SwappingSi un proceso no cabe en la memoria

Memoria virtual

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 10

Page 11: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Para el sistema operativo Excepciones v/s traps Loops infinitos, procesos modificando

otros

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 11

Page 12: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Para el sistema operativo User mode v/s Kernel mode

Mode bit

Timer

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 12

Page 13: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Procesos

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 13

Debe haber, para cada proceso, un process descriptor:Estado (ejecución, preparado, bloqueado)ContadorPuntero a stackAsignación de memoriaArchivos abiertosetc etc..

Page 14: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Estado de un proceso

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 14

1. En ejecución (utilizando realmente la CPU en ese instante).

2. Preparado (ejecutable; detenido temporalmente para permitir que otro proceso se ejecute).

3. Bloqueado (incapaz de ejecutarse hasta que tenga lugar algún suceso externo).

Page 15: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Rutina común para el SO1. El hardware apila el contador de programa.2. El hardware carga el nuevo contador de programa

desde el vector de interrupción.3. Una rutina de lenguaje ensamblador salva los registros.4. Una rutina de lenguaje ensamblador establece una

nueva pila.5. Se ejecuta la rutina de tratamiento de la interrupción

escrita en C (normalmente lee y guarda en un búfer el dato de entrada).

6. El planificador decide qué procedimiento ejecutar a continuación.

7. Un procedimiento escrito en C retorna al código en ensamblador.

8. Una rutina de lenguaje ensamblador (el dispatcher) pasa a ejecución el proceso seleccionado por el planificacor.

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 15

Page 16: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Manejo de memoria

SO debe saber qué partes de la memoria se usan y por quién.Ejemplos de garbage collection

Saber qué sacar y qué dejar en memoria.

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 16

Page 17: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Almacenamiento

Sistemas de archivo:Control de accesoPrimitivas de manipulación de archivos

○ Analogía con lenguajes de programaciónEvitar erroresManejo de espacio libreDisk scheduling

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 17

Page 18: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Ejemplo real

Abren un MP3 con su reproductor de múica.

Tienen parlantes 5.1La música viene en stereo, no en 5.1, por lo

que se bajan un plug-in para transformarla de stereo a 5.1. (Y así aprovecharlos!)

El plug-in usa CUDA.

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 18

Page 19: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Explicación de CUDA

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 19

Page 20: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Hagamos el flujo del proceso…

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 20

Page 21: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Qué tenemos entonces? A simple vista:

Reproductor de música (.exe)Plug-in (*.dll)Drivers CUDADrivers de sonidoApplication programming interfaces (API)

○ Para cargar el plug-in (Win32 API)○ Para enviar audio a la tarjeta de sonido

(Directsound o OpenAL)○ Para abrir los archivos (el .MP3)

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 21

Page 22: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Nos falta algo?

Dispositivo de almacenamiento Controlador de disco Sistema de archivos Permisos de usuario Otros procesos corriendo a la vez:

Mouse, teclado, barra de inicio, etc

Y se puede seguir desgranando muuucho más!

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 22

Page 23: UTFSM - Sistemas Operativos. El sistema operativo  Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads. ○ Thread Gestión de

Ayudantía Sistemas Operativos - http://villaseca.wordpress.com 23