Linux kernel 在s390上,如何将_复制到_用户?
在s390体系结构上,虚拟内核和用户地址空间永远不会同时存在,因此Linux kernel 在s390上,如何将_复制到_用户?,linux-kernel,virtual-address-space,address-space,zseries,Linux Kernel,Virtual Address Space,Address Space,Zseries,在s390体系结构上,虚拟内核和用户地址空间永远不会同时存在,因此复制到用户如何工作?针对s390的复制到用户在这里实现: uaccess是指向复制用户实际实现的指针。它设置在这里(grep uaccess):。uaccess共有4种实现方式,具体取决于模式: uaccess\u mvcos\u开关,uaccess\u pt,uaccess\u mvcos和uaccess\u std 例如,uaccess_标准如下: 使用mvcp/mvcs机制: 还有:www.tachyonsoft.com/
复制到用户如何工作?针对s390的复制到用户在这里实现:
uaccess
是指向复制用户实际实现的指针。它设置在这里(grep uaccess):。uaccess
共有4种实现方式,具体取决于模式:
uaccess\u mvcos\u开关
,uaccess\u pt
,uaccess\u mvcos
和uaccess\u std
例如,uaccess_标准如下:
使用mvcp
/mvcs
机制:
还有:www.tachyonsoft.com/s8139db.pdfThank!因此,用户和内核地址空间实际上是同时存在的(分别以主空间和主空间的形式)。您不能从非特权模式访问内核空间。
4 * Standard user space access functions based on mvcp/mvcs and doing
5 * interesting things in the secondary space mode.
82 size_t copy_to_user_std(size_t size, void __user *ptr, const void *x)
83 {
84 unsigned long tmp1, tmp2;
85
86 tmp1 = -256UL;
87 asm volatile(
88 "0: mvcs 0(%0,%1),0(%2),%3\n"