Data Transfer Services
The lists in this section show user-mode data access kernel services (primitives).
Kernel Service | Purpose |
---|---|
suword | Stores a word of data in user memory. |
fubyte | Fetches, or retrieves, a byte of data from user memory. |
fuword | Fetches, or retrieves, a word of data from user memory. |
copyin | Copies data between user and kernel memory. |
copyout | Copies data between user and kernel memory. |
copyinstr | Copies a character string (including the terminating null character) from user to kernel space. |
Additional kernel services allow data transfer between user mode and kernel mode when a uio structure is used, thereby describing the user-mode data area to be accessed. Following is a list of services that typically are used between the file system and device drivers to perform device I/O:
Kernel Service | Purpose |
---|---|
uiomove | Moves a block of data between kernel space and a space defined by a uio structure. |
ureadc | Writes a character to a buffer described by a uio structure. |
uwritec | Retrieves a character from a buffer described by a uio structure. |
Kernel services ending in “64”, such as suword64, copyin64 and so on, are deprecated in AIX® 6.1 and later. To maintain binary compatibility of applications, macros in the sys/uio.h header file redefine these services to their counterparts when compiling in 64-bit mode.