首页 > *nix技术, 内核技术 > Linux Kernel Stack Overflow/Linux 内核栈溢出(续)

Linux Kernel Stack Overflow/Linux 内核栈溢出(续)

2012年2月7日 发表评论 阅读评论 8,248 次浏览

前面曾提到Linux 2.6.x内核在X86 32位架构上可以配置内核栈大小(在进行内核编译时,Kernel hacking下进行配置,默认8K,配置之后对应的宏为CONFIG_4KSTACKS),具体生效代码可以看:
http://lxr.linux.no/#linux+v2.6.36/arch/x86/include/asm/page_32_types.h

#ifdef CONFIG_4KSTACKS
#define THREAD_ORDER    0
#else
#define THREAD_ORDER    1
#endif
#define THREAD_SIZE     (PAGE_SIZE << THREAD_ORDER)

通过CONFIG_4KSTACKS宏来定义THREAD_SIZE大小,但是在2.6.37后的内核代码里都已经找不到这个定义了:
http://lxr.linux.no/#linux+v2.6.37/arch/x86/include/asm/page_32_types.h
http://lxr.linux.no/#linux+v2.6.38/arch/x86/include/asm/page_32_types.h
http://lxr.linux.no/#linux+v3.1/arch/x86/include/asm/page_32_types.h
后来一查才知道CONFIG_4KSTACKS已经被移除了:https://lkml.org/lkml/2010/6/29/107,好吧,继续8K内核栈。

转载请保留地址:http://www.lenky.info/archives/2012/02/1035http://lenky.info/?p=1035


备注:如无特殊说明,文章内容均出自Lenky个人的真实理解而并非存心妄自揣测来故意愚人耳目。由于个人水平有限,虽力求内容正确无误,但仍然难免出错,请勿见怪,如果可以则请留言告之,并欢迎来讨论。另外值得说明的是,Lenky的部分文章以及部分内容参考借鉴了网络上各位网友的热心分享,特别是一些带有完全参考的文章,其后附带的链接内容也许更直接、更丰富,而我只是做了一下归纳&转述,在此也一并表示感谢。关于本站的所有技术文章,欢迎转载,但请遵从CC创作共享协议,而一些私人性质较强的心情随笔,建议不要转载。

法律:根据最新颁布的《信息网络传播权保护条例》,如果您认为本文章的任何内容侵犯了您的权利,请以Email或书面等方式告知,本站将及时删除相关内容或链接。

  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.