![]() |
PCDVD數位科技討論區
(https://www.pcdvd.com.tw/index.php)
- 七嘴八舌異言堂
(https://www.pcdvd.com.tw/forumdisplay.php?f=12)
- - 請問Linux的程式自動結束,然後印出「Killed」,可能是什麼原因?
(https://www.pcdvd.com.tw/showthread.php?t=729582)
|
---|
請問Linux的程式自動結束,然後印出「Killed」,可能是什麼原因?
我是用C語言,
以前不是segment fault就是core dump... 現在遇到的是程式會自動結束, 然後只印出「Killed」 而且當的時間還不一定, 用top去看,程式也沒有異常... 我除錯很久發現一點, 就是有用到 system()才會當, 即使是這樣 system("echo test..."); 都會當掉 之前去查了資料, 也看不出所以然 程式有時候可能跑上百次才當, 有時候第一次就當了... 請問有人知道Linux的程式自動結束, 然後印出「Killed」, 可能是什麼原因嗎? |
應該是程式收到 KILL signal 所以自動結束掉.
至於為什麼會收到 KILL signal , 我猜是因為系統memory 不足, 所以Linux kernel會殺掉memory用最凶的程式. 解決方法,最好是改進程式memory使用量, 要不然就是加ram或是加大swap. |
引用:
感謝您的回應 我覺得有這個可能, 因為我發現資料"丟慢一點"就比較不會當了 不過記憶體只用了4%, CPU則到60%~80% 請問是CPU 使用率過高嗎? |
我用 open() 和 write() 直接存取裝置檔,
用以取代 system(),目前不會當機了 可是,輸出到 /dev/tty 正常有文字, 丟到 /dev/audio 就沒有聲音了 (只有 都差都差都插 的雜音) 請問 au 檔案要怎麼丟給 /dev/audio才對? 我有找到一個範例,但是好像是PCM的錄放音範例... http://www.minigui.org/cgi-bin/lb50...c=3270&postno=1 |
所有的時間均為GMT +8。 現在的時間是10:15 PM. |
vBulletin Version 3.0.1
powered_by_vbulletin 2025。