[cfinformatica-grup] Re: [cfinformatica-grup] Dubte sobre la UF2 de M09-Programació de processos i serveis (DAM)

  • From: Alejandro Castán Salinas <acastan@xxxxxxxx>
  • To: cfinformatica-grup@xxxxxxxxxxxxx
  • Date: Fri, 26 Jun 2015 19:14:56 +0200

El 26/06/15 a las 10:38, Juan Fco Gonzalez escribió:

El meu dubte és cóm treballar el primer contingut (programació
multiprocés, que sembla enfocat a la programació en paral.lel). Em
sona una mica la utilització d'algunes llibreries en C per la
comunicació entre processos mitjançant missatges.
Al material de l'IOC aquest primer contingut veig que l'utilitzan com
una introducció general al concepte de processos i parlen d'una classe
java anomenada Executor que jo la veig com una abstracció per la
utilització de threads, no com comunicació entre processos independents.

En fí, si algú li sona aquest mòdul i te alguna idea de com treballar
la programació multiprocés o en paral.lel, qualsevol consell és benvingut.

Hola

Els apunts de la IOC estan molt bé per programació multifil en Java,
però per processos jo prefereixo les crides POSIX des de C: fork(),
exec(), wait() , i si dona temps, gestió de senyals amb kill() i signal().

El que no em dona temps a la UF es veure la comunicació entre processos
mitjançant pipes, fifos, semafors, cues de missatges, memòria
compartida, etc. Però no és cap inconvenient perquè a la següent UF
veuen ja comunicació mitjançant sockets.

T'envio en privat exercicis, apunts i examens per si et serveixen
d'alguna cosa. En quan tingui un moment els penjaré també a la web de
compartir materials:
https://sites.google.com/a/xtec.cat/informatica_comunicacions/?pli=1

Bàsicament el que donava a processos, amb el poc temps que tenim i que
hem de compartir amb fils, és:

- Definición de programa-proceso-hilo, tabla de procesos, estado de un
proceso, directorio /proc
- Herramientas del s.o. para trabajar con procesos: ps, pstree, top,
kill, pkill, nohup, nice, renice, lsof, pmap
- Proceso padre y proceso hijo. ¿Qué pasa cuando uno de los dos muere?
- Funciones C para crear procesos: system, fork, execve
- Funciones C para obtener el PID: getpid y getppid
- Funciones C para sincronizar: wait y waitpid
- Funciones C para acceder a variables de entorno: getenv y putenv
- Funciones C para obtener y establecer límites del s.o.: getrlimit y
setrlimit

- Señales del sistema
- Gestión de las señales: ignorar, gestión por defecto, gestión
programada y enmascaramiento
- Gestión programada de las señales: ¿Qué pasa cuando procesando una
señal llega otra? ¿Funciones seguras?
- Funciones C para enviar señales: kill
- Funciones C para gestionar señales: signal y sigaction, sigprocmask,
sigpending y sidsuspend
- Funciones C que permiten crear cronómetro: alarm + señal SIGALRM

Salut

--
Àlex Castán Salinas
Institut Ausiàs March
avinguda d’Esplugues, 38-42, 08034 Barcelona
telèfon. 93-203-33-32 (tardes) , 689-46-56-36

Other related posts: