IIC2333 / foro-2019-1

Foro oficial del curso IIC2333 - Sistemas Operativos y Redes, semestre 2019-1.
2 stars 0 forks source link

Sobreescribir memoria compartida #54

Closed jorgeriesco closed 5 years ago

jorgeriesco commented 5 years ago

Hola,

¿Es posible sobre escribir la memoria compartida con nuevos tipos de datos o estructuras? Ahora bien, si no fuera directamente posible ¿Se puede borrar lo que esta en la memoria compartida (free?) para almacenar nueva información de otro tipo?

De esto surge una pregunta más general ¿Como borro la memoria compartida, cosa de no tener leaks? ¿Es simplemente, a grandes rasgos, hacer free del puntero a esa memoria?

IchottMano commented 5 years ago

Hola!

Siempre puedes sobreescribir la memoria compartida, eso se puede lograr con las funciones memcpy, strcpy (dejo links a sus paginas man en la issue #49 ) o también puedes reemplazar byte por byte como si fuera un arreglo.

Para borrar la memoria compartida, basta con usar la función shmctl vista en la ayudantía en el proceso que creó el segmento de memoria compartida, así cuando todos los procesos que usan la memoria mueren, esta es liberada.

Saludos!