ayudantía 1: overview
DESCRIPTION
UTFSM - Sistemas Operativos. Ayudantía 1: Overview. El sistema operativo. Conceptos básicos: Proceso: Instancia de un programa, tiene uno o más threads . Thread Gestión de memoria Gestión de E/S Sistema de archivos Seguridad. Labor. No hay algo específico, puede ir de: - PowerPoint PPT PresentationTRANSCRIPT
AYUDANTÍA 1: OVERVIEW
UTFSM - Sistemas Operativos
2
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
Ayudantía Sistemas Operativoshttp://villaseca.wordpress.com
Ayudantía Sistemas Operativos - http://villaseca.wordpress.com
3
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
4
Componentes
CPU, memoria, dispositivos I/OSe comunican por un
BusPueden haber varios
Buses Trabajan de forma
separada a través de un buffer e interrupciones.
Ayudantía Sistemas Operativos - http://villaseca.wordpress.com
5
Interrupciones
Ocurre interrupción
Se guarda dirección de instrucción
Se desactivan interrupciones temporalmente
Interrupción: Vectored o
Polled
Traps
Ayudantía Sistemas Operativos - http://villaseca.wordpress.com
6
Proceso con interrupción de I/O sincrónica
Proceso trabaja
Se llama a I/O
CPU idle
I/O termina
Se devuelve control al usuario
Ayudantía Sistemas Operativos - http://villaseca.wordpress.com
7
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
8
Proceso con interrupción de I/O asincrónica
Proceso trabaja
Llamada a sistema
Sistema busca
dispositivo
Sistema registra trap
El proceso no ha dejado de trabajar
Ayudantía Sistemas Operativos - http://villaseca.wordpress.com
9
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
10
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
11
Para el sistema operativo Excepciones v/s traps Loops infinitos, procesos modificando
otros
Ayudantía Sistemas Operativos - http://villaseca.wordpress.com
12
Para el sistema operativo User mode v/s Kernel mode
Mode bit Timer
Ayudantía Sistemas Operativos - http://villaseca.wordpress.com
13
Procesos
Debe haber, para cada proceso, un process descriptor:Estado (ejecución, preparado, bloqueado)ContadorPuntero a stackAsignación de memoriaArchivos abiertosetc etc..
Ayudantía Sistemas Operativos - http://villaseca.wordpress.com
14
Estado de un proceso
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).
Ayudantía Sistemas Operativos - http://villaseca.wordpress.com
15
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
16
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
17
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
18
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
19
Explicación de CUDA
Ayudantía Sistemas Operativos - http://villaseca.wordpress.com
20
Hagamos el flujo del proceso…
Ayudantía Sistemas Operativos - http://villaseca.wordpress.com
21
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
22
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
23
Fin del overview