LINUX-0.11 fork()有关问题?

LINUX-0.11 fork()问题??
小弟在学习0.11 看到了 fork.c 有个问题想不明白 

C/C++ code


fork.c-->int copy_process(.....)函数中
p = (struct task_struct *) get_free_page ();
...........................
p->tss.esp0 = PAGE_SIZE + (long) p;    // 堆栈指针(由于是给任务结构p 分配了1 页
                                    // 新内存,所以此时esp0 正好指向该页顶端)。
p->tss.ss0 = 0x10;        // 堆栈段选择符(内核数据段)[??]。


那第二句为什么要指向系统的数据段呢 想不明白 他自己有空间(分了一页) 为什么不指向自己的空间呢?

我看了网上的一个注解 也不太明白 

我也把这个图片放到我空间相册里了(200.JPG),因为这里总看不到图 

谢谢你的回复!!!


1、赵博不是有个论坛吗?0.11和0.12的 好像叫oldLinux论坛 
2、看看 Linux内核设计与实现,这本书入门简单点

LINUX-0.11 fork()有关问题?

相关文章:

你感兴趣的文章:

标签云: