我的應用程序收到馬赫IPC消息併爲調用者返回答案。我有馬赫呼叫者port(msgh_remote_port)
,我想知道調用者的PID
。 我可以在OSX上找到機械接口的一個PID
這個接口用於監聽特定的馬達端口嗎?哪個PID監聽給定的馬赫數端口
6
A
回答
2
mach端口不直接與進程關聯,而是與任務關聯。然後該任務與bsd進程結構關聯。要查詢任務的端口,可以使用mach_port_names函數。爲了讓所有開放的機器端口迭代所有任務並使用上述功能。
另一種方法是使用procfs文件系統。 procfs文件系統是在熔絲文件系統的頂部實現的,需要手動安裝在系統上。這是一個開源解決方案。安裝procfs文件系統後,您可以通過訪問文件/ proc/proc-id/task/ports來查詢任務的端口。看看http://osxbook.com/book/bonus/chapter11/procfs/。
0
0
三種方法可以做到這一點沒有一個KEXT:
- launchctl打印系統(或其他域)
- LSMP -a (沒有端口名稱,只是ID)
procexp所有端口| grep的the_service_name_you_want
(procexp是從http://NewOSXBook.com/tools/procexp.html工具上的補充)
相關問題
- 1. 哪個PID在給定的端口上偵聽c#
- 2. 確定在某個端口上偵聽的進程pid
- 3. Kubernetes daemonset監聽特定端口
- 4. 使用JScript監聽端口
- 5. 停止監聽端口
- 6. Nginx無法監聽端口
- 7. 寫端口監聽器
- 8. MATLAB監聽TCP/IP端口
- 9. Winsock端口監聽器
- 10. Python端口監聽器
- 11. 設置清漆監聽不同的端口,而Apache監聽端口80
- 12. 偵聽給定端口的程序
- 13. WSO2 Identity Server的監聽端口9999
- 14. Node.js的調試器監聽端口5858
- 15. node.js應監聽哪些端口?如何和爲什麼?
- 16. 亞馬遜SQS監聽器
- 17. com.jcraft.jsch.JSchException:遠程端口轉發失敗的監聽端口19999
- 18. Firefox擴展端口監聽器
- 19. 究竟是什麼端口監聽
- 20. 在Delphi 7上監聽串行端口
- 21. 獲取端口演員正在監聽
- 22. 如何設置Apache監聽端口43
- 23. WebDeploy不在監聽端口8172
- 24. Python串行端口監聽器
- 25. 任何語言 - 端口監聽器? [UDP]
- 26. Python套接字監聽所有端口
- 27. boost.asio如何發現我的服務器應用程序監聽哪個端口?
- 28. 監聽多個端口並將端口映射到另一個域
- 29. 傳出TCP端口匹配監聽端口
- 30. 聽特定的端口c#