2012-09-24 15 views
-3
在Linux中運行的進程的列表

可能重複:
C code for ps command查看用C

我有我需要使用C.我知道如何編寫任務管理器的Linux分配殺死進程等使用系統調用,但我不知道如何去查看所有正在運行的進程的C程序列表。

任何人都可以指向正確的方向嗎?

謝謝:)

編輯:

對不起,我想我真的不知道我一直在尋找的,所以我找不到它。我解決了它。不需要更多的de-rep :(

+0

看看頂部或HTOP源代碼 – pyCthon

+3

試着問=前至少搜索計算器)這裏是一個有用的答案:http://stackoverflow.com/questions/589796/c-code-for-ps-command – paddy

+0

我確實嘗試搜索相信我...我不知道有這種方法。我正在尋找更多的系統調用類型的東西。我們通常使用MINIX而不是Linux,所以我不熟悉其中的一些工作。 –

回答

2

標準方法是查看/proc僞文件系統,並查看每個數字子目錄中包含的文件(以它所表示的進程的PID命名)。關於它進入proc(5)的手冊頁

0

你可以從ps解析輸出,或者你可以枚舉子目錄/proc。每個子目錄都是一個數字,它是一個進程的PID。各種其他文件/目錄,您可以從中檢索關於該進程的信息。對於您的情況,您可能主要關心的是exe(用於啓動進程的可執行文件),可能還有cmdline - 通訊和用於啓動過程的行(例如,消除您可能有兩個進程運行相同的可執行文件,但使用不同的參數時)。

請注意,可以在不運行/ proc文件系統的情況下安裝/使用Linux,在這種情況下,您將無法執行此操作 - 但這非常不尋常。