Прототип системного вызова
#include <sys/types.h>
#include <unistd.h>
#include <sys/mman.h>
int munmap (void *start, size_t length);
Описание системного вызова
Системный вызов munmap служит для прекращения отображения memory mapped файла в адресное пространство вычислительной системы. Если при системном вызове mmap() было задано значение параметра flags равное MAP_SHARED и в отображении файла была разрешена операция записи (в параметре prot использовалось значение PROT_WRITE), то munmap синхронизирует содержимое отображения с содержимым файла во вторичной памяти. После его выполнения области памяти, использованные для отображения файла, становятся недоступны текущему процессу.
Параметр addr является адресом начала области памяти, выделенной для отображения файла, т.е. значением, которое вернул системный вызов mmap().
Параметр length определяет ее длину и его значение должно совпадать со значением соответствующего параметра в системном вызове mmap().
При нормальном завершении системный вызов возвращает значение 0, при возникновении ошибки - значение -1.