Sistemas multiprogramados. Cooperan en realizar un trabajo: filtros. Comparten recursos del sistema

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Sistemas multiprogramados. Cooperan en realizar un trabajo: filtros. Comparten recursos del sistema"

Transcripción

1 Introducción a los Sistemas Operativos Concurrencia 1. Introducción. Concurrencia y paralelismo. 2. Comunicación y sincronización. 3. Exclusión mutua y sincronización. 4. Modelos de programación. 5. Memoria Compartida. Postulados de Dijkstra. 6. Paso de mensajes. 7. Abrazo mortal (deadlock). Estado seguro. Bibliografía Silberschatz and Galvin Sistemas Operativos. Conceptos fundamentales. Parte I: Aspectos generales Birrell An Introduction to Programming with threads Digital SRC, Thuan Q.Pham and PanKaj K.Garg Multithreaded Programming with Win32 Prentice-Hall, PTR, En alabi: ~marisa/pub/concu_slides.ps o concu_slides.pdf Sistemas multiprogramados Varios procesos coexisten en el mismo tiempo en el sistema. Comparten recursos del sistema impresora red ficheros Participan en la realización de un trabajo comandos con pipes procesos padre/hijos/hermanos Introducció als Sistemes Operatius 1 Introducció als Sistemes Operatius 2 Comparten recursos del sistema Cooperan en realizar un trabajo: filtros A imprimir() B imprimir() no se envía a la impresora, sino a un fichero en disco (dispositivo compartible) $ who wc -l stdin who wc -l stdout stdout C imprimir() la impresora estará imprimiendo un fichero de modo no compartible Introducció als Sistemes Operatius 3 Introducció als Sistemes Operatius 4

2 Relación padre/hijo Relación hermanos padre TFA (open table) links ptro L/E acceso i-node 2 10 rw padre: write(fd[1],&i, sizeof(int)) hijo1: read(fd[0],&x, sizeof(int)) T.C. 5 hijo2: read(fd[0],&y, sizeof(int)) hijo Una operación del padre (read, write, lseek...) modificará el puntero también para el hijo, y viceversa. No se puede saber de antemano qué hijo leerá el 5 y qué hijo se quedará bloqueado hasta que el padre entre otro número. T.C. Introducció als Sistemes Operatius 5 Introducció als Sistemes Operatius 6 Concurrencia y paralelismo Hay concurrencia entre varios procesos cuando existen al mismo tiempo. PROCESOS CONCURRENTES Hay paralelismo entre varios procesos cuando se ejecutan al mismo tiempo. PROCESOS PARALELOS El paralelismo requiere un soporte físico: varios procesadores. La concurrencia es el caso general y el paralelismo un caso particular. La concurrencia (y el paralelismo) se refiere a la ejecución de código: Hay procesos concurrentes y flujos concurrentes. Ventajas de la Programación Concurrente Programación modular Considerar aisladamente cada tarea Aprovechar desde un programa el paralelismo (multiprocesadores). Tratar el trabajo con E/S lenta con flujos dedicados. el flujo principal del programa puede seguir trabajando Atención a varias peticiones simultáneas (sistemas distribuidos) Hablaremos en general de flujos concurrentes: Pueden ser del mismo proceso o diferentes procesos. Pueden correr en un único procesador o varios. Introducció als Sistemes Operatius 7 Introducció als Sistemes Operatius 8

3 Algunos ejemplos de concurrencia Master/Slave Programación Concurrente Peticiones Spooler Dispositivo Datos M cola de trabajos Filtro S S S Pantalla Avance de una tarea con múltiples puntos de ejecución. Cada punto de ejecución es un thread. El trabajo de cada thread se ve simultáneo desde el programa. Son parte de la misma tarea y hay puntos de encuentro Sincronización Comunicación La gestión de la concurrencia se hace por software Sistema operativo Librerías No consideramos hardware especializado Productor/Consumidor Introducció als Sistemes Operatius 9 Introducció als Sistemes Operatius 10 El proceso y el flujo Librerías de flujos Proceso (o task): unidad de asignación de recursos: espacio de direcciones (registros de la MMU) tabla de canales (y por tanto, dispositivos asignados) etc... Flujo: unidad de ejecución código pila registros del procesador En UNIX cada proceso sólo puede tener un flujo: el concepto proceso engloba todo. Los signals permiten que el proceso sea avisado de acontecimientos. A través del sistema de ficheros, los procesos pueden pasarse datos. El espacio de direcciones es privado para cada proceso (para cada flujo). Se ofrece la posibilidad de cambio de contexto, entidades de flujo y primitivas de sincronización Se ofrece un interfaz de trabajo, pero se puede acceder a cualquier rutina pública. La planificación de flujos es totalmente transparente al SO No sabe la concurrencia que hay en la librería. Sólo podrá haber tanto paralelismo como procesadores virtuales ofrezca. Un bloqueo de un servicio del SO, impide la planificación de cualquier flujo. Introducció als Sistemes Operatius 11 Introducció als Sistemes Operatius 12

4 EJEMPLO: Calcular concurrentemente f(x) = 2(3x + 4) Comunicación y sincronización /*padre*/ main() f1, f2,f3 X f1 = crear_fluxe(flux1, (long)0); f2 = crear_fluxe(flux2,(long)0); f3 = crear_fluxe(flux3,(long)0); Varios procesos o flujos que cooperan en una tarea, están relacionados - Necesitan comunicarse: pasarse datos, enviarse avisos - Necesitan sincronizarse: esperar que haya cambiado un estado ordenar temporalmente sus acciones No puede predecirse la velocidad de dos procesos concurrentes /*flujo 1*/ /*flujo 2*/ /*flujo 3*/ Introducció als Sistemes Operatius 13 Introducció als Sistemes Operatius 14 Ejemplo: compilador y ensamblador concurrentes Algunos conceptos básicos de la concurrencia var lista_de_lineas_de_texto;... process COMP { leer de fichero fuente traducir de LAN a ASM almacenar código en lineas } fichero objeto process ASS { leer y ensamblar lineas sucesivas } El compilador produce código ensamblador para el ensamblador y el ensamblador produce código objeto para el cargador. Los dos procesos están trabajando con los mismos datos, la lista de líneas, pero ha de garantizarse el acceso en el orden adecuado. Nunca se puede predecir nada sobre la velocidad de los procesos. - Condición de carrera (race condition) en el acceso a los datos. La exclusión mutua garantiza que no haya un cambio de condiciones desconocido. - Sección crítica de código de acceso a los datos. - Secuencialización en el acceso de los diferentes flujos a la S.C. - Ejecución atómica respecto al estado. Diferentes modelos de programación dan diferentes soluciones a la correcta comunicación entre procesos concurrentes. - Memoria compartida. - Paso de mensajes. Introducció als Sistemes Operatius 15 Introducció als Sistemes Operatius 16

5 Modelos de programación Memoria compartida Desde el punto de vista de la sincronización y comunicación entre procesos. Los dos modelos básicos que existen tradicionalmente: - Memoria compartida: los procesos comparten variables, y se pasan información a través de ellas la aplicación es la responsable de la corrección del trabajo (mutex, etc) es la comunicación natural entre flujos de un mismo proceso entre procesos, el SO ha de permitir tener una zona de memoria compartida Exclusión mutua Postulados de Dijkstra Secuencialización (tipos de espera) Protocolos Herramientas - Paso de mensajes: el SO se encarga de la comunicación Introducció als Sistemes Operatius 17 Introducció als Sistemes Operatius 18 MEMORIA COMPARTIDA Exclusión mutua MEMORIA COMPARTIDA Postulados de Dijkstra Trabajar con una secuencia de código que necesita ser accedida en exclusividad - protocolo de entrada, que garantice esa exclusividad - protocolo de salida, para avisar que la zona ha quedado libre Protocolo de entrada ZONA ACCEDIDA EN MUTEX Protocolo de salida Requisitos para garantizar un funcionamiento correcto: Exclusión mutua: como máximo, hay un proceso ejecutando la sección crítica. Progreso: no se puede postponer indefinidamente la decisión de qué proceso entre varios entra primero en la zona. Espera acotada: existe un límite en el tiempo de espera de un proceso desde que pide entrar en la sección crítica hasta que puede entrar. Atomicidad: se asume que las instrucciones de lenguaje máquina se ejecutan atómicamente. Introducció als Sistemes Operatius 19 Introducció als Sistemes Operatius 20

6 MEMORIA COMPARTIDA Mecanismos de espera en la entrada a la S.C. Espera activa: un proceso se queda esperando en un bucle de encuesta. - Spin lock o busy waiting - Si hay muchos candidatos, incumple los postulados de Dijkstra Bloqueo: un proceso que no puede entrar cede el procesador. - El protocolo de salida se encarga del desbloqueo - Permite seleccionar al siguiente candidato de entrada - Coste adicional de la gestión del bloqueo/desbloqueo de flujos Mixto a dos niveles: mantener la espera activa un tiempo y luego bloquear. MEMORIA COMPARTIDA Procolos de E/S en la sección crítica Pueden implementarse en hardware o en software El protocolo de entrada ha de ser accedido él mismo en mutex varios procesos compiten concurrentemente por la entrada Un monoprocesador es siempre menos restrictivo que un multiprocesador No hay paralelismo real Pueden utilizarse algoritmos más sencillos Peligro de pasar aplicaciones de un sistema a otro Puntos básicos en un monoprocesador - inhibición de interrupciones (no siempre es necesario) - mantener la atomicidad sin desbanque del procesador A nivel de hardware: - inhibición de interrupciones - instrucciones de lectura y modificación atómica test&set fetch&add, fetch&swap... Introducció als Sistemes Operatius 21 Introducció als Sistemes Operatius 22 MEMORIA COMPARTIDA Protocolos software SEMAFOROS Semáforos Algoritmos diseñados por el programador - generalmente, recaerán en una espera activa Herramientas ofrecidas por el entorno de trabajo (sistema, librería, lenguaje) - ofrecen mecanismos de bloqueo de procesos que esperan entrar semáforos monitores regiones críticas Herramienta que permite la sincronización entre flujos. Tipo abstracto de datos (TAD) que consta de un contador y una cola. Operaciones sobre un semáforo: - wait(semaforo) - signal(semaforo) - además: init_semaforo(semaforo, contador), crear_semaforo(...),... Es un mecanismo de bloqueo. Si es una herramienta que ofrece el SO, las operaciones son llamadas al sistema. Introducció als Sistemes Operatius 23 Introducció als Sistemes Operatius 24

7 SEMAFOROS SEMAFOROS Semáforos Primitivas de los semáforos typedef struct { cua_id cua; int compt; } semafor_t; typedef semafor_t *sem_id; sem_id crear_sem(int compt_ini); int sem_signal(sem_id semafor); int sem_wait(sem_id semafor); int destruir_sem(sem_id semafor); #define sem_ini(sem, n) sem = crear_sem(n) #define sem_init(sem, n) sem = crear_sem(n) primitiva sem_wait(sem) si contador es menor o igual que cero entonces bloquea contador = contador - 1 primitiva sem_signal(sem) si contador es menor que cero entonces desbloquea contador = contador + 1 Se realiza estas secuencias atómicamente - Las primitivas wait y signal son ininterrumpibles - El semáforo es un objeto accedido él mismo en exclusión mutua. El orden de inserción y extracción de la cola no es necesariamente FIFO - Si no es FIFO, no cumple los postulados de Dijkstra Introducció als Sistemes Operatius 25 Introducció als Sistemes Operatius 26 SEMAFOROS Tipos de semáforos SEMAFOROS Funcionalidades del semáforo Semáforos binarios - El contador sólo puede tomar los valores 0 y 1 - Se llaman también semáforos sin memoria no pueden acumular signals Semáforos generales - El contador puede tomar cualquier valor positivo o negativo Semáforos múltiples - Permite hacer wait o signal sobre varios semáforos a la vez - Algunas versiones de UNIX (System V) los ofrecen Un semáforo puede utilizarse para: Sincronización entre procesos o flujos Exclusión mutua entre flujos (modelo de memoria compartida) Filtro Exclusión mutua: S = 1 repeat wait(s) sec. crit. signal(s) forever; Sincronización: S = 0 P1 P2 wait(s) signal(s) Filtro: S = N Introducció als Sistemes Operatius 27 Introducció als Sistemes Operatius 28

8 SEMAFORO El semáforo como herramienta de exclusión mutua TEST-AND-SET Instrucciones especiales de LM: test&set De manera atómica (sin interrupción): Tiene que dajar pasar como máximo a un proceso: 1 er postulado - contador inicializado a 1 Si hay varios esperando, entra el que primero ejecute el signal: 2 o postulado - las operaciones sem_wait/sem_signal son atómicas - signal al salir de la sección crítica Todo proceso acaba entrando: 3 er postulado - sólo garantizado si la cola del semáforo es FIFO valor que devuelve la función carga un 1 Como protocolo de exclusión mutua: A = 0; while (!tas(&a)); Protocolo de entrada SECCIÓN CRÍTICA A A = 0; Protocolo de salida Introducció als Sistemes Operatius 29 Introducció als Sistemes Operatius 30 Paso de mensajes La comunicación corre a cargo del sistema operativo llamadas al sistema Componentes de la comunicación proceso A send to B proceso B receive from A Usuario S.O. Mensaje: - Tamaño fijo/tamaño variable - Mensajes especiales de control o sincronización comunicación a través del S.O. No son modelos excluyentes (memoria compartida y paso de mensajes) Paradigmas de comunicación: - Cliente/servidor - Rendez-vous (sincronización) - etc... Canal: implementación lógica que hace el sistema para llevar los mensajes de un proceso a otro. - a través de memoria compartida (misma máquina) - a través de cable - vía satélite,... - combinación de varios medios Introducció als Sistemes Operatius 31 Introducció als Sistemes Operatius 32

9 Características del canal Permanente o temporal - coste de creación/destrucción - número máximo de objetos del isstema Protegido o desprotegido - propietario del canal - derechos de acceso Lógico o físico - estructura de datos del sistema - soporte hardware Con capacidad o sin capacidad - poder mantener un número determinado de mensajes - capacidad infinita, N o 0 (rendez-vous, hand-shake) - comunicación síncrona/asíncrona FIFO o seleccionable - mensajes con prioridad - mensajes de control - canales multicola Tipos de comunicación (I) Unidireccional/Bidireccional - número de canales entre procesos Proceso 1 Proceso 2 Introducció als Sistemes Operatius 33 Introducció als Sistemes Operatius 34 Tipos de comunicación (II) Tipos de comunicación (III) Directa/indirecta - Buzones o ports - Permisos de acceso Proceso 1 Proceso 2 Simétrica/asimétrica - parte cliente/parte servidor - comunicaciones en igualdad servidor Proceso 2 Proceso 3 receive(petición) send(servidor,petición) receive(p3,mess) Proceso 3 send(p2,mess) Introducció als Sistemes Operatius 35 Introducció als Sistemes Operatius 36

10 Tipos de comunicación (IV) Síncrona/asíncrona - garantizar la llegada del mensaje al canal del sistema al proceso al buzón - mensajes de reply - si el canal es de tamaño N, hay sincronización con la entrada en el canal Introducció als Sistemes Operatius 37

Concurrencia y paralelismo

Concurrencia y paralelismo Introducción a los Sistemas Operativos Concurrencia y paralelismo 1. Ejecución de programas. Procesos. 2. Multiprogramación Bibliografía Silberschatz and Galvin Sistemas Operativos. Conceptos fundamentales.

Más detalles

Concurrencia de Procesos

Concurrencia de Procesos Concurrencia de Procesos Dos o mas procesos, se dice que son concurrentes o paralelos, cuando se ejecutan al mismo tiempo. Esta concurrencia puede darse en un sistema con un solo procesador (pseudo paralelismo)

Más detalles

Acceso coordinado a recursos compartidos

Acceso coordinado a recursos compartidos Programación Concurrente en Linux Acceso coordinado a recursos compartidos Alberto Lafuente, Dep. KAT/ATC de la UPV/EHU, bajo Licencia Creative Commons 1 Contenido 1. Recursos compartidos 2. Mecanismos

Más detalles

1. Interfaz de llamadas a la librería de fluxes

1. Interfaz de llamadas a la librería de fluxes 1. Interfaz de llamadas a la librería de fluxes Se presenta a continuación un interfaz de threads de usuario construido sobre los PThreads de OSF/1 (sistema operativo de alabi/alaba). El motivo de no utilizar

Más detalles

Tema 3. Paso de mensajes. mensajes. Bibliografía. Sistemas de paso de mensajes (2) Sistemas de paso de mensajes. Ventajas del paso de.

Tema 3. Paso de mensajes. mensajes. Bibliografía. Sistemas de paso de mensajes (2) Sistemas de paso de mensajes. Ventajas del paso de. Tema 3. Paso de mensajes Bibliografía Programación Concurrente J. Palma, C. Garrido, F. Sánchez, A. Quesada, 2003 Capítulo 7 Principles of Concurrent and Distributed Programming M. Ben-Ari. Prentice Hall,

Más detalles

Hilos Secciones Stallings:

Hilos Secciones Stallings: Capítulo 4 Hilos Secciones Stallings: 4.1 4.3 Contenido Procesos e hilos. Hilos a nivel de núcleo y a nivel de usuario. Multiprocesador simétrico (SMP). Micronúcleos. 1 Proceso Unidad de propiedad de los

Más detalles

Concurrencia. Primitivas IPC con bloqueo

Concurrencia. Primitivas IPC con bloqueo Concurrencia Primitivas IPC con bloqueo Primitivas de IPC con bloqueo La solución de Peterson es correcta, pero tiene el defecto de requerir espera ocupada: Cuando un proceso quiere entrar en su región

Más detalles

Sistemas operativos. Hasta ahora hemos visto. Relación programa-sistema operativo Gestión de memoria

Sistemas operativos. Hasta ahora hemos visto. Relación programa-sistema operativo Gestión de memoria Sistemas operativos UPCO ICAI Departamento de Electrónica y Automática 1 Hasta ahora hemos visto Relación programa-sistema operativo Gestión de memoria Reserva para la ejecución Pilas, heap, memoria de

Más detalles

SISTEMAS OPERATIVOS:

SISTEMAS OPERATIVOS: SISTEMAS OPERATIVOS: Lección 6: Procesos concurrentes y problemas en la comunicación y la sincronización Jesús Carretero Pérez Alejandro Calderón Mateos José Daniel García Sánchez Francisco Javier García

Más detalles

Diseño de los servicios del sistema

Diseño de los servicios del sistema Diseño de los servicios del sistema Marisa Gil (marisa@ac.upc.es) Ernest Artiaga (ernest@ac.upc.es) ENtornos Operativos para la Gestión de Recursos de Aplicaciones Paralelas CURSO 1.998-99 Situación de

Más detalles

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

TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO Definición y objetivos de un S.O Definición y objetivos del sistema operativo Estructura, componentes y servicios de un S.O Llamadas al sistema

Más detalles

Programación Concurrente y Paralela. Unidad 1 Introducción

Programación Concurrente y Paralela. Unidad 1 Introducción Programación Concurrente y Paralela Unidad 1 Introducción Contenido 1.1 Concepto de Concurrencia 1.2 Exclusión Mutua y Sincronización 1.3 Corrección en Sistemas Concurrentes 1.4 Consideraciones sobre el

Más detalles

Unidad 1: Gestión de Procesos

Unidad 1: Gestión de Procesos Unidad 1: Gestión de Procesos Tema 1, Concurrencia: Exclusión mutua y sincronización. 1.1 Problema de la sección crítica, alternativas al uso de semáforos: - Regiones críticas, Monitores, Variables de

Más detalles

Concurrencia Monitores. Guillermo Román Díez

Concurrencia Monitores. Guillermo Román Díez Concurrencia Monitores Guillermo Román Díez groman@fi.upm.es Universidad Politécnica de Madrid Curso 2016-2017 Guillermo Román, UPM CC: Monitores 1/25 Recursos Compartidos Pregunta La especificación de

Más detalles

Interbloqueo. Concurrencia: Interbloqueo e Inanición

Interbloqueo. Concurrencia: Interbloqueo e Inanición Interbloqueo Concurrencia: Interbloqueo e Inanición Capítulo 6 Bloqueo permanente de un conjunto de procesos que compiten por recursos del sistema o por comunicación con los otros No existe una solución

Más detalles

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

de Gran Canaria Centro de Tecnología Médica  Programación Concurrente Universidad de Las Palmas de Gran Canaria Centro de Tecnología Médica http://www.ctm.ulpgc.es Tema 1: Introducción a la Escuela Técnica Superior de Ingenieros de Telecomunicación Conceptos Fundamentales

Más detalles

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

1 ( 3,5 puntos) Responda, justificando sus respuestas, a las siguientes cuestiones: Universidad de Las Palmas de Gran Canaria Escuela Universitaria de Informática Facultad de Informática Sistemas Operativos Convocatoria de Junio, 26 de Junio de 2003 SOLUCIONES Calificación 1 2 3 4 Nombre

Más detalles

Sistemas Operativos. Procesos

Sistemas Operativos. Procesos Sistemas Operativos Procesos Agenda Proceso. Definición de proceso. Contador de programa. Memoria de los procesos. Estados de los procesos. Transiciones entre los estados. Bloque descriptor de proceso

Más detalles

Concurrencia, exclusión mutua y sincronización. Capítulo 5 HungriaBerbesi

Concurrencia, exclusión mutua y sincronización. Capítulo 5 HungriaBerbesi Concurrencia, exclusión mutua y sincronización Capítulo 5 HungriaBerbesi 1 Concurrencia Múltiples aplicaciones Aplicaciones estructuradas Estructura del sistema operativo 2 Concurrencia 3 Sección Crítica:

Más detalles

*** SOLUCIONES *** SISTEMAS OPERATIVOS Examen Parcial 24 de Abril de 2010

*** SOLUCIONES *** SISTEMAS OPERATIVOS Examen Parcial 24 de Abril de 2010 Calificación SISTEMAS OPERATIVOS Examen Parcial 24 de Abril de 2010 1 2 3 4 Nombre *** SOLUCIONES *** Titulación Dispone de tres horas para realizar el examen 1 (5 puntos) Test. En cada uno de los siguientes

Más detalles

Sistemas Operativos (Parte 2)

Sistemas Operativos (Parte 2) Sistemas Operativos (Parte 2) M. en C. Mario Farias-Elinos e-mail: elinos@ci.ulsa.mx web: http://www.ci.ulsa.mx/~elinos Maestría en Tecnologías de Información Contenido Proceso Scheduller Thread Sincronización

Más detalles

Concurrencia. Programación Concurrente. Espera ocupada. Primitivas IPC con bloqueo

Concurrencia. Programación Concurrente. Espera ocupada. Primitivas IPC con bloqueo Concurrencia Programación Concurrente Espera ocupada. Primitivas IPC con bloqueo Programación concurrente Los lenguajes concurrentes tienen elementos para: Crear procesos Sincronizar procesos Comunicar

Más detalles

Estados de un proceso

Estados de un proceso Semáforos Estados de un proceso Inactivo Listo Ejecutando Completo Escribimos p.state := ready p. state := running Bloqueado Para indicar que un proceso cambia de estado Semáforo Es un tipo de dato abstracto

Más detalles

Universidad Autónoma del Estado de Hidalgo Instituto de Ciencias Básicas e Ingeniería Área Académica de Computación y Electrónica

Universidad Autónoma del Estado de Hidalgo Instituto de Ciencias Básicas e Ingeniería Área Académica de Computación y Electrónica Universidad Autónoma del Estado de Hidalgo Instituto de Ciencias Básicas e Ingeniería Área Académica de Computación y Electrónica Licenciatura en Sistemas Computacionales Sistemas Operativos Docente: M.G.A.

Más detalles

Lección 6: Ejemplos de programación con semáforos

Lección 6: Ejemplos de programación con semáforos Lección 6: Ejemplos de programación con semáforos El problema de la cena de los filósofos El problema de los lectores y escritores Ejercicios Gestión de concurrencia mediante paso de testigo (implementación

Más detalles

T5-multithreading. Indice

T5-multithreading. Indice T5-multithreading 1.1 Indice Proceso vs. Flujos Librerías de flujos Comunicación mediante memoria compartida Condición de carrera Sección Crítica Acceso en exclusión mutua Problemas Abrazos mortales 1.2

Más detalles

Un ejemplo: UNIX PROCESOS UNIX

Un ejemplo: UNIX PROCESOS UNIX PROCESOS UNIX Un ejemplo: UNIX Cada proceso sólo puede tener un flujo: el concepto proceso engloba todo Dos llamadas implicadas en la creación de procesos crear proceso cargar programa La relación de procesos

Más detalles

Unidad 2: Gestión de Procesos

Unidad 2: Gestión de Procesos Unidad 2: Gestión de Procesos Tema 6, Concurrencia: Exclusión mutua y sincronización. 6.1 Principios generales de concurrencia. 6.2 EM: Soluciones software (Algoritmos de Dekker y Peterson). 6.3 EM: Soluciones

Más detalles

Concurrencia Condiciones de Carrera. Guillermo Román Díez

Concurrencia Condiciones de Carrera. Guillermo Román Díez Concurrencia Condiciones de Carrera Guillermo Román Díez groman@fi.upm.es Universidad Politécnica de Madrid Curso 2016-2017 Guillermo Román, UPM CC: Condiciones de Carrera 1/20 Condiciones de carrera Condición

Más detalles

TEMA 10 INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS DISTRIBUIDOS. Introducción Hardware Software Aspectos de diseño

TEMA 10 INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS DISTRIBUIDOS. Introducción Hardware Software Aspectos de diseño TEMA 10 INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS DISTRIBUIDOS Introducción Hardware Software Aspectos de diseño 1 Introducción Aparecen en los 80 Desarrollo de Microprocesadores LAN Sistemas Distribuidos:

Más detalles

TEMA 9. SISTEMAS OPERATIVOS DISTRIBUIDOS

TEMA 9. SISTEMAS OPERATIVOS DISTRIBUIDOS TEMA 9. SISTEMAS OPERATIVOS DISTRIBUIDOS Introducción Hardware Software Aspectos de diseño 1 Introducción Aparecen en los 80 Desarrollo de Microprocesadores LAN Sistemas Distribuidos: Gran nº de procesadores

Más detalles

Material Adicional (SOSD Mod 4) Concurrencia Exclusión mutua y sincronización. Slides de Samuel Oporto Díaz

Material Adicional (SOSD Mod 4) Concurrencia Exclusión mutua y sincronización. Slides de Samuel Oporto Díaz Material Adicional (SOSD Mod 4) Concurrencia Exclusión mutua y sincronización Slides de Samuel Oporto Díaz CONCURRENCIA 2 Concurrencia La concurrencia es la simultaneidad de hechos. Un programa concurrente

Más detalles

Sistemas Operativos Tema 2: Estructura del computador José Miguel Santos Alexis Quesada Francisco Santana

Sistemas Operativos Tema 2: Estructura del computador José Miguel Santos Alexis Quesada Francisco Santana Sistemas Operativos Tema 2: Estructura del computador 1998-2008 José Miguel Santos Alexis Quesada Francisco Santana 1 Contenidos Estructura de la E/S Sistema de Interrupciones DMA Jerarquía de memorias

Más detalles

ESCUELA DE INGENIERIA Informática Y Sistemas

ESCUELA DE INGENIERIA Informática Y Sistemas ESCUELA DE INGENIERIA Informática Y Sistemas ASIGNATURA SISTEMAS OPERATIVOS CODIGO ST0257 SEMESTRE 2013-2 INTENSIDAD HORARIA 64 horas semestral CARACTERÍSTICAS Suficientable CRÉDITOS 4 1. JUSTIFICACIÓN

Más detalles

Teoría de Sistemas Operativos Sincronización Procesos

Teoría de Sistemas Operativos Sincronización Procesos Teoría de Sistemas Operativos Sincronización Procesos Departamento de Electrónica º Semestre, 00 Gabriel Astudillo Muñoz http://www.elo.utfsm.cl/~elo1 Dos o más procesos leen o escriben ciertas zonas compartidas

Más detalles

CONCURRENCIA. Sincronización. Sistemas Operativos y Distribuidos. Prof. Javier Echaiz 1. Material Adicional (SOSD Mod 4)

CONCURRENCIA. Sincronización. Sistemas Operativos y Distribuidos. Prof. Javier Echaiz 1. Material Adicional (SOSD Mod 4) Material Adicional (SOSD Mod 4) Concurrencia Exclusión mutua y sincronización CONCURRENCIA Slides de Samuel Oporto Díaz 2 Concurrencia La concurrencia es la simultaneidad de hechos. Un programa concurrente

Más detalles

PARADIGMA y LENGUAJES DE PROGRAMACIÓN

PARADIGMA y LENGUAJES DE PROGRAMACIÓN CATEDRA CARRERA: PARADIGMA y LENGUAJES DE PROGRAMACIÓN LICENCIATURA EN SISTEMAS DE INFORMACION FACULTAD DE CIENCIAS EXACTAS QUIMICAS Y NATURALES UNIVERSIDAD NACIONAL DE MISIONES Año 2017 2do Cuatrimestre

Más detalles

SISTEMAS OPERATIVOS, 10 de septiembre de 2009 Examen Convocatoria Extraordinaria

SISTEMAS OPERATIVOS, 10 de septiembre de 2009 Examen Convocatoria Extraordinaria Calificación 1 2 3 SISTEMAS OPERATIVOS, 10 de septiembre de 2009 Examen Convocatoria Extraordinaria Nombre Titulación Dispone de dos horas para realizar el examen 1 (6 puntos) Test. En cada uno de los

Más detalles

Programación concurrente

Programación concurrente 23 de Marzo de 2017 Condiciones generales Docente: Hernán Melgrati (hmelgra@...) Horario: Teóricas: Jueves de 14 a 17 Prácticas: Martes de 14 a 17 Evaluaciones: Un parcial (mediados de mayo) Un trabajo

Más detalles

Sistemas Operativos. Dr. Wenceslao Palma M.

Sistemas Operativos. Dr. Wenceslao Palma M. Sistemas Operativos Dr. Wenceslao Palma M. www.inf.ucv.cl/~wpalma/so Introducción a los Sistemas Computacionales Un vistazo de alto nivel caracteriza a un sistema computacional

Más detalles

PROGRAMACIÓN CONCURRENTE

PROGRAMACIÓN CONCURRENTE PROGRAMACIÓN CONCURRENTE Lenguajes de Programación - Progr. Concurrente 1 Introducción El concepto fundamental de la programación concurrente es la noción de Proceso. Proceso: Cálculo secuencial con su

Más detalles

TEMA 2: PROCESOS E HILOS: CONCURRENCIA, SINCRONIZACIÓN Y COMUNICACIÓN

TEMA 2: PROCESOS E HILOS: CONCURRENCIA, SINCRONIZACIÓN Y COMUNICACIÓN TEMA 2: PROCESOS E HILOS: CONCURRENCIA, SINCRONIZACIÓN Y COMUNICACIÓN 1. Introducción Definición de proceso (tarea según los fabricantes): Programa en ejecución. Cálculo computacional que puede hacerse

Más detalles

6. Enumere tres ventajas de los ULT frente a los KLT.

6. Enumere tres ventajas de los ULT frente a los KLT. 1 Tarea 3 Hilos 1. Cuales bloques de control de proceso deberían pertenecer a un bloque de control de hilo y cuáles a un bloque de control de proceso en un sistema multihilo? Para modelos monohilo deben

Más detalles

Introducción a los Sistemas Operativos S.O.

Introducción a los Sistemas Operativos S.O. Introducción a los Sistemas Operativos S.O. Contenido 1. Conceptos 2. Evolución de los Sistemas Operativos 3. Administración del Entorno de Hardware 1. CONCEPTOS 1.1. Definición de Sistema Operativo Es

Más detalles

Guillermo Román Díez

Guillermo Román Díez Concurrencia Creación de Procesos en Java Guillermo Román Díez groman@fi.upm.es Universidad Politécnica de Madrid Curso 2016-2017 Guillermo Román, UPM CC: Creación de Procesos en Java 1/18 Concurrencia

Más detalles

Concurrencia: Exclusión mutua y Sincronización

Concurrencia: Exclusión mutua y Sincronización Concurrencia: Exclusión mutua y Sincronización Prof. Carlos Figueira Basado en materiales de Yudith Cardinale (USB) Williams Stallings, Eugene Styer Concurrencia Múltiples aplicaciones Aplicaciones estructuradas

Más detalles

INDICE 1. Introducción 2. Entrada / Salida: Principios y Programación 3. Procesos

INDICE 1. Introducción 2. Entrada / Salida: Principios y Programación 3. Procesos INDICE Prólogo XV 1. Introducción 1 1.1. Evolución de los sistemas operativos 2 Procesamiento en serie 3 Procesamiento por lotes 4 Multiprogramación 7 1.2. Tipos de Sistemas Operativos 9 Sistemas operativos

Más detalles

Introducción a los Sistemas Operativos

Introducción a los Sistemas Operativos Introducción a los Sistemas Operativos Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es 1 Índice General Conceptos sobre ordenadores Concepto

Más detalles

Concurrencia. Concurrencia

Concurrencia. Concurrencia Concurrencia Procesos y hebras Concurrencia Programación concurrente Por qué usar hebras y procesos? Ejecución de procesos Ejecución de hebras Hebras vs. Procesos Creación y ejecución de hebras La prioridad

Más detalles

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

Universisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas Universisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas Introducción y Conceptos Básicos Prof. Gilberto Díaz gilberto@ula.ve Departamento de Computación, Escuela de Sistemas, Facultad de Ingeniería

Más detalles

TEMA 1: INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS

TEMA 1: INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS TEMA 1: INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS 1. Definición, funciones y objetivos de un SO. 1.1. Sistema Informático 1.2. Definiciones de Sistema Operativo 1.3. Objetivos y/o funciones de un SO 1.4.

Más detalles

Mensajes. Interbloqueo

Mensajes. Interbloqueo CONCURRENCIA DE PROCESOS Preparado por: Angel Chata Tintaya (angelchata@hotmail.com) Resumen Los procesos comparten variables globales, comparten y compiten por recursos, se ejecutan simultáneamente intercalándose

Más detalles

SOLUCIONES. SISTEMAS OPERATIVOS Convocatoria de septiembre, 12 de septiembre de 2007

SOLUCIONES. SISTEMAS OPERATIVOS Convocatoria de septiembre, 12 de septiembre de 2007 Calificación SISTEMAS OPERATIVOS Convocatoria de septiembre, 12 de septiembre de 2007 1 2 3 Nombre SOLUCIONES Titulación Dispone de tres horas para completar el examen 1 (5 puntos) Test. Marque las opciones

Más detalles

Nombre de la materia Sistemas Operativos Departamento Ciencias Aplicadas de la Información Academia Arquitecturas de Cómputo

Nombre de la materia Sistemas Operativos Departamento Ciencias Aplicadas de la Información Academia Arquitecturas de Cómputo 0 Nombre de la materia Sistemas Operativos Departamento Ciencias Aplicadas de la Información Academia Arquitecturas de Cómputo Clave Horas-teoría Horas-práctica Horas-AI Total-horas Créditos I4859 60 20-80

Más detalles

Capítulo 1 Conceptos arquitectónicos

Capítulo 1 Conceptos arquitectónicos Sistemas operativos: una visión aplicada Capítulo 1 Conceptos arquitectónicos Contenido Estructura del computador Ejecución de instrucciones Interrupciones Reloj del computador Jerarquía de memoria Entrada/Salida

Más detalles

Lección 10: Ejemplos de programación con semáforos

Lección 10: Ejemplos de programación con semáforos Lección 10: Ejemplos de programación con semáforos El problema de la cena de los filósofos El problema de los lectores y escritores Ejercicios Gestión de concurrencia mediante paso de testigo (implementación

Más detalles

Universidad Autónoma de Baja California Facultad de Ciencias Administrativas Unidad Mexicali

Universidad Autónoma de Baja California Facultad de Ciencias Administrativas Unidad Mexicali SISTEMAS OPERATIVOS I Clave: 4595 HC: 3 HL: 2 HT: HPC: HCL: HE: CR: 8 Etapa de formación a la que pertenece: Básica Carácter de la Asignatura: Obligatoria PROPÓSITO GENERAL DEL CURSO Proporcionar al estudiante

Más detalles

Sincronización entre procesos (aka: semáforos)

Sincronización entre procesos (aka: semáforos) Sincronización entre procesos (aka: semáforos) DC - FCEyN - UBA Sistemas Operativos, 1c-2016 Dónde estamos? De dónde venimos? Race condition Semáforos Race condition Semáforos Primero repasemos brevemente

Más detalles

Sistemas Operativos. Introducción. Tema 6

Sistemas Operativos. Introducción. Tema 6 Sistemas Operativos Introducción Qué es un sistema operativo? Ubicación de un sistema operativo en un computador Descripción de un sistema operativo: Funcional Estructural Realización Funciones de los

Más detalles

Comunicación y sincronización

Comunicación y sincronización Comunicación y sincronización Son conceptos relacionados con la interacción entre los procesos La comunicación se refiere al paso de información de un proceso a otro La sincronización corresponde al cumplimiento

Más detalles

Estructura de los sistemas de cómputo

Estructura de los sistemas de cómputo Estructura de los sistemas de cómputo Introducción Elementos básicos de un computador Registro del procesador Ejecución de las instrucciones Interrupciones Hardware de protección Introducción Qué es un

Más detalles

Sistemas Operativos. Curso Página Web: Asignaturas de programación en el plan de estudios

Sistemas Operativos. Curso Página Web:  Asignaturas de programación en el plan de estudios Programa de la asignatura Sistemas Operativos 3 er Curso de la Licenciatura en Física Curso 2010-2011 Profesor: J. Javier Gutiérrez (gutierjj@unican.es) Página Web: http://www.ctr.unican.es/asignaturas/so/

Más detalles

1. Introducción 2. S.O. de Red. NFS 3. S.O. Distribuidos 4. Características de Diseño. Tema5: Sistemas Operativos Distribuidos

1. Introducción 2. S.O. de Red. NFS 3. S.O. Distribuidos 4. Características de Diseño. Tema5: Sistemas Operativos Distribuidos Tema 5: Sistemas Operativos Distribuidos 1. Introducción 2. S.O. de Red. NFS 3. S.O. Distribuidos 4. Características de Diseño 1 1. Introducción Sistema Informático Distribuido: Colección de S.I. autónomos

Más detalles

Taller de Programación Paralela

Taller de Programación Paralela Taller de Programación Paralela Departamento de Ingeniería Informática Universidad de Santiago de Chile April 26, 2007 Concurrencia 2 Concurrencia y sincronización.............................................................

Más detalles

Concurrencia. Programación Concurrente Procesos Comunicación entre Procesos (IPC) con espera ocupada.

Concurrencia. Programación Concurrente Procesos Comunicación entre Procesos (IPC) con espera ocupada. Concurrencia Programación Concurrente Procesos Comunicación entre Procesos (IPC) con espera ocupada. Introducción a Procesos Todas las computadoras moderas realizan varias cosas al mismo tiempo. En cada

Más detalles

TAREA 1. INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS.

TAREA 1. INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS. 1 TAREA 1. INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS. 1- Cuáles son las principales funciones de un sistema operativo? Los Sistemas Operativos tienen como objetivos o funciones principales lo siguiente; Comodidad;

Más detalles

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

Nombre del estudiante: Giovanna Kristhel Mendoza Castillo Gustavo Antonio González Morales Eduardo Solis Lara Francisco Javier Merodio Molina Nombre del estudiante: Giovanna Kristhel Mendoza Castillo Gustavo Antonio González Morales Eduardo Solis Lara Francisco Javier Merodio Molina Nombre del trabajo: Resumen y mapa conceptual del Capítulo

Más detalles

Sistemas Operativos Ingeniería de telecomunicaciones Sesión 3: Concurrencia

Sistemas Operativos Ingeniería de telecomunicaciones Sesión 3: Concurrencia Sistemas Operativos Ingeniería de telecomunicaciones Sesión 3: Concurrencia Calendario Comienzo: Lunes 2 de noviembre y miércoles 4 de noviembre. Entrega: 16 de noviembre y 18 de noviembre. 1. Requisitos

Más detalles

Grafo acíclico orientado cuyos nodos corresponden a sentencias individuales.

Grafo acíclico orientado cuyos nodos corresponden a sentencias individuales. GRAFOS DE PRECEDENCIA Grafo acíclico orientado cuyos nodos corresponden a sentencias individuales. Un arco de un nodo Si al nodo Sj significa que la sentencia Sj puede ejecutarse sólo cuando ha acabado

Más detalles

Usando el Sistema Operativo

Usando el Sistema Operativo Sistemas Operativos Pontificia Universidad Javeriana Enero de 2010 Los sistemas operativos Los sistemas operativos Perspectivas del Computador Concepto general El sistema operativo es parte del software

Más detalles

Tema 2 Introducción a la Programación en C.

Tema 2 Introducción a la Programación en C. Tema 2 Introducción a la Programación en C. Contenidos 1. Conceptos Básicos 1.1 Definiciones. 1.2 El Proceso de Desarrollo de Software. 2. Lenguajes de Programación. 2.1 Definición y Tipos de Lenguajes

Más detalles

SOLUCIONES. SISTEMAS OPERATIVOS Examen de la convocatoria extraordinaria de diciembre 2 de diciembre de 2010

SOLUCIONES. SISTEMAS OPERATIVOS Examen de la convocatoria extraordinaria de diciembre 2 de diciembre de 2010 Calificación SISTEMAS OPERATIVOS Examen de la convocatoria extraordinaria de diciembre 2 de diciembre de 2010 Nombre SOLUCIONES 1 2 3 4 5 Titulación Dispone de tres horas y quince minutos para realizar

Más detalles

Sistemas Operativos- Evolución Histórica

Sistemas Operativos- Evolución Histórica Esquema Primeros Computadores Accesos por operador Secuencia automática de trabajos Mejora del rendimiento Multiprogramación Proceso distribuído Multiproceso Primeros Computadores Lenguaje Máquina Monoprogramación

Más detalles

ARQUITECTURA BÁSICA DEL ORDENADOR: Hardware y Software. IES Miguel de Cervantes de Sevilla

ARQUITECTURA BÁSICA DEL ORDENADOR: Hardware y Software. IES Miguel de Cervantes de Sevilla ARQUITECTURA BÁSICA DEL ORDENADOR: Hardware y Software. IES Miguel de Cervantes de Sevilla Índice de contenido 1.- Qué es un ordenador?...3 2.-Hardware básico de un ordenador:...3 3.-Software...4 3.1.-Software

Más detalles

Concurrencia: deberes. Concurrencia: Exclusión Mutua y Sincronización. Concurrencia. Dificultades con la Concurrencia

Concurrencia: deberes. Concurrencia: Exclusión Mutua y Sincronización. Concurrencia. Dificultades con la Concurrencia Concurrencia: deberes Concurrencia: Exclusión Mutua y Sincronización Capítulo 5 Comunicación entre procesos Compartir recursos Sincronización de múltiples procesos Asignación del tiempo de procesador Concurrencia

Más detalles

SISTEMAS EN TIEMPO REAL

SISTEMAS EN TIEMPO REAL SISTEMAS EN TIEMPO REAL Año académico: 2006/07 Centro: Escuela Politécnica Superior Estudios: Ingeniero Técnico en Informática de Sistemas Asignatura: Sistemas en Tiempo real Ciclo: 1º Curso: 3º Cuatrimestre:

Más detalles

Proceso. Threads, SMP, and Microkernels. Multithreading. Proceso

Proceso. Threads, SMP, and Microkernels. Multithreading. Proceso Proceso Threads, SMP, and Microkernels Capítulo 4 Propiedad de Recurso el proceso se ubica en un espacio de direccionamiento virtual que tiene la imagen del proceso Planificación/ejecución sigue un camino

Más detalles

SISTEMAS OPERATIVOS I (Sistemas) / SISTEMAS OPERATIVOS (Gestión) septiembre 2009

SISTEMAS OPERATIVOS I (Sistemas) / SISTEMAS OPERATIVOS (Gestión) septiembre 2009 SISTEMAS OPERATIVOS I (Sistemas) / SISTEMAS OPERATIVOS (Gestión) septiembre 2009 4. (2 p) Dos procesos A y B se ejecutan concurrentemente en un determinado sistema. El proceso A ejecuta unas tareas ( Tareas

Más detalles

Concurrencia PLANIFICACIONES Actualización: 1ºC/2013. Planificaciones Concurrencia. Docente responsable: A DESIGNAR.

Concurrencia PLANIFICACIONES Actualización: 1ºC/2013. Planificaciones Concurrencia. Docente responsable: A DESIGNAR. Planificaciones 7522 - Concurrencia Docente responsable: A DESIGNAR. 1 de 5 OBJETIVOS Conocer y aplicar las técnicas necesarias para la cooperación entre procesos por diseño. Entender los problemas que

Más detalles

ANEXO I GUIA BIBLIOGRAFICA:

ANEXO I GUIA BIBLIOGRAFICA: ANEXO I GUIA BIBLIOGRAFICA: Unidad 1: INTRODUCCIÓN Concepto de sistema operativo. Evolución de los sistemas operativos. Repaso de los conocimientos de hardware necesarios. Estructuras de los sistemas operativos.

Más detalles

Necesidad de Protección

Necesidad de Protección Necesidad de Protección Por qué necesitamos protección? Para mejorar la utilización del sistema, el Sistema de Operación empezó a compartir recursos del sistema entre varios programas de manera simultánea.

Más detalles

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

Unidad IV: Programación concurrente (MultiHilos) 4.1. Concepto de hilo Unidad IV: Programación concurrente (MultiHilos) 4.1. Concepto de hilo Hilo (theread) llamado también proceso ligero o subproceso, es la unidad de ejecución de un proceso y esta asociado con una secuencia

Más detalles

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

Participantes: Avila Aida Betancourt Sioly Briceño Susana Rojas Alejandro Participantes: Avila Aida Betancourt Sioly Briceño Susana Rojas Alejandro Es una instancia de un programa en ejecución (corriendo). A los procesos frecuentemente se les refiere como tareas. El contexto

Más detalles

7. Programación Concurrente

7. Programación Concurrente 7. Programación Concurrente 1. Qué es la programación concurrente? Se conoce por programación concurrente a la rama de la informática que trata de las técnicas de programación que se usan para expresar

Más detalles

Sistemas Operativos II Junio 2006 Nombre:

Sistemas Operativos II Junio 2006 Nombre: Sistemas Operativos II Junio 2006 Nombre: ITIS Castellano Ejercicio 1 [1 punto] 1. Por qué es más eficiente el cambio de contexto entre threads (hilos) que entre procesos? 2. Describe brevemente la diferencia

Más detalles

CARRERA: LICENCIATURA EN CIENCIAS DE LA COMPUTACIÓN AÑO : 2010

CARRERA: LICENCIATURA EN CIENCIAS DE LA COMPUTACIÓN AÑO : 2010 UNIVERSIDAD NACIONAL DE RIO CUARTO DEPARTAMENTO DE COMPUTACIÓN MATERIA : SISTEMAS OPERATIVOS Código: 1965 PROF. RESPONSABLE: Lic. Marcelo Arroyo REGIMEN: CUATRIMESTRAL CUATRIMESTRE: Primero CARRERA: LICENCIATURA

Más detalles

Asignaturas antecedentes y subsecuentes

Asignaturas antecedentes y subsecuentes PROGRAMA DE ESTUDIOS Programación Concurrente Área a la que pertenece: Área de Formación Integral Profesional Horas teóricas: 3 Horas prácticas: 2 Créditos: 8 Clave: F0177 Asignaturas antecedentes y subsecuentes

Más detalles

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

Hilos. Hilos. Revisión Modelos Multihilados Librerías de Hilos Aspectos sobre Hilos Ejemplos de Sistemas Operativos Hilos en Linux Hilos Hilos Revisión Modelos Multihilados Librerías de Hilos Aspectos sobre Hilos Ejemplos de Sistemas Operativos Hilos en Linux 1 Objetivos Introducir la noción de hilo una unidad fundamental de la utilización

Más detalles

5 Gestión de E/S. Servicios de E/S que suministra el SO Hardware de Entradas/salidas Implementación de los servicios Mejora del redimiento de E/S SOI

5 Gestión de E/S. Servicios de E/S que suministra el SO Hardware de Entradas/salidas Implementación de los servicios Mejora del redimiento de E/S SOI 5 Gestión de E/S Servicios de E/S que suministra el SO Hardware de Entradas/salidas Implementación de los servicios Mejora del redimiento de E/S 1 Hardware de E/S Elementos hardware del sistema de E/S

Más detalles

Definición de Sistema Operativo

Definición de Sistema Operativo Definición de Sistema Operativo El sistema operativo es el programa (o software) más importante de un ordenador. Para que funcionen los otros programas, cada ordenador de uso general debe tener un sistema

Más detalles

Test SITR Temas: Planificación, Sincronización, Comunicación entre Procesos, Relojes, Señales, Temporizadores (TestSITR_T4 T9)

Test SITR Temas: Planificación, Sincronización, Comunicación entre Procesos, Relojes, Señales, Temporizadores (TestSITR_T4 T9) Test SITR Temas: Planificación, Sincronización, Comunicación entre Procesos, Relojes, Señales, Temporizadores (TestSITR_T4 T9) Temas: Planificación Sincronización y Comunicación entre Procesos Funciones

Más detalles

SINCRONIZACIÓN DE PROCESOS

SINCRONIZACIÓN DE PROCESOS SINCRONIZACIÓN DE PROCESOS 1 Introducción Los procesos acceden a datos o recursos compartidos El acceso puede provocar que el estado final de los datos no sea correcto, generando incoherencias debido a

Más detalles

Convivencia Introducción

Convivencia Introducción Convivencia Introducción Dra. Carolina Mañoso Dpto. Informática y Automática.UNED Definición (1/3) El sistema operativo como máquina virtual o extendida: Un sistema operativo es una serie de componentes

Más detalles

Programación concurrente

Programación concurrente Programación concurrente Master de Computación I Conceptos y recursos para la programación concurrente: I.6 Sincronización basada en memoria compartida. J.M. Drake M. Aldea Procesos concurrentes y memoria

Más detalles

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

Facultad de Ingeniería Industrial y de Sistemas v1.1 MA781U CONCEPTOS INICIALES CASOS DE USO CONCEPTOS INICIALES CASOS DE USO Preparado por: Angel Chata Tintaya (angelchata@hotmail.com) Resumen Se presenta el analisis funcional basico del sistema operativo desarrollado en RationalRose. I. PAQUETES

Más detalles

Programa de Sistemas Operativos

Programa de Sistemas Operativos Programa de Sistemas Operativos 01 Carrera: Licenciatura en Tecnología Informática 02 Asignatura: Sistemas Operativos 03 Año lectivo: 2013 04 Año de cursada: 2013 05 Cuatrimestre: 1 06 Hs. 6hs 07 Profesor:

Más detalles

Pontificia Universidad Católica del Ecuador

Pontificia Universidad Católica del Ecuador 1. DATOS INFORMATIVOS: FACULTAD DE INGENIERÍA ESCUELA DE SISTEMAS MATERIA O MÓDULO: SISTEMAS OPERATIVOS CÓDIGO: IS603.a CARRERA: INGENIERÍA DE SISTEMAS NIVEL: TERCERO No. CRÉDITOS: 4 CRÉDITOS TEORÍA: 4

Más detalles

Planificaciones Sistemas Operativos. Docente responsable: MENDEZ MARIANO. 1 de 6

Planificaciones Sistemas Operativos. Docente responsable: MENDEZ MARIANO. 1 de 6 Planificaciones 7508 - Sistemas Operativos Docente responsable: MENDEZ MARIANO 1 de 6 OBJETIVOS 1-Estudiar y conocer en detalle los pilares fundamentales de los sistemas operativos: el Kernel y Proceso,

Más detalles

Arquitecturas cliente/servidor

Arquitecturas cliente/servidor Arquitecturas cliente/servidor Creación de Sockets Cliente Servidor 1 Creación de Sockets Cliente/Servidor Sockets en TCP Concepto de Hilos Definición de DAEMON Sockets en UDP 2 THREADS 3 Qué es un thread?

Más detalles

Tema 1: Programación Multiproceso. Curso

Tema 1: Programación Multiproceso. Curso Tema 1: Programación Multiproceso. Curso 2012-2013 1 Patricia Hurtado Sayas Índice de contenidos: 1. Elementos funcionales de un SI. Repaso. 2. Concepto de Proceso o Tarea. 1. PCB, Bloque de Control de

Más detalles