.TH bcopy() "" "" "DDI/DKI Kernel Routine"
.PC "Copy data between locations within the kernel"
.B "#include <sys/types.h>"
\fBvoid bcopy(\fIsource\^\fB, \fItarget\^\fB, \fIcount\^\fB)\fR
\fBcaddr_t \fIfrom\^\fB, \fIto\fB; size_t \fIcount\^\fB;\fR
.PP
.B bcopy()
copies
.I count
bytes from kernel address
.I source
to kernel address
.IR target .
If the the chunk of memory pointed to by
.I source
overlaps
.IR target ,
the results are undefined (and probably unwelcome).
.SH "See Also"
.B
bzero(),
copyin(),
copyout(),
DDI/DKI kernel routines,
uiomove(),
ureadc(),
uwritec()
.R
.SH Notes
.B bcopy()
has base or interrupt level.
It does not sleep.
.PP
A function can hold
driver-defined basic locks, read/write locks, and sleep locks
across a call to this function.
.PP
To copy data between kernel and user space, use
.BR copyin() ,
.BR copyout() ,
.BR uiomove() ,
.BR ureadc() ,
or
.BR uwritec () .
.PP
This function is equivalent to the library routine
.BR memcpy() .
