Procesos. Módulo 3. Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco.
|
|
- Silvia Valdéz Poblete
- hace 6 años
- Vistas:
Transcripción
1 Procesos Módulo 3 Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco Procesos Concepto de Proceso Planificación de Proceso Operaciones sobre Procesos Comunicaciones Interprocesos (IPC) Ejemplos de Sistemas de IPC Comunicación en un Sistema Cliente- Servidor
2 Objetivos Introducir la noción de proceso un programa en ejecución, el cual conforma la base de toda computación Describir varias características de procesos, incluyendo planificación, creación y terminación, y comunicación Describir la comunicación en sistemas clienteservidor Concepto de Proceso Un SO ejecuta una variedad de programas: Sistema Batch jobs Sistemas de Tiempo Compartido programas de usuario o tareas Los términos job, tarea y proceso se usan con similar sentido. Proceso un programa en ejecución; la ejecución de los procesos debe progresar en forma secuencial. Un proceso incluye: contador de programa stack sección de datos
3 Procesos en Memoria datos texto Estado de los Procesos En tanto que un proceso ejecuta, cambia de estado nuevo: el proceso es creado. corriendo: las instrucciones están siendo ejecutadas. espera: el proceso está esperando que ocurra algún evento. listo: el proceso está esperando ser asignado a la CPU. terminado: el proceso ha finalizado su ejecución.
4 Diagrama de Estados de un Proceso nuevo listos evento completado despacho interrup espera corriendo evento e/s exit terminado Diagrama de Estados de un Proceso Diagrama con cinco estados nuevo react susp listos despacho evento comp interrup espera corriendo evento e/s susp exit terminado Susp-listo react evento comp Susp-esp
5 Bloque de Control de Procesos (PCB) Es una estructura de dato que contiene información asociada con cada proceso. Estado de Proceso Contador de Programa Registros de CPU Información de planificación de CPU Información de administración de memoria Información contable Información de estado E/S PCB: Process Control Block Bloque de Control de Proceso (PCB)
6 Conmutación de CPU de Proceso a Proceso ejecución P-0 SO interrupción o llamada al sistema P-1 salva estado en PCB-0. carga estado de PCB-1 ocioso ocioso ejecución interrupción o llamada al sistema salva estado en PCB-1. carga estado de PCB-0 ejecución ocioso Colas de Planificación de Procesos Cola de Job (o tareas) conjunto de todos los procesos en el sistema. Cola de listos conjunto de todos los procesos residentes en memoria principal, listos y esperando para ejecutar. Colas de dispositivos conjunto de procesos esperando por una E/S en un dispositivo de E/S. Migración de procesos entre las colas.
7 Colas de listos y de Dispositivos de E/S cola de listos inicio final reg reg cinta mag unidad 0 inicio final PCB-4 PCB-0 PCB-7 PCB-14 PCB-5 disco unidad 0 inicio final reg reg reg terminal unidad 0 inicio final reg PCB-6 Representación de Planificación de Procesos cola de listo cpu i/o join cola I/O ejecuta hijo cola espera cola recurso req I/O Expira tajada de tiempo fork hijo requiere recurso
8 Planificadores de Procesos Planificador de largo término ( o planificador de jobs ) selecciona que procesos deberían ser puestos en la cola de listos. Planificador de corto término (o planificador de CPU ) selecciona que procesos deberían ser proximamente ejecutados y colocados en la CPU. Planificación de mediano término fuera de swapping procesos parcialmente ejecutados al swapping entrada en swapping cola de listos CPU fin E/S cola de espera E/S
9 Planificadores de Procesos (Cont.) El planificador de corto término es invocado muy frecuentemente (milisegundos) (debe ser rápido). El planificador de largo término es invocado poco frecuentemente (segundos, minutos) (puede ser muy lento). El planificador de largo término controla el grado de multiprogramación. Los procesos pueden ser descriptos como: Procesos limitados por E/S pasa mas tiempo haciendo E/S que computaciones, ráfagas (burst) de CPU muy cortas. Procesos limitados por CPU pasa mas tiempo haciendo computaciones que E/S, ráfagas (burst) de CPU muy largas. Cambio de contexto Cuando la CPU conmuta a otro proceso, el sistema debe salvar el estado del viejo proceso y cargar el estado para el nuevo proceso vía un cambio de contexto. El contexto de un proceso está representado en el PCB El tiempo que lleva el cambio de contexto es sobrecarga; el sistema no hace trabajo útil mientras está conmutando. El tiempo depende del soporte de hardware.
10 Creación de Procesos Procesos padres crean procesos hijos, lo cuales, a su vez crean otros procesos, formando un árbol de procesos. Recursos compartidos Padres e hijos comparten todos los recursos. Hijo comparte un subconjunto de los recursos del padre. Padre e hijo no comparten ningún recurso. Ejecución Padres e hijos ejecutan concurrentemente. Padres esperan hasta que los hijos terminan. Creación de Procesos (Cont.) Espacio de direcciones El hijo replica el del padre. El hijo tiene un programa cargado en él. Ejemplos de UNIX La llamada a sistema fork crea un nuevo proceso La llamada a sistema execve es usada después del fork para reemplazar el espacio de memoria del proceso con un nuevo programa.
11 Creación de Procesos padre Se reactiva hijo Fork de Procesos en C int main() { pid_t pid; /* fork another process */ pid = fork(); if (pid < 0) { /* error occurred */ fprintf(stderr, "Fork Failed"); exit(-1); } else if (pid == 0) { /* child process */ execlp("/bin/ls", "ls", NULL); } else { /* parent process */ /* parent will wait for the child to complete */ wait (NULL); printf ("Child Complete"); exit(0); } }
12 Un Arbol de Procesos en Solaris Árbol de Procesos en UNIX
13 Terminación de Procesos El proceso ejecuta la última sentencia y espera que el SO haga algo (exit). Los datos de salida del hijo se pasan al padre (via wait). Los recursos de los procesos son liberados por el SO. El padre puede terminar la ejecución del proceso hijo (abort). El hijo ha excedido los recursos alocados. La tarea asignada al hijo no es mas requerida. El padre está terminando. El SO no permite a los hijos continuar si su padre termina. Terminación en cascada. Comunicación Interprocesos (IPC) Los procesos en un sistema pueden ser independientes o cooperativo Los procesos cooperativos pueden afectar o ser afectados por otros procesos, cuando incluyen datos compartidos Razones para procesos cooperativos Información compartida Speedup de computación Modularidad Conveniencia Los procesos cooperativos necesitan comunicación interprocesos (IPC) Dos modelos de IPC Memoria compartida Pasaje de Mensajes
14 Modelos de Comunicación Pasaje de mensajes Memoria compartida proceso A proceso B proceso A memoria compartida proceso B kernel kernel Procesos Cooperativos Un proceso independiente no puede afectar ni ser afectado por la ejecución de otro proceso. Un proceso cooperativo puede afectar o ser afectado por la ejecución de otro proceso. Ventajas de los procesos cooperativos Información compartida Aceleración de la computación Modularidad Conveniencia
15 Problema del Productor-Consumidor Paradigma procesos cooperativos, el proceso productor produce información que es consumida por un proceso consumidor. buffer ilimitado - no tiene límites prácticos en el tamaño del buffer. buffer limitado supone que hay un tamaño fijo de buffer. Buffer limitado Solución con memoria compartida Datos compartidos var n; type item = ; var buffer. array [0..n 1] of item; in, out: 0..n 1; Proceso Productor repeat produce un item en nextp while in+1 mod n = out do no-op; buffer [in] :=nextp; in :=in+1 mod n; until false;
16 Buffer limitado Solución con memoria compartida Datos compartidos #define BUFFER_SIZE 10 typedef struct {... } item; item buffer[buffer_size]; int in = 0; int out = 0; Buffer limitado (cont.) Proceso Consumidor repeat while in = out do no-op; nextc := buffer [out]; out := out+1 mod n; consume un item en nextc until false; La solución es correcta, pero solo puede llenar el buffer hasta n 1. 32
17 Buffer limitado - Productor while (true) { /* Produce un item */ } while (((in = (in + 1) % BUFFER SIZE count) == out) ; /* no hace nada -- no hay buffers libres */ buffer[in] = item; in = (in + 1) % BUFFER SIZE; Buffer limitado Consumidor while (true) { while (in == out) ; // do nothing --/* nada a consumir */ /* remueve un item del buffer*/ item = buffer[out]; out = (out + 1) % BUFFER SIZE; return item; }
18 Comunicación entre Procesos (IPC) Mecanismo de los procesos para comunicarse y sincronizar sus acciones. Sistema de mensajes los procesos se comunican uno con otro sin necesidad de variables compartidas. Las facilidades de IPC provee dos operaciones: send(mensaje) mensaje de tamaño fijo o variable receive(mensaje) Si P and Q desean comunicarse, necesitan: Establecer un vínculo de comunicación entre ellos Intercambiar mensajes via send/receive Implementación de un vínculo de comunicación lógico (p.e., propiedades lógicas) físicol (p.e., memoria compartida, canal hardware) Preguntas sobre la Implementación Cómo se establecen los vínculos? Puede un vínculo ser asociado con mas de dos procesos? Cuántos vínculos puede haber entre cada par de procesos que se comunican? Cuál es la capacidad de un vínculo? El vinculo puede aceptar tamaño de mensajes fijo o variable? Es vínculo unidireccional o bi-direccional?
19 Comunicación Directa Los procesos deben nombrar al otro explicitamente: send (P, mensaje) envía un mensaje al proceso P receive(q, mensaje) recibe un mensaje del proceso Q Propiedades del vínculo de comunicación Los vínculos son establecidos automaticamente. Un vínculo está asociado con exactamente un par de procesos que se comunican. Entre cada par existe exactamente un vínculo. El vínculo puede ser unidireccional, pero es usualmente bi-direccional. Comunicación Indirecta Los mensajes son dirigidos y recibidos desde mailboxes (también referidas como ports). Cada mailbox tiene una única identificación. Los procesos pueden comunicarse solo si comparten un mailbox. Propiedades de un vínculo de comunicación El vínculo se establece solo si los procesos comparten un mailbox común. Un vínculo puede ser asociado con muchos procesos. Cada par de procesos puede compartir varios vínculos de comunicación. Los vínculos pueden ser unidireccionales o bi-direccionales.
20 Comunicación Indirecta (cont.) Operaciones crear un nuevo mailbox enviar y recibir mensajes por medio del mailbox destruir un mailbox Las primitivas son definidas como: send(a, mensaje) envía un mensaje al mailbox A receive(a, mensaje) recibe un mensaje del mailbox A Comunicación Indirecta (cont.) Mailbox compartida P 1, P 2, y P 3 comparten el mailbox A. P 1, envía; P 2 y P 3 reciben. Quién toma el mensaje? Solución Permitir que un vínculo está asociado a lo sumo con dos procesos. Permitir que un solo proceso a la vez ejecute la operación receive. Permitir que el sistema seleccione arbitrariamente el receptor. El enviador es notificado quien fue el receptor del mensaje.
21 Sincronización El pasaje de mensajes puede ser bloqueante o no bloqueante. Bloqueante es considerado sincrónico Send bloqueante mantiene al enviador bloqueado hasta que el mensaje es recibido Receive bloqueante mantiene al receptor bloqueado hasta que el mensaje esté disponible No bloqueante es considerado asincrónico Send no bloqueante: el emisor envía el mensaje y continúa Receive no bloqueante : el receptor recibe un mensaje válido o nulo Buffering La cola de mensajes asociada al vínculo se puede implementar de tres maneras. 1. Capacidad 0 mensajes El enviador debe esperar por el receptor (rendezvous). 2. Capacidad limitada longitud finita de n mensajes El enviador debe esperar si el vínculo está lleno. 3.Capacidad ilimitada longitud infinita El enviador nunca espera.
22 Ejemplos de Sistemas IPC - POSIX Memoria compartida POSIX El proceso primero crea un segmento de memoria compartida segment id = shmget(ipc PRIVATE, size, S IRUSR S IWUSR); El proceso que quiere acceder a la memoria compartida debe adjuntarse a ella shared memory = (char *) shmat(id, NULL, 0); Ahora el proceso puede escribir en la memoria compartida sprintf(shared memory, "Writing to shared memory"); Finalizado el proceso debe liberar a su espacio de direcciones del la memoria compartida shmdt(shared memory); Ejemplos de Sistemas IPC - Mach La comunicación en Mach está basada en mensajes Las llamadas a sistema son mensajes Desde su creación cada proceso tiene dos mailbox Kernel y Notify Se necesitan solo tres llamadas a sistema para transferir mensajes msg_send(), msg_receive(), msg_rpc() Las mailbox necesarias para la comunicación, son creadas vía: port_allocate()
23 Ejemplos de Sistemas IPC Windows XP Centrado en el pasaje de mensajes vía facilidades de llamadas a procedimientos locales (local procedure call (LPC) ) Sólo funciona entre procesos sobre el mismo sistema Usa pórticos (como mailboxes) para establecer y mantener canales de comunicación La comunicación funciona de la siguiente manera: El cliente abre un handle del pórtico del subsistema de conexión El cliente envía una petición de conexión El servidor crea dos pórticos privados de comunicación y retorna el handle de uno de ellos al cliente El cliente y el servidor usan el correspondiente handle del pórtico para enviar mensajes o retornos y para escuchar por réplicas Llamadas a Procedimientos Locales en Windows XP
24 Comunicación Cliente-Servidor Sockets Llamadas a Procedimientos Remotors (RPC:Remote Procedure Calls) Invocación a Métodos Remotos (RMI:Remote Method Invocation (Java)) Sockets Un socket es definido como un punto final de comunicación. Concatenación de dirección IP y pórtico El socket :1625 se refiere al pórtico 1625 en el host La comunicación se lleva a cabo entre un par de sockets.
25 Comunicación por Sockets Llamadas a Procedimientos Remotos (RPC: Remote Procedure Calls) Las RPCs produce una llamada a procedimiento entre procesos sobre un sistema de redes. Stubs proxy del lado del cliente y del lado del procedimiento del servidor. El stub del lado del cliente localiza el servidor y hace marshall de los parámetros. El stub del lado del servidor recibe este mensaje, desempaca los parámetros y ejecuta el procedimiento en el servidor.
26 Ejecución de RPC Invocación de Métodos Remotos (RMI) RMI es un mecanismo de Java similar a los RPCs. RMI permite a un programa Java, sobre una máquina, invocar un método sobre un objeto remoto.
27 Marshalling de Parámetros Fin Módulo 3 Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco
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
Más detalles3.- Procesos. Concepto de Proceso. Despacho (calendarización) de Procesos. Operaciones en Procesos. Procesos en cooperación
3.- Procesos Despacho (calendarización) de Procesos Operaciones en Procesos Procesos en cooperación Compunicación Interprocesos Communicación en sistemas Cliente-Servidor Sistema de Batch jobs Sistema
Más detallesSistemas 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 detallesHilos. Módulo 4. Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco. Hilos
Hilos Módulo 4 Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco Hilos Revisión Modelos Multihilados Librerías de Hilos Aspectos sobre Hilos Ejemplos
Más detallesMódulo 2 Comunicación
Sistemas Distribuidos Módulo 2 Comunicación Facultad de Ingeniería Departamento de Informática Universidad Nacional de la Patagonia San Juan Bosco Comunicación en Sistemas Distribuidos Modelos de Comunicaciones
Más detallesHilos. Módulo 4. Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur
Hilos Módulo 4 Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Chapter 4: Threads Revisión Modelos Multihilados Librerías de Hilos Aspectos sobre Hilos Ejemplos de
Más detallesConcurrencia, 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 detallesProcesos 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).
Más detallesComunicació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 detallesConcurrencia: 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 detallesHilos 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 detallesParticipantes: 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 detallesFacultad 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 detallesTema 4: Gestión de Procesos
Tema 4: Gestión de Procesos SSOO - Curso 2005/06 E. Domínguez C. Villarrubia Departamento de Tecnologías y Sistemas de Información Escuela Superior de Informática Universidad de Castilla - La Mancha Marzo
Más detallesSISTEMAS OPERATIVOS: PROCESOS. Planificación de procesos
SISTEMAS OPERATIVOS: PROCESOS Planificación de procesos ADVERTENCIA 2 Este material es un simple guión de la clase: no son los apuntes de la asignatura. El conocimiento exclusivo de este material no garantiza
Más detallesManipulació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
Más detallesCap.2. Kernel Sistemas Operativos - Viña del Mar.
Cap.2. Kernel Sistemas Operativos - Viña del Mar. Maximiliano Osorio mosorio@inf.utfsm.cl Universidad Técnica Federico Santa Maria 19 de agosto de 2017 1 / 44 Tabla de contenidos 1 Proceso Protección de
Más detallesIntroducció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 detallesTaller de Sistemas Operativos. Procesos 2012
Taller de Sistemas Operativos Procesos 2012 Agenda Introducción PCB (task_struct) Agrupaciones de procesos Estado de un proceso Cambio de proceso (task switch) Creación y destrucción de un proceso Threads
Más detallesNecesidad 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 detallesTema 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 detallesConcurrencia en UNIX / LINUX. Introducción: Procesos e Hilos POSIX
Concurrencia en UNIX / LINUX Introducción: Procesos e Hilos POSIX El estándar POSIX POSIX: Interfaz de sistemas operativos portables. Basado en UNIX A pesar de que UNIX es ya de por sí estándar, había
Más detallesSistemas 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
Más detallesHilos. 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 detallesTema 2. Administración de procesos
Sistemas Operativos Tema 2. Administración de procesos Objetivo: El alumno identificará los tipos de procesos y sus estados. Describirá las diferentes técnicas de comunicación y sincronización de procesos
Más detallesInterbloqueos. 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
Más detalles- 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
Más detallesConcurrencia 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 detallesSISTEMAS OPERATIVOS: Lección 4: Planificación de Procesos
SISTEMAS OPERATIVOS: Lección 4: Planificación de Procesos Jesús Carretero Pérez Alejandro Calderón Mateos José Daniel García Sánchez Francisco Javier García Blas José Manuel Pérez Lobato María Gregoria
Más detallesCuestionario 1-Parte 1
Cuestionario 1-Parte 1 Sistemas Operativos José Antonio Méndez Barrios 201118720 1. Qué es un Sistema Operativo? Programa que controla la ejecución de los programas de aplicación y que actúa como interfaz
Más detallesConcurrencia: 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 detallesIntroducció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 detallesUnidad 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 detallesSistemas Operativos. Grado Ingeniería Informática. TGR Procesos.
Sistemas Operativos. Grado Ingeniería Informática. TGR Procesos. 1.-Considerar los siguientes procesos con los tiempos de llegadas, prioridades y ráfagas de cpu. Proceso Ráfaga de CPU Prioridad Tiempo
Más detallesSistemas Operativos. Curso 2016 Procesos
Sistemas Operativos Curso 2016 Procesos Agenda Proceso. Definición de proceso. Contador de programa. Memoria de los procesos. Estados de los procesos. Transiciones entre los estados. Bloque descriptor
Más detallesUsando 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 detallesTema 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 edfrancom@ipn.mx
Más detallesTema 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 detallesMessage Passing Interface (MPI)
Message Passing Interface (MPI) INTRODUCCIÓN MPI (Message Passing Interface) como es un interfaz estandarizada para la realización de aplicaciones paralelas basadas en pasaje de mensajes. El modelo de
Más detallesEl kernel forma parte del sistema operativo, para ser más claros es el núcleo, la parte más importante.
El kernel forma parte del sistema operativo, para ser más claros es el núcleo, la parte más importante. Cuando arrancas un ordenador con cualquier sistema operativo, el Kernel se carga en memoria y permanece
Más detallesTarea 2. Descripción y Control de Procesos
1 Tarea 2. 1. En qué consiste una traza de instrucciones? Consiste en listar las secuencias de instrucciones que ejecuta cada proceso. El procesador puede caracterizarse mostrando la forma en que intercalan
Más detallesPARADIGMA 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 detallesLa función de un SO en los sistemas de I/O, es manejar y controlar las operaciones y los dispositivos de I/O.
Sistemas de I/O pagina 1 de 5 Sistemas de Entrada/Salida Las aplicaciones utilizan los dispositivos (devices) para realizar la I/O (entrada-salida). Estos dispositivos son variados y trabajan de manera
Más detalles1. Sistema Operativo Unix
. Sistema Operativo Unix. Introducción al S.O. Unix y su entorno.2 Subsistema de Archivos.3 Subsistema de Procesos.4 Políticas de Gestión de Memoria Dpto. Lenguajes y Sistemas Informáticos. Universidad
Más detallesTipos 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
Más detallesSistemas Operativos. Pedro Cabalar TEMA III. PROCESOS. Depto. de Computación Universidade da Coruña
Sistemas Operativos Pedro Cabalar Depto. de Computación Universidade da Coruña TEMA III. PROCESOS. P. Cabalar Sistemas( Operativos Depto. de Computación Universidade Tema da Coruña III. Procesos ) 1 /
Más detallesInterfaz de Socket. Agustín J. González ELO309 ELO309 1
Interfaz de Socket Agustín J. González ELO309 ELO309 1 Introducción Cómo las aplicaciones se comunican con la familia de protocolos de software y así logran comunicación con aplicaciones remotas? La interfaz
Más detalles*** 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 detalles1.1 Concepto y definición de Sistemas Operativos
1.1 Concepto y definición de Sistemas Operativos Un Sistema Operativo es una parte importante de cualquier sistema de computación. Un sistema de computación puede dividirse en cuatro componentes: el hardware,
Más detallesFunciones POSIX III Funciones POSIX III. No Nombrados Nombrados. sem_open sem_open. sem_close sem_close. sem_unlink sem_unlink
Funciones POSIX III Funciones POSIX III Sincronización Sincronización Procesos Procesos Semáforos Semáforos (sem_t) (sem_t) Sincronización Sincronización Threads Threads Mutex Mutex (pthread_mutex_t) (pthread_mutex_t)
Más detallesNombre 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 detallesSistemas Operativos. Estructura de los sistemas operativos
Sistemas Operativos Estructura de los sistemas operativos Agenda Componentes de un sistema operativo. Servicios del sistema operativo (system services). Llamados a sistema (system calls). Estructura del
Más detallesProgramació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 detallesComponentes de un S.O.
Componentes de un S.O. En Particular Minix está dividido en módulos 1) MicroKernel 2) Tareas E/S 3) Procesos Servidores 4) Procesos de Usuarios Son módulos independientes Para arquitectura FLYNN - SISD
Más detallesSISTEMAS. Ciclo 2014 Plan 2012
Lic. en Sistemas de Información SISTEMAS OPERATIVOS Ciclo 2014 Plan 2012 UNIDAD 2 (Parte A) PROCESOS y PLANIFICADOR DEL PROCESADOR ING. AGUILERA SERGIO OMAR ALGUNOS CONCEPTOS PROGRAMA: CONJUNTO DE OPERACIONES
Más detallesComunicación entre Procesos
Universidad Simón Bolívar Departamento de Computación y T.I Sistemas de operación III CI-4822 Comunicación entre Procesos por pase de mensajes Prof. Yudith Cardinale Ene - Mar 2011 Introducción Comunicación
Más detallesSistemas 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
Más detallesComunicación en Sistemas Distribuidos
Sistemas de Operación II Comunicación en Sistemas Distribuidos Prof. Carlos Figueira Basado en material de Yudith Cardinale (USB) Andrew Tanembaum y Marteen van Steen Contenido Protocolos de Comunicación
Más detallesSincronización de Procesos. Módulo 6. Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur. Sincronización de Procesos
Sincronización de Procesos Módulo 6 Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Sincronización de Procesos Fundamentos El Problema de la Sección Crítica La Solución
Más detallesSistemas Distribuidos. Soporte de Sistemas Operativos
Soporte de Sistemas Operativos Soporte de Sistemas Operativos Soporte de Sistemas Operativos Soporte de Sistemas Operativos Tareas principales de un SO: Administrar recursos Proveer abstracciones de los
Más detallesConceptos de Planificación
Conceptos de Planificación Conceptos de Planificación Planificación Planificación de Procesos de Procesos Algoritmos Algoritmos Estructura Estructura Propiedades Propiedades Tipos Tipos Evaluación Evaluación
Más detallesCONCURRENCIA. 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 detallesCapítulo 2. Sistemas Operativos. Elementos, estructura y funciones generales.
Capítulo 2. Sistemas Operativos. Elementos, estructura y funciones generales. 1. Concepto de Sistema Operativo. 2. Evolución histórica. 3. Tipos de Sistemas Operativos. 4. Estructura de un Sistema Operativo.
Más detallesFacultad de Ingeniería Industrial y de Sistemas v1.0 MA781U PROCESOS DISTRIBUIDOS
PROCESOS DISTRIBUIDOS Preparado por: Angel Chata Tintaya (angelchata@hotmail.com) Resumen El proceso cliente servidor es la clave para comprender el potencial de los sistemas de información y las redes
Más detallesMemoria Virtual. Operating System Concepts 8th Edition
Memoria Virtual Silberschatz, Galvin and Gagne 2009 Memoria Virtual Antecedentes Demanda de paginación Copy-on-Write Algoritmos de reemplazo de páginas 9.2 Objetivos Describir los beneficios del sistema
Más detallesIntroducción a los Sistemas Operativos
Introducción a los Sistemas Operativos Indice Conceptos sobre ordenadores Concepto de Sistema Operativo Historia de los SO Multiprogramación Administración CPU Memoria Entrada/Salida Estados de un proceso
Más detallesProcesos e Hilos en C
Procesos e Hilos en C 6 de febrero de 2012 En esta sesión vamos a escribir programas en lenguaje C que utilicen hilos y procesos para comparar el rendimiento del sistema ante la gestión de unos y otros.
Más detallesMaterial 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 detallesPaso de mensajes. Gustavo Romero López. 15 de mayo de Arquitectura y Tecnología de Computadores
Paso de mensajes Gustavo Romero López Arquitectura y Tecnología de Computadores 15 de mayo de 2017 Gustavo Romero López Paso de mensajes 1 / 66 Índice 1 Introducción 2 IPC elemental 3 IPC de alto nivel
Más detallesdit Programación concurrente Sincronización condicional UPM
20151028 dit UPM Programación concurrente Sincronización condicional Juan Antonio de la Puente Algunos derechos reservados. Este documento se distribuye bajo licencia Crea9ve Commons
Más detallesSistemas 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 detallesRMI. Aplicaciones Distribuidas
RMI Aplicaciones Distribuidas Contenido Objetos Distribuidos y RMI. Interface Remota. Clase Implementación. Referencias Remotas. Registro RMI. Paso de parámetros. Descarga dinámica de código. Desarrollo
Más detallesDeclaración. Introducción. Definición o implementación. Llamada. Un programa en C consta de una o más funciones.
Dpto. de ATC, Universidad de Sevilla - Página 1 de 5 1 2 Introducción Declaración Un programa en C consta de una o más funciones. La función main es la primera función que se ejecuta y que llama a las
Más detallesPrimitivas de Sincronización (continuación) MONITORES: Primitiva de alto nivel, es a nivel de lenguajes como: ADA, PASCAL, JAVA.
Primitivas de Sincronización (continuación) MONITORES: Primitiva de alto nivel, es a nivel de lenguajes como: ADA, PASCAL, JAVA. Carácterísticas: Construcción de alto nivel. Estructura de datos estática:
Más detallesSISTEMAS 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 detallesSistemas Operativos. ( ) Mg. Karina M. Cenci Departamento de Ciencias e Ingeniería de la Computación
Sistemas Operativos (16-5949) Mg. Karina M. Cenci kmc@cs.uns.edu.ar Departamento de Ciencias e Ingeniería de la Computación Objetivos del Curso de Sistemas Operativos El curso desarrolla los conocimientos
Más detallesUnidad 1: Conceptos generales de Sistemas Operativos.
Unidad 1: Conceptos generales de Sistemas Operativos. Tema 2: Estructura de los stmas de computación. 2.1 Funcionamiento de los sistemas de computación. 2.2 Ejec. de instrucciones e interrupciones y estructura
Más detallesCapítulo 2 Introducción a los sistemas operativos
Sistemas operativos: una visión aplicada Capítulo 2 Introducción a los sistemas operativos Contenido Qué es un sistema operativo? Arranque del computador Componentes y estructura de un sistema operativo
Más detallesSOLUCIONES. Universidad de Las Palmas de Gran Canaria Escuela Universitaria de Informática Facultad de Informática
Universidad de Las Palmas de Gran Canaria Escuela Universitaria de Informática Facultad de Informática Sistemas Operativos Examen Parcial, 7 de mayo de 2005 Nombre SOLUCIONES Dispone de tres horas para
Más detallesComunicació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
Más detallesMejoras en el planificador de procesos de Linux en la versión 2.6.0
Mejoras en el planificador de procesos de Linux en la versión 2.6.0 Linux 2.6.0 he hecho mejoras significativas en el planificador de procesos en la versión 2.6.0. No solamente los procesos son planificados
Más detallesNÚCLEO PARA UN LENGUAJE DISTRIBUIDO EN UN ENTORNO UNIX
UNIVERSIDAD POLITÉCNICA DE MADRID FACULTAD DE INFORMÁTICA NÚCLEO PARA UN LENGUAJE DISTRIBUIDO EN UN ENTORNO UNIX TRABAJO DE FIN DE CARRERA TUTOR: RICARDO JIMÉNEZ PERIS AUTOR: JESÚS MANUEL MILÁN FRANCO
Más detalles5 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 detallesSistemas Operativos Practica 1: procesos y concurrencia.
Sistemas Operativos Practica 1: procesos y concurrencia. Objetivos: Introducir al alumno a los conceptos de programa, concurrencia, paralelismo y proceso o tarea. Manejo del concepto de concurrencia haciendo
Más detallesSistemas Operativos Tema 5. Procesos. 1998-2012 José Miguel Santos Alexis Quesada Francisco Santana
Sistemas Operativos Tema 5. Procesos 1998-2012 José Miguel Santos Alexis Quesada Francisco Santana 1 Contenidos Concepto de proceso Estructuras de datos: BCP y colas de procesos Niveles de planificación
Más detallesSistemas Operativos Procesos Descripción y Control
Sistemas Operativos Procesos Descripción y Control Prof. Dr. Wenceslao Palma M. Gran parte de las acciones de un Sistema Operativo giran en torno a los procesos. El sistema operativo
Más detallesAPUNTES SOBRE PROCESOS Y DEADLOCK CONCEPTO DE PROCESO 1
APUNTES SOBRE PROCESOS Y DEADLOCK Alejandro Bia PROCESO CONCEPTO DE PROCESO 1 - En 1960 (proyecto "Multics") surge concepto de proceso. Definiciones breves: - Programa en ejecución. - Entidad lógica a
Más detallesPARTE II PROGRAMACION CON THREADS EN C
PARTE II PROGRAMACION CON THREADS EN C II.1 INTRODUCCION Una librería o paquete de threads permite escribir programas con varios puntos simultáneos de ejecución, sincronizados a través de memoria compartida.
Más detallesTEMA 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 detallesSistemas Operativos. Paso de Mensajes. Direccionamiento de Mensajes. Sincronización de mensajes. Mensajes permiten: Paso de Mensajes
Paso de Mensajes Sistemas Operativos Paso de Mensajes Mario Medina (mariomedina@udec.cl) Mensajes permiten: Sincronización de procesos Comunicación entre procesos Aptos para: Beware of bugs in the above
Más detallesTEMA 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 detalles06/06/2017. Hay varios niveles para expresar concurrencia: Nivel de Instrucción Nivel de Sentencia Nivel de Unidad Nivel de Programa
1 Hay varios niveles para expresar concurrencia: Nivel de Instrucción Nivel de Sentencia Nivel de Unidad Nivel de Programa 2 Hay varios niveles para expresar concurrencia: Nivel de Instrucción Nivel de
Más detallesFundamentos de los Sistemas Operativos. Tema 1. Conceptos generales Estructura del sistema operativo ULPGC - José Miguel Santos Espino
Fundamentos de los Sistemas Operativos Tema 1. Conceptos generales Estructura del sistema operativo 2015 ULPGC - José Miguel Santos Espino Contenido Componentes del S.O. Programas del sistema El núcleo
Más detallesParadigma 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:
Más detallesTema 1: Introducción a los Sistemas Operativos
Tema 1: Introducción a los Sistemas Operativos Yolanda Blanco Fernández yolanda@det.uvigo.es Qué es un Sistema Operativo (SO)? Un programa que actúa como intermediario entre el usuario y el hardware del
Más detallesCOMUNICACIÓN Sistemas Distribuidos
COMUNICACIÓN Sistemas Distribuidos Alvaro Ospina Sanjuan Universidad Pontificia Bolivariana Medellín 2010 Agenda Comunicación centralizada y distribuida Protocolos con capas Modelo cliente servidor Sockets
Más detallesUNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE CIENCIAS PRACTICA DE PROCESOS HERRAMIENTAS
UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE CIENCIAS PRACTICA DE PROCESOS HERRAMIENTAS Caso 1: 1.- Necesitamos un cd o Dvd para grabar alguna de las versiones de livecd de Linux. 2.- Liga de una
Más detallesThreads. Hilos - Lightweight process - Procesos ligeros
Threads Hilos - Lightweight process - Procesos ligeros 1 Temario Concepto y Beneficios Estructuras de implementación: Servidor- Trabajador, Equipo, Pipeline Reconocimiento: En el espacio del usuario /
Más detallesExamen Final de Teoría. Grupo de teoría:
Preguntas Cortas (2 puntos) 1. Respecto a la optimización de gestión de memoria CoW, explica brevemente: a. Qué soporte hardware utiliza el sistema para poder implementarla? b. Qué permisos aplica el sistema
Más detalles