HDK Technical Reference

Data, copying

DDI and ODDI support various facilities for copying data between different locations. These are summarized in the following table:

Action DDI ODDI
Copy between kernel addresses bcopy(D3) bcopy(D3oddi)
Copy from user space to kernel space copyin(D3) copyin(D3oddi)
Copy from kernel space to user space copyout(D3) copyout(D3oddi)
Copy between any two addresses -- copyio(D3oddi)
Copy between any two addresses and update uio structure uiomove(D3) --
Copy between any two addresses and update user area -- iomove(D3oddi)
Copy byte from user space to kernel space -- fubyte(D3oddi)
cpass(D3oddi)
Copy 32-bit word from user space to kernel space -- fuword(D3oddi)
Copy byte from kernel space to user space -- subyte(D3oddi)
passc(D3oddi)
Copy 32-bit word from kernel space to user space -- suword(D3oddi)

 Action                                             |  DDI           ODDI
 ---------------------------------------------------|-------------------------------
 Copy between kernel addresses                      |  bcopy(D3)     bcopy(D3oddi)
 Copy from user space to kernel space               |  copyin(D3)    copyin(D3oddi)
 Copy from kernel space to user space               |  copyout(D3)   copyout(D3oddi)
 Copy between any two addresses                     |  --            copyio(D3oddi)
 Copy between any two addresses and update uio      |  uiomove(D3)   --
 structure                                          |
 Copy between any two addresses and update user area|  --            iomove(D3oddi)
 Copy byte from user space to kernel space          |  --            fubyte(D3oddi)
                                                    |                cpass(D3oddi)
 Copy 32-bit word from user space to kernel space   |  --            fuword(D3oddi)
 Copy byte from kernel space to user space          |  --            subyte(D3oddi)
                                                    |                passc(D3oddi)
 Copy 32-bit word from kernel space to user space   |  --            suword(D3oddi)

© 2000 The Santa Cruz Operation, Inc. All rights reserved.
HDK 7.1.0b - 15 March 2000