HILOS Y COMUNICACIÓN ENTRE PROCESOS

Slides:



Advertisements
Presentaciones similares
IMPLEMENTACION CONTIGUA Y NO CONTIGUA
Advertisements

Almacenamiento del sistema de archivos La gestión de archivos es uno de los componentes mas visibles de un sistema operativo. Las computadores pueden almacenar.
III - Gestión de memoria
Administración de memoria
Tabla de Contenido Concurrencia.
SISTEMAS OPERATIVOS GESTION DE MEMORIA INTEGRANTES Lizeth Chandi
GESTION DE DISPOSITIVOS
Sistema operativo Componentes de un sistema operativo
III - Gestión de memoria
Sistemas Gestores de Ficheros
I.T.E.S.R.C. Romina Tamez Andrea Martínez Ma. De Lourdes Solís
3.4.- Administración de Memoria Virtual.
Organización de la Memoria.
EQUIPO ·# 3 SISTEMAS OPERATIVOS
Administración de procesos y del procesador.
Sistemas en estratos. Descripción: se organiza en una jerarquía de estratos, estando construido cada uno de ellos sobre el otro que tiene menor jerarquía.
UNIDAD 2. ADMINISTRACION DE PROCESOS Y DEL PROCESADOR
Modelo de procesos de dos estados
Implementación de archivos
Detalles del sistema operativo
MEMORIA VIRTUAL PAGINACIÓN
Windows XP sp3.
Teoría de lenguajes y compiladores
SISTEMAS OPERATIVOS UNIDAD 1..
Administración de procesos y del procesador.
ADMINISTRACIÓN DE MEMORIA
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
Robiro A. Asuaje L.23/08/20141 Organización de la Memoria SISTEMAS OPERATIVOS. Universidad Centro-Occidental “ Lisandro Alvarado ” Decanato de Ciencias.
Direcciones físicas y direcciones virtuales (lógicas)
Elemento Lógico (Software)
Tema 10: Gestión de Memoria
Administración de memoria
Ing. Karen Torrealba de Oblitas
Profesor: Rodrigo Sanhueza Figueroa
Tecnología de la información Unidad: 3 El software Profesor: Fernando J. Martini.
Administración de Memoria Memoria Virtual
Tema 10.3: Asignación de Espacio No Contiguo. Tema 10.3: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.),
SISTEMA OPERATIVO Un sistema operativo es un programa que actúa como intermediario entre el usuario y el hardware de un computador y su propósito es proporcionar.
Asignación de Espacio No Contiguo
Administración de Memoria
Hilos En La Computación. (THREADS).
Introducción a los Sistemas Operativos
Capítulo 7 Gestión de memoria.
COMPONENTES DEL SISTEMA OPERATIVO.
Administrador de procesos
Gestión de Memoria.
Introducción a los SOs.
Teoría de Sistemas Operativos Administración de Archivos.
Tema 8: Introducción a los SOs. Tema 8: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.), Introducción.
CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO
Estructura de los Sistemas Operativos
Clasificación y estructura. Alejandra Rivero Esteban
Gestión de Memoria.
Almacenamiento de la información IES Virgen del Espino.
Unidad 2 – Gestión de Procesos
Por Luis Esteban Monsalve Martínez
Hilos Capítulo 5 Silberschatz Galvin. Copyright © 2006, Intel Corporation. All rights reserved. Intel and the Intel logo are trademarks or registered.
GESTION DE ALMACENAMIENTO
3.2.1 Administración de almacenamiento
Licenciatura Tecnologías de la Información y Comunicación
Elementos y tipos de sistemas operativos
Funciones principales!
También es conocido como proceso ligero. Es una entidad básica de utilización de CPU y esta formado por un contador de programa, algunos registros y una.
TIPOS DE SISTEMAS OPERATIVOS.  Que es un sistema operativo??  Es el encargado de brindar al usuario una forma amigable y sencilla de operar, interpretar,
Desarrollador Profesional de Juegos Programación III Unidad II Hilos de ejecución Threads.
Gestión de Procesos Hilos.
SOFTWARE DE COMPUTADORAS
Gestión de Memoria – Parte 2
Administración de Memoria Conceptos Swapping Asignación Continua Paginación Segmentación Segmentación con Paginación.
1/50 Ing. Gerardo Chávez Malpartida Administración de Memoria SISTEMAS OPERATIVOS.
Transcripción de la presentación:

HILOS Y COMUNICACIÓN ENTRE PROCESOS GESTIÓN DE PROCESOS HILOS Y COMUNICACIÓN ENTRE PROCESOS

HILOS Recibe el nombre de proceso ligero. Se refiere sintáctica y semánticamente a hilos de ejecución. Multihilo: Capacidad de un SO para mantener varios hilos en ejecución dentro de un mismo proceso

HILOS Monohilo: Un solo hilo de ejecución por proceso. No existe concepto de hilo. Un proceso incluye su PBC Espacio de direcciones del proceso. Pila de proceso. Pila de núcleo.

HILOS Multihilo: Pilas separadas para cada hilo Boques de control para cada hilo Solo hay un PBC y un espacio de direcciones

Estructura de los hilos Unidad básica de utilización de la CPU Contador de programa Juego de registros Espacio de pila Comparten: Sección de código Sección de datos Recursos del SO (archivos abiertos y señales)

Recursos compartidos y no Código Variables globales Ficheros y dispositivos abiertos No compartidos: Contador del programa Registro del CPU Pila para las variables locales Estado

Estados de un hilo Principales: Ejecución, preparado y bloqueado. Cambio de estado: Creación: Cada ves que se crea un proceso de crea un hilo. Bloqueo: Al esperar se bloquea para que se ejecute otro. Desbloqueo: Cuando se produce su suceso. Terminación: Cuando finaliza se libera su contexto y sus pilas.

Ventajas Se tarda menos en crear un nuevo hilo Se tarda menos tiempo en terminar un hilo Se tarda menos tiempo en conmutar entre hilos Hace mas rápida la comunicación entre procesos

Hilos Hilos a nivel usuario: Hilos a nivel núcleo: La realiza una aplicación. Hilos a nivel núcleo: Todo lo realiza un núcleo Todos los hilos pertenecen a un mismo proceso

COMUNICACIÓN ENTRE PROCESOS Memoria compartida: Necesitan un mecanismo de sincronización externo La responsabilidad de la comunicación recae en los procesos Paso de mensajes: Proporciona un enlace lógico entre procesos Sólo invocan send y receive (bloqueantes o no).

Tipos de comunicación Direccionamiento simétrico: Se nombra el destino y origen Direccionamiento asimétrico: Se nombra solo el destino. Comunicación indirecta: Se utilizan buzones. Un enlace puede asociarse a más de dos procesos. Dos procesos pueden compartir varios enlaces. El enlace puede ser unidireccional o bidireccional. Compilación independiente.

Tipos de comunicación Comunicación directa: El enlace lógico es implícito entre cada par de procesos. Un enlace está asociado sólo a dos procesos. Entre cada par de procesos existe un único enlace. El enlace es bidireccional. No compilación independiente Sincrona: Quien envía permanece bloqueado esperando a que llegue una respuesta del receptor antes de realizar cualquier otro ejercicio. Asincrona: Quien envía continúa con su ejecución inmediatamente después de enviar el mensaje al receptor.

Tipos de comunicación Persistente: El mensaje se almacena tanto tiempo como sea necesario para ser entregado. Momentánea: Se descarta el mensaje si el receptor no esta operativo. Uso de buffers automático: El transmisor se boquea hasta que el receptor recibe el mensaje.

Capacidad de enlace Capacidad 0: Los procesos deben estar sincronizados. Capacidad N: La sincronización sólo es necesaria si el enlace esta lleno. Capacidad ilimitada: El emisor nunca tiene que esperar.

GESTIÓN DE ALMACENAMIENTO ASIGNACIÓN CONTIGUA Y PAGINACIÓN

ASIGNACIÓN CONTIGUA Cada fichero ocupa: bloques contiguos en el disco. Numero de búsquedas y tiempo de búsquedas mínimos para acceder a los archivos contiguos. Definida por: Dirección en disco del bloque inicial Longitud del área asignada al archivo (# bloques) Permite el acceso secuencial y directo.

Problemas Asignación de dinámica de almacenamiento: Estrategias de primer y mejor ajuste. Selección de un hueco libre del conjunto de los disponibles. Inserción de los datos difíciles. Fragmentación externa: Al borrar un fichero no puede ser usado por otro completamente. Solución: compactación (creación de un único hueco grande)

Resumen Se necesita la dirección del primer bloque Todo archivo se puede leer solo una vez El método no es realizable, a menos que se conozca el tamaño Max de archivos, al momento de crearlo. Produce bastante fragmentación externa. Fácil acceso directo a bloques. Importante la gestión de espacio libre.

PAGINACIÓN Técnica de manejo de memoria, el espacio de memoria se divide en secciones física de igual tamaño, llamadas marcos de página. Denominadas páginas: Tienen el mismo tamaño que los marcos de pagina.

Unidad de almacenamiento de información y transferencial Paginas Sirven Unidad de almacenamiento de información y transferencial Memoria principal memoria secundaria

Paginación Las paginas de un programa deben estar contiguamente en memoria. Los mecanismos de paginación permiten la correspondencia correcta entre las direcciones virtuales (dadas por programas) y las reales de la memoria. Cada pagina consiste en: Z palabras contiguas. Espacio de direcciones N consiste en n paginas. Espacio de memoria consiste en m marcos de paginas.

Paginación Control de las paginas: Mantenerse una tabla en memoria denominada tabla de mapas de pagina para cada uno de los procesos. Tablas de paginas Cada pagina tiene un índice Tiene un numero de marco correspondiente Finalidad de las tablas: Asociar las paginas virtuales con los marcos.

Características de la paginación El espacio de direcciones lógico puede ser no contiguo. La memoria se divide en bloques físicos fijos llamados marcos (frames) La memoria se divide en bloques llamados paginas. La información se mantiene en los marcos libres. Se establece una tabla de paginas para trasladar las direcciones lógicas a físicas. Se produce fragmentación interna.

Ventajas Se puede ejecutar un programa cargando una parte en la memoria y lo que queda bajo solicitud. No es necesario que las paginas sean contiguas , no se necesitan programas de compactación cuando hay marcos libres dispersos en la memoria. Es fácil controlar las paginas por su mismo tamaño.

Desventajas El costo del software y hardware va creciendo por la nueva información que se va ingresando. Se consume mucha memoria y tiempo de CPU para su implantación. Se deben reservar áreas de memoria para los procesos. Al no tener un tamaño fijo se crea un problema de desperdicio de memoria.