93 ret = memcpy_s(dest, max, src, count);
95 ret = ((max >= count) ?
_arm_user_copy(dest, src, count) : ERANGE_AND_RESET);
106 ret = memcpy_s(dest, max, src, count);
108 ret = ((max >= count) ?
_arm_user_copy(dest, src, count) : ERANGE_AND_RESET);
118 (VOID)memset_s(buf, len, 0, len);
size_t _arm_clear_user(void *addr, size_t bytes)
汇编代码实现 见于..\third_party\FreeBSD\lib\libc\arm\string\hw_user_copy.S 用户空间 <—> 内核空间的拷贝实现函数,...
size_t _arm_user_copy(void *dst, const void *src, size_t len)
STATIC INLINE BOOL LOS_IsUserAddressRange(VADDR_T vaddr, size_t len)
虚拟地址[vaddr,vaddr + len]是否在用户空间
size_t LOS_ArchCopyToUser(void *dst, const void *src, size_t len)
从内核空间拷贝到用户空间
INT32 LOS_UserMemClear(unsigned char *buf, UINT32 len)
清除用户空间数据
size_t arch_copy_from_user(void *dst, const void *src, size_t len)
size_t LOS_ArchCopyFromUser(void *dst, const void *src, size_t len)
INT32 LOS_CopyToKernel(VOID *dest, UINT32 max, const VOID *src, UINT32 count)
将用户空间的数据拷贝到内核空间
INT32 LOS_CopyFromKernel(VOID *dest, UINT32 max, const VOID *src, UINT32 count)
将内核数据拷贝到用户空间
size_t arch_copy_to_user(void *dst, const void *src, size_t len)
拷贝到用户空间