#include "gm_debug.h"
#include "gm_internal.h"
Functions | |
GM_ENTRY_POINT gm_status_t | gm_directcopy_get (struct gm_port *p, void *source_addr, void *target_addr, gm_size_t length, unsigned int source_instance_id, unsigned int source_port_id) |
This file contains the GM API function gm_directcopy_get().
|
gm_directcopy_get() copies data of length length bytes, specified at the address source_addr of the local process using the port port_id of the board source_instance_id to the memory area specified at the address target_addr of the current process. This implementation bypasses all of the protection of the operating system to provide a memory copy from one process's memory space to another one. The memory areas must have been registered by GM prior to calling this function in order to lock memory pages at their physical locations. There are no alignment or length constraints but the maximum performance will be reached with aligned addresses on both sides. This function is supported exclusively on Linux.
|