阅读Redhat 7.1的发布说明后,我看到了以下内容:
Process Stack Size Increased from 8KB to 16KB
Since Red Hat Enterprise Linux 7.1, the kernel process stack size has been increased from 8KB to 16KB to help large processes that use stack space.
我知道内核进程堆栈是驻留内存,在创建进程时进行分配,并且内存需要是连续的,在页大小为4096字节的x86_64中,内核需要为进程堆栈找到4页打算为2页。
我正在为一个使用Microblaze作为处理器的嵌入式板构建一个应用程序。为此我有Linux交叉编译。板卡有512 MB的内存,但是内核只知道256 MB的内存(DDR3的下半部分)。
这是系统的内存映射:
0x4000_0000 to 0x5FFF_FFFF -> Physical range of DDR3 (verified with cat /proc/meminfo)
0x4000_0000 to 0x4FFF_FFFF -> Known to linux and used by the kernel
0x5000_0000 to 0x5FFF_FFFF -> Mm