@prefix schema: <https://schema.org/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ks: <https://comcomponent.com/vocab/> .

<https://comcomponent.com/blog/sysinternals-process-explorer-handle-vmmap-guide/#article>
    schema:about <https://comcomponent.com/knowledge/process-explorer/>, <https://comcomponent.com/knowledge/handle-exe/>, <https://comcomponent.com/knowledge/vmmap/> ;
    schema:mentions <https://comcomponent.com/knowledge/rammap/>, <https://comcomponent.com/knowledge/symbol-server/>, <https://comcomponent.com/knowledge/gdi-user-object-limit/>, <https://comcomponent.com/knowledge/sysinternals-live/>, <https://comcomponent.com/knowledge/file-lock-in-use/>, <https://comcomponent.com/knowledge/application-hang/>, <https://comcomponent.com/knowledge/private-bytes-growth/>, <https://comcomponent.com/knowledge/handle-leak/>, <https://comcomponent.com/knowledge/admin-rights/>, <https://comcomponent.com/knowledge/windbg/>, <https://comcomponent.com/knowledge/handle-tracing/>, <https://comcomponent.com/knowledge/memory-mapped-file/> .

<https://comcomponent.com/knowledge/process-explorer/> a skos:Concept ;
    skos:prefLabel "Process Explorer"@ja ;
    skos:definition "プロセスに読み込まれているDLLだけでなく、ハンドル・スレッドスタック・GDI/USERオブジェクト数なども確認できるSysinternalsのプロセス監視ツール。管理者として実行すると他ユーザーやサービスのプロセスも参照できる。"@ja ;
    ks:configuredBy <https://comcomponent.com/knowledge/symbol-server/> ;
    ks:recommendedFor <https://comcomponent.com/knowledge/file-lock-in-use/> ;
    ks:recommendedFor <https://comcomponent.com/knowledge/application-hang/> .

<https://comcomponent.com/knowledge/handle-exe/> a skos:Concept ;
    skos:prefLabel "handle.exe"@ja ;
    skos:definition "開いているハンドルの一覧・検索を行う、管理者権限が必要なSysinternalsのコマンドラインツールである。"@ja ;
    skos:altLabel "Handle" ;
    skos:altLabel "handle -s" ;
    ks:requires <https://comcomponent.com/knowledge/admin-rights/> ;
    ks:recommendedFor <https://comcomponent.com/knowledge/file-lock-in-use/> .

<https://comcomponent.com/knowledge/vmmap/> a skos:Concept ;
    skos:prefLabel "VMMap"@ja ;
    skos:definition "プロセスの仮想・物理メモリを、コミット済み仮想メモリの種類別内訳として分析できるSysinternalsのツールである。"@ja ;
    skos:altLabel "VMMap.exe" .

<https://comcomponent.com/knowledge/admin-rights/> a skos:Concept ;
    skos:prefLabel "管理者権限"@ja ;
    skos:definition "コンピューター全体の設定を変更できる権限。"@ja ;
    skos:altLabel "昇格"@ja .

<https://comcomponent.com/knowledge/handle-leak/> a skos:Concept ;
    skos:prefLabel "ハンドルリーク"@ja ;
    skos:definition "参照カウントやハンドルカウントの数え違いなどにより、不要になったハンドル(ファイル・イベント・スレッド・GDIオブジェクト・アクセストークンなどカーネルオブジェクトへの参照)が解放されずに積み上がっていく状態。"@ja ;
    skos:altLabel "Handle Leak" ;
    ks:verifiedBy <https://comcomponent.com/knowledge/process-explorer/> ;
    ks:verifiedBy <https://comcomponent.com/knowledge/handle-exe/> ;
    ks:verifiedBy <https://comcomponent.com/knowledge/handle-tracing/> .

<https://comcomponent.com/knowledge/gdi-user-object-limit/> a skos:Concept ;
    skos:prefLabel "GDI/USERオブジェクトの上限"@ja ;
    skos:definition "GDIオブジェクト・USERオブジェクトに存在する、プロセスごとの既定上限(既定1万個)とセッション全体の理論上限65,536個という制約である。"@ja ;
    skos:altLabel "GDI Objects" ;
    skos:altLabel "USER Objects" ;
    skos:altLabel "GDIProcessHandleQuota" ;
    ks:verifiedBy <https://comcomponent.com/knowledge/process-explorer/> .

<https://comcomponent.com/knowledge/symbol-server/> a skos:Concept ;
    skos:prefLabel "シンボルサーバー"@ja ;
    skos:definition "PDBなどのシンボルファイルを、ファイル名ではなくバイナリとの一致情報に基づいて整理し、デバッガーが必要なときに取得できるようにする仕組み。"@ja ;
    ks:uses <https://comcomponent.com/knowledge/windbg/> .

<https://comcomponent.com/knowledge/windbg/> a skos:Concept ;
    skos:prefLabel "WinDbg"@ja ;
    skos:definition "クラッシュダンプやハングしたプロセスの状態をカーネル/ユーザーモードで解析するためのMicrosoft製デバッガー。SOS拡張によるマネージドヒープ解析や、Application Verifierの検出結果の解析にも使われる。"@ja ;
    skos:altLabel "Debugging Tools for Windows" .

<https://comcomponent.com/knowledge/memory-mapped-file/> a skos:Concept ;
    skos:prefLabel "ファイルマッピング(メモリマップトファイル)"@ja ;
    skos:definition "ファイルの内容をプロセスやシステムのアドレス空間にマップする仕組み。ディスク上のファイルに裏打ちされる形と、CreateFileMappingにINVALID_HANDLE_VALUEを渡してページファイルに裏打ちされる形(名前付き共有メモリ)がある。Windowsのキャッシュマネージャー自身の実装基盤でもある。"@ja ;
    skos:altLabel "File Mapping" ;
    skos:altLabel "メモリマップトファイル"@ja ;
    ks:verifiedBy <https://comcomponent.com/knowledge/vmmap/> .

<https://comcomponent.com/knowledge/private-bytes-growth/> a skos:Concept ;
    skos:prefLabel "Private Bytesの増加"@ja ;
    skos:definition "プロセスのPrivate Bytesが操作の繰り返しに応じて増え続け、二度と減らない状態である。"@ja ;
    skos:altLabel "メモリリーク(ネイティブ/マネージド)"@ja ;
    skos:altLabel "Private Bytesが増え続ける"@ja ;
    ks:verifiedBy <https://comcomponent.com/knowledge/vmmap/> .

<https://comcomponent.com/knowledge/rammap/> a skos:Concept ;
    skos:prefLabel "RAMMap"@ja ;
    skos:definition "OS全体の物理メモリ使用状況を、Use Counts・Processes・File Summaryなどのタブで分析できるSysinternalsのツールである。"@ja ;
    skos:altLabel "RAMMap.exe" .

<https://comcomponent.com/knowledge/file-lock-in-use/> a skos:Concept ;
    skos:prefLabel "使用中ファイルのロック"@ja ;
    skos:definition "実行中のexeやロード済みDLLがメモリマップドファイルとしてOSに保持されるため、中身の書き換えと削除がブロックされる状態である。"@ja ;
    skos:altLabel "ファイル使用中"@ja ;
    skos:altLabel "共有違反"@ja ;
    skos:altLabel "ファイル使用中ロック(削除・差し替え不可)"@ja ;
    skos:altLabel "ファイルが使用中"@ja ;
    skos:altLabel "ファイルが削除できない"@ja .

<https://comcomponent.com/knowledge/application-hang/> a skos:Concept ;
    skos:prefLabel "アプリケーションのハング(応答なし)"@ja ;
    skos:definition "ウィンドウが応答なしになり、UIスレッドなどが何らかの待機から戻らない状態である。"@ja ;
    skos:altLabel "ハング"@ja ;
    skos:altLabel "応答なし"@ja .

<https://comcomponent.com/knowledge/handle-tracing/> a skos:Concept ;
    skos:prefLabel "ハンドルトレーシング(handle tracing)"@ja ;
    skos:definition "ハンドルのopen・close・不正参照の履歴をスタック付きで記録する、Application VerifierのHandlesチェックが有効な際に自動で有効になる機能である。"@ja ;
    skos:altLabel "Handle Tracing" ;
    skos:broader <https://comcomponent.com/knowledge/application-verifier/> .

<https://comcomponent.com/knowledge/sysinternals-live/> a skos:Concept ;
    skos:prefLabel "Sysinternals Live"@ja ;
    skos:definition "Sysinternalsツールをダウンロードせずに、live.sysinternals.comのURLやUNCパスから直接実行できるサービスである。"@ja ;
    skos:altLabel "live.sysinternals.com" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/process-explorer/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/admin-rights/> ;
    schema:description "調査目的でのProcess Explorer利用は管理者として実行することが事実上必須で、一般権限では他ユーザーやサービスのプロセスのスタック・ハンドルが見えない(自分と同じユーザーのプロセスだけを見る分には一般権限でもアクセスできる)"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/downloads/process-explorer> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/handle-exe/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/admin-rights/> ;
    schema:description "handle.exeは公式に管理者権限が必要とされているコマンドラインツールである"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/downloads/handle> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/vmmap/> ;
    rdf:predicate ks:requires ;
    rdf:object <https://comcomponent.com/knowledge/admin-rights/> ;
    schema:description "VMMapは管理者として実行してから対象プロセスを選ぶ手順になっている(調査目的で他ユーザーやサービスのプロセスを見る場合は事実上必須。自分と同じユーザーのプロセスだけを見る分には一般権限でも動作し得る)"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/downloads/vmmap> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/handle-leak/> ;
    rdf:predicate ks:verifiedBy ;
    rdf:object <https://comcomponent.com/knowledge/process-explorer/> ;
    schema:description "Handle Count・USER Objects・GDI Objects・Private Bytesのカラムを追加し、時間を置いて増え続ける傾きを見ることでハンドルリークを確認できる"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/downloads/process-explorer> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/handle-leak/> ;
    rdf:predicate ks:verifiedBy ;
    rdf:object <https://comcomponent.com/knowledge/handle-exe/> ;
    schema:description "handle -s -p <プロセス>による種類別ハンドル数の定期ログで、GUIを開けない環境でもハンドルリークを定点観測できる"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/downloads/handle> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/gdi-user-object-limit/> ;
    rdf:predicate ks:verifiedBy ;
    rdf:object <https://comcomponent.com/knowledge/process-explorer/> ;
    schema:description "USER Objects・GDI Objectsカラムを追加すると、プロセスごとの上限やセッション全体の上限への接近を監視できる"@ja ;
    ks:evidence <https://learn.microsoft.com/windows/win32/sysinfo/gdi-objects>, <https://learn.microsoft.com/sysinternals/downloads/process-explorer> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/process-explorer/> ;
    rdf:predicate ks:configuredBy ;
    rdf:object <https://comcomponent.com/knowledge/symbol-server/> ;
    schema:description "Threadsタブでスレッドスタックの関数名を読むには、Options→Configure SymbolsでDbghelp.dllパスとシンボルパスを設定する必要がある"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/downloads/process-explorer>, <https://learn.microsoft.com/windows-hardware/drivers/debugger/microsoft-public-symbols> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/symbol-server/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/windbg/> ;
    schema:description "シンボル解決に使うdbghelp.dllとsymsrv.dllは、Debugging Tools for Windows(WinDbgのインストールに含まれる)のフォルダーから入手する"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-hardware/drivers/debugger/debugger-download-tools> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/memory-mapped-file/> ;
    rdf:predicate ks:verifiedBy ;
    rdf:object <https://comcomponent.com/knowledge/vmmap/> ;
    schema:description "VMMapのShareable/Mapped File分類で、プロセス間連携などで使われているメモリマップトファイルの領域を確認できる"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/downloads/vmmap> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/private-bytes-growth/> ;
    rdf:predicate ks:verifiedBy ;
    rdf:object <https://comcomponent.com/knowledge/vmmap/> ;
    schema:description "Private Bytesが増え続ける症状は、VMMapでHeap・Managed Heap・Private Dataなどの分類ごとの内訳を確認することで原因の土俵を特定できる"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/downloads/vmmap> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/vmmap/> ;
    rdf:predicate ks:shouldPrecede ;
    rdf:object <https://comcomponent.com/knowledge/rammap/> ;
    schema:description "プロセス単位の疑いをVMMapで確認し、どのプロセスも肥大していなければRAMMapでOS全体の物理メモリ使用状況を見る、という順で進める"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/downloads/rammap> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/process-explorer/> ;
    rdf:predicate ks:recommendedFor ;
    rdf:object <https://comcomponent.com/knowledge/file-lock-in-use/> ;
    schema:description "ファイルが削除・差し替えできない症状は、Find Handle or DLL(Ctrl+F)でファイル名の部分一致検索をすれば、掴んでいるプロセスを数秒で特定できる"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/downloads/process-explorer> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/handle-exe/> ;
    rdf:predicate ks:recommendedFor ;
    rdf:object <https://comcomponent.com/knowledge/file-lock-in-use/> ;
    schema:description "handle.exeにファイル名やパスの一部を渡すと、そのハンドルを開いているプロセスを一覧できる"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/downloads/handle> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/process-explorer/> ;
    rdf:predicate ks:recommendedFor ;
    rdf:object <https://comcomponent.com/knowledge/application-hang/> ;
    schema:description "応答なしのプロセスは、プロパティのThreadsタブでスレッドのスタックを見て、どの関数呼び出しで止まっているかを特定する"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/downloads/process-explorer> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/windbg/> ;
    rdf:predicate ks:recommendedFor ;
    rdf:object <https://comcomponent.com/knowledge/application-hang/> ;
    schema:description ".NETアプリのマネージドなハング・デッドロックを正確に追うには、ハング中にダンプを採ってWinDbg+SOSで解析する方が確実"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-hardware/drivers/debugger/> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/handle-leak/> ;
    rdf:predicate ks:verifiedBy ;
    rdf:object <https://comcomponent.com/knowledge/handle-tracing/> ;
    schema:description "どのコードがハンドルを確保したかまで特定する段階では、Application Verifierのハンドルトレーシングなど専用ツールに進む"@ja ;
    ks:evidence <https://learn.microsoft.com/windows-hardware/drivers/devtest/application-verifier> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "established" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/process-explorer/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/sysinternals-live/> ;
    schema:description "Process Explorerはダウンロードして手元で実行するほか、live.sysinternals.comから直接実行することもできる。Sysinternals Liveは入手経路の1つで必須ではない"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/vmmap/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/sysinternals-live/> ;
    schema:description "VMMapはダウンロードして手元で実行するほか、live.sysinternals.comから直接実行することもできる。Sysinternals Liveは入手経路の1つで必須ではない"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/handle-exe/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/sysinternals-live/> ;
    schema:description "handle.exeはダウンロードして手元で実行するほか、live.sysinternals.comから直接実行することもできる。Sysinternals Liveは入手経路の1つで必須ではない"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .

[] a rdf:Statement ;
    rdf:subject <https://comcomponent.com/knowledge/rammap/> ;
    rdf:predicate ks:uses ;
    rdf:object <https://comcomponent.com/knowledge/sysinternals-live/> ;
    schema:description "RAMMapはダウンロードして手元で実行するほか、live.sysinternals.comから直接実行することもできる。Sysinternals Liveは入手経路の1つで必須ではない"@ja ;
    ks:evidence <https://learn.microsoft.com/sysinternals/> ;
    ks:verifiedAt "2026-08-01" ;
    ks:certainty "context-dependent" .
