|  | ||
| Amateur Member  加入日期: Nov 2004 您的住址: 丁丁科技大學 
					文章: 45
					
				 | 
				
				請問Linux的程式自動結束,然後印出「Killed」,可能是什麼原因?
		
	 我是用C語言, 以前不是segment fault就是core dump... 現在遇到的是程式會自動結束, 然後只印出「Killed」 而且當的時間還不一定, 用top去看,程式也沒有異常... 我除錯很久發現一點, 就是有用到 system()才會當, 即使是這樣 system("echo test..."); 都會當掉 之前去查了資料, 也看不出所以然 程式有時候可能跑上百次才當, 有時候第一次就當了... 請問有人知道Linux的程式自動結束, 然後印出「Killed」, 可能是什麼原因嗎? 
				__________________ 動怒不動氣(對不滿的事情表達不悅,但是不讓其過份影響個人情緒), 挑嘴不挑食(對飲食頗有想法但是有得吃就吃) | |||||||
|  2007-07-03, 11:09 AM
			
			
	#1 |   | 
| 訪客 
					文章: n/a
					
				 | 應該是程式收到 KILL signal 所以自動結束掉. 至於為什麼會收到 KILL signal , 我猜是因為系統memory 不足, 所以Linux kernel會殺掉memory用最凶的程式. 解決方法,最好是改進程式memory使用量, 要不然就是加ram或是加大swap. | ||
|  2007-07-03, 10:29 PM
			
			
	#2 | 
| Amateur Member  加入日期: Nov 2004 您的住址: 丁丁科技大學 
					文章: 45
					
				 | 引用: 
 感謝您的回應 我覺得有這個可能, 因為我發現資料"丟慢一點"就比較不會當了 不過記憶體只用了4%, CPU則到60%~80% 請問是CPU 使用率過高嗎? 
				__________________ 動怒不動氣(對不滿的事情表達不悅,但是不讓其過份影響個人情緒), 挑嘴不挑食(對飲食頗有想法但是有得吃就吃) | |
|  2007-07-04, 12:23 AM
			
			
	#3 |   | 
| Amateur Member  加入日期: Nov 2004 您的住址: 丁丁科技大學 
					文章: 45
					
				 | 我用 open() 和 write() 直接存取裝置檔, 用以取代 system(),目前不會當機了 可是,輸出到 /dev/tty 正常有文字, 丟到 /dev/audio 就沒有聲音了 (只有 都差都差都插 的雜音) 請問 au 檔案要怎麼丟給 /dev/audio才對? 我有找到一個範例,但是好像是PCM的錄放音範例... http://www.minigui.org/cgi-bin/lb50...c=3270&postno=1 
				__________________ 動怒不動氣(對不滿的事情表達不悅,但是不讓其過份影響個人情緒), 挑嘴不挑食(對飲食頗有想法但是有得吃就吃) | 
|  2007-07-04, 03:48 AM
			
			
	#4 |   |