在Linux2.2版本的内核中:
Linux把进程描述符和进程的内核态堆栈放在一个8K的存储区域内,如下图:
在Linux 2.6版本的内核中:
对于每个进程,Linux把两个不同的数据结构紧凑的存放在一个单独的为进程分配的存储区域内,包括:线程描述符(struct thresd_info)和内核态堆栈,这块存储区域的大小通常为8K(两个页框),如下图:
PS:图片来自《深入理解Linux内核》
不同Linux内核版本对内核态堆栈造成的影响。
最新推荐文章于 2022-12-13 19:54:59 发布