busybox + coredump

來源:互聯網
上載者:User

前提:
我所使用的 busybox 版本為 1.5.0

1. 如何設定時區?
設定環境變數 TZ 即可。
需要注意的有:
(1) 如果要設定時區為東八區(CST), 可以將 TZ 設定為 UTC-8(不含雙引號)。UTC -8 表示“本地時間-8 之後等於 UTC”  而不是“UTC 時間-8之後等於本地時間”。根據 info tzset。
(2) 程式如果是從 /etc/inittab 中以 respawn 方式啟動,則在 /etc/profile 中設定 TZ 對程式無效。我的解決方案是在程式開頭用代碼設定一下時區,調用 setenv 函數即可。info setenv 獲得更多協助資訊。

2. busybox /etc/inittab
格式
<id>:<runlevels>:<action>:<process>

合法的 action 包括

sysinit, 
respawn,
askfirst,
wait,
once,
restart,
ctrlaltdel,
and shutdown.

執行順序

sysinit: init 等待所有此類進程完成.
wait : init 等待進程完成.
once : init 不等待其完成.   
respawn : 當進程退出時,自動重新運行之。

所有的 action 依照其在 inittab 檔案中出現的順序運行。

3. 如何使能/禁用 core dump 功能?
啟用:需要2個條件確一不可。

編譯時間通過 make menuconfig 指定在  init 選項下啟用 CONFIG_FEATURE_INIT_COREDUMPS。
在根檔案系統的根目錄下建立名為 .init_enable_core 的空檔案:touch /.init_enable_core。
重啟系統後生效。

禁用刪去 /.init_enable_core 檔案即可。
重啟系統後生效。

4. pthread_create 失敗,說 Cannot allocate memory 這是什麼原因?
是因為記憶體不夠用了。推薦使用 strace 工具來跟蹤此類問題。
busybox 預設的進程棧空間為 8 MB,從嵌入式應用的角度,這麼大的進程棧空間有些太大了,在記憶體緊張的系統,很容易導致線程建立失敗。
修改方法有二:
(1)  執行主進程前,執行命令 ulimit 來調整進程的棧空間大小:
ulimit -s  <棧空間大小,單位KB>
(2)  直接修改 busybox 的 init.c 檔案。參考 info getrlimit,或者 info setrlimit。

5. 為什麼 mount -t nfs 失敗?
請確認在 mout 選項中已經使能了 NFS 支援
Location:                                                                                                                         │
  │     -> Linux System Utilities                                                                                                       │
  │       -> mount (MOUNT [=y]) 
 [*]   Support mounting NFS file systems

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.