当前位置: 技术问答>linux和unix
进程空间问题
来源: 互联网 发布时间:2017-03-03
本文导语: int copy_process(int nr,long ebp,long edi,long esi,long gs,long none, long ebx,long ecx,long edx, long fs,long es,long ds, long eip,long cs,long eflags,long esp,long ss) { struct task_struct *p; int i; struct file *f; p = (struct task_struct *) get_free_pag...
int copy_process(int nr,long ebp,long edi,long esi,long gs,long none,
long ebx,long ecx,long edx,
long fs,long es,long ds,
long eip,long cs,long eflags,long esp,long ss)
{
struct task_struct *p;
int i;
struct file *f;
p = (struct task_struct *) get_free_page();
if (!p)
return -EAGAIN;
task[nr] = p;
*p = *current; /* NOTE! this doesn't copy the supervisor stack */
...........................
我是学习的 赵的 0.11 的书
我还没有看到完代码
我发了个图片和这一段代码
我想问的是
p = (struct task_struct *) get_free_page();
这一页 内存 在 系统分配给一个进程的64M逻辑地址空间中吗
也就是 64M空间中 包含 这一页的内存吗 谢谢
|
这里的get_free_page()返回的是内核逻辑地址, 并不属于进程地址空间.