整理一些杂乱的内容.以下x86架构. Linux 内核栈大小 内核栈大小是固定的,默认为8k,曾经有选项可以设置为4k栈.由于大小固定,申请过大的栈内存,或者函数调用层次过深,都可能导致栈溢出. 关注默认4k还是8k栈,社区曾有过长时间讨论. 其中8k栈的缺点如下: 浪费内存. 由于内核4k分页,要创建一个内核栈就需要申请2块连续的4k页.当内存碎片严重,尤其内存紧张的时候,申请8k的连续内存,要比4k困难的多. 但貌似4k栈带来的麻烦更大,内核中许多bug都由4k栈太小,发生溢出导致的. 因此