文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院程序开发C/C++剖析Windows任务管理器开发原理与实现
精品推荐
特别推荐
·C语言编程易犯毛病集合
·C语言编程常见问题解答(目录)
·C#程序开发中的常用函数汇总
·C/C++笔试、面试题目大汇总
·Beej的网络socket编程指南
·socket编程原理
·C语言的常用库函数使用方法分析及用途
·在C语言中如何处理时间和日期
·C++设计模式之Singleton
·VC++动态链接库编程之MFC扩展 DLL
热点TOP10
·进程和线程编程
·C语言编程易犯毛病集合
·打字游戏
·Awk 基础入门:Awk 实例编程
·asp.net中调用javascript函数实现多功能日期控件示例
·C语言编程常见问题解答之常用函数的包含文件(1)
·C# GridView 排序及分页
·C #中的几个线程同步对象方法
·无废话C#设计模式之三:Abstract Factory
·C# DataGridView隔行显示不同的颜色

剖析Windows任务管理器开发原理与实现

日期:2008年5月24日 作者:清风网络学院 查看:[大字体 中字体 小字体]


Author: Brief[原创]
E-Mail: Brief@fz5fz.org
Homepage: www.fz5fz.org && www.safechina.net
Date: 05-01-2003

    Windows2000/XP内含的任务管理器(Taskmgr)相信大家都熟悉吧,相比之下XP里的要比2000功能更加强大,返回的信息也更加的详细,不过您是否觉得还有很多希望获得的消息没有包含在里面吗?您是否觉得Windows的系统管理工具箱里的东西太分散了吗?下面就让我们看看它们的开发原理,并动手实现一个真正的任务管理器。现在我们是调用Win32API来实现这些功能的,但是大家都说MS隐藏了太多的细节,以后我们将讨论更多关于Windows内核的东东。

    可能大家对任务管理器里最熟悉的功能要数进程管理了,常常我们在怀疑中了病毒/木马的时候都会看看任务管理器里有没有什么特别的进程在运行,所以进程查看器应该是一个非常重要的功能。我们除了需要获得进程的名称外,还有什么呢?当然包括它的进程标识符(ProcessID),用户信息(UserName),CPU使用时间(CPUTime)和存储器的使用情况(MemoryUsage),还有它的优先权(BasePriority)。CPU和Memory信息可以帮助我们分析进程的运行情况,而优先权可以表示进程在CPU分配处理器使用时的优先情况。这些都是通用的进程信息,让我们再看看其他的信息吧。进程的父进程标识符(Parent Process ID),创建时间(Create Time),程序名称等在很多情况下也是我们关心的信息。我们再看看进程相关的性能信息。在Windows下通常有两种模式:内核模式(Kernel: Level 0)和用户模式(User: Level 3),进程往往在两种模式中来回切换,所以可以获得进程在内核模式和用户模式各自的使用时间。同时还包括进程相关的工作集(WorkingSet),分页池(PagedPool),非分页池(NonePagedPool)和页面文件(PageFile)信息。进程相关的I/O操作包括读/写/其他等动作,我们可以获得这些操作的次数和传送数据的数量。

    如果您怀疑某个进程是木马,那您还想获得哪些信息呢?简单的进程名称应该是不够的吧!我们希望获得进程的实际程序的路径,这样可以帮助我们判断究竟是那个程序在运行。前段时间不是在讨论什么进程隐藏的,其中一种就是“创建远程线程”,而注体往往又是以动态链接库(DLL)的形式存在的,我们就希望看到某个具体进程所包含的所有模块(Module),常常是DLL也。“线程”是一个大家熟悉的名字,它是Windows系统中的实现体,而进程则是线程运行的环境。一个进程到底创建了多少线程了?我们同样可以枚举进程内部的所有线程信息。如果您发现一个木马进程,下面的动作就应该是分析它的运行机制(如果您对它感兴趣),不过最终您还是要将它结束吧。在Windows2k下,很多系统关键进程在TaskMgr里是不能被结束的,不过现在您不用担心了。好的,对进程的操作当然就包括结束进程。如果您用过中文的XP,您是否常常遇到任务栏“假死”的情况,虽然您的电脑没有挂掉,但却动弹不得,那好我们也同样可以将任意的进程挂起来,不管您对它做什么动作(除了结束),它都不会有任何的反应。有了挂起进程,同样我们也可以将进程从“挂起”状态激活哈。

    桌面窗口是大家接触得最多的交互界面了,您是否想获得每个窗口的标题信息呢?当然我们还可以获得与窗口关联的进程,线程与窗口句柄属性。如果大家对VC比较熟悉,就应该知道其中的一个SPY++工具吧,它就可以获得桌面窗口,进程和线程的详细信息,不过现在就不用打开这个,打开那个了,通通搞定了!

    系统性能是每个用户关心的话题。它包括整个系统当前创建的句柄,进程以及线程的数目。还有物理存储器(Physical Memory)的总量和使用情况,系统高速缓存(System Cache)的大小,存储器保留与提交(Commit Charge)状况,当然还有核心分页/非分页池(Kernel Memory)的使用情况。几乎包括了Windows系统下存储器管理的大部分信息。

    虽然现在硬盘的价格已经很低了,不过我还是在用6.4G的小东东,所以常常遇到“Low Disk”!我们常常要看看硬盘的使用情况,不过每次都要进入我的电脑,太麻烦了。而我们现在可以一次了解所有磁盘的容量和当前使用情况,同时还有它们的格式类型(如FAT,NTFS,CDFS等)和磁盘标签。

    说到环境块,或许不是那么熟悉吧,它包含一些环境变量,而每个环境变量对应一个/多个字符串,您可以在控制面板的SYSTEM/Advanced(系统/高级)里对它们进行设置,包括添加新的环境变量,删除和编辑系统环境变量。

    事件记录对我们分析系统的使用情况有很大的帮助。事件记录分为三种:应用程序,系统和安全。而对应的每种事件又可以分为几种类型,它们分别是常规信息,警告和错误。其中包括记录序号(Record Number),事件类型(Type),标识符(Event ID),来源(Source),产生时间(Time Generated),用户名(User)和相关描述信息(Description)。有时间大家可以多看看事件信息,当然每个网络管理员对它们应该是很熟悉的,不过还包括其他的事件日志信息。

[1] [2] [3] [4] [5] [6] 下一页 




上一篇:强制访问你的广告才能进入你的站点的script

下一篇:探索bbsxp sql版的漏洞

相关文章:
·Windows Vista震撼1600X1200高清壁纸
·Windows系统漏洞修复软件大比拼
·如何实现局域网打印机共享
·鲜为人知的Windows XP优化
·如何让Windows桌面图标任我排
·[任务]剧情任务五:含冤的小白龙
·注册表已经损坏并导致WindowsXP无法启动,应该如何恢复
·Windows XP的20个超级实用技巧大全
·Windows Vista Ultimate中文旗舰版下载+简单破解(支持迅雷HTTP & BT)
·Windows Vista 快捷方式箭头去除器 1.3
相关软件:
·中国少年儿童智力开发百科全书(上中下)高清PDF全彩图书
·Windows主题70合一典藏版
·孙鑫VC++从入门到精通开发详解视频教程FLASH版
·无尽的任务战略版中文版
·如何加固Windows XP 主机安全
·Windows环境下32位汇编语言程序设计
·精通.Net核心技术原理与构架
·全能助手Windows优化王 2006 V3.95
·红警 2尤里的复仇 新任务 丛林堡垒
·黑色苹果Windows主题Kuro

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:viphot