私のAndroidデバイスには、/proc/net/unix
誰のコンテンツ が標準の Linuxディストリビューションのファイルに準拠していないというファイルがあります(UNIXドメインソケットを示しています)。最初の数行:
Num RefCount Protocol Flags Type St Inode Path
00000000: 00000002 00000000 00000000 0002 01 5287581 /data/misc/wifi/sockets/wpa_ctrl_789-3189
00000000: 00000003 00000000 00000000 0001 03 6402 /dev/socket/qmux_radio/qmux_client_socket 297
00000000: 00000002 00000000 00010000 0001 01 7180 /dev/.secure_storage/ssd_socket
00000000: 00000002 00000000 00010000 0001 01 6424 /dev/socket/cnd
00000000: 00000002 00000000 00010000 0001 01 6400 @QMulticlient
...
(1)これらの異なるカラムは何を表していますか?
編集:[OK]を私が見つけたこれを:
ここで、「Num」はカーネルテーブルのスロット番号、「RefCount」はソケットのユーザー数、「Protocol」は現在常に0、「Flags」はソケットのステータスを保持する内部カーネルフラグを表します。現在、タイプは常に「1」です(UNIXドメインデータグラムソケットはまだカーネルでサポートされていません)。'St'はソケットの内部状態で、Pathはソケットのバインドパス(ある場合)です。
ただし、type
「内部状態」の意味を明確にしていないため、これは最新の状態ではありません。
(2)また、パスの最後に、独自の列名のない番号が追加される場合があります。それは何ですか?
さらに、カーネルのソースコードのどこに、これが作成された場所を見つけることができるでしょうか?
編集:2016-04-27(解決済み)
以下の回答のおかげlsof |grep qmux
で、qmux_client_sockets
アイテムの最後の列の番号がそれを使用するプロセスのPIDであることを確認しました。
/dev/socket/qmux_radio/
という名前の仮想ソケットオープナーだけの下に表示されるソケット番号はありませんqmux_client_socket
。しかし、あなたの助けで私はps
どちらが同じかを確認しました。