- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE
目 录
TOC \o 1-3 \h \z \u HYPERLINK \l _Toc312844134 第一章基本原理 PAGEREF _Toc312844134 \h 1
HYPERLINK \l _Toc312844135 $1.1 代码中涉及的概念 PAGEREF _Toc312844135 \h 1
HYPERLINK \l _Toc312844136 $1.2 各个文件的作用 PAGEREF _Toc312844136 \h 2
HYPERLINK \l _Toc312844137 第二章功能实现 PAGEREF _Toc312844137 \h 4
HYPERLINK \l _Toc312844138 $2.1各个函数的功能 PAGEREF _Toc312844138 \h 4
HYPERLINK \l _Toc312844139 $2.1.1 必读函数CreateProcess PAGEREF _Toc312844139 \h 4
HYPERLINK \l _Toc312844140 $2.1.2 ProcessInfo.cpp 中各个主要的函数作用 PAGEREF _Toc312844140 \h 5
HYPERLINK \l _Toc312844141 $2.2 功能 PAGEREF _Toc312844141 \h 5
HYPERLINK \l _Toc312844142 $2.3 界面显示 PAGEREF _Toc312844142 \h 6
HYPERLINK \l _Toc312844143 第三章实现 PAGEREF _Toc312844143 \h 9
HYPERLINK \l _Toc312844144 $ 3.1 代码精读 ProcessInfo.cpp PAGEREF _Toc312844144 \h 9
HYPERLINK \l _Toc312844145 $ 3.2 代码精读 ToolHelp.cpp PAGEREF _Toc312844145 \h 19
HYPERLINK \l _Toc312844146 第四章 实验心得 PAGEREF _Toc312844146 \h 27
第一章基本原理
$1.1 代码中涉及的概念
ProcessInfo应用程序中主要是运用了Toolhelp函数来实现的。关于ToolHelp后面会具体写到。下面先写一下我在读代码时遇到的一些陌生的概念。
1.进程
在《操作系统》中进程(process)的定义是指一个程序在给定数据集合上的一次执行过程,是系统进行资源分配和运行调度的独立单位。
3 内核对象
每个内核对象只是内核分配的一个内存块,并且只能由该内核访问。该内存块是一种数据结构,它的成员负责维护该对象的各种信息。有些数据成员(如安全性描述符、使用计数等)在所有对象类型中是相同的,但大多数数据成员属于特定的对象类型。例如,进程对象有一个进程ID、一个基本优先级和一个退出代码,而文件对象则拥有一个字节位移、一个共享模式和一个打开模式。
当调用一个用于创建内核对象的函数时,该函数就返回一个用于标识该对象的句柄。为了使操作系统变得更加健壮,这些句柄值是与进程密切相关的。
HYPERLINK /view/2863436.htm \t _blank 内核对象句柄,是用来标识某个内核对象的一个ID 同一个对象的该id对于每个进程是不同的。
4 快照
定义:关于指定数据集合的一个完全可用拷贝,该拷贝包括相应数据在某个时间点(拷贝开始的时间点)的映像。快照可以是其所表示的数据的一个副本,也可以是数据的一个复制品。
作用:为存储用户提供了另外一个数据访问通道,当原数据进行在线应用处理时,用户可以访问快照数据,还可以利用快照进行测试等工作。
5 模块
为完成某一功能所需的一段 HYPERLINK /view/17674.htm \t _blank 程序或 HYPERLINK /view/933538.htm \t _blank 子程序;或指能由 HYPERLINK /view/454895.htm \t _blank 编译程序、装配程序等处理的独立程序单位;或指大型 HYPERLINK /view/8343.htm \t _blank 软件系统的一部分。
6 线程
线程(thread)是进程中某个单一顺序的控制流。
一个标准的线程由线程 HYPERLINK /view/371.htm \t _blank ID,当前指令指针(PC), HYPERLINK /view/6159.htm \t _blank 寄存器集合和 HYPERLINK /view/93201.htm \t _blank 堆栈组成。
文档评论(0)