Computación de Alta Performance Curso 2009 PROGRAMACIÓN PARALELA EN LENGUAJE C
|
|
- Silvia Ortiz de Zárate Alcaraz
- hace 8 años
- Vistas:
Transcripción
1 Computación de Alta Performance Curso 2009 MECANISMO DE PROGRAMACIÓN PARALELA EN LENGUAJE C
2 AGENDA Mecanismos a estudiar. Fork. Pipes y FIFOs. System V IPC: Semáforos. Cola de mensajes. Memoria compartida. RPC. Doors. SUN RPC. Sockets: UNIX Domain Sockets. Internet Domain Sockets. Signals.
3 fork() CREACIÓN DE PROCESOS La primitiva fork() crea un proceso hijo del proceso invocante ( clonación del proceso). Se crea una copia exacta del proceso que la invoca, pero con otro PID. El padre recibe el PID del hijo, y el hijo recibe 0. Se copia el área de datos (incluyendo archivos abiertos y sus descriptores asociados). La primitiva wait() espera que los hijos terminen. El hijo retorna un código (valor) de terminación al padre.
4 fork wait Si el padre muere antes que el hijo, el hijo queda huérfano. El proceso "init" (PID=1) hereda a los huérfanos. Si el hijo termina pero el padre no acepta su código de terminación (usando wait), el proceso pasa a estado zombi (no consume recursos salvo una entrada en la tabla de procesos). La llamada wait permite al padre recibir un valor del hijo. Este valor es de 8 bits; los otros 8 bits (MSB) son valores de estado. wait retorna el PID del hijo que termino. El proceso hijo puede retornar un valor usando la función exit de C.
5 EJEMPLO #include <stdio.h> /* creación de un proceso hijo e impresión en pantalla; la salida se mezcla evidenciando el time slicing */ main () { int j, pid ; if ( (pid = fork ()) == 0 ) { for (j=0; j<1000;j++) printf( H ); exit (0) ; for (j=0; j<1000;j++) printf( P ); exit (0) ;
6 PIPES Mecanismo de comunicación entre procesos que ejecutan en un mismo equipo. Unidireccional (half duplex pipe). No poseen nombre. Habitualmente utilizado para comunicación padre hijo. Acceso mediante operaciones read/write. Implementado en el núcleo del sistema operativo.
7 PIPES SIN NOMBRES int main () { int fd[2]; if (pipe(fd)) { perror( Error ); exit(1);
8 int main () { PIPES SIN NOMBRES int fd[2], pid; ; 0 ) { */ /* creación del pipe */ if (pipe (fd)) { perror( Error\n ) exit (1) ; if ( (pid = fork ()) == /* proceso hijo close (fd[1]); prochijo(fd[0]); close (fd[0]); else { /* proceso padre */ close (fd[0]); procpadre(fd[1]); close (fd[1]); waitpid(pid),null, 0);...
9 int main () { int fd1[2], fd2[2], pid; PIPES SIN NOMBRES /* creación del pipe */ if ( pipe (fd1) pipe (fd2)) { perror( Error\n ) ; exit (1) ; if ( (pid = fork ()) == 0 ) { /* proceso hijo */ close (fd1[1]); close (fd2[0]); prochijo(fd1[0],fd2[1]); close (fd1[0]); close (fd2[1]); else {... /* proceso padre */ close (fd1[0]); close (fd2[1]); procpadre(fd1[1],fd2[0]); close (fd1[1]); close (fd2[0]); waitpid(pid),null, 0);
10 FIFOs: PIPES CON NOMBRES Permiten la comunicación entre procesos no emparentados. Unidireccional (half duplex). Existen en el sistema de archivos como un archivo especial. Los procesos de diferentes padres pueden compartir datos mediante un pipe con nombre. Cuando se han realizados todas las I/O por procesos compartidos, el pipe con nombre permanece en el sistema de archivos para uso posterior. Funciones y comandos mknod mkfifo. Comandos $ mknod MIFIFO p $ mkfifo a=rw MIFIFO
11 FIFOs Función mkfifo #include <sys/mode.h> int main () { const char *camino = ; int modo = ; if (mkfifo(camino,modo) < 0 && (errno!= EEXIST)) perror( Error\n ); unlink(camino); camino : Camino completo del archivo (pipe) a crear. modo : Tipo de archivo y permisos de acceso.
12 FIFOs La función mkfifo es una interfaz del comando mknod para crear colas FIFO ( pipes ), las cuales no necesitan privilegios especiales del sistema. Un comando ls l identifica al pipe con el carácter descriptor p. El comando unlink permite eliminar un pipe del sistema de archivos.
13 SEMÁFOROS Dijkstra (1960s). Herramienta de sincronización. Tipos: Binarios Contadores (no binarios) Operaciones P : proberen. V : verhogen. Implementaciones: POSIX IPC. System V IPC. Persistencia en el sistema operativo.
14 SEMÁFOROS POSIX IPC Basados en memoria Implementados a través de memoria compartida. Uso entre procesos emparentados. Semáforos con nombre Mantenimiento a través del sistema de archivos. No necesariamente implementados dentro del núcleo del sistema. Uso entre procesos no emparentados.
15 SEMÁFOROS System V Agrega el concepto de Conjunto de semáforos. Conjunto de semáforos no binario.
16 SEMÁFOROS System V semget(key_t key, int nsems, int oflag). Crea un semáforo System V (Conjunto de semáforos). semctl(int semid, int semnum, int cmd). Operaciones de control: Inicialización con comando SETVAL. Consulta con comando GETVAL. Destrucción con comando IPC_RMID. semop(int semid, struct sembuf * ops, size_t nops). Operaciónes de P y V sobre el conjunto de semáforos. struct sembuf { short sem_num; // número de semáforo short sem_op; // operación sobre el semáforo short sem_flg; // banderas: IPC_NOWAIT, SEM_UNDO Atomicidad en la operación: Todas o ninguna.
17 MEMORIA COMPARTIDA La forma mas eficiente de comunicar dos procesos corriendo en la misma máquina. El proceso accede a través de direccionamiento directo y no a través del núcleo del sistema. Requiere sincronización explícita para acceder al recurso compartido.
18 MEMORIA COMPARTIDA: POSIX IPC Implementación a través de mapeo de archivos del sistema de archivos. shm_open(const char * name, ). Obtiene un descriptor a un segmento de memoria compartida. mmap(void *, size_t len, int, int fd, int, off_t). Mapea un archivo (a través del descriptor fd) al espacio de direccionamiento de memoria del proceso. Ej: struct memcomp * int ptr; fd; fd = shm_open(pathname, flags, FILE_MODE); ptr = mmap(null, length,modo,map_shared,fd,0); shm_unlink(const char *name). Destruye un espacio de memoria compartida.
19 MEMORIA COMPARTIDA: System V shmget(key_t key, size_t size, int oflag). Crea o accede a un segmento de memoria compartida shmat(int shmid, const void * shmaddr, int flag). Asocia un espacio de memoria compartida al direccionamiento del proceso shmdt(const void * shmaddr). Desasocia un espacio de memoria del direccionamiento del proceso shmctl(int shmid, int cmd, struct shmid_ds * buff). Operaciones de control sobre el segmento de memoria compartida: Destrucción. Cambios de permisos.
20 #include <sys/types.h> #include <sys/ipc.h> #include <sys/msg.h> #include <errno.h> main(){ int shmid, stat; char err[256]; char * datos; strcpy(err,"pru1"); EJEMPLO shmid = shmget(1, 11, 0777 IPC_CREAT); printf("id:%d \n",shmid); datos = shmat(shmid,null,0); strcpy(datos,"nil"); while ( strcmp(datos,"fin") && datos!= 1 ) { printf("ingrese:"); scanf("%s",datos); ;
21 EJEMPLO #include <sys/types.h> #include <sys/ipc.h> #include <sys/msg.h> #include <errno.h> main(){ int shmid, stat; char err[256]; char * datos, datos_vie[16]; strcpy(err,"pru1"); shmid = shmget(1, 11, 0777 IPC_CREAT); printf("id:%d \n",shmid); datos = shmat(shmid,null,0); strcpy(datos_vie,"nada"); while (strcmp(datos,"fin") && datos!= -1) { if (strcmp(datos,datos_vie)) { printf("hay:%s:\n",datos); strcpy(datos_vie,datos); ; ;
22 COLAS DE MENSAJES Lista encadenada de mensajes. Los procesos se intercambian mensajes a través de este tipo de estructuras. Manejan prioridades.
23 COLAS DE MENSAJES: POSIX IPC Implementados a través de un archivo del sistema operativo. Permite la generación de una señal o el inicio de un thread cuando un mensaje es enviado a la cola. Operaciones: mq_open(const char * name, int oflag, ). Crea o abre una cola de mensajes. mq_send(mqd_t mqdes,const char *ptr,size_t len, unsigned int prio). Envía un mensaje a la cola con la prioridad prio. mq_receive(mqd_t mqdes, char * ptr, size_t len, unsigned int * prio). Recibe el mensaje de mayor prioridad y que hace más tiempo que está en la cola. mq_close(mqd_t mqdes). Clausura el acceso a la cola para el proceso.
24 COLAS DE MENSAJES: POSIX IPC Operaciones: mq_unlink(const char * name). Elimina la cola del sistema operativo. mq_getattr y mq_setattr. Obtiene y cambia priopiedades de la cola. mq_notify(mqd_t mqdes, const struct sigevent * notification). Notificación de llegada de mensaje a cola vacía. Solo una notificación por cola. Permite al proceso seguir realizando otras tareas mientras no hay mensajes en la cola.
25 COLAS DE MENSAJES: System V Manipulación a través de descriptores de cola de mensajes. Permite recibir mensaje según tipo de mensaje. Operaciones: msgget(key_t key, int oflag). Crea o abre una cola de mensajes. Retorna un identificador de cola de mensajes. msgsnd(int msqid, const void *ptr, size_t len, int flag). Envía un mensaje a la cola. La estructura apuntada por ptr deberá tener el primer campo como long (tipo de mensaje) y luego los datos del mensaje (cualquier estructura ya sea texto o binario). flag: IPC_NOWAIT permite llamadas no bloqueantes.
26 COLAS DE MENSAJES: System V Operaciones: msgrcv(int msqid, void * ptr, size_t len, long type, int flag) Si type es 0, recibe el primer mensaje de la cola. Si type > 0, recibe el primer mensaje de la cola con ese tipo. Si type < 0, recibe el primer mensaje con el tipo más bajo que el valor absoluto de type. flag: IPC_NOWAIT permite llamadas no bloqueantes. msgctl(int msgid, int cmd, ). Operaciones de control sobre la cola.
27 COLA DE MENSAJES: System V Problemas: El uso de un descriptor de cola no permite utilizar la función select. Procesos que manejen conexiones de red y colas de mensajes deben estar haciendo polling para verificar si hay mensajes en la cola o actividad en la red. Esto genera un alto consumo de procesador. POSIX IPC no tiene este problema ya que dispone de la función mq_notify. Solución: fork con pipe: Generar un hijo que se reciba los mensajes de la cola y que los envíe al padre a través de un pipe (descriptor de archivo). El mensaje ahora pasa por 3 etapas en vez de solo una.
28 REMOTE PROCEDURE CALL (RPC) Mecanismo sincrónico de invocación a procedimientos remotos. DOORS Sun. RPC Sun.
29 CREACIÓN DE SERVIDORES RPC Se debe crear un archivo de especificación de los RPC (definición de protocolo). El comando rpcgen genera los stubs para el cliente y el servidor que tienen: Transformación de datos (XDR=External Data Representation). Invocación a procedimiento remoto. El cliente debe compilar contra el XDR y el stub del cliente generados por el comando rpcgen. El servidor debe compilar contra el XDR y el stub del servidor generados por el comando rpcgen.
30 CREACIÓN DE SERVIDORES RPC
31 PORTMAPPER El servicio primero se reporta al portmapper en un puerto de atención. Luego el cliente verifica la dirección a través del portmapper y, finalmente, accede al servicio.
32 SOCKETS Mecanismo de comunicación en el modelo cliente/servidor. un proceso servidor escucha requerimientos que llegan al socket y un proceso cliente se comunica con el server a través de otro socket. Las operaciones básicas con sockets comprenden la creación, apertura, cierre, lectura y escritura (send() y recv()). Dos tipos de sockets: Sockets TCP para comunicaciones en red. Unix domain sockets para IPC local. Los sockets tienen asociado un descriptor de archivos.
33 INTERNET DOMAIN SOCKETS Sockets TCP para comunicaciones en red. Orientados a conexión. Confiables.
34 UNIX DOMAIN SOCKET Mecanismo IPC local. Rapidez. Permiten recibir datos de múltiples procesos con un solo socket.
35 ESTRUCTURA PROGRAMAS Cliente socket() // Crear a socket connect() // Contactar a un servidor(ip + port) while (cond) { send() // Enviar a servidor recv() // Recibir de un servidor Servidor socket() // Crear un socket bind() // Asociar un socket a una dirección listen() // Crear una cola de espera while(1) { reply=accept() // Aceptar conexiones de clientes recv() // Recibir mensaje del cliente send() // Enviar mensaje al cliente
36 REPRESENTACIÓN DE DATOS Aparecen problemas de representación de datos (hardware): Little Endian signif xxx xxx +signif Big Endian +signif xxx xxx signif Funciones de transformación (host to nertwork, network to host) htonl, htons, ntohl, ntohs
37 EJEMPLO /*** PROCESO SERVIDOR ***/ #include <stdio.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <netdb.h> int main (int argc, char *argv[]) { int sockd, new_sd, adrlen, cont ; char buffer[80] ; struct sockaddr_in sock_name, *ptr_port ; struct sockaddr addr ; struct hostent *ptr_host ; if ( gethostname (host_name, 80) < 0 ) { fprintf (stderr, ERROR: en ejecución de gethostname()\n ) ; exit (1);
38 EJEMPLO if ( (ptr_host = gethostbyname (host_name)) == NULL ) { fprintf (stderr, ERROR: en ejecución de gethostbyname()\n ) ; exit (1); if ( sockd = socket (AF_INET, SOCK_STREAM, 0)) < 0 ) { fprintf (stderr, ERROR: en ejecución de socket ()\n ) ; exit (1); SockName.sin_family = AF_INET ; SockName.sin_port = 0 ; /* el sistema asigna el port */ bcopy (ptr_host->h_addr, &sock_name.sin_addr.s_addr, ptr_host-> h_length) ; if ( bind (sockd, &sock_name, sizeof (sock_name)) < 0 ) { fprintf (stderr, ERROR: en ejecución de bind()\n ) ; close (sockd) ; exit (1) ;
39 EJEMPLO adrlen = sizeof (addr) ; if ( getsockname (sockd, &addr, &adrlen) < 0 ) { fprintf (stderr, ERROR: en ejecución de getsockname()\n ) ; close (sockd) ; exit (1) ; prt_port = (struct sockaddr_in *) &addr ; printf ( hostname = %s; port = %s\n, sock_name.sin_addr.s_addr, ntohs (prt_port->sin_port) ; if ( listen (sockd, 5) < 0 ) { fprintf (stderr, ERROR: en ejecución de listen ()\n ) ; close (sockd) ; exit (1) ;
40 EJEMPLO while (1) { if ( (new_sd = accept (sockd, 0, 0)) < 0 ) { fprintf (stderr, ERROR: en ejecución de accept ()\n ) ; close (sockd); exit (1) ; if ( fork () == 0 ) { close (sockd) ; bzero (buffer, sizeof (buffer)) ; do { if ((cont = read (new_sd, buffer, sizeof (buffer)) < 0 ) { fprintf (stderr, ERROR: en ejecución de read ()\n ) ; close (new_sd) ; exit (1) ; if ( cont == 0 ) { printf ( recibo un mensaje de largo 0\n ) ; close (new_sd) ; continue ; printf ( Server> %s\n, buffer) ; bzero (buffer, sizeof (buffer) ; strcpy (buffer, Mensaje del servidor al cliente ) ; write (new_sd, buffer, sizeof (buffer)) ; while (cont!= 0 ) ;
41 EJEMPLO /*** PROCESO CLIENTE ***/ main (int argc, char *argv[]) { int sockd, cont ; struct sockaddr_in sock_name; struct hostent *ptr_host ; struct sockbuffer SockBuffer ; if ( argc < 3 ) { printf ("Uso: %s <Host> <Port>\n, argv[0]) ; exit (1) ; if (( sockd = socket (AF_INET, SOCK_STREAM, 0)) < 0 ) { fprintf (stderr, "ERROR: en ejecución de socket()\n") ; exit (1) ;
42 EJEMPLO SockName.sin_port = htons (atoi (argv[2])) ; SockName.sin_family = AF_INET ; if (( prt_host = gethostbyname (argv[1]) ) == NULL ) { fprintf (stderr, "ERROR: en ejecución de gethostbyname()\n") ; close (sockd) ; exit (1) ; bcopy (ptr_host->h_addr, &sock_name.sin_addr.s_addr, ptr_host- >h_length); if ( connect (sockd, &sock_name, sizeof (sock_name)) < 0 ) { fprintf (stderr, "ERROR: en ejecución de connect()\n") ; close (sockd) ; exit (1) ; bzero (buffer, sizeof (buffer)) ;
43 EJEMPLO do { strcpy (buffer, "Mensaje del cliente al servidor") ; write (sockd, &buffer, sizeof (buffer)) ; if (( cont = read (sockd, &buffer, sizeof (buffer)) ) < 0 ) { fprintf (stderr, "ERROR: ejecutando el read()\n") ; close (sockd) ; exit (1) ; if ( cont == 0 ) { printf ( se recibió un mensaje de largo 0.\n") ; close (sockd) ; continue ; printf ( Cliente> %s\n, buffer) ; while ( cont!= 0 ) ; exit (0) ;
44 SIGNALS Interrupciones generadas a través del software Pueden ser sincrónicas o asincrónicas (más comunes) Signals se numeran del 0 al 31: SIGHUP 1 /* hangup */ SIGINT 2 /* interrupt */ SIGQUIT 3 /* quit */ SIGILL 4 /* illegal instruction */ SIGABRT 6 /* used by abort */ SIGKILL 9 /* hard kill */ SIGALRM 14 /* alarm clock */ SIGTERM 15 /* Terminated */ SIGCONT 19 /* continue a stopped process */ SIGCHLD 20 /* to parent on child stop or exit */ SIGUSR1, SIGUSR2, etc
45 SIGNALS El programador crea handlers llamando a la función signal() pasando como parámetro el numero de señal y un puntero a la función que la va a atender. signal(sigtype,sig_ign) Elimina el handler de la señal SIGtype. signal(sigtype,sig_dfl)
46 EJEMPLO #include <stdio.h> void sigproc(void); void quitproc(void); main() { signal(sigint, sigproc); signal(sigquit, quitproc); for(;;); /* infinite loop */ void sigproc() { signal(sigint, sigproc); printf( Digitó ctrl c n ); void quitproc() { printf( Digitó quit ); exit(0);
47 REFERENCIAS UNIX Network Programing 2nd Edition Richard Stevens UNIX System Calls and Subroutines using C
IPC SYSTEM V. Técnicas Digitales III Ing. Gustavo Nudelman 2011. Universidad Tecnológica Nacional - Facultad Regional Buenos Aires
IPC SYSTEM V Técnicas Digitales III Ing. Gustavo Nudelman 2011 IPC System V En la década del 70, se incorpora a Unix una gran cantidad de funcionalidades llamadas System V entre las cuales aparecen tres
Más detallesSockets (TCP) Tema 2.- Nivel de aplicación en Internet
Sockets (TCP) Tema 2- Nivel de aplicación en Internet Dr Daniel Morató es de Computadores Ingeniero Técnico en Informática de Gestión, 2º curso Material parcialmente adaptado del libro Computer Networking:
Más detallessockets Flujo (SOCK_STREAM) Comunicación bidireccional Confiable (entrega garantizada) Información ordenada en el destino Datagrama (SOCK_DGRAM)
s s Comunicación punto-a-punto entre procesos Los s son los extremos de la comunicación Diferentes dominios UNIX: Entre procesos de un mismo equipo Internet: Entre procesos de diferentes equipos (TCP/IP)
Más detallesIntroducción a la programación con sockets en C
Introducción a la programación con sockets en C Enrique Bonet Departamento de Informática Universidad de Valencia Índice Introducción Socket Creación de un socket Cierre de un socket Asociación de un socket
Más detallesIntroducción de Sockets en C.
PRÁCTICA 2: Introducción de Sockets en C. 1 La Interfaz Socket es una API para redes TCP/IP que se compone de funciones o rutinas. Originalmente se construyó a principios de los 80 para el sistema operativo
Más detallesMecanismos IPC: sockets
Mecanismos IPC: sockets Ampliación de Sistemas Operativos (prácticas) E.U. Informática en Segovia Universidad de Valladolid Sockets Los sockets son una abstracción lógica que permiten la comunicación bidireccional
Más detallesQué es un socket? Dominios de comunicación. Tipos de sockets en el dominio AF_INET. Sockets Stream. Sockets Datagram. Sockets Raw
Qué es un socket? Es una interfaz de entrada salida de datos que permite la intercomunicación entre procesos. Los procesos pueden estar ejecutándose en el mismo o en distintos sistemas, unidos mediante
Más detallesBoletín 7- Sockets. Departamento de Lenguajes y Sistemas Informáticos
Boletín 7- Sockets Departamento de Lenguajes y Sistemas Informáticos Indice 1. Introducción. 2. Tipos de sockets. 3. socket() 4. bind() 5. listen() 6. accept() 7. connect() 8. send()/ ()/recv(). 9. Funciones
Más detallesBOLETIN 8 INDICE. ordenación de bytes. conversión de nombre y direcciones.
Sockets BOLETIN 8 INDICE 1. Introducción. 2. Tipos de sockets. 3. socket() 4. bind() 5. listen() 6. accept() 7. connect() 8. send()/recv(). 1. Funciones de ordenación de bytes 2. Funciones de conversión
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 detallesEstructuras y funciones de programación de sockets.
Estructuras y funciones de programación de sockets. Introducción. En estos apuntes se incluye una breve descripción de las estructuras y funciones cuyo uso puede ser necesario para el desarrollo de las
Más detallesPráctica 1 Programación de Aplicaciones Distribuidas: Sockets UDP. Laboratorio de Comunicación de Datos ITT Telemática Septiembre 2011
Práctica 1 Programación de Aplicaciones Distribuidas: Sockets UDP Laboratorio de Comunicación de Datos ITT Telemática Septiembre 2011 Introducción Aplicaciones Distribuidas Su funcionalidad se distribuye
Más detallesBoletín 5- Señales. Departamento de Lenguajes y Sistemas Informáticos
Boletín 5- Señales Departamento de Lenguajes y Sistemas Informáticos Indice 1. Introducción 2. Envío de señales desde la shell: kill 3. Llamadas al Sistema kill: envío de señal a un proceso raise: autoenvío
Más detallesProblemas de Redes de Computadores. Conjunto de problemas 1
Problemas de Redes de Computadores. Ingeniería Técnica en Informática de Gestión Conjunto de problemas 1 Pregunta 1.1: Si configuro mi servidor Web para que no acepte conexiones desde la dirección IP 130.206.1.1,
Más detallesSistemas Operativos Práctica 3
Sistemas Operativos Práctica 3 Ing. Andrés Bustamante afbustamanteg@unal.edu.co Ingeniería de Sistemas Facultad de Ingeniería Universidad de la Amazonia 2009 1. Objetivo El objetivo de la práctica es que
Más detallesPRÁCTICA 4 PASO DE MENSAJES
PRÁCTICA 4 PASO DE MENSAJES Introducción Cuando los procesos interactúan unos con otros pueden necesitar intercambiar información. Uno de los métodos posibles para conseguir esto es el paso de mensajes.
Más detallesClase de Sockets en lenguaje C. Prof. Ricardo González
Clase de Sockets en lenguaje C Prof. Ricardo González 1 Modelo de Programación Cliente-Servidor Cliente: un programa que envía peticiones. Servidor: un programa que ofrece un servicio que satisface peticiones
Más detallesLABORATORIO 2. La biblioteca a nivel de usuario semso (semáforos Sistemas Operativos) brinda las siguientes primitivas:
1 Introducción LABORATORIO 2 En esta tarea se desea implementar un servicio sincronización de procesos a través de semáforos binarios con prioridad para el sistema operativo Linux. Para esto se deberá
Más detallesMigrando aplicaciones a IPv6
Migrando aplicaciones a Fundamentos técnico: DualStack y Socket.h Alonso Sandoval A. Hernán Vargas L. Universidad Técnica Federico Santa María asandova@alumnos.inf.utfsm.cl, hvargas@alumnos.inf.utfsm.cl
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 detallesSOLUCION EXAMEN junio 2006
SOLUCION EXAMEN junio 2006 1. Explique razonadamente si las siguientes afirmaciones son verdaderas o falsas: I) (1 p) En UNIX únicamente se distinguen dos tipos de procesos: los procesos de usuario y los
Más detallesCOMUNICACIÓN ENTRE PROCESOS SOCKETS
COMUNICACIÓN ENTRE PROCESOS SOCKETS Diseño de Sistemas Operativos Curso 2007/08 Grupo: Mi30 Martín Santana, A. David Martínez Santana, Luis Ignacio Qué son?(definición) n) Los sockets son mecanismos de
Más detallesAdministración de Redes
Administración de Redes PROCESOS EN LINUX Profesor Carlos Figueira Departamento de Computación y T. I. USB Grandes objetivos de un Sistema de Operación (SO) Intercalar ejecución de varios procesos para
Más detallesSockets: funcionamiento y programación. Sockets tipo UNIX. MSc. Ivan A. Escobar
Sockets tipo UNIX MSc. Ivan A. Escobar Creación socket: socket() int socket(familia, tipo, protocolo) Regresa un valor entero Parecido descriptor de archivos: descriptor socket sockfd int familia familia
Más detallesSISTEMAS 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
Más detallesUNIVERSIDAD DE CANTABRIA DEPARTAMENTO DE INGENIERÍA DE COMUNICACIONES GRUPO DE INGENIERÍA TELEMÁTICA
UNIVERSIDAD DE CANTABRIA DEPARTAMENTO DE INGENIERÍA DE COMUNICACIONES GRUPO DE INGENIERÍA TELEMÁTICA MANUAL DE SOCKETS EN C TABLA DE CONTENIDOS Introducción.. 4 Sockets en C.. 7 2.1 Conceptos Básicos..
Más detallesTELEPROCESO Y SISTEMAS DISTRIBUIDOS
Universidad Nacional del Nordeste TELEPROCESO Y SISTEMAS DISTRIBUIDOS La Interfaz Socket Lic. Vanesa S. Roffé Año 2009 Introducción - Origen de la INTERFAZ SOCKET La Interfaz Socket es una API para redes
Más detallesSOR -::- Prácticas -::- Curso 05/06. RCP es un estándar desarrollado por Sun Microsystems y usado por muchos distribuidores de sistemas UNIX.
RPC RCP es un estándar desarrollado por Sun Microsystems y usado por muchos distribuidores de sistemas UNIX. El RPC es una interfaz de programación de aplicación (API) disponible para el desarrollo de
Más detallesInformática Electrónica Interfaces para los programas de aplicación (APIs)
Informática Electrónica Interfaces para los programas de aplicación (APIs) DSI- EIE FCEIA 2015 Que es un API? Application Program Interface (interface para programas aplicativos) es el mecanismo mediante
Más detallesIntroduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia
Introduccion al Lenguaje C Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introducción C es un lenguaje de programación creado en 1972 por
Más detallesSockets (UDP) Tema 2.- Nivel de aplicación en Internet
Sockets (UDP) Tema 2.- Nivel de aplicación en Internet Dr. Daniel Morató es de Computadores Ingeniero Técnico en Informática de Gestión, 2º curso Sockets y UDP UDP: no hay conexión entre cliente y servidor»
Más detallesSistemas Operativos: Programación de Sistemas. Curso Oscar Déniz Suárez Alexis Quesada Arencibia Francisco J.
Tema 6 : IPC del Unix System V Sistemas Operativos: Programación de Sistemas Oscar Déniz Suárez Alexis Quesada Arencibia Francisco J. Santana Pérez Curso 2006-07 Introducción El paquete de comunicación
Más detallesSistemas Operativos (prácticas) E.U. Informática en Segovia Universidad de Valladolid
Manejo de Señales Sistemas Operativos (prácticas) E.U. Informática en Segovia Universidad de Valladolid Señales Concepto Evento que interrumpe la ejecución normal de un proceso La acción por defecto suele
Más detallesCaracterísticas de un lenguaje ideal para robótica
COMUNICACIÓN MEDIANTE SOCKETS Enrique Ortega Edrodoso Ingeniería Técnica de Informática de Gestión Introducción Los vehículos autoguiados comerciales disponibles en la actualidad tienen una serie de inconvenientes
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 detallesRedes (IS20) Ingeniería Técnica en Informática de Sistemas - (2º Curso)
Redes (IS20) Ingeniería Técnica en Informática de Sistemas - (2º Curso) Práctica 2: Programación en Red. Protocolos TCP y UDP. Comunicación entre procesos mediante Sockets Descripción del equipo: 1. Ordenadores
Más detallesSOCKET S. Alberto Castro Rojas
SOCKET S EL64E Alberto Castro Rojas 1 Interfaz de programación genérica Soporte de múltiples suites de protocolos de comunicación (familias) Representaciones de direcciones sin dependencias (endpoint)
Más detalles07 << Acceso en exclusiva al recurso compartido >>
Sistemas Operativos 4º Semestre. Grados II y MI Cuarto Parcial. Sistema de Ficheros. 2 de Junio de 2014. Dispone de 50 minutos. Publicación de notas el Jueves 5 de Junio 2014. Revisión el Viernes 6 de
Más detallesProgramación C/S Básica
1 de 16 Programación C/S Básica Enrique Alba Torres Universidad de Málaga (UMA) 2 de 16 Los servicios Internet se ofertan como sistemas Cliente/Servidor Los protocolos de base suelen ser peer-to-peer (igual-a-igual)
Más detallesDiseño de aplicaciones distribuidas ÍNDICE
Aplicaciones Distribuidas (s) Aplicaciones Distribuidas (s) TCP TCP Protocolos de Protocolos de Transporte Transporte UDP UDP STREAM STREAM (TCP) (TCP) SOCKET SOCKET Etapas en la Creación Etapas en la
Más detallesProblemas de Redes de Computadores. Ingeniería Técnica en Informática de Gestión Conjunto de problemas 1
Problemas de Redes de Computadores. Ingeniería Técnica en Informática de Gestión Conjunto de problemas 1 Preguntas cortas Pregunta 1.1: Si configuro mi servidor Web para que no acepte conexiones desde
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 detallesAdaptación de aplicaciones a IPv6
Adaptación de aplicaciones a IPv6 extensión de la interfaz de sockets Eva M. Castro ecastro@dit.upm.es Tutorial IPv6 -Adaptación de aplicaciones a IPv6 1 Contenido * Introducción Modelo de sockets BSD
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 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 detallesMecanismos IPC System V
Mecanismos IPC System V Ampliación de Sistemas Operativos (prácticas) E.U. Informática en Segovia Universidad de Valladolid Mecanismos IPC System V: generalidades (1) Existen tres tipos de mecanismos IPC
Más detallesTema 4: Sockets: Un interfaz con TCP/IP
Tema 4: Sockets: Un interfaz con TCP/IP Introducción. Conceptos básicos. Dirección de un socket. Llamadas básicas de los sockets. Diferencias entre BSD-Sockets y WinSockets. Asignación de puertos a procesos.
Más detallesRPC. Llamadas a Procedimientos Remotos (RPC) Paradigmas. Conceptos. Modelo Conceptual
Llamadas a Procedimientos Remotos (RPC) Basado en el libro Internetworking with TCP/IP. Vol III. D. E Comer y D. Stevens Algunas Ilustraciones se tomaron de Practical Unix Programming. K. Robbins y Robbins
Más detallesLABORATORIO DE RC: PRÁCTICA 4: IMPLEMENTACIÓN DE UN CLIENTE DE CORREO
UNIVERSIDADE DA CORUÑA Departamento de Tecnoloxías da Información e as Comunicacións LABORATORIO DE RC: PRÁCTICA 4: IMPLEMENTACIÓN DE UN CLIENTE DE CORREO PRÁCTICA 4: Implementación de un Cliente de Correo
Más detallesRedes (IS20) Ingeniería Técnica en Informática de Sistemas. http://www.icc.uji.es. CAPÍTULO 8: El nivel de transporte en Internet
Redes (IS20) Ingeniería Técnica en Informática de Sistemas http://www.icc.uji.es CAPÍTULO 8: El nivel de transporte en Internet ÍNDICE 1. Introducción Curso 2002-2003 - Redes (IS20) -Capítulo 8 1 1. Introducción
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 detalles7. Manejo de Archivos en C.
7. Manejo de Archivos en C. Los datos que hemos tratado hasta el momento han residido en la memoria principal. Sin embargo, las grandes cantidades de datos se almacenan normalmente en un dispositivo de
Más detallesSistemas Operativos I Manual de prácticas
Sistemas Operativos I Manual de prácticas Grupo de Sistemas Operativos (DSIC/DISCA) Práctica 3: Procesos POSIX ANTES DE EMPEZAR...... 2 PRÁCTICA 3: PROCESOS POSIX... 2 CREACIÓN DE PROCESOS MEDIANTE FORK...
Más detallesSOCKETS en Linux. Lic. Leonardo de - Matteis. Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur 2011
Introducción al uso de SOCKETS en Linux Lic. Leonardo de - Matteis Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur 2011 Interfaz de programación de aplicaciones NAPI
Más detallesTema 4.1: - TRANSPORTE-
Tema 4.1: - TRANSPORTE- -Introducción - Terminología OSI - Tipologia y complejidad - Servicios - Calidad de servicio - Conexiones de transporte - Transporte en Internet - Introducción. Su función básica
Más detallesDESARROLLO DE APLICACIONES DISTRIBUIDAS. SOCKETS en UNIX
DESARROLLO DE APLICACIONES DISTRIBUIDAS PRÁCTICAS CURSO 2002-2003 SOCKETS en UNIX 1. Los SOCKETS en OSI/ISO - Como ya conocéis, el modelo OSI/ISO estructura los diferentes elementos que conforman una red
Más detallesEl lenguaje C. #define MAX LINEA 1000 /* maximo tamanio de linea de entrada */
Principios de Programación El lenguaje C 1. Variables locales y globales 1.1. Variables locales Las funciones permiten al programador modularizar un programa. Todas las variables declaradas en las definiciones
Más detallesConcurrencia. Primitivas IPC con bloqueo
Concurrencia Primitivas IPC con bloqueo Primitivas de IPC con bloqueo La solución de Peterson es correcta, pero tiene el defecto de requerir espera ocupada: Cuando un proceso quiere entrar en su región
Más detallesAplicaciones Cliente/Servidor en Gambas Prof: Mileti, P.
Aplicaciones Cliente/Servidor en Gambas Prof: Mileti, P. Al igual que un usuario se comunica con el programa por medio del teclado, dos programas se pueden comunicar entre sí por medio Sockets. Se podría
Más detallesARQUITECTURA DE REDES Laboratorio
1nsloo.cl ARQUITECTURA DE REDES Laboratorio Práctica 2: Ejercicios de aplicación de Sockets en C 1. OBJETIVOS. El objetivo de esta práctica es que el alumno llegue a conocer los principales conceptos relacionados
Más detallesCurso de Redes Computadores 1 Tema 3 Introducción a la capa de transporte. Interfaz de programación en redes. Sockets.
Curso de Redes Computadores 1 Tema 3 Introducción a la capa de transporte. Interfaz de programación en redes. Sockets. Prof. Ricardo Gonzalez Redes de Computadores Tema 3 1 1 Modelo Cliente-Servidor Dos
Más detallesUniversidad Simón Bolívar Departamento de Computación y Tecnología de la Información Curso de Redes I CI-4815 Trimestre Septiembre Diciembre 2013
Universidad Simón Bolívar Departamento de Computación y Tecnología de la Información Curso de Redes I CI-4815 Trimestre Septiembre Diciembre 2013 Proyecto I Autores: Lairon Acosta. Carnet: 09-10927 Jueves
Más detallesAnálisis Experimental de la Transmisión de Datos
UNIVERSIDAD TÉCNICA FEDERICO SANTA MARÍA DEPARTAMENTO DE ELECTRÓNICA Análisis Experimental de la Transmisión de Datos ELO322 Redes de Computadores I Pablo Ahumada D. Jorge Cápona G. Resumen Se muestra
Más detallesProgramación con Sockets
Programación con Sockets INTRODUCCIÓN 1 Qué son los Sockets? Son un mecanismo de comunicación entre procesos: Dentro de una misma máquina. Distribuidos en diferentes máquinas. Que pueden ser identificados
Más detallesProgramación de aplicaciones distribuidas usando sockets
Programación de aplicaciones distribuidas usando sockets 1 a Versión: José Luis Díaz. Octubre 1994. 2 a Versión: José Ramón Arias. Nov. 1998, Oct. 1999, Oct. 2000. Índice general 1. Programación de aplicaciones
Más detallesARQUITECTURA DE REDES Laboratorio PRÁCTICA 2: MANUAL DE SOCKETS EN C. Grado en Ingeniería Informática Curso 2014/15
ARQUITECTURA DE REDES Laboratorio PRÁCTICA 2: MANUAL DE SOCKETS EN C Grado en Ingeniería Informática Curso 2014/15 ÍNDICE 1. INTRODUCCIÓN.. 3 1.1 La familia de protocolos TCP/IP. 3 1.2 Nivel de red (IP)..
Más detalles1. Sistema Operativo Unix
1. Sistema Operativo Unix 1.1 Introducción al S.O. Unix y su entorno 1.2 Subsistema de Archivos 1.3 Subsistema de Procesos 1.4 Políticas de Gestión de Memoria Dpto. Lenguajes y Sistemas Informáticos. Universidad
Más detallesRESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA
UNED Centro Asociado de Cádiz RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA 1. OBJETOS Cualquier elemento del programa es un objeto. Un programa es un conjunto de objetos que se comunican entre sí
Más detallesMensajes. Interbloqueo
CONCURRENCIA DE PROCESOS Preparado por: Angel Chata Tintaya (angelchata@hotmail.com) Resumen Los procesos comparten variables globales, comparten y compiten por recursos, se ejecutan simultáneamente intercalándose
Más detallesLENGUAJE. Tema 1 - Introducción
LENGUAJE Tema 1 - Introducción HISTORIA DEL LENGUAJE C El lenguaje de programación C fue creado por Dennis Ritchie cuando trabajaba en Bell Laboratories de AT&T junto con Ken Thompson en el diseño del
Más detallesModem IBM Compatible. IBM Compatible. Ethernet IBM AS/400. Laser printer. Workstation. Mac II. El Interfaz. Socket. versión perliminar
IBM Compatible Modem IBM Compatible Ethernet IBM AS/400 Laser printer Workstation Mac II El Interfaz Socket versión perliminar ÍNDICE 1. INTRODUCCIÓN. 2. QUÉ ES UN SOCKET?. 2.1. Dominio de un socket. 2.2.
Más detallesPráctica 2 Programación de Aplicaciones Distribuidas: Sockets TCP. Laboratorio de Comunicación de Datos ITT Telemática 26 de Septiembre 2011
Práctica 2 Programación de Aplicaciones Distribuidas: Sockets TCP Laboratorio de Comunicación de Datos ITT Telemática 26 de Septiembre 2011 Introducción Aplicaciones Orientadas a Conexión TCP:Servicio
Más detallesJuan de Dios Murillo Morera e-mail: jmurillo@una.ac.cr Santiago Caamaño Polini e-mail: scaamano@costarricense.cr INTRODUCCIÓN
UNICIENCIA 24 pp. 83-89 2010 IMPLEMENTACIÓN DE UN SERVIDOR FTP UTILIZANDO EL MODELO CLIENTE/SERVIDOR MEDIANTE EL USO DE SOCKETS EN LENGUAJE C UNIX CON EL FIN DE MEJORAR LOS TIEMPOS DE RESPUESTA EN LA RED
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 detallesIntroducción a las Redes de Computadoras. Obligatorio 2 2011
Introducción a las Redes de Computadoras Obligatorio 2 2011 Facultad de Ingeniería Instituto de Computación Departamento de Arquitectura de Sistemas Nota previa - IMPORTANTE Se debe cumplir íntegramente
Más detallesMemoria compartida y semáforos r/w. La página del manual que podría servir para describir estas funciones es la siguiente:
(3 ptos) Memoria Compartida y Semáforos R/W 1. Objetivo En esta práctica se pretende crear una librería que dé la funcionalidad de un semáforo para resolver problemas con múltiples lectores y escritores
Más detallesComunicación entre Procesos
Sincronización y Comunicación de Procesos Sincronización y Comunicación de Procesos Sincronización Sincronización Comunicación Comunicación Condiciones de Condiciones de Carrera Carrera Memoria Memoria
Más detallesSistemas Operativos. Iván Bernal, Ph.D. 4. Escuela Politécnica Nacional email: imbernal@mailfie.epn.edu.ec. Copyright @2002, I.
Sistemas Operativos Clase # 9 Tipos de llamadas al Sistema Viernes, 3 de Mayo de 2002 Agenda Sorpresa! no hay prueba. Tipos de llamadas al sistema. Iván Bernal, Ph.D. Escuela Politécnica Nacional email:
Más detallesCDI Exclusión mutua a nivel alto. conceptos
conceptos El concepto de usar estructuras de datos a nivel alto libera al programador de los detalles de su implementación. El programador puede asumir que las operaciones están implementadas correctamente
Más detallesSistemas Operativos: Programación de Sistemas. Curso 2006-07. Oscar Déniz Suárez Alexis Quesada Arencibia Francisco J.
Tema 7 : Comunicación mediante sockets Sistemas Operativos: Programación de Sistemas Oscar Déniz Suárez Alexis Quesada Arencibia Francisco J. Santana Pérez Curso 2006-07 Introducción Los sockets (también
Más detallesAnalista Universtiario en Sistemas. Sistemas Operativos. IPC - Sockets SOCKETS
SOCKETS Introducción Permiten la comunicación entre dos o más procesos ejecutando en un mismo equipo o equipos independientes La comunicación que posibilitan es full-duplex (bi-direccional) Sigue el modelo
Más detallesModelo de Objetos Distribuidos
Remote Method Invocation Modelo de Objetos Distribuidos Un objeto remoto es un objeto cuyos métodos pueden ser invocados desde otra máquina virtual de java, potencialmente en un host diferente. Modelo
Más detallesSistema de Captura Electrónica
Sistema de Captura Electrónica Instructivo de Instalación y Configuración de Lote Server a PC Versión del Documento v2.01 INDICE INDICE... 2 Consideraciones generales de las aplicaciones... 4 Especificaciones
Más detallesPreliminares. Tipos de variables y Expresiones
Preliminares. Tipos de variables y Expresiones Felipe Osorio Instituto de Estadística Pontificia Universidad Católica de Valparaíso Marzo 5, 2015 1 / 20 Preliminares Computadoras desarrollan tareas a un
Más detallesMICQ. Trabajo Práctico Final Seminario de Ingeniería en Informática I 75.35. Facultad de Ingeniería, UBA. Junio 2002. Cátedra: Pablo Cosso
MICQ Facultad de Ingeniería, UBA. Junio 2002 Trabajo Práctico Final Seminario de Ingeniería en Informática I 75.35 Cátedra: Pablo Cosso Alumno: Diego Fernando Montaldo 75.300 1 de 1 Introducción Este documento
Más detallesTEMA 2 Técnicas básicas de construcción de aplicaciones distribuidas. Universidad de Oviedo / Dpto. de Informática
TEMA 2 Técnicas básicas de construcción de aplicaciones distribuidas Lección 2 Modelos de aplicaciones distribuidas Modelos de aplicaciones distribuidas Una aplicación distribuida sería una pieza de software
Más detallesMemoria Compartida. Llave de acceso. Segmento Compartido. estructura definida en A. estructura definida en B. Proceso B. Proceso A
Memoria Compartida Llave de acceso 1234 Segmento Compartido apuntador estructura definida en A apuntador estructura definida en B Proceso A Proceso B Dr. Roberto Gómez Diapo No. 1 Librerías y estructuras
Más detallesNivel de Transporte en Internet
Nivel de Transporte en Internet Nivel de Transporte en TCP/ La capa de transporte transmite mensajes entre las aplicaciones de dos ordenadores. La programación de aplicaciones sobre el nivel de transporte
Más detallesSistema Cliente Servidor Con Sockets
Sistema Cliente Servidor Con Sockets Rafael Benedicto Tovar Antonio Soler Muñoz 0 Índice 1. Resumen del proyecto 2 Introducción teórica 2.1 - Qué es un socket? 2.2 - Dominios de comunicación 2.3 - Tipos
Más detallesTema 4. Gestión de entrada/salida
Tema 4. Gestión de entrada/salida 1. Principios de la gestión de E/S. 1.Problemática de los dispositivos de E/S. 2.Objetivos generales del software de E/S. 3.Principios hardware de E/S. 1. E/S controlada
Más detalles18 y 19 Sistemas de Archivos Distribuidos y Tarea 05
18 y 19 Sistemas de Archivos Distribuidos y Tarea 05 Prof. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco efranco.docencia@gmail.com Estructuras de datos (Prof. Edgardo A. Franco)
Más detallesMecanismo(s) de intercambio de información entre 2 ó más computadores conectados entre sí o a través de otros.
Comunicaciones Comunicaciones: Mecanismo(s) de intercambio de información entre 2 ó más computadores conectados entre sí o a través de otros. Terminología: Trama: unidad de información a transmitir Medio:
Más detallesContenidos. Archivos en C++ Archivos en C++ Introducción
Contenidos 1. Introducción. 2. Manipulación de ficheros. 3. Organización de archivos. 4. Tipo de almacenamiento. 5. Biblioteca de flujos. 6. Operaciones asociadas a archivos: Abrir fichero, Cerrar fichero,
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 detallesPrácticas de Sistemas operativos
Prácticas de Sistemas operativos David Arroyo Guardeño Escuela Politécnica Superior de la Universidad Autónoma de Madrid Tercera Semana: Comunicación entre procesos con Tuberías 1 Entregas 2 Introducción
Más detallesIngeniería Técnica de Telecomunicación, esp. Telemática Universidad de Jaén
Contenido. Introducción Primitivas Sockets orientadas a conexión (TCP) Primitivas orientadas a no conexión (UDP) Programación con Sockets en Internet Funciones sockets Funciones auxiliares 1 Bibliografía.
Más detallesSistemas de archivos distribuidos. Alvaro Ospina Sanjuan alvaro.ospina@correo.upb.edu.co
Sistemas de archivos distribuidos Alvaro Ospina Sanjuan alvaro.ospina@correo.upb.edu.co >Abstracción del sistema operativo para representar y organizar los recursos de almacenamiento >Se debe hacer la
Más detallesIntroducción a las redes de computadores
Introducción a las redes de computadores Contenido Descripción general 1 Beneficios de las redes 2 Papel de los equipos en una red 3 Tipos de redes 5 Sistemas operativos de red 7 Introducción a las redes
Más detallesIntroducción a la programación orientada a objetos
Introducción a la programación orientada a objetos 1. Introducción a la programación orientada a objetos 2. Las clases 3. El tipo Struct 4. Diferencias entre Class y Struct 5. Pilares de la Programación
Más detalles