SysInternal的handle.exe的输出

时间:2018-10-08 12:06:28

标签: windows sysinternals

我正在使用SysInternal的handle.exe,并且试图了解输出。

这是一个片段:

ConstraintLayout
  1. 开头的数字是什么意思?
  2. “部分”是什么意思?我可以理解打开的文件,但是什么是打开的部分?
  3. RWD三元组是什么意思?我猜R和W是可读写的,但是D是什么?

1 个答案:

答案 0 :(得分:4)

第一列是HANDLE值,它用作OS内核对象的唯一标识符。类似于数据库记录的ID列。仅当您需要将其与调试器在调试代码时告诉您的内容进行比较时,它才有用。

第二列标识OS对象的类型。 “文件”很明显,“部分”是一个允许进程共享内存的对象。 “内存映射文件”是编程中的常用短语。 “突变”往往会造成混淆,它是普通语音中的互斥量。该程序的作者使用David Cutler喜欢的那种术语,他用VMS Lisp说话。 WinObj实用程序是查看这些内核对象的另一种方法。

括号中的字母是创建对象时指定的共享选项。 CreateFile的第三个参数。重要的是要知道,因为它告诉您另一个程序也想访问该对象时可以做什么。 R表示可以读取,W表示可以写入,D表示可以删除对象而不会影响使用该对象的其他任何人。除非所有人都关闭手柄,否则不会破坏该对象。反恶意软件扫描程序或搜索索引器是使用删除共享的程序的典型示例。