|
发表于 2006-6-29 11:59:48
|
显示全部楼层
>>是系统调用的代码使用的
其实不一定分的这么细,可以笼统的称为内核代码使用的。要细分的话,如果使用8k kernel stack,那么中断服务例程使用current的kernel stack;如果使用4k kernel stack,那么中断服务例程使用专用的interrupt kernel stack。
>>那么怎么传递参数的?
系统调用的参数是放在寄存器里的, eax, ebx, ecx,……
>>我觉得不会引起内存碎片。
碎片是相对的。如果运行时间很长了,难免会出现一些散布在内存里的单独的页。如果你要分配两页给一个新的进程作为内核堆栈,那么这些单独的页就是碎片了,是不能被直接利用的。 |
|