Descargar la presentación
La descarga está en progreso. Por favor, espere
1
SISTEMAS OPERATIVOS JOSE ANGEL MORENO B. Ingeniero de Sistemas TP # 05255145501 Copnia Universidad Incca de Colombia CORPORACI Ó N UNIVERSITARIA REMINGTON CAT – Urabá - Apartado ADMINISTRACION DE MEMORIA
2
ADMINISATRACION DE MEMORIA CORPORACI Ó N UNIVERSITARIA REMINGTON CAT – Urabá - Apartado Programa: conjunto de instrucciones que ejecuta una computadora para realizar una actividad. Proceso: instancia de ejecución de un programa, caracterizado por su contador de programa, estado, registros del procesador, segmento de texto, pila y datos.
3
Estados y transición de los procesos CORPORACI Ó N UNIVERSITARIA REMINGTON CAT – Urabá - Apartado Estados En ejecución: Utiliza la CPU. Listo: Ejecutable, se detiene de forma temporal. Bloqueado: No se puede ejecutar debido a la ocurrencia de algún evento externo.
4
Transacciones CORPORACI Ó N UNIVERSITARIA REMINGTON CAT – Urabá - Apartado Estados y transición de los procesos En ejecución Bloqueado Listo
5
CORPORACI Ó N UNIVERSITARIA REMINGTON CAT – Urabá - Apartado Un hilo o hebra en los S.O. son programas que tienen como característica principal el ejecutar varias tareas a la vez (concurrencia). Comparten recursos Cuentan con un contador de programa Pila de ejecución Estado del CPU Procesos ligeros (hilos o hebras)
6
CORPORACI Ó N UNIVERSITARIA REMINGTON CAT – Urabá - Apartado Procesos ligeros (hilos o hebras) Espacio de memoria Variables globales Ficheros abiertos Procesos hijos Temporizadores Señales y semáforos Contabilidad
7
CORPORACI Ó N UNIVERSITARIA REMINGTON CAT – Urabá - Apartado Procesos ligeros (hilos o hebras) Beneficios: Explotación del paralelismo Explotación de concurrencia (I/O) Estilo de programación
8
CORPORACI Ó N UNIVERSITARIA REMINGTON CAT – Urabá - Apartado Procesos ligeros (hilos o hebras) Aplicaciones: Creación y destrucción Sincronización Gestión de prioridades Gestión de señales Gestión de memoria Se pueden utilizar todas las funciones incluidas en POSIX.1 y POSIX.1b La interfaz de hilos POSIX es pthreads, aunque existen otras bibliotecas de hilos
9
CORPORACI Ó N UNIVERSITARIA REMINGTON CAT – Urabá - Apartado Procesos ligeros (hilos o hebras) Si se desea crear una nueva hebra, es suficiente construir un nuevo objeto de la clase Thread y llamar a su método start(). public class DosHebrasBasicas extends Thread { int cont; DosHebrasBasicas(int c) { cont = c; } public void run() { while (true) { system.out.println(cont); } public static void main(String[] args) { new DosHebrasBasicas(0).start(); new DosHebrasBasicas(1).start(); } } // class
10
CORPORACI Ó N UNIVERSITARIA REMINGTON CAT – Urabá - Apartado Procesos ligeros (hilos o hebras) En algún momento de la ejecución del método run() se ha generado una excepción que nadie ha capturado. La excepción se propaga hasta el propio método run(). Si tampoco éste tiene un manejador para la excepción, el método run() finaliza abruptamente, terminando la ejecución de la hebra. Si se llama al método stop() o stop(excepción) de la hebra. Estos dos métodos originan que la hebra termine, y son en realidad un caso particular del anterior. Cuando se llama al método destroy() de la hebra. También se comenta posteriormente.
11
CORPORACI Ó N UNIVERSITARIA REMINGTON CAT – Urabá - Apartado Procesos ligeros (hilos o hebras) Ejemplo para asignar una prioridad public class ComprobarPrioridad implements Runnable { int num; ComprobarPrioridad(int c) { num = c; } public void run() { while (!parar) { system.out.println(num); cont++; } public static void main(String[] args) { Thread nueva; for (int c = 0; c < 10; c++) { nueva = new Thread(new ComprobarPrioridad(c)); if (c == 0) nueva.setPriority(Thread.MAX_PRIORITY); nueva.start(); } } // class
12
CORPORACI Ó N UNIVERSITARIA REMINGTON CAT – Urabá - Apartado Procesos ligeros (hilos o hebras)
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.