PS 使用什麼 C 來以程式方式確定進程訊息

PS 使用什麼 C 來以程式方式確定進程訊息

在 Linux 和 Macos 中,我們都可以使用 bash: 取得 PID 資訊、啟動時間ps -p PID_HERE -o lstart=

我打算使用lstat它併計劃它。但只是出於好奇:

以程式設計方式ps必須使用C對嗎?在我的使用過程中,使用 C 函數要快得多,因為我不必使用它popen來開啟和讀取。

在 MacOSX/Darwin 中,顯然他們使用了一種稱為proc_pidinfoSO 的主題,它告訴我們如何在這裡做到這一點:在 Darwin/OSX 中以程式設計方式確定進程訊息

但在 Linux 中呢?我找不到適合proc_pidinfo我們的東西。

謝謝!

答案1

根據 多種的 答案在 stackoverflow 上,ps使用行程檔案系統透過庫過程收集過程資訊。看來這是首選方法,因此我認為lstat(2)這是找出進程開始時間的正確方法™。

相關內容