Paradigma de paso de mensajes
|
|
- Nicolás Martin Guzmán
- hace 7 años
- Vistas:
Transcripción
1 Paradigma de paso de mensajes Curso
2 Índice Visión lógica del paradigma de paso de mensajes. Operaciones básicas en paso de mensajes. Operaciones bloqueantes. Operaciones no bloqueantes. MPI: the Message Passing Interface. Casos reales: Intel Paragon y Meiko CS-2.
3 Visión lógica del paradigma de paso de mensajes Espacio de memoria distribuido: p procesadores, cada uno con su espacio de direcciones exclusivo. Es preciso un reparto de los datos de entrada a cada procesador. Conlleva más dificultas y trabajo manual, pero favorece el principio de proximidad espacial: crítico en sistemas NUMA. Toda comunicación implica dos procesadores: El procesador que envía los datos tiene que gestionar la comunicación aunque no tenga implicación directa en el cálculo del procesador destino. La necesidad de sincronización dificulta la programación. Paralelismo explícito: La tarea de descomposición y paralelización de código se hace de forma manual por el programador: tiende a ser complicado.
4 Operaciones básicas en paso de mensajes Si P0 tiene un HW dedicado de comunicaciones, la transmisión se puede realizar tras la modificación de a, recibiendo P1 un valor incorrecto: Problemas de sincronización.
5 Operaciones básicas en paso de mensajes A la hora de evitar problemas de sincronización, se establecen dos mecanismos de comunicación: Operaciones bloqueantes: Cuando un procesador encuentra una operación de comunicación, se bloquea hasta que acaba de realizarse. Degrada el rendimiento. Operaciones no-bloqueantes: Cuando un procesador encuentra una operación de comunicación, sigue adelante protegiendo la información que se va a trasmitir, hasta que dicha operación se produce.
6 Operaciones bloqueantes sin buffer Si el emisor y el receptor ejecutan la operación de comunicación en instantes próximos, el rendimiento es bueno. Sin embargo, si ambos la ejecutan con una cierta diferencia temporal, el rendimiento se degrada mucho. Esta es la situación normal en entornos asíncronos.
7 Operaciones bloqueantes sin buffer: Interbloqueos P0 P1 send (&a, 1, 1); send (&a, 1, 0); receive (&b, 1, 1); receive (&b, 1, 0); En operaciones bloqueantes sin buffer, se pueden producir situaciones de interbloqueo. Los dos procesos se suspenden indefinidamente. La reorganización del código para evitar estas situaciones hace que los programas sean complejos.
8 Operaciones bloqueantes con buffer Con HW dedicado Sin HW dedicado (copia directa a buffer destino) Cuando el emisor encuentra una operación de comunicación, copia los datos a un buffer. Al acabar esta copia, continúa con la ejecución normal, sin riesgo de datos.
9 Operaciones no-bloqueantes sin buffer En las operaciones no bloqueantes, el emisor realiza una petición de comunicación, y sigue la ejecución normal. En esta etapa, las variables comunicadas están protegidas. Cuando el receptor está listo, manda una interrupción y se produce la comunicación. Al final de la comunicación, las variables comunicadas dejan de estar protegidas y son modificables.
10 Operaciones no-bloqueantes con buffer En las operaciones no-bloqueantes con buffer, el emisor inicia una operación de DMA (hacia el buffer) y regresa inmediatamente a la ejecución normal del proceso. Los datos pasan a ser seguros (desprotegidos) en el momento en que la operación de DMA se completa (se han escrito en el buffer). El receptor inicia un proceso de comunicación desde el buffer inicial al propio. Ventaja frente a operación no-bloqueante sin buffer: Los datos están protegidos durante menos tiempo, ya que se liberan en cuanto se almacenan en el buffer. Ventaja frente a operación bloqueante con buffer: La tarea de escritura en buffer se realiza por DMA y la CPU queda libre para continuar con la ejecución normal inmediatamente.
11 MPI: the Message Passing Interface Inicialmente, cada fabricante proporcionaba un conjunto de rutinas paralelas propias. La falta de estandarización producía muchos problemas a la hora de portar código, por lo que se llevaron a cabo varias iniciativas de integración. Una de estas iniciativas dio lugar a MPI. MPI define una biblioteca estándar para el paso de mensajes, que puede ser utilizada a la hora de desarrollar programas portables en lenguajes estándar como C o Fortran. Consta de 125 rutinas, pero todo programa se puede escribir en función de únicamente 6:
12 Operaciones de comunicación estándar en MPI
13 Ejemplo de programa SPMD en MPI #include <stdio.h> #include <string.h> #include mpi.h main (int argc, char* argv[]) { int my_rank; /* Id del procesador que ejecuta el proceso */ int p; /* Número de procesadores accesibles */ int source; int dest; int tag=0; /* Id de la comunicación */ char message[100]; /* Mensaje con valor inicial */ MPI_Status status; } MPI_Init (&argc, &argv); MPI_Comm_rank (MPI_COMM_WORLD, &my_rank); MPI_Comm_size (MPI_COMM_WORLD, &p); if (my_rank!= 0) { sprintf (message, Saludos del proceso %d!, my_rank); dest = 0; MPI_Send (message, strlen(message+1), MPI_CHAR, dest, tag, MPI_COMM_WORLD); } else for (source=1; source<p; source++) { MPI_Recv(message, 100, MPI_CHAR, source, tag, MPI_COMM_WORLD, &status); printf ( %s \n, message); } MPI_Finalize();
14 Organización orientada a paso de mensajes Cada nodo suele tener un procesador de comunicación dedicado (CP) que realiza las transferencias ordenadas por el procesador principal a través del interfaz de red (IN).
15 Caso real: Intel Paragon Cada nodo contiene 2 ó más procesadores i860xp a 50 MHz, un interfaz de red, memoria de 16 ó 32 Mb, bus de 64 bits a 400 Mb/s y dos unidades de DMA para transferencia rápida.
16 Caso real: Meiko CS-2 El CP (procesador de comunicaciones), se descompone en varios procesadores físicos dedicados para ejecutar comandos de I/O (cmd), gestionar las entradas y salidas (out, in, reply), los eventos (event) y la traducción de direcciones (V P).
Message 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 detallesProgramación en Entornos Paralelos: MPI
1-11 Marzo de 2017 FACET -UNT Programación en Entornos Paralelos: MPI Graciela Molina mgracielamolina@gmailcom TRADICIONALMENTE Procesamiento secuencial 2 TRADICIONALMENTE Procesamiento secuencial Si ya
Más detallesProcesamiento Paralelo
Procesamiento Paralelo Introducción a MPI Javier Iparraguirre Universidad Tecnológica Nacional, Facultad Regional Bahía Blanca 11 de Abril 461, Bahía Blanca, Argentina jiparraguirre@frbb.utn.edu.ar http://www.frbb.utn.edu.ar/hpc/
Más detallesSISTEMAS PARALELOS Y DISTRIBUIDOS. 3º GIC. PRÁCTICA 9 Departamento de Arquitectura y Tecnología de Computadores Universidad de Sevilla
SISTEMAS PARALELOS Y DISTRIBUIDOS. 3º GIC. PRÁCTICA 9 Departamento de Arquitectura y Tecnología de Computadores Universidad de Sevilla PROGRAMACIÓN DE COMPUTADORES DE MEMORIA DISTRIBUIDA USANDO MPI. PREPARACIÓN
Más detallesInterfaz de Paso de Mensajes MPI. Christian Chinchilla Brizuela
Interfaz de Paso de Mensajes MPI Christian Chinchilla Brizuela Agenda Definición Objetivo principal MPI Historia Ventajas Desventajas Estructura MPI Programa MPI Llamadas de MPI Funciones Principales MPI
Más detallesMPI es un estándar de programación en paralelo mediante paso de mensajes que permite crear programas portables y eficientes.
Programación paralela en MPI MPI es un estándar de programación en paralelo mediante paso de mensajes que permite crear programas portables y eficientes. Introducción a MPI MPI fue creado en 1993 como
Más detallesUNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INFORMÁTICA INGENIERÍA EN INFORMÁTICA. ARQUITECTURA DE COMPUTADORES II 19 de junio de 2007
UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INFORMÁTICA INGENIERÍA EN INFORMÁTICA. ARQUITECTURA DE COMPUTADORES II 19 de junio de 2007 Para la realización del presente examen se dispondrá de 2 1/2
Más detallesComputacion de Alto Performance
Computacion de Alto Performance Abraham Zamudio Abraham Zamudio Computacion de Alto Performance 1/47 Indice 1 Algunos Aspectos Teoricos 2 Paralelismo Computacional 3 Linux Cluster Hardware Software 4 MPICH
Más detallesTaller de Programación Paralela
Taller de Programación Paralela Departamento de Ingeniería Informática Universidad de Santiago de Chile April 17, 2008 Motivación Programar aplicaciones paralelas no es una tarea trivial. Paralelismo
Más detallesProcesamiento Paralelo
Procesamiento Paralelo MPI - Tipos y Topologías Javier Iparraguirre Universidad Tecnológica Nacional, Facultad Regional Bahía Blanca 11 de Abril 461, Bahía Blanca, Argentina jiparraguirre@frbb.utn.edu.ar
Más detallesParalelismo. MPI Paso de mensajes. Francisco García Sánchez Departamento de Informática y Sistemas
Paralelismo MPI Paso de mensajes Francisco García Sánchez Departamento de Informática y Sistemas Contenido Introducción 1) Uso de MPI 2) Multiplicación de matrices 3) Ordenación por mezcla 4) Programación
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 detallesMPI y sus aplicaciones en infraestructuras Grid
MPI y sus aplicaciones en infraestructuras Grid Dr. Isabel Campos Plasencia Instituto de Física de Cantabria-IFCA Santander, Spain Grids y e-ciencia 2008, IFIC, Valencia Esquema Introducción a MPI MPI
Más detallesImplementación de un Cluster de Computadoras con software libre para Computación Científica en Jicamarca
Implementación de un Cluster de Computadoras con software libre para Computación Científica en Jicamarca A.Zamudio M. Milla Contenido de la Presentación 1 Radio Observatorio de Jicamarca 2 3 4 5 6 Índice
Más detallesEjecución serial: las tareas/instrucciones de un programa son ejecutadas de manera secuencial, una a la vez.
Paralelismo Conceptos generales Ejecución serial: las tareas/instrucciones de un programa son ejecutadas de manera secuencial, una a la vez. Ejecución paralela: varias tareas/instrucciones de un programa
Más detallesTAREA 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 detallesProgramación en Paralelo con MPI en Clusters Linux
Programación en Paralelo con MPI en Clusters Linux Francisco Javier Rodríguez Arias 13 de marzo de 2006 Problema y Motivación En física se requiere hacer muchos cálculos. Para eso se hacen programas de
Más detallesModelo de paso de mensajes
Modelo de paso de mensajes Miguel Alfonso Castro García mcas@xanum.uam.mx Universidad Autónoma Metropolitana - Izt 17 de noviembre de 2016 Contenido 1 Comunicación punto a punto 2 3 Comunicación punto
Más detallesEl Procesamiento Distribuido y su aplicación al Tratamiento de Imágenes. Miguel Hernández Vázquez. Carlos Platero Dueñas
El Procesamiento Distribuido y su aplicación al Tratamiento de Imágenes Autor: Tutor: Miguel Hernández Vázquez Carlos Platero Dueñas A mis padres y a mi hermano, que tanto me han ayudado y apoyado durante
Más detallesLenguaje C. República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III
República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III Lenguaje C 1 Puntos previos Los códigos fuentes generados en C requieren ser compilados
Más detallesElementos básicos de cómputo paralelo
Elementos básicos de cómputo paralelo Grandes paradigmas Máquinas de memoria compartida Todos los procesadores ven toda la memoria al mismo tiempo. La filosofía es básicamente dividir las tareas. EL estándar
Más detallesEscalabilidad: El desempeño del software y hardware debe ser eficiente desde un grupo pequeño de procesadores a un grupo muy grande de procesadores.
Página 1 de 8 Introducción a BSP La motivación para el modelo de computación paralela BSP (The Bulk-Synchronous Parallel Model) surge de una comparación con lo que se observa en el mundo de la computación
Más detallesCurso-Taller Programación Paralela con lenguaje C bajo Linux. MCC. Salazar Martínez Hilario
Curso-Taller Programación Paralela con lenguaje C bajo Linux MCC. Salazar Martínez Hilario Mayo 2011 Programación Paralela La que se realiza usando procesos separados. Interactúan intercambiando información.
Más detallesBrevísimo tutorial de MPI (Message Passing Interface) Miguel Vargas
Brevísimo tutorial de MPI (Message Passing Interface) Miguel Vargas 19/10/10 1/33 Contenido Contenido Clusters Beowulf MPI (Message Passing Interface) Comunicación entre procesos Un programa simple con
Más detallesSistemas Complejos en Máquinas Paralelas
Sistemas Complejos en Máquinas Paralelas Clase 1: OpenMP Francisco García Eijó Departamento de Computación - FCEyN UBA 15 de Mayo del 2012 Memoria compartida Las mas conocidas son las máquinas tipo Symmetric
Más detallesEVOLUCIÓN HISTÓRICA DE LOS µp
EVOLUCIÓN HISTÓRICA DE LOS µp El primer procesador fue inventado por los Babilonios en el año 500 ac En 1642 se perfeccionó la primera calculadora por Blas Pascal A mediados del siglo pasado se inventaron
Más detallesEstructura general de una Computadora Arquitectura Estructura Von Neumann
BUSES Estructura general de una Computadora Arquitectura Estructura Von Neumann Unidad Básica en estructura computador. Cargar programas, ingreso datos, resultados, etc. Estructura de buses BUSES Es un
Más detalles1 Primitivas básicas de OpenMP
1 Primitivas básicas de OpenMP Consultar la página oficial de la plataforma OpenMP http://www.openmp.org/drupal/ Pragmas Es una directiva para el compilador que permite la definición de nuevas directivas
Más detallesProgramación Híbrida e Introducción a la Programación de GPUs
Programación Híbrida e Introducción a la Programación de GPUs Fernando Robles Morales Instituto Nacional de Medicina Genómica Enrique Cruz Martínez Universidad Autónoma de la ciudad de México CONTENIDO
Más detallesENTRADA-SALIDA. 2. Dispositivos de Carácter: Envía o recibe un flujo de caracteres No es direccionable, no tiene operación de búsqueda
Tipos de Dispositivos ENTRADA-SALIDA 1. Dispositivos de Bloque: Almacena información en bloques de tamaño fijo (512b hasta 32Kb) Se puede leer o escribir un bloque en forma independiente 2. Dispositivos
Más detallesSist s em e a m s s O per e ativos o. s Unidad V Entrada Sali l d i a.
Sistemas Operativos. Unidad V Entrada Salida. Programación de Entrada y Salida Introducción. Comunicación de los procesos con el mundo externo : Mecanismo de E/S de información. Aspectos que diferencian
Más detallesActividad Algoritmos, Estructura y Programación I. FOR, DO-WHILE
Actividad Algoritmos, Estructura y Programación I. FOR, DO-WHILE 1. Qué es un bucle? 2. A que se denomina cuerpo de un bucle? 3. Define iteración de un bucle. 4. Cuál es el cuerpo de un bucle? 5. Qué es
Más detallesArquitectura de Computadoras. Anexo Clase 8 Buses del Sistema
Arquitectura de Computadoras Anexo Clase 8 Buses del Sistema Estructuras de interconexión Todas las unidades han de estar interconectadas. Existen distintos tipos de interconexiones para los distintos
Más detallesArchivos & Cadenas CURSO DE PROGRAMACIÓN EN C. Centro de Investigación y de Estudios Avanzados del IPN. CINVESTAV - Tamaulipas.
Archivos & Cadenas CURSO DE PROGRAMACIÓN EN C Centro de Investigación y de Estudios Avanzados del IPN. CINVESTAV - Tamaulipas. Febrero 2016 [Curso de programación en C] - Archivos & Cadenas 1/17 Archivos
Más detallesProgramació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 detallesCómputo paralelo con openmp y C
Cómputo paralelo con openmp y C Sergio Ivvan Valdez Peña Guanajuato, México. 13 de Marzo de 2012 Sergio Ivvan Valdez Peña Cómputo Guanajuato, paralelo conméxico. openmp y () C 13 de Marzo de 2012 1 / 27
Más detallesPROBLEMAS TEMA 1: Estructuras de interconexión de un computador
PROBLEMAS TEMA 1: Estructuras de interconexión de un computador Problemas propuestos en examen 1.1 Una CPU que emplea un tamaño de palabra de 16 bits tiene un repertorio de 16 instrucciones con un formato
Más detallesLos prototipos de las funciones de MPI se detallan en el document: MPI_funciones.pdf
UNIVERSIDAD POLITECNICA DE MADRIDETSII COMPUTADORES II Profesor: Dr. Claudio Rossi, PhD Profesor asistente: Julián Colorado, PhDc 11,17,18, 24 de abril de 2012 PRACTICA: USO DE MPI (MESSAGE PASSING INTERFACE)
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 detallesIntroducción a la Interfaz de paso de mensajes (MPI)
Introducción a la Interfaz de paso de mensajes (MPI) MPI communicator 1 P0 value MPI communicator 2 0 1 P1 P2 value 2 3 P3 José Miguel Mantas Ruiz Depto. de Lenguajes y Sistemas Informáticos Universidad
Más detallesComputación Matricial y Paralela
Computación Matricial y Paralela Programación híbrida Javier Cuenca Dpto. de Ingeniería y Tecnología de Computadores Domingo Giménez Dpto. de Informática y Sistemas Universidad de Murcia http://dis.um.es/~domingo
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 detallesIntroducción a la Computación (Matemática)
Introducción a la Computación (Matemática) Primer Cuatrimestre de 2016 Brevísima Introducción a la Organización de Computadoras 1 Mapa de la materia Programas simples en C++. Especificación de problemas.
Más detallesSistema 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
Más detallesVelocidades Típicas de transferencia en Dispositivos I/O
Entradas Salidas Velocidades Típicas de transferencia en Dispositivos I/O Entradas/Salidas: Problemas Amplia variedad de periféricos Entrega de diferentes cantidades de datos Diferentes velocidades Variedad
Más detalles4. Programación Paralela
4. Programación Paralela La necesidad que surge para resolver problemas que requieren tiempo elevado de cómputo origina lo que hoy se conoce como computación paralela. Mediante el uso concurrente de varios
Más detallesIntroducción a Sistemas Operativos: Ficheros
Introducción a Sistemas Operativos: Ficheros Clips Fr ancisco J Ballesteros 1. Entrada/Salida Es importante saber cómo utilizar ficheros. En UNIX, es aún más importante dado que gran parte de los recursos,
Más detallesIntroducción a la arquitectura de computadores
Introducción a la arquitectura de computadores Departamento de Arquitectura de Computadores Arquitectura de computadores Se refiere a los atributos visibles por el programador que trabaja en lenguaje máquina
Más detallesLusitania. Pensando en Paralelo. César Gómez Martín
Lusitania Pensando en Paralelo César Gómez Martín cesar.gomez@cenits.es www.cenits.es Esquema Introducción a la programación paralela Por qué paralelizar? Tipos de computadoras paralelas Paradigmas de
Más detallesAcceso 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 detallesEjercicios sobre tuberías
Boletín 3. Ejercicios sobre tuberías July 14, 016 1. Indica de manera justificada si las siguientes afirmaciones sobre la utilización de tuberías como mecanismo de sincronización entre dos procesos son
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 detalles6. Entrada y Salida Explicación de la interfaz entre el computador y el mundo exterior.
6. Entrada y Salida Explicación de la interfaz entre el computador y el mundo exterior. 6.1. El subsistema de E/S Qué es E/S en un sistema computador? Aspectos en el diseño del subsistema de E/S: localización
Más detalles2EMHWLYRV 5HIHUHQFLDV. Procesadores vectoriales
7HPD0XOWLSURFHVDGRUHV 2EMHWLYRV 5HIHUHQFLDV,QWURGXFFLyQ $UTXLWHFWXUDVFHQWUDOL]DGDVGHPHPRULDFRPSDUWLGD $UTXLWHFWXUDVGLVWULEXLGDVGHPHPRULDFRPSDUWLGD 6LQFURQL]DFLyQ 0XOWLFRPSXWDGRUHV 1 esadores vectoriales
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 detallesSistemas 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
Más detallesMicroprocesadores, Tema 4:
Microprocesadores, Tema 4: Conceptos de Entrada / Salida Guillermo Carpintero Marta Ruiz Universidad Carlos III de Madrid Objetivos Concepto de Interface Modelo de los Dispositivos de Interface Técnicas
Más detallesTEMA 6.- INTERFACES PARA DISCOS DUROS. nexo de conexión que facilita la comunicación entre dos dispositivos
TEMA 6.- INTERFACES PARA DISCOS DUROS 1. Introducción Interfaz: Adaptador: nexo de conexión que facilita la comunicación entre dos dispositivos convierte las señales del computador a las que necesita el
Más detallesLenguaje de Programación: C++ ARCHIVOS I/O
UG C++ Lenguaje de Programación: C++ ARCHIVOS I/O Universidad de Guanajuato Octubre 2010 Como abrir un archivo Antes de poder escribir datos en un archivo, debemos abrirlo, esto significa que debemos decirle
Más detallesUnidad I: Organización del Computador. Ing. Marglorie Colina
Unidad I: Organización del Computador Ing. Marglorie Colina Arquitectura del Computador Atributos de un sistema que son visibles a un programador (Conjunto de Instrucciones, Cantidad de bits para representar
Más detallesInstituto Tecnológico de Morelia
Instituto Tecnológico de Morelia Arquitectura de Computadoras Unidad 1b Programa 1.2.2 Memoria. 1.2.2.1 Conceptos de manejo de memoria. 1.2.2.2 Memoria principal semiconductora. 1.2.2.3 Memoria cache.
Más detallesClusters. High Performance Cluster Computing. de Rajkumar Buyya. Sergio Romero, Febrero 2009 Arquitecturas Distribuidas
Clusters High Performance Cluster Computing de Rajkumar Buyya Sergio Romero, Febrero 2009 Arquitecturas Distribuidas Índice Introducción Arquitectura del cluster Clasificación de los cluster Cluster Middleware
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 detallesIntroducción a los Sistemas Multiprocesadores
Introducción a los Sistemas Multiprocesadores Multiprocesadores estilo Von Neumann Modelos de Organización Modelos de Programación Clasificación de los Multiprocesadores Por qué Sistemas Multiprocesadores?
Más detallesEDITRAN/TR. Windows/Unix. Manual de referencia
EDITRAN/TR Windows/Unix Manual de referencia INDRA 30 de octubre de 2014 ÍNDICE 1. INTRODUCCIÓN.... 1-1 2. INTERFAZ DE PROGRAMACIÓN.... 2-1 2.1. DESCRIPCION... 2-1 2.2. FUNCIONES DE ENVIO Y RECEPCION...
Más detallesCapítulo 4. Entrada/Salida
Capítulo 4 Entrada/Salida 4.1 Principios hardware de E/S 4.2 Principios software de E/S 4.3 Niveles software de E/S 4.4 Discos 4.5 Relojes 4.6 Terminales orientados a caracteres 4.7 Interfaces gráficas
Más detallesAcceso Directo a Memoria
Tema 7: Acceso Directo a Memoria 7.1 El concepto Qué es una transferencia por acceso directo a memoria? El modelo de transferencia de información visto en los capítulos anteriores se denomina transferencia
Más detallesCómputo en paralelo con MPI
Cómputo en paralelo con MPI Miguel Vargas-Félix miguelvargas@cimat.mx CIMAT, October 9, 2015 1/35 Clusters Beowulf Master node External network Slave nodes Network switch Características: Tecnología estandar
Más detallesEQUIVALENCIAS EN C DE CONSTRUCCIONES SECUENICIALES EN PSEUDOCÓDIGO
EQUIVALENCIAS EN C DE CONSTRUCCIONES SECUENICIALES EN PSEUDOCÓDIGO TIPOS DE DATOS BÁSICOS: Tipo Tipo Tamaño aproximado en bits Rango mínimo Carácter char 8 0 a 55 Entero int 16-3767 a 3767 Real float 3
Más detallesTutoría 2. Banco de memoria de 8 y 16 bits (8086)
Tutoría 2. Banco de memoria de 8 y 16 bits (8086) RESUMEN Cuando el procesador opera en modo mínimo, éste genera las señales de control para la memoria y los dispositivos de E/S. [1, pág. 292]. Para utilizar
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 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 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 detallesCICLOS 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
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 detallesEstructuras de Decisión Simples y Dobles. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz
Estructuras de Decisión Simples y Dobles Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz Control de Flujo Las sentencias estudiadas hasta ahora son ejecutadas una tras otra.
Más detalles8.3. Introducción a las E/S del sistema
8.3. Introducción a las E/S del sistema Interface entre dispositivos periféricos y el. iferencia en velocidad de funcionamiento (tasa de transferencia). iferencia en las unidades de información. iferencia
Más detallesClase Práctica: Entrada Salida
Clase Práctica: Entrada Salida Docente: Javier R. de Acha Campos Direct Memory Address Ejercicio 1 Sea una computadora capaz de ejecutar 1 millón de instrucciónes por segundo (MIPS). Se desea conectar
Más detallesEvolución del software y su situación actual
Evolución del software y su situación actual El software es el conjunto de programas que permite emplear la PC, es decir, es el medio de comunicación con la computadora, el control de sus funciones y su
Más detallesPrincipios de Computadoras II
Departamento de Ingeniería Electrónica y Computadoras Ing. Ricardo Coppo Qué es una computadora? Una computadora es una máquina digital y sincrónica con capacidad de cálculo numérico y lógico controlada
Más detallesLenguaje de Programación: C++ Estructuras de control:switch
UG C++ Lenguaje de Programación: C++ Estructuras de control: Universidad de Guanajuato Septiembre 2010 Estructuras de selección Aunque la sentencia if de C++ es muy potente, en ocasiones su escritura puede
Más detallesEstructura Interna de La PC. 1. Microprocesadores 2. I/O ( Entrada / Salida) 3. Memoria
Estructura Interna de La PC 1. Microprocesadores 2. I/O ( Entrada / Salida) 3. Memoria Estructura Interna de La PC Estructura Interna de La PC Estructura Interna de La PC Estructura Interna de La PC Estructura
Más detallesGuía rápida para gestionar el puerto paralelo del PC
Guía rápida para gestionar el puerto paralelo del PC Descarga desde: http://eii.unex.es/profesores/jisuarez/descargas/ip/guia_rapida_pp.pdf José Ignacio Suárez Marcelo Universidad de Extremadura Escuela
Más detallesCapítulo 3. Sentencias condicionales
Capítulo 3. Universidad del País Vasco / Euskal Herriko Unibertsitatea 79 Índice del capítulo 1. Introducción........................................ 81 2. Objetivos...........................................
Más detallesSistemas 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 detallesArquitectura de Computadores
Curso 2006/07 Arquitectura de Computadores 1. Introducción 2. La CPU 3. Lenguaje Máquina 4. La Memoria 5. Sistema de Entrada/Salida Informática Aplicada Arquitectura de Computadores 1 Organización E/S
Más detallesProblemas resueltos. Problema 1. Problema 3. Problema 5. 0BTema 2: Modelos de redes. Indique los niveles del modelo de Internet.
Problemas resueltos Problema 1 Indique los niveles del modelo de Internet. Los niveles del modelo de Internet son: Nivel físico Nivel de enlace de datos Nivel de red Nivel de transporte Nivel de aplicación.
Más detallesExamen de Fundamentos de la Programación (Modelo 1)
Examen de Fundamentos de la Programación (Modelo 1) 27 de noviembre de 2007 1. Qué escribe el siguiente programa si se teclea 5? int num, resultado; for (resultado=0; num; resultado++) num -= 2; printf
Más detallesDobles: Es el caso de la instrucción if-else (punto 1.2).
1 1.Introducción Las estructuras de control son instrucciones que nos permiten controlar el flujo de ejecución del programa. Las instrucciones de control se pueden agrupar en instrucciones condicionales
Más detallesCapitulo 2. Programación Modular
Capitulo 2. Programación Modular Consiste en dividir un programa en módulos o subprogramas con el fin de hacerlo más legible y manejable. Se presenta históricamente como una evolución de la programación
Más detallesINTRODUCCION A LA COMPUTACION PARALELA. 2nd Workshop: New Frontiers of Bioinformatics in Latin America Gridding Biology. Dr.
INTRODUCCION A LA COMPUTACION PARALELA 2nd Workshop: New Frontiers of Bioinformatics in Latin America Gridding Biology Dr. Pablo Guillén Universidad de Los Andes 22-26 de Noviembre de 2004 Qué es el Paralelismo?
Más detallesEventos e interrupciones
Programación Concurrente en Linux Eventos e interrupciones Alberto Lafuente, Dep. KAT/ATC de la UPV/EHU, bajo Licencia Creative Commons 1 Contenido 1. Interacción en un programa: entrada/ salida 2. Eventos
Más detallesTema 4: SISTEMAS DE ENTRADA/SALIDA. Un computador no puede estar formado sólo por la CPU y la memoria.
Tema 4: SISTEMAS DE ENTRADA/SALIDA ÍNDICE 1. Introducción. 2. Módulos de Entrada/Salida: comunicación CPU - Periféricos. 3. Mapa de Entrada/Salida: común y separada. 4. Introducción a los métodos de programación
Más detallesCapí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 detallesARQUITECTURA DE LOS SISTEMAS BASADOS EN MICROPROCESADOR
ARQUITECTURA DE LOS SISTEMAS BASADOS EN MICROPROCESADOR Historia Bloques funcionales Dimensionamiento Estructura CPU Concepto de programa Interrupciones Buses Entrada / Salida Ejemplo de arquitectura:
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 detallesSistemas Operativos Primer Recuperatorio Parcial 1
1.- El siguiente código intenta representar la solución a la siguiente problemática: Un proceso crea un conjunto de procesos hijos al mismo nivel y le asigna a cada uno una tarea determinada, cada proceso
Más detallesEstructura 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 detallesProgramación Modular. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz
Programación Modular Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz Programación Modular Un software monolítico no puede ser entendido fácilmente por un solo lector. El
Más detallesFunciones POSIX (I): Introducción
Funciones POSIX I Funciones POSIX I Llamadas al Llamadas al Sistema Sistema Gestión Básica Gestión Básica de Procesos de Procesos Procesos Procesos fork fork Señales Señales getpid getpid Memoria Memoria
Más detalles