Hola deberias de revisar:
http://man7.org/linux/man-pages/man2/mmap.2.htmlSegun lo ahi descrito
void *mmap(void *addr, size_t length, int prot, int flags, int fd, off_t offset);
Necesitas el filedescriptor previamente abierto con la funcion open, y tu tienes que reservar la memoria suficiente para el tamaño de archivo que quieras...
Y las validaciones si existe las debes de hacer manualmente como ya la habias hecho en tu otro post:
https://foro.elhacker.net/programacion_cc/ayudahacer_un_programa_en_c_que_haga_lo_mismo_que_hace_el_comando_cp_en_ubuntu-t456225.0.htmlTe recomiendo usar tambien la libreria stat.h para determinar si el archivo existe y que tamaño tiene.
Saludos!