[轉] uCLinux elf2flt stack size

出處:http://jyhshin.pixnet.net/blog/post/26588078-uclinux-elf2flt-stack-size

  1. 一般來說,如果沒有特別設定,預設值為 4K bytes 的 stack size。
  2. 可以在 link 時,指定 stack size 大小,-elf2flt=-s32768,-s 用來指定 elf2flt 的 stack size。
  3. 也可以用環境參數 FLTFLAGS 來指定 stack size。
    FLTFLAGS=”-s 10240″
    export FLTFLAGS
  4. 在普通 linux 下,則使用下列方式來改變 stack 大小。

ld –stack=
gcc -Wl,–stack=

  • 在一般 linux 下,已經捨棄 ld 來改變 stack 大小,而是經由 setrlimit 函數動態設定。或是可以經由 ulimit 指令立即變更預設的 stack 大小。ulimit -c -n -s 可以查詢目前 stack 大小。
  •  // 設定 stack 為無限大

    struct rlimit rlim;  
    rlim.rlim_cur = rlim.rlim_max = RLIM_INFINITY;
    setrlimit(RLIMIT_STACK, &rlim);
    未經允許不得轉載:GoMCU » [轉] uCLinux elf2flt stack size