windows系统和进程活动.ppt
《windows系统和进程活动.ppt》由会员分享,可在线阅读,更多相关《windows系统和进程活动.ppt(49页珍藏版)》请在三一办公上搜索。
1、TNQ400-02,1994-2000 David A.Solomon And Jamie E.Hanrahan,理解Windows 2000 和 NT4系统和进程活动,演讲必备条件,这个演讲假设您理解以下基础知识:操作系统概念的基础知识(虚拟内存、进程和多任务)基本Windows NT和Windows 2000使用和管理这是一个300级的讲座,今天您将学到以下知识,查看进程细节例如打开文件句柄、I/O活动、DLL使用和安全操作系统帐户和应用程序CPU时间(包括中断)在系统进程树中识别每一个系统进程将Windows NT服务映射到正在运行该服务的进程上将核心态运行的系统线程活动匹配到驱动程序或
2、者拥有线程的OS组件,议事日程,工具概述理解进程和线程活动理解CPU时间统计理解系统进程进程崩溃,工具 可执行文件 相关工具包性能监视 Sysmon Windows 2000(Perfmon in NT4)注册表编辑器 RegEdt32 Windows 2000 进程查看器 pviewer Windows 2000 支持工具任务列表 tlist Windows 2000 支持工具依赖关系浏览 depends Windows 2000 支持工具打开句柄 ohWindows 2000 服务器资源工具箱QuickSlice qsliceWindows 2000 服务器资源工具箱句柄查看器 列表DLL
3、 文件监视器 注册表监视器 进程状态 pstatNT4 资源工具箱或平台SDK,工具列表,议事日程,工具概述理解进程和线程活动理解CPU时间统计理解系统进程进程和系统崩溃,进程地址空间,系统地址空间,线程,线程,线程,进程和线程,什么是进程?代表了运行程序的一个实例每一个进程有一个私有的内存地址空间什么是线程?进程内的一个执行上下文进程内的所有线程共享相同的进程地址空间每一个进程启动时带有一个线程运行程序的“主”函数可以在同一个进程中创建其他的线程可以创建额外的进程,.EXE 代码全局每个线程的用户模式堆栈进程堆栈.DLL 代码,00000000,7FFFFFFF,Exec,Kernel,HA
4、L,驱动程序,每个线程的核心态模式堆栈,Win32K.Sys文件系统缓存页面池非页面池,FFFFFFFF,80000000,进程页面表超级空间,C0000000,32-位虚拟地址空间,2 GB的进程空间进程地址空间不可以被其他进程直接访问2 GB的系统范围空间在这个空间中加载操作系统,并且存在于每一个进程地址空间“操作系统”没有进程(尽管有一些进程服务于操作系统,但是它们或多或少都是在“后台”运行),每个进程单独的地址空间,可以在用户态或核心态访问,系统范围,只可以在核心态下访问,每个进程的空间,只能在核心态下访问,Windows 2000作业对象,新的内核对象定义了一组相关进程CreateJ
5、obObject/OpenJobObject可以指定作业范围的属性、资源分配额和安全限制资源分配额:总的和目前CPU时间、总的和活动进程、每一个进程和作业的CPU时间、最小和最大的工作集合属性:CPU相似性、优先级、调度级别安全限制:没有管理员令牌,只有受限令牌、指定令牌、过滤令牌,不能访问作业外面的窗口,不能读/写剪贴板,查看进程信息,许多重叠的工具!他们都显示进程和线程信息的不同部分 但是有一些工具可以显示其他工具不能显示的内容 运行的映象的名字可能不能说明它是什么 发现EXE在磁盘的位置 PS.VBS(或者 pslist.exe)可以显示绝对路径 如果系统速度降低,第一个问题是:系统正在
6、运行什么进程?一个快速的方法:运行任务管理器,按CPU使用率排序,任务管理器,启动:Ctrl+Shift+Esc;或者Ctrl+Alt+Del;或者在任务栏的空白处右击 与其他进程显示实用程序重叠的部分 除了Win 16进程信息,只有这里可以看(在进程选项卡上单击选项-显示16-位任务)应用程序选项卡:最顶层可见的窗口列表 只有线程拥有窗口(在窗口上右击并选择“查看进程”),进程选项卡:进程列表 可以使用查看-选项栏数 在标题栏上单击按该列排序 在进程名字上右击来改变进程的优先级、结束进程树(在Windows 2000新增加的功能),或者(在MP上)CPU分配 性能选项卡:NT性能计数器的子集
7、,进程查看器,支持工具中的Pviewer.exe 显示线程详细信息 每一个线程的起始地址 每一个线程的CPU时间 可以显示远程进程列表 但是不能杀死远程进程 使用exec.vbs或者资源工具箱中的rkill,使用TLIST/T查看进程层次结构,理解进程的父亲可以帮助确认进程的来源和作用 tlist/t 显示继承关系树如果父进程不是活动的,进程左对齐 例如,不能查看创建者例如:explorer.exe的父进程是死 的(它实际是由 userinit.exe启动的,然后父进程退出)Windows 2000 可以显示父进程标识号 任务管理器有一个“结束进程树”在进程上右击,查看打开句柄,句柄泄露可以作
8、为系统内存泄露显示!任务管理器可以显示总的进程句柄 资源工具箱“Oh”工具(第一次运行可以设置一个NT全局标记并需要重新启动查看资源工具箱中的gflags.exe)(使用一个设备驱动程序)的handleex(图形用户界面)或 nthandle(控制台),查看DLL使用,资源工具箱中的Depends.exe 显示从EXE到DLL的静态链接 也可以“构造”进程并且显示动态DLL加载,查看DLL使用,要诊断 DLL 冲突,您需要知道哪一个 DLLs被加载以及从哪加载的tlist 或者 tlist 列出了 DLL,但是不包括路径 的listdlls 可以显示全部路径也显示.EXE的全路径 对于跟踪进程
9、的实质是十分重要的!,I/O活动,如何隔离系统I/O活动?使用系统性能对象中的I/O计数器来得到所有的数据 使用Windows 2000中的新的进程I/O计数器来发现进程使用 Filemon()来发现哪个进程在访问哪个文件不要忘记正常的文件I/O就象页面式I/O(由于缓存管理的设计),注册表活动,注册表应该在一个稳定的系统中保持“稳定”例如,它不应该是一个频繁访问的数据库运行 RegMon()来确定您的注册表(大多数情况下)是不活动的,小测验(进程和线程),NT的调度单元是什么?,A:线程,线程在运行中,但是却没有占用任何CPU时间,为什么?,A:当时间片到来时它们不是当前线程。,进程沙箱的尺
10、寸是多大?,A:2 gigabytes,议事日程,工具概述 理解进程和线程活动 理解CPU时间统计 理解系统进程 进程和系统崩溃,核心态对用户态模式,一个处理器状态 控制内存访问 每一个内存页面都标记着需要访问时处理器的状态 保护系统不受用户侵害 保护用户进程相互侵害 系统本身可以访问自己”代码区标记“不可以在任何模式下写”控制执行特权指令的能力 一个Windows NT抽象Intel:Ring 0,Ring 3,相关的线程线程可以从用户态切换到核心态,而且反之亦然保存的上下文的一部分和注册表,等等。不影响调度 计数器:“特权时间”和“用户时间”四级粒度:线程、进程、处理器和系统,进入核心模式
11、,Windows 2000在下列三种情况下切换到核心态模式 1.用户态下的请求 通过系统服务调度机制 核心态代码运行在请求线程的上下文中2.外部设备的中断请求Windows NT支持的中断调度器唤醒中断服务例程ISR运行在被中断的线程的上下文中(所谓的“任意的线程上下文”)ISR 经常请求一个“DPC例程”的执行,它运行在核心态模式中 中断处理时间不包括在被中断线程的时间片内3.核心态模式系统线程 系统中的一些线程始终保持在核心态模式(大部分在“系统”进程中)调度的、优先的等等,象任何其他线程,检查进程CPU时间,查看进程在核心态下的时间可以告诉您进程现在在做什么100%用户时间:应用程序占用
12、部分用户时间、部分核心态时间:做系统调用使用 qslice.exe(资源工具箱)或者 PerfMon,中断调度,中断调度例程,关闭中断记录机器状态(陷阱帧)来允许恢复 比较屏蔽吗并且降低中断优先级 寻找和调用合适的ISR打开中断 恢复机器状态(包括模式和中断),告诉设备停止中断审问设备状态、启动设备下一个操作,等等。请求一个 DPC返回调用者,中断服务例程,中断!,用户态或核心态代码,核心态模式,!注意,没有线程或者进程 上下文,中断优先级,IRQL=中断请求优先级 关于其他中断的中断优先级不同的中断源有不同的IRQL与IRQ不同 在多处理器系统中每一个CPU可以有不同的IRQL,正常的线程执
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- windows 系统 进程 活动

链接地址:https://www.31ppt.com/p-6523748.html