Tema 4: Gestión de Procesos

Documentos relacionados
Procesos y Threads Procesos y Threads. Concurrencia Concurrencia Ventajas Ventajas. Rendimiento Rendimiento (paralelismo) (paralelismo)

Tema II. Descripción y control de procesos. UNED Manuel Fernández Barcell. Blog:

Procesos. Procesos. Sistemas Operativos Procesos KMC 2017

Tema 1: Introducción a los Sistemas Operativos

Tema 6: Gestión de la Entrada/Salida

Procesos Definición y Estados

Tema 5: Gestión de la Memoria Principal

Tarea 2. Descripción y Control de Procesos

Tema 12: El sistema operativo y los procesos

Tema 6: Gestión de la Entrada/Salida

Tema 6: Gestión de la Entrada/Salida

Sistemas Operativos Tema 5. Procesos José Miguel Santos Alexis Quesada Francisco Santana

Manipulación de procesos

Sistemas Operativos. Procesos

SISTEMAS OPERATIVOS Manejo de procesos

SISTEMAS OPERATIVOS: PROCESOS. Planificación de procesos

Tema 2: Gestión de la CPU

Fundamentos de los Sistemas Operativos. Tema 2. Procesos José Miguel Santos Alexis Quesada Francisco Santana

Participantes: Avila Aida Betancourt Sioly Briceño Susana Rojas Alejandro

Hilos Secciones Stallings:

Tema 1: Introducción a los Sistemas Operativos

Control y descripción de procesos

Concurrencia y paralelismo

Universisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas

Planificación de Procesos

Facultad de Ingeniería Industrial y de Sistemas v1.1 MA781U CONCEPTOS INICIALES CASOS DE USO

Sistemas Operativos Gestión de procesador

Unidad 2: Gestión de Procesos

Introducción a los Sistemas Operativos S.O.

Introducción a los Sistemas Operativos

Conceptos de Planificación

Sistemas Operativos. S.O. Estructura Básica. S.O. Como Administrador de Recursos. Multiprogramación. Multiprogramación y Procesos

Facultad de Ingeniería Industrial y de Sistemas v2.0 MA781U PLANIFICACION DE PROCESOS

SISTEMAS OPERATIVOS: Lección 4: Planificación de Procesos

Sistemas Operativos - Curso

PARADIGMA y LENGUAJES DE PROGRAMACIÓN

Sistemas informáticos industriales. Sistemas Operativos

Administración de procesos

Convivencia Gestión de Procesos

Tema 2. Administración de procesos

Preguntas de autoevaluación tema 3

Unidad IV: Programación concurrente (MultiHilos) 4.1. Concepto de hilo

Procesos y Threads Procesos y Threads. Rendimiento Rendimiento (paralelismo) (paralelismo) Productividad Productividad

Tema 4: Gestión de Procesos

de Gran Canaria Centro de Tecnología Médica Programación Concurrente

TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O

APUNTES SOBRE PROCESOS Y DEADLOCK CONCEPTO DE PROCESO 1

División Académica de Informática y Sistemas División Académica Multidisciplinaria de los Ríos Ingeniería en Informática Administrativa

Tema 6 Organización y gestión de la memoria

Sistemas Operativos Scheduling de Procesos

PROCESOS E HILOS - Hilo

Tema 1: Programación Multiproceso. Curso

Análisis de algoritmos

IMPLANTACIÓN DE SISTEMAS OPERATIVOS 1º ASIR GESTIÓN DE PROCESOS

Gestión de Procesos. Concepto. Concepto y criterios de planificación. Utilización del procesador:

Programación de Multitareas utilizando Hilos

UNIVERSIDAD DE BELGRANO FAC. ING. Y TECNOLOGIA INFORMATICA SISTEMAS OPERATIVOS UNIDAD 2 PROCESOS - CONCEPTOS

Planificación de Monoprocesadores.

1.1 Concepto y definición de Sistemas Operativos

T E M A 7. Interrupciones

UNIDAD II. Software del Computador. Ing. Yesika Medina Ing. Yesika Medina

Hilos. Hilos. Revisión Modelos Multihilados Librerías de Hilos Aspectos sobre Hilos Ejemplos de Sistemas Operativos Hilos en Linux

UNIVERSIDAD DE BELGRANO FAC. ING. Y TECNOLOGIA INFORMATICA SISTEMAS OPERATIVOS UNIDAD 3 PLANIFICACION DE PROCESOS

FUNDAMENTOS DE LOS SISTEMAS OPERATIVOS

Tema 1 Introducción a los Sistemas Operativos

UNIVERSIDAD TECNOLOGICA NACIONAL FACULTAD REGIONAL TUCUMAN

Sistema Operativo. Repaso de Estructura de Computadores. Componentes Hardware. Elementos Básicos

Mercedes Fernández Redondo

Tema 3 SUBRUTINAS. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía

Informática Electrónica Manejadores de Dispositivos (Device Drivers)

Clases 04 y 05: Repaso de programación de sistemas basados en UNIX

Convivencia Introducción

Administración del Procesador

Programación Concurrente Recopilación de teoría referente a la materia

SISTEMAS. Ciclo 2014 Plan 2012

Procesos y Señales. Laboratorio de Arquitectura de Ordenadores

UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO

Tema 7. Entrada / Salida

Procesos. Gustavo Romero. 25 de octubre de Arquitectura y Tecnología de Computadores. Definición Control Estado IPC

División Académica de Informática y Sistemas

Estructura de los sistemas de cómputo

Nombre del estudiante: Giovanna Kristhel Mendoza Castillo Gustavo Antonio González Morales Eduardo Solis Lara Francisco Javier Merodio Molina

Sistemas Operativos. (Procesos)

1 ( 3,5 puntos) Responda, justificando sus respuestas, a las siguientes cuestiones:

UT_x2: Administración de procesos del sistema. IES Juan de la Cierva & Facultad de Informática Universidad de Murcia

PRÁCTICO 3. Comprender la administración de procesos e hilos de los sistemas operativos. Comprender la tarea y la elección de un planificador.

Hilos. Módulo 4. Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco. Hilos

Laboratorio I Java Threads (Silberschatz Galvin)

Planificación dinámica de tareas

Cambio de hebra. Gustavo Romero. 13 de febrero de Arquitectura y Tecnología de Computadores. Voluntario Involuntario

Sistemas Operativos. Dr. Luis Gerardo de la Fraga. Departamento de Computación Cinvestav

Objetivos de la Planificación. Planificación Monoprocesador. Tipos de Planificación. Tiempo de respuesta Productividad Eficiencia del procesador

Threads, SMP y Microkernels. Proceso

Sistemas Operativos (Parte 2)

Sistemas Operativos - Manejador de procesos - Fundamentos

PRÁCTICO 3. Comprender la administración de procesos e hilos de los sistemas operativos Comprender la tarea y la elección de un planificador.

Introduccion a Sistemas Operativos. Ej: Linux

PROGRAMA DE ASIGNATURA DE

UNIVERSIDAD RICARDO PALMA FACULTAD DE INGENIERIA EAP INGENIERIA INFORMATICA

Transcripción:

Tema 4: SSOO - Curso 2005/06 E. Domínguez C. Villarrubia Departamento de Tecnologías y Sistemas de Información Escuela Superior de Informática Universidad de Castilla - La Mancha Marzo de 2006

Índice Concepto de Proceso 1 Concepto de Proceso 2

Tema 4: Sesión 1: Procesos

Antecedentes Los primeros sistemas de computación Un único programa en ejecución Los sistemas actuales Múltiples programas cargados en memoria Ejecución concurrente de los programas Requieren control más firme de los programas

Ejecución de Programas Características La ejecución de un programa, generalmente consiste en un ciclo en el que alternativamente Se usa el procesador para realizar un cómputo (ráfaga de CPU) Se realiza una operación de entrada/salida (ráfaga de E/S) Secuencia de ejecución

Multiprogramación Consiste en Usar los tiempos en que un programa ejecuta ráfagas de E/S para hacer que otro programa use la CPU Para ello, el S.O. debe Llevar el control del estado en que se encuentra la ejecución de cada programa

Concepto de Proceso Definición (Dic. RAE) (Del lat. processus) - 3a. Conjunto de las fases sucesivas de un fenómeno natural o de una operación artificial En nuestro ámbito Conjunto de las fases sucesivas en las que tiene lugar la ejecución de un programa

Concepto de Proceso (cont.) Programa vs. Proceso Un programa es una especificación de las operaciones que deben realizarse Un proceso es el hecho mismo de realizar (ejecutar) esas operaciones que el programa solamente describe Papel del Sistema Operativo El S.O. es el responsable de controlar los procesos durante los cuales son ejecutados los programas

Procesos y Programas Varios procesos ejecutando un mismo programa

Componentes de un Proceso Un proceso está formado por Código del programa (texto) Actividad actual (representada por el contenido del registro contador de programa y por otros registros del procesador) Pila del proceso (stack) con datos temporales Sección de datos con variables estáticas Información de control del proceso

Bloque de Control del Proceso (PCB) Definición Estructura de datos mantenida por el S.O. en la que se almacenan los datos necesarios para el control del proceso Contenido del PCB Estado del proceso Contador de programa Registros de la CPU Información de planificación de la CPU Información de gestión de memoria Información contable Información de estado de la E/S

PCB Concepto de Proceso Objetivo Servir como depósito de cualquier información de gestión que pueda variar de un proceso a otro El S.O. Mantiene una lista de PCBs correspondientes a los procesos que controla en un momento dado Estructura de un PCB

Cambio de Contexto Definición Cuando la CPU va a pasar a ejecutar un nuevo proceso, el sistema debe guardar el contexto del proceso que se estaba ejecutando y recuperar el contexto del nuevo proceso El tiempo empleado para el cambio de contexto se considera una sobrecarga El sistema no realiza ningún trabajo útil mientras está realizando el cambio El tiempo necesario depende muy directamente del hardware

Cambio de Contexto (cont.) Definición Intercambio del proceso que en un momento determinado está usando el procesador por otro Fases de un cambio de contexto Planificación: Determinar qué proceso debe pasar a usar el procesador Activación: Si el proceso elegido es distinto del actual, guardar el estado del proceso actual y permitir que el proceso elegido pase a usar el procesador

El scheduler Definición Parte del S.O. que se ocupa de seleccionar el proceso que debe pasar a usar el procesador Modo de operación El scheduler usará algún criterio de asignación de prioridad para determinar cuál es el proceso preferente En próximas sesiones en este mismo tema estudiaremos diversas alternativas posibles

El dispatcher Definición Parte del S.O. que se ocupa de realizar el cambio del proceso que usa el procesador por el determinado por el scheduler Tareas a realizar Cambio de proceso Paso a modo usuario Salto a la posición adecuada para la reanudación de la ejecución del proceso de usuario Latencia de activación (dispatcher latency) Tiempo que gasta el dispatcher para parar la ejecución de un proceso y reanudar la ejecución de otro

Esquema de un Cambio de Contexto Operaciones necesarias en un cambio de contexto

Estados de un Proceso Diagrama de estados de un proceso

Suspensión de Procesos Grado de multiprogramación Número de procesos que se encuentran en estado de Preparado, Esperando o Ejecutando Control del grado de multiprogramación Puede necesitarse suspender procesos para liberar recursos en ciertos momentos y reanudar más tarde los procesos suspendidos Suelen ser candidatos preferentes Los que están en estado Esperando Los que están en estado Preparado

Estados de un Proceso (ampliación) Diagrama ampliado de estados de un proceso

Operaciones básicas con procesos Creación de procesos Terminación de procesos

Creación de Procesos Un proceso puede crear varios procesos nuevos Proceso creador: Padre Procesos nuevos: Hijos del proceso padre Los procesos hijos pueden crear nuevos procesos Se forma un árbol de procesos (ver sig. transparencia) Consideraciones: Asignación de recursos a los hijos para realizar su tarea Ejecución de los hijos Asignación de espacio de direcciones de memoria para los hijos

Árbol de Procesos Ejemplo de un árbol de procesos

Creación de Procesos (cont.) Alternativas para la asignación de recursos Padre e hijo comparten todos los recursos El hijo comparte un subconjunto de los recursos del padre Padre e hijo no comparten recursos

Creación de Procesos (cont.) Alternativas para la ejecución El padre sigue ejecutándose de forma concurrente con sus hijos El padre espera hasta que algunos de sus hijos, o todos, hayan terminado

Creación de Procesos (cont.) Alternativas para la definición del espacio de direcciones El proceso hijo es un duplicado del proceso padre El proceso hijo carga un nuevo programa

Terminación de Procesos (cont.) Causas de terminación Finalización de la tarea que debía ejecutarse Petición del proceso al S.O. para que lo elimine Un hijo pude devolver datos al padre El padre puede, explícitamente, recoger los datos enviados por un hijo

Terminación de Procesos (cont.) Otras causas de terminación Un proceso puede causar la finalización de otro Normalmente el causante es el proceso padre Razones El hijo se ha excedido en la utilización de los recursos La tarea asignada al hijo ya no es necesaria El padre va a terminar y el S.O. no permite que continúe la ejecución un hijo tras la finalización del padre (finalización en cascada)

Procesos multihilo Concurrencia interna en un proceso Un proceso puede ejecutar un programa con más de un hilo de control (multithreaded) En este caso cada hilo usa una pila de proceso independiente de las de los otros hilos Los demás recursos asignados al proceso en general se comparten Los diferentes hilos de control del proceso se ejecutan concurrentemente durante el tiempo en que el proceso tiene asignada la CPU

Resumen Concepto de Proceso Resumen Lecturas Recomendadas En esta sesión hemos visto Concepto de proceso Información que el S.O. mantiene para controlar los procesos Gestión de los procesos por parte del S.O.

Lecturas Recomendadas Resumen Lecturas Recomendadas Lecturas recomendadas A. Silberschatz, P. Galvin. Sistemas Operativos. 5 a ed. Addison Wesley. Capítulo 4: Procesos. Secciones 4.1, 4.2, 4.3. 4.4 y 4.5