Unidad 1: Gestión de Procesos
|
|
|
- Benito Valenzuela Pérez
- hace 8 años
- Vistas:
Transcripción
1 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 condición y Paso de mensajes. 1.2 Problemas clásicos de sincronización: - Productor consumidor usando monitores y paso de mensajes. Problema de los Lectores /escritores. Informática (Segovia) 1
2 El problema de la sección crítica (Conceptos generales): Concurrencia: Existencia simultánea de varios procesos en ejecución. IMPORTANTE: EXISTENCIA SIMULTÁNEA NO IMPLICA EJECUCIÓN SIMULTÁNEA. Necesidad de sincronización y comunicación. Comunicación: Necesidad de transmisión de información entre procesos concurrentes. Sincronización: Necesidad de que las ejecuciones de los procesos concurrentes se produzcan según una secuenciación temporal, conocida y establecida entre los propios procesos. Informática (Segovia) 2
3 El problema de la sección crítica (Conceptos generales): Exclusión mutua: Para que el acceso a ciertos recursos sea exclusivo de un proceso cada vez. A la parte del programa que los utiliza se le llama sección crítica. Sección crítica: Cada proceso tiene un segmento de código llamado sección crítica. No está permitido que varios procesos estén simultáneamente en su sección crítica. Un protocolo rige la forma de entrar y salir de la sección crítica. Informática (Segovia) 3
4 El problema de la sección crítica (Conceptos generales): Cualquier solución al problema de la sección crítica debe satisfacer los tres requisitos: Exclusión Mutua: Sólo un proceso ejecuta simultáneamente su sección crítica. Progreso: Cuando ningún proceso ejecuta su sección crítica, algún proceso que lo solicite podrá entrar utilizando un protocolo, que impida la entrada simultánea de varios. La decisión de quién entra no se puede posponer indefinidamente. Espera limitada: Ningún proceso debe esperar ilimitadamente la entrada en la sección crítica. Informática (Segovia) 4
5 Problemas al uso de semáforos: Semáforos: mecanismo cómodo y efectivo para lograr la sincronización. Problemas: Pueden ocasionar errores de temporización difíciles de detectar, puesto que sólo se producen con ciertas secuencias de ejecución específicas. El uso desordenado de las primitivas podría producir que no se consiga la exclusión mutua, ya que dos procesos podrían estar simultáneamente en sus secciones críticas. La construcción de grandes programas resulta muy árduo porque las primitivas wait() y signal() se distribuyen por todo el código y no es fácil advertir su efecto global sobre el valor de los semáforos. Bloqueos mutuos. Informática (Segovia) 5
6 Alternativas al uso de semáforos: Región crítica. Monitor y Variables condición. Paso de mensajes. Informática (Segovia) 6
7 Región crítica (RC): Mecanismo de sincronización de alto nivel. Requiere declarar una variable que puede ser compartida entre muchos procesos, pero a la que sólo podrá acceder un único proceso, a través de un mecanismo booleano de control de acceso. Si el número de procesos dentro de esa RC es igual a 0, un proceso que lo desee puede entrar a dicha RC. Si el número de procesos dentro de una RC es igual a 1 y N procesos quieren entrar, esos N procesos deben esperar. Cuando un proceso sale de una RC se permite que entre uno de los procesos que esperan. Informática (Segovia) 7
8 Región crítica condicional (RCC): Funcionamiento similar a la RC, sólo que además, para que un proceso ejecute su sección crítica la condición de acceso debe de ser cierta. La evaluación de la condición de acceso se considera parte de la región crítica. En caso de que el resultado de la evaluación sea falso, abandona la RC para permitir a otros procesos entrar en ella. Un proceso que haya evaluado la condición a falso no vuelve a entrar a su RC hasta que otro proceso abandone ésta (espera activa): Se vuelve a ejecutar cuando posiblemente alguien haya modificado dicha condición. Informática (Segovia) 8
9 Región crítica condicional (RCC): Limitaciones de las RCC: Aunque mejoran algunos aspectos negativos de los semáforos, tienen algunas limitaciones: Pueden aparecer a lo largo de todo el programa. No se garantiza la integridad de las estructuras de datos compartidas. Realizar una implementación eficiente de las mismas es una tarea difícil. Informática (Segovia) 9
10 Monitor: Mecanismo de sincronización de alto nivel. Funcionalidad equivalente a la de los semáforos pero más fáciles de controlar. Tipo abstracto de datos que conjuga: Estructuras de datos. Conjunto de operaciones asociadas a tales estructuras. + Exclusión mutua Sincronización (variables de condición). Informática (Segovia) 10
11 Monitor: Es un módulo de software: Consta de uno o varios procedimientos. Secuencia de inicio. Datos locales. Características básicas: Variables locales sólo accesibles para los procedimientos del monitor y no para procedimientos externos. Un proceso entra en el monitor al invocar uno de sus procedimientos. Sólo un proceso se puede estar ejecutando en el monitor en un instante dado. Informática (Segovia) 11
12 Monitor: Deben incluir herramientas de sincronización: Un monitor proporciona sincronización por medio de las variables de condición que se incluyen dentro del monitor y que son accesibles sólo desde dentro. Dos funciones operan con las variables de condición: cwait(c): suspende (bloquea) la ejecución del proceso que llama a la condición c. El monitor estará disponible para ser usado por otro proceso. csignal(c): reanuda la ejecución de un proceso que fue suspendido por un cwait(). Si hubiera varios elige uno de entre ellos y si no hay ninguno no hace nada. Informática (Segovia) 12
13 Estructura de un monitor: Informática (Segovia) 13
14 Monitor, Variables condición: Qué ocurre cuando un proceso P realiza una operación csignal() sobre una variable condición y existe un proceso suspendido Q asociado a dicha variable? Si varios procesos están suspendidos por la concición c y algún proceso ejecuta csignal(c ) qué proceso se reanuda?. Informática (Segovia) 14
15 Soluciones al problema del productor/consumidor con buffer acotado: Por medio de Monitores con señales (monitor de Hoare). Por medio de Monitores con notificación y difusión (monitor de Lampson y Redell). Informática (Segovia) 15
16 Solución al P/C con monitores con señales: El procedimiento comprueba primero la condición no_lleno, para saber si hay espacio libre en el buffer. De no haberlo el proceso que está ejecutando el monitor se suspende cualquier otro proceso (P o C) puede entrar ahora al monitor. Cuando el buffer ya no esté lleno el proceso suspendido puede ser retirado de la cola y reactivado y el proceso podría reanudarse. Tras introducir un carácter en el buffer, el proceso activa la condición no_vacío. Conclusiones: Como vemos la propia estructura del monitor garantiza la EM, no es posible que P y C accedan simultáneamente al buffer. Lo único que tiene que hacer el programador es situar correctamente las primitivas cwait() y csignal() en el monitor controlando que no se depositen elementos en un buffer lleno o no se extraigan de uno vacío. Informática (Segovia) 16
17 Inconvenientes de los monitores con señales: Posible error de sincronización de monitores: Si olvidamos cualquiera de los csignal(), los procesos que entran en la cola de la condición se quedan colgados permanentemente. Si un proceso ejecuta un csignal() y no ha terminado en el monitor, hacen falta dos cambios de proceso adicionales para continuar la ejecución del programa: Uno para suspender el proceso. Otro para reanudarlo cuando el monitor quede disponible. La planificación debe de ser muy fiable. Cuando se ejecuta un csignal() se activará inmediatamente un proceso de la cola de la condición correspondiente y el planificador debe asegurarse de que ningún otro proceso entre al monitor antes de la activación. Informática (Segovia) 17
18 Soluciones al P/C con monitores de notificación y difusión: Notifican los procesos en vez de reactivarlos a la fuerza. Se puede añadir una primitiva de difusión cbroadcast(), que provoca que todos los procesos que están esperando por una condición se sitúan en el estado de listos. Esto es conveniente en situaciones donde un proceso no sabe cuantos procesos deben reactivarse. Ventajas sobre los monitores con señales: 1. Menor propensión a errores, cada procedimiento comprueba la variable del monitor después de ser despertado, por medio del while. 2. Más modulable en cuanto a la construcción de programas. 3. Hace cumplir la EM y concluye la operación de E/S antes de permitir cualquier otra operación sobre el buffer. 4. Dispone de suficiente memoria para que este proceso pueda completar su solicitud de asignación. Informática (Segovia) 18
19 Paso de mensajes: Refuerzo de la Exclusión Mutua. Intercambio de información. Se caracteriza por dos primitivas: send(destino, mensaje): envía mensaje a proceso de destino. receive(origen, mensaje): información indicando el proceso emisor y el mensaje. Informática (Segovia) 19
20 Implementación de paso de mensajes: Sincronización: Entre procesos, P1 no puede recibir un mensaje hasta que lo envíe P0. Emisor y receptor pueden ser bloqueantes o no bloqueantes (esperando un mensaje). Posibles combinaciones: send() bloqueante y receive() bloqueante: Tanto el emisor como el receptor se bloquean hasta que se entrega el mensaje. send() no bloqueante y receive() bloqueante: Permite que un proceso envíe uno o más mensajes a varios destinos tan rápido como sea posible. El receptor se bloquea hasta que llega el mensaje solicitado. send() no bloqueante y receive() no bloqueante: Ninguno debe esperar. Informática (Segovia) 20
21 Direccionamiento: Debemos especificar en el send() que proceso va a recibir el mensaje, y también que el receive() conozca el origen del mensaje que va a recibir dos esquemas: Direccionamiento directo: Send() incluye una identificación del proceso de destino. Receive() puede conocer de antemano de qué proceso espera un mensaje. Direccionamiento implícito: receive() puede utilizar el parámetro origen para devolver un valor cuando se haya realizado la operación de recepción. Direccionamiento indirecto: Los mensajes no van directamente del emisor al receptor. Los mensajes se envían a una estructura de datos compartida formada por colas (buzones o mailboxes). P0 envía mensajes al buzón apropiado y P1 los recoge del buzón. Informática (Segovia) 21
22 Relaciones de direccionamiento: Uno a uno: enlace privado de comunicación entre P0 y P1. Uno a varios: aplicaciones en los que el mensaje se difunde a un conjunto de procesos. Varios a uno: interacciones cliente/ servidor, un proceso ofrece un servicio a un conjunto de procesos. Varios a varios: Informática (Segovia) 22
23 Formato de mensajes: Tipo de longitud ID de destino Cabecera ID de origen Longitud de mensaje Información de control Cuerpo Contenido del mensaje Informática (Segovia) 23
24 Implementación de la EM mediante paso de mensajes: /* programa exclusion mutua */ void main(){ const int n= /*numero de procesos*/; crear_buzon(excmut); void P(int i){ send(excmut, null); mensaje msj; parbegin(p(1),p(2),..., P(n)); while (cierto){ } receive (exmut, msj); /* sección crítica */ send (exmut, msj); /*resto*/ } } Informática (Segovia) 24
25 Implementación de la EM mediante paso de mensajes: Un proceso (P) que desea entrar en su sección crítica intenta primero el receive(), si el buzón está vacío P se bloquea. Si el proceso consigue el mensaje, ejecuta su sección crítica y después devuelve el mensaje al buzón el mensaje funciona como un testigo que se pasa de un proceso a otro. Esta técnica implica que si hay varios procesos ejecutando simultáneamente el receive(): Si hay un mensaje, se entrega sólo a uno de los procesos y los otros se bloquean. Si el buzón está vacío, todos los procesos se bloquean. Cuando haya un mensaje disponible sólo se activará y tomará el mensaje uno de los procesos bloqueados. Informática (Segovia) 25
26 1.2 Problema de los lectores/escritores. Enunciado: Tenemos un área de datos (que puede ser un archivo, un bloque de memoria principal o un banco de registros del procesador) compartida entre varios procesos. Algunos procesos sólo leen los datos (lectores) y otros sólo escriben (escritores). Se puede satisfacer que: 1. Cualquier número de lectores puede leer el archivo simultáneamente. 2. Sólo puede escribir en el archivo un único escritor en cada instante. 3. Si un escritor está accediendo al archivo, ningún lector puede leerlo. Informática (Segovia) 26
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
Concurrencia entre Procesos.
Concurrencia entre Procesos. Sistemas Operativos Tema 3. 1 Procesamiento concurrente. Procesamiento concurrente: base de los sistemas operativos modernos (multiprogramados): Un conjunto de procesos que
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
Implementación de monitores POSIX
Implementación de monitores POSIX Ampliación de Sistemas Operativos (prácticas) E.U. Informática en Segovia Universidad de Valladolid Programación concurrente: Problemática Presencia de condiciones de
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
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
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
Mensajes. Interbloqueo
CONCURRENCIA DE PROCESOS Preparado por: Angel Chata Tintaya ([email protected]) Resumen Los procesos comparten variables globales, comparten y compiten por recursos, se ejecutan simultáneamente intercalándose
Ejercicios con Monitores
Ejercicios con Monitores 57. Aunque un monitor garantiza la exclusión mutua, los procedimientos tienen que ser reentrantes. Explicar por qué. 58. Demostrar que incluso si la implementación del semáforo
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
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
PROGRAMACIÓN CONCURRENTE. Tema 5 Monitores
PROGRAMACIÓN CONCURRENTE Tema 5 Monitores 1 Indice Definición de los monitores Sincronización condicional usando monitores Algunos problemas con monitores 2 Problemas de las regiones críticas condicionales
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
4.6.- Integridad: Control de concurrencia.
4.6.- Integridad: Control de concurrencia. 4.6.1.- Introducción 4.6.2.- Técnicas de Bloqueo. 4.6.2.1.- Bloqueo (variable cerrojo) Tipos, protocolos Problemas. Interbloqueo Granularidad 4.6.2.2.- Marcas
Paradigma de paso de mensajes
Paradigma de paso de mensajes Curso 2011-2012 Índice Visión lógica del paradigma de paso de mensajes. Operaciones básicas en paso de mensajes. Operaciones bloqueantes. Operaciones no bloqueantes. MPI:
Tema 3. Monitores Programación Concurrente
Tema 3. Monitores Programación Concurrente Depto. de Lenguajes y Sistemas Informáticos Universidad de Granada Contenidos 1. Concepto de Monitor 1.1. Fundamento teórico de los monitores 1.2. Sintaxis de
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
Bloque III: El nivel de transporte. Tema 7: Intercambio de datos TCP
Bloque III: El nivel de transporte Tema 7: Intercambio de datos TCP Índice Bloque III: El nivel de transporte Tema 7: Intercambio de datos TCP Flujo de datos interactivo ACKs retardados Algoritmo de Nagle
Sistemas Operativos. Daniel Rúa Madrid
Sistemas Operativos Daniel Rúa Madrid Qué es? Es un programa que administra el hardware de una computadora. También proporciona las bases para los programas de aplicación y actúa como intermediario entre
Ejercicios de Hilos. Índice
Índice 1 Creación de hilos (0.5 puntos)...2 2 Prioridades (0.5 puntos)... 2 3 Productor/Consumidor (1 punto)...2 4 Pool de hilos (1 punto)... 3 1. Creación de hilos (0.5 puntos) En la clase Ej1 se crean
MONITORES EN JAVA. Antonio Tomeu Control de la Concurrencia en Java: API Estándar
MONITORES EN JAVA Un monitor es un objeto que implementa acceso bajo e.m. a todos sus métodos, y provee sincronización En Java, son objetos de una clase cuyos métodos públicos son todos synchronized Un
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
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
Tema 12: El sistema operativo y los procesos
Tema 12: El sistema operativo y los procesos Solicitado: Tarea 06 Arquitecturas de una computadora y el funcionamiento del software M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com [email protected]
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
Tema 3 SUBRUTINAS. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía
Tema 3 SUBRUTINAS ÍNDICE Definición e instrucciones básicas Soporte para el tratamiento de subrutinas (ejecución de la subrutina y gestión del bloque de activación) Interrupciones vs llamadas a procedimiento
Sistemas Operativos Tema 11. Interbloqueo José Miguel Santos C. Rubén García - Alexis Quesada
Sistemas Operativos Tema 11. Interbloqueo 1998-2008 José Miguel Santos C. Rubén García - Alexis Quesada 1 Contenidos Caracterización del interbloqueo Estrategias de tratamiento del interbloqueo Métodos
PROBLEMAS CLÁSICOS DE LA COMUNICACIÓN N ENTRE PROCESOS
PROBLEMAS CLÁSICOS DE LA COMUNICACIÓN N ENTRE PROCESOS SISTEMAS OPERATIVOS JOSÉ ALFREDO ESTRADA SOTO Para cada uno de los siguientes tres problemas se requiere escribir un programa que atienda las necesidades
Sistemas Operativos. Características de la Multiprogramación. Interacción entre Procesos. Características de la Multiprogramación
Universidad Simón Bolívar Departamento de Electrónica y Circuitos EC3731 Arquitectura del Computador II Prof. Osberth De Castro Prof. Juan C. Regidor Sistemas Operativos Concurrencia y Sincronización de
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
Procesos Definición y Estados
Procesos Definición y Estados Profesorado de Informática CeRP del Suroeste, Uruguay Contenidos Qué es un proceso Estructuras de datos para gestionar procesos API para trabajar con procesos Hilos (threads).
LABORATORIO 4: CONCURRENCIA Juan Antonio de la Puente - 21/10/15
LABORATORIO 4: CONCURRENCIA Juan Antonio de la Puente - 21/10/15 Esta obra está bajo licencia Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0 Unported. Objetivos Entender el comportamiento
Funcionamiento de la computadora
Funcionamiento de la computadora La computadora es una maquina destinada a procesar datos. Este procesamiento involucra dos flujos de información: el de datos y el de instrucciones. Se parte del flujo
Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones
Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice
Guía de signatario de DocuSign para SAP
Guía de signatario de DocuSign para SAP Contenido 1. Guía de signatario de DocuSign para SAP... 2 2. Recepción de una notificación por correo electrónico... 2 3. Firma del documento... 3 4. Otras opciones...
Validación de cupones por PIN
Validación de cupones por PIN Índice 1 Objetivo Página-1 2 Funcionamiento Página-2 2.1 Forma de validación del cupón 2.2 Conseguir el PIN del colaborador 2.3 Gestión notificación de e-mails Página-2 Página-6
Protocolo de Ventana Deslizante 2008
Protocolo de Ventana Deslizante 2008 ( wait Parada y Espera (Stop and Una vez se envía un paquete no se envía el siguiente paquete hasta que no se recibe el correspondiente ACK. En caso de recibir un NACK
Funciones Definición de función
Funciones Definición de función Una función es un bloque de código que realiza una tarea específica. Una función es una porción de programa, identificable mediante un nombre, que realiza determinadas tareas
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
dit Planificación de tareas de tiempo real Juan Antonio de la Puente DIT/UPM UPM Copyright 2007, Juan Antonio de la Puente
dit UPM Planificación de tareas de tiempo real Juan Antonio de la Puente DIT/UPM Copyright 2007, Juan Antonio de la Puente Objetivos Plantear los problemas básicos relacionados con el cumplimiento de los
Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.
LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan
Unidad 4 - Procesamiento paralelo. Arquitectura de computadoras. D o c e n t e : E r n e s t o L e a l. E q u i p o : J e s s i c a F i e r r o
Unidad 4 - Procesamiento paralelo. D o c e n t e : E r n e s t o L e a l E q u i p o : J e s s i c a F i e r r o L u i s N a v e j a s Arquitectura de computadoras Introducción Cuestionario Conclusiones
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
- Bajo que condiciones el algoritmo de planifiación de procesos FIFO (FCFS) resultaría en el tiempo de respuesta promedio más pequeño?
Sistemas Operativos. Grado Ingeniería Informática. TGR-2.1 Procesos. Noviembre 2014 Problemas para hacer en clase FIFO cpu C A 1. Dos procesos A y B tienen una ráfaga de CPU de 50 ms y un proceso C tiene
SISTEMAS OPERATIVOS AVANZADOS
SISTEMAS OPERATIVOS AVANZADOS TEMA 3 CLAVE: MIS 204 PROFESOR: M.C. ALEJA DRO GUTIÉRREZ DÍAZ 3. PROCESOS CONCURRENTES 3.1 Conceptos de programación concurrente 3.2 El problema de la sección crítica 3.3
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
Sistemas Operativos. (Procesos)
Sistemas Operativos (Procesos) 2.1 Procesos Def: Un proceso es un programa en ejecución. 2.2 Estados de procesos El estado de un proceso define su actividad actual. Durante su existencia, un proceso pasa
Interbloqueos. Módulo 7. Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco
Interbloqueos Módulo 7 Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco Módulo 7: Interbloqueos Modelo de Sistema Caracterización de Interbloqueos
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 [email protected] 1 Índice General Conceptos sobre ordenadores Concepto
Tipos de Diseño. Ing. Elizabeth Guerrero V.
Tipos de Diseño Ing. Elizabeth Guerrero V. Tipos de Diseño Tipos de diseño de Procesos: Centralizado, Distribuido y Cooperativo Procesos Centralizados Un sistema centralizado está formado por un computador
El problema de los Filósofos
El problema de los Filósofos Problemas de Programación Concurrente Solución con Semáforos Para evitar una situación de interbloqueo se limita el número de filósofos en disposición de comer a 4. PROGRAM
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?
SEC. 2.2 COMUNICACIÓN ENTRE PROCESOS 63
62 PROCESOS CAP. 2 permanecerá dando vueltas en su ciclo hasta que se asigne FALSE a interested[0], cosa que sólo sucede cuando el proceso O invoca leave_region para salir de su región crítica. Consideremos
dit UPM Tema 3: Concurrencia /ejercicios Análisis y diseño de software José A. Mañas 3.4.2014 http://jungla.dit.upm.es/~pepe/doc/adsw/index.
Análisis y diseño de software dit UPM Tema 3: Concurrencia /ejercicios José A. Mañas http://jungla.dit.upm.es/~pepe/doc/adsw/index.html 3.4.2014 ejercicio 1.1 programar una cuenta bancaria compartida 1.
CICLOS DEL PROCESADOR
UNIDAD DE CONTROL CICLOS DEL PROCESADOR Qué es un ciclo de búsqueda? Para qué sirve estudiar los ciclos de instrucción de una CPU? Para comprender el funcionamiento de la ejecución de instrucciones del
PROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTE II.3 Sincronización basada en memoria compartida: Semáforos J.M. Drake 1 Procesos concurrentes y memoria compartida. Si los diferentes procesos de un programa concurrente tienen
1. Cuántas sentencias hay en la secuencia principal del siguiente programa?
1. Cuántas sentencias hay en la secuencia principal del siguiente programa? public class PruebaSwitch { System.out.print ("Opcion: "); case 3: System.out.println ("miércoles "); A. 1. B. 4. C. Más de 10.
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA UNIVERSIDAD DE SEVILLA COMPUTADORAS Y COMUNICACIONES. Redes informáticas de área local (LAN)
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA UNIVERSIDAD DE SEVILLA COMPUTADORAS Y COMUNICACIONES Práctica 2: Redes informáticas de área local (LAN) 1.Objetivo El objetivo de esta práctica es conseguir
Tema 3. Aplicaciones de Tipo Consola
Tema 3. Aplicaciones de Tipo Consola Una aplicación de consola es aquella que se ejecuta dentro de una ventana de línea de comandos. Este tipo de ventana recibe diferentes denominaciones: Símbolo del sistema,
Comunicación mediante mensajes
dit UPM Comunicación mediante mensajes Juan Antonio de la Puente DIT/UPM Objetivos Comprender los problemas relacionados con la comunicación entre procesos basada en el interambio de mensajes Estudiar
Capítulo 3: Procesos. n Concepto de Proceso. n Despacho (calendarización) de Procesos. n Operaciones en Procesos. n Procesos en cooperación
3.- Procesos Capítulo 3: Procesos Concepto de Proceso Despacho (calendarización) de Procesos Operaciones en Procesos Procesos en cooperación Compunicación Interprocesos Communicación en sistemas Cliente-Servidor
Facultad de Ingeniería Industrial y de Sistemas v1.0 MA781U PROCESOS DISTRIBUIDOS
PROCESOS DISTRIBUIDOS Preparado por: Angel Chata Tintaya ([email protected]) Resumen El proceso cliente servidor es la clave para comprender el potencial de los sistemas de información y las redes
Sistema Operativo. Repaso de Estructura de Computadores. Componentes Hardware. Elementos Básicos
Sistema Operativo Repaso de Estructura de Computadores Capítulo 1 Explota los recursos hardware de uno o más procesadores Proporciona un conjunto de servicios a los usuarios del sistema Gestiona la memoria
Guía para el colaborador
Guía para el colaborador Índice Sección Página 1 2 3 4 5 6 7 Acceso 1 Mis campañas 2 Validación de cupones 5 Modificación de la cuenta 6 Cómo recuperar acceso 7 Validación de cupones por PIN 8 Contacto
Programación MODULAR: Subalgoritmos - funciones y procedimientos
Programación MODULAR: Subalgoritmos - funciones y procedimientos Uno de los métodos fundamentales para resolver un problema es dividirlo en problemas más pequeños, llamados subproblemas. Estos problemas
Sistemas Operativos: Programación de Sistemas. Curso Oscar Déniz Suárez Alexis Quesada Arencibia Francisco J.
Tema 5 : Comunicación entre Procesos mediante Tuberías Sistemas Operativos: Programación de Sistemas Oscar Déniz Suárez Alexis Quesada Arencibia Francisco J. Santana Pérez Curso 2006-07 Introducción Algunas
Cristian Blanco
UNIDAD DIDÁCTICA 8. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS. DIAGRAMAS DE COMPORTAMIENTO En el siguiente enlace tienes una descripción y algunos ejemplos de todos los diagramas UML.: http://jms32.eresmas.net/tacticos/uml/umlindex.html
Una dirección IP es una secuencia de unos y ceros de 32 bits. La Figura muestra un número de 32 bits de muestra.
DIRECCIONAMIENTO IP Un computador puede estar conectado a más de una red. En este caso, se le debe asignar al sistema más de una dirección. Cada dirección identificará la conexión del computador a una
Net-LAN. Guía rápida del Kit inalámbrico NetLAN para ZyXEL P660 HW61
Net-LAN Guía rápida del Kit inalámbrico NetLAN para ZyXEL P660 HW61 Índice 1. INTRODUCCIÓN...3 2. FUNCIONAMIENTO DEL KIT INALÁMBRICO PARA NETLAN...4 2.1 Instalación del configurador...4 2.2 Proceso de
Diseño de sistemas concurrentes
Diseño de sistemas concurrentes Manuel Carro Universidad Politécnica de Madrid Necesidad de diseño Hasta ahora, problemas ya cerrados: Número de procesos, recursos Código de procesos Especificación de
Equipamiento ADSL» Inalámbrico. Adaptador USB PAUTAS PARA LA VERIFICACION TCP/IP
Equipamiento ADSL» Inalámbrico Adaptador USB PAUTAS PARA LA VERIFICACION TCP/IP PAUTAS PARA LA VERIFICACIÓN TCP/IP Este documento describe cómo preparar su PC para su conexión a una red inalámbrica después
Aspectos Básicos de Networking
Aspectos Básicos de Networking ASPECTOS BÁSICOS DE NETWORKING 1 Sesión No. 4 Nombre: Capa de transporte del modelo OSI Contextualización Existen diferencias en los servicios de protocolos? Los protocolos
Manipulación de procesos
Manipulación de procesos Las primeras computadoras solo podían manipular un programa a la vez. El programa tenía control absoluto sobre todo el sistema. Con el desarrollo vertiginoso del hardware ese panorama
Crear Tareas. Crear Tareas. 1 de 8. En este tutorial vamos a revisar el comportamiento de la herramienta "Tarea".
1 de 8 Crear Tareas Crear Tareas En este tutorial vamos a revisar el comportamiento de la herramienta "Tarea". Esta herramienta ha sido modificada a partir de la versión 2.3 de moodle, por lo que en las
Diseño arquitectónico 1ª edición (2002)
Unidades temáticas de Ingeniería del Software Diseño arquitectónico 1ª edición (2002) Facultad de Informática objetivo Los sistemas grandes se descomponen en subsistemas que suministran un conjunto relacionado
Apuntes de Regulación y Automatización. Prácticas y Problemas.
TEMA 3. AUTOMATISMOS Y AUTÓMATAS PROGRAMABLES. IMPLEMENTACION DE GRAFCET. OBJETIVOS: Los diseños e introducidos en el tema anterior, se traducen de manera sencilla a unas funciones lógicas concretas, esta
DIRECCIONAMIENTO IP TECNOLOGÍA E INFORMÁTICA (ONCE)
DIRECCIONAMIENTO IP TECNOLOGÍA E INFORMÁTICA (ONCE) QUÉ ES EL NÚMERO IP (1)? El número IP permite identificar cada posible dispositivo que se encuentra conectado a una red, como por ejemplo un PC, aunque
PHP: Lenguaje de programación
Francisco J. Martín Mateos Carmen Graciani Diaz Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Tipos de datos Enteros Con base decimal: 45, -43 Con base octal: 043, -054
USO DE SUBRUTINAS, TRANSMISIÓN DE PARÁMETROS Y COMPILACIÓN CONDICIONAL EN C++
USO DE SUBRUTINAS, TRANSMISIÓN DE PARÁMETROS Y COMPILACIÓN CONDICIONAL EN C++ Bruno López Takeyas Instituto Tecnológico de Nuevo Laredo Reforma Sur 2007, C.P. 88250, Nuevo Laredo, Tamps. México http://www.itnuevolaredo.edu.mx/takeyas
Tema 14: Sistemas Secuenciales
Tema 14: Sistemas Secuenciales Objetivos: (CONTADORES) Introducción. Características de los contadores. Contadores Asíncronos. Contadores Síncronos. 1 INTRODUCCIÓN Los contadores son sistemas secuenciales
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
Sistemas Operativos I. Enxeñería Informática. Curso 2007/08. Práctica 2: Concurrencia de procesos: Productores/Consumidores.
Sistemas Operativos I. Enxeñería Informática. Curso 2007/08. Práctica 2: Concurrencia de procesos: Productores/Consumidores. En esta práctica se tratará de resolver el problema de los productores/consumidores
Modelo OSI y TCP/IP. Teleprocesamiento Ing. Zoila Marquez.
Modelo OSI y TCP/IP Teleprocesamiento Ing. Zoila Marquez. Modelo OSI El Modelo OSI divide en 7 capas el proceso de transmisión de la información entre equipo informáticos, donde cada capa se encarga de
MANUAL DE PROCEDIMIENTO PARA LA UTILIZACIÓN DEL SISTEMA CIFRADOC/CNMV/D
MANUAL DE PROCEDIMIENTO PARA LA UTILIZACIÓN DEL SISTEMA CIFRADOC/CNMV/D Versión 4.1. Abril 2006 SI_CIFD_MU_4.1. MANUAL DE PROCEDIMIENTO PARA LA UTILIZACION DEL SISTEMA CIFRADOC/CNMV/D El sistema CIFRADOC/CNMV,
Router Teldat. Protocolo NTP
Router Teldat Protocolo NTP Doc. DM728 Febrero, 2002 ÍNDICE Capítulo 1 Introducción...1 1. Introducción al Protocolo NTP... 2 2. Protocolo... 3 2.1. a) Formato de mensajes... 3 INDICADOR DE SALTO... 3
TEMA 7: Ficheros. TEMA 7: Ficheros. 7.1.-Concepto de fichero
TEMA 7: Ficheros 7.1.-Concepto de fichero Todas las estructuras de datos que hemos visto hasta ahora utilizan memoria principal. Esto tiene dos limitaciones importantes: 1. Los datos desaparecen cuando
Test : Conteste exclusivamente en una HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.
SISTEMAS INFORMÁTICOS I Junio 2003 INGENIERÍA EN INFORMÁTICA - Código Carrera 55 - Código Asignatura 077 Tipo de Examen: A NO SE PERMITE EL USO DE NINGÚN MATERIAL Tiempo: 2 horas Apellidos: Nombre: DNI:
Cómo instalar Estudio One SQL versión 2.30 en Sistema Operativo Windows de 64 bits
Pág. 1 de 7 El presente instructivo lo guiará para realizar la instalación de Estudio One SQL 2.30 en varias PCs (Terminales) conectadas en red a una PC Servidora (la PC que posee las bases de datos).
Bloque IV: El nivel de red. Tema 12: ICMP
Bloque IV: El nivel de red Tema 12: ICMP Índice Bloque IV: El nivel de red Tema 12: ICMP Introducción ICMP: Puerto inalcanzable ICMP: Fragmentación requerida Ping Traceroute Referencias Capítulo 4 de Redes
