next up previous
Next: Miscalleanous Up: The library Previous: lseek System Call

Memory Mapping

The mmapped access can be prepared via
   void *ArwvmeMMap(int fd, int size);
which maps a buffer (size bytes) in user space on the 4-32K VMEbus window in kernel space. No mapping is really done, the mm layer handles the page faults via arwvme_vma_nopage(), which is registered for this requested memory area. The call returns the pointer to the user buffer or null, if the mapping was impossible. The start of the user buffer maps to VMEbus address 0x0. This mapping can be altered by using
   int ArwvmeSetVmeWindow(int fd, unsigned int addr);
which remaps the user buffer to the new VMEbus start address 'addr'. addr is handled as addr &tex2html_wrap_inline194(win_size - 1), the user can only shift in entities of win_size.


next up previous
Next: Miscalleanous Up: The library Previous: lseek System Call


Fri Jul 2 08:09:45 MEST 1999