Utilizamos cookies propias y de terceros para mejorar la experiencia de navegación, y ofrecer contenidos y publicidad de interés.
Al continuar con la navegación entendemos que se acepta nuestra política de cookies.
Iniciar sesión Cerrar
Correo:
Contraseña:
Entrar
Recordar sesión en este navegador
Crear cuenta

Linux/Programación - ¿Se pueden ver los punteros de un programa a otro?

Vista:
Me gusta: Está pregunta es útil y esta clara
0
No me gusta: Está pregunta no esta clara o no es útil
 
Asunto:¿Se pueden ver los punteros de un programa a otro?
Autor:Fran (4 intervenciones)
Fecha:25/01/2005 12:04:48
Soy programador aficionado y he llegado a una situacion resultado de mi poca información al respecto.
Quiero acceder desde un programa distinto a la información de memoria de otro programa, para ello le paso el puntero en una página de memoria compartida. Sin embargo, aunque no da error no soy capaz de visualizar el contenido.
Los punteros son identicos tanto en un programa como en otro.
¿ Un impedimiento del SO, del lenguaje?
¿ Donde está el problema?, ¿serán las colas de mensajes la única solución?
Responder Subir
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:RE:¿Se pueden ver los punteros de un programa a ot
Autor:chuidiang (92 intervenciones)
Fecha:28/01/2005 08:42:12
Url:
En linux cada programa tiene su propia zona de memoria, independiente de la del otro programa. Desde un programa es imposible acceder a la memoria de otro programa (ni a posta ni por error). Gracias a eso unix es un sistema bastante fiable y con pocos cuelgues.

Sin embargo, unix da posibilidad de usar "recursos compartidos". Puedes crear una zona de memoria compartida que sea visible desde ambos programas (o más de dos). Tabmién tienes semáforos y colas de mensajes, para comunicar los programas entre sí.

En http://www.geocities.com/chuidiang/mem_comp/mem_comp.html tienes un ejemplo de como crear y usar "memoria compartida".

Se bueno.
Comentar Subir
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:RE:¿Se pueden ver los punteros de un programa a ot
Autor:FRan (4 intervenciones)
Fecha:30/01/2005 23:09:45
Entonces parece bastante jodido intercambiar información a traves de la memoria compartida puesto que no se puede utilizar la dinamica (malloc).
Y es por lo tanto imposible de aplicar cuando intentas compartir una sola vez un dato del que no conoces el tamaño a priori.

Colas demensajes tiene toda lapinta de tener poco rendimiento, semaforos son claramente necesarios.

¿Alguna sugerencia?
Comentar Subir
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:RE:¿Se pueden ver los punteros de un programa a ot
Autor:chuidiang (92 intervenciones)
Fecha:31/01/2005 06:43:23
Url:
Normalmente la memoria compartida es para algunaa estructuras de datos conocidas. Puedes hacer una zona de memoria lo suficientemente grande como para dejar los datos que necesites. Debes luego inventar un mecanismo para avisar de que ya hay datos y dónde están, quizás la cola de mensajes.

Las colas de mensajes no tienen por qué ser ineficientes. Date cuenta que es todo dentro del mismo ordenador y en memoria.

Se bueno.
Comentar Subir