es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tag: MMAP

MADV_DONTNEED en memoria compartida anónima.

Me gustaría reclamar páginas para la región de memoria asignada por mmap (MAP_SHARED | MAP_ANONYMOUS). Para este propósito, llamé a madvise (MADV_DONTNEED) para esta memoria compartida desde todos los procesos que pueden ver esta región compartida. Sin embargo, las páginas físicas de esta región compartida no se pueden liberar y . . . Read more

Proteja algunas direcciones de memoria en una página.

Estoy pensando en reimplantar la función malloc(3) (así como free(3), realloc(3) y calloc(3)) utilizando las llamadas al sistema mmap(2) y munmap(2) (ya que sbrk(2) está obsoleto en algunos sistemas operativos). Mi estrategia para asignar bloques de memoria en la página devuelta por mmap(2) sería almacenar metadatos justo antes del bloque . . . Read more

¿Cuántas estructuras se incluyen en un archivo en C?

Necesito abrir un archivo que contiene información y mapear esos datos usando mmap. Los datos serán accedidos mediante la conversión de la llamada mmap con una estructura. El problema es que el archivo contiene información para llenar aproximadamente 3 estructuras debido a que los datos están repetidos. Por lo tanto, . . . Read more

¿Por qué falló el mapeo de memoria al `STDOUT_FILENO`?

He escrito algún código para probar la llamada al sistema mmap. Aquí quiero asignar el espacio de memoria virtual a STDOUT y, a través del puntero ptr que devuelve mmap, imprimir una cadena. int main() { void *ptr = mmap(NULL, 1024, PROT_WRITE | PROT_READ, MAP_PRIVATE, STDOUT_FILENO, 0); memcpy(ptr, "hello", 6); . . . Read more