实验一熟悉Windows2000XP中的进程和线程_第1页
实验一熟悉Windows2000XP中的进程和线程_第2页
实验一熟悉Windows2000XP中的进程和线程_第3页
实验一熟悉Windows2000XP中的进程和线程_第4页
实验一熟悉Windows2000XP中的进程和线程_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验一熟悉windows2000/xp中的进程和线程一、实验目的1、熟悉 windows2000/xp 屮任务管理器的使用。2、通过任务管理器识别操作系统中的进程和线程的相关信息。3、掌握利用 spy+. exe 来察看 windows 中各个任务的更详细信息。二、实验理论基础及教材对应关系1、实验理论基础:(1)操作系统中的进程和线程的概念;(2)进程pcb的各项指标含意;2、本实验内容主要对应于教材第 2 章。三、实验内容与步骤1、启动操作系统自带的任务管理器:方法:直接按组合键 ctrl+alt+del,或考是在点击任务条上的“开始”“运行”,并输入“taskmgr.exe”。女口下图所

2、示:2、调整任务管理器的“查看”中的相关设罝,显示关于进程的以下各项信息,并完成 下表(填满即可):表一:统计进程的各项主要信息序号进程名称进程id线程数量占用内存优先级占cpu时间虚拟内存1atieclxx.exesystem101,412普通00: 00: 001,436k2atieclxx.exesystem6780普通00:00:00784k3ccc.exeadmini strator3212140普通0:00:0412, 168k4csrss.exesystem91116普通0:00:001,408k5csrss.exesystem111964普通0:00:011, 044k6dwm

3、. exeadministrator512936高0:00:1012, 240k7explorer.exeadministrator2724032普通0:00:1336, 188k8gatesrv. exe system4680普通0:00:00708k3、从桌面启动办公软件“word”,在任务管理器中找到该软件的登记,并将其结朿掉。ljunlocal servicesystemsystemsystemljunsystemlocal servicenetwork servicesystemnetwork servicesystemcpu00020200000000000000000000000

4、00001cpu0002020000000000000000000000000001内存使用2,228 k2,872 k31,772 k1,532 k25,300 k2,960 k 584k 1,576 kl624 k 608k7,556k2,428k1,520k1,760k9,484k2,308 k显示所有用户的进程(s)2,288进程数:26cpu使用:6x提交更改:289264k / 616548:结束进程)e vindovs 任务管理任务管理 s回回 文件()选项(q)查看(x)关机qf)帮助01)s 用程序进程性能联网用户用户名映像名称maxthon. exetasbncr.ex*

5、xplortr. exekprsnap5. exeiin1a0rd. exehprsnaps. exewdfffgr. exexvchost. exertvscan. exedef#atch. exejjsvr4. exespoolsv. exexvchost. exexvchost. exesvchost. exesvchost. exesvchost. exeljljljljljljljljljlj再从任务管理器中分别找到下列程序:winlogon. exe、lsass. exe、csrss. exe、smss. cxc,试着结束它们,观察到的反应是图标消失机器关机._ ,原因是系统文件_

6、 o4、在任务管理器中找到进程“explorer.exe”, 将之结朿掉, 并将桌面上你打开的所 有窗口最小化,看看你的计算机系统起来什么样的变化记面图标、开始任务栏消宏_ 、得到的结论是任务栏、桌面应用_( 说出explorer, cxc 进程的作用)。5、运行“spy+.exe”应用软件,点击按钮“切换到进程显示栏上,查看进程“explorer.exe”的各项信息,并填写下表:% licrosoft spy 杆杆- -进程进程宅32 视 s)目录树(1)搜索视 btt)窗口帮助 q!)csvchost 进程000004c4000004c4 explorerexplorero线程000006

7、5000000650 explorerexplorer找程00000510000051c c explorerexplorero线程0000078c0000078c explorerexplorer 线程0000049400000494 explorerexplorer5线程0000018400000184 explorerexplorero线程000006b4000006b4 explorerexplorer 线程0000009400000094 explorerexplorer 线程000006b8000006b8explorerexplorer 线程0000073c0000073c ex

8、plorerexplorero线程000001000001e4e4 explorerexplorer 线程0000000000的0 0 explorerexplorer 线程0000015400000154 explorerexplorero线程0000047800000478explorerexplorer若要获取帮助,is 按 fi表二:统计线程的各项信息进:explorer.exeexplorer.exe中的各个线程序号进程id线程td基本优先级当前优先级cpu时间上下文开关100000798000000748120:00:00.156158620000000000000000000:1

9、2:02. 76820734830000000800000004010:0:06. 895112604000000100000000413150:0:00. 0005回数字5000000180000001413130:0:00. 031386060000001c0000000413130:0:00. 062101817000000240000000413130:0:00. 06277968000001240000012011120:0:00. 01528190000035c00000244890:0:00. 0001310000000121000000124590:0:00. 00059801

10、100000000000000001010130:0:00. 005960120000000220000000003150:0:00. 010313000000040000000021380:0:00. 03351400000008000000009860:0:00. 00210489 o胃0000017800000178 explorerexplorer6 6、注意某些线程前有“ “ + + ” ”,如图所示: &00001%explorer&00001%explorer,说明二者之间的 差异是前 者 还包含了后者所没有的许多信息。实验材料的提交与成绩评定1 1、木实验的实验

11、报告一份 (电子版或纸质版一份, 具体形式由任课教师确定, 格式参 考学院统一实验报告)2 2、实验源程序一份,请表明题号(电子版)备注:做下一次实验之时提交上一次实验的材料,由各班学习委员以班为单位收集并上交任课 教师。3、实验成绩总分为10分, 由指导老师根据学生实验表现和实验材料进行评定, 木门 课程结束后实验平均成绩(实验总成绩/实验次数)按照10%的比例记入期末考试总成 绩。实验二编程实现进程的控制一、实验目的1、进一步掌握进程的相关概念2、掌握 windows2000/xp 冇关进程操作的 apt 函数的使用。3、了解进程的地址空间的含义。二、实验理论基础及教材对应关系1、实验理论

12、基础:(1) 操作系统中的进程和线程的概念;(2) 进程的各种控制;2、本实验内容主要对应于教材第 2 章和第 3 章的内容。三、实验内容与步骤1、启动应用程序“process information, exe,应出现下面的界面:2、依次改变上图屮“ k 拉组合框”的选项,读出界面中显示的各项信息,并完成下表(填满即可):(统计中要包含 winlogon. exe、lsass.exe、csrss.exe、smss. exe 等应 用程序)表一:统计进程的一些信息序号进程名称进程id父进程id优先级线程数heaps数量模块数量123456783、从上表中观察“进程 id”和“父进程 id”两栏,

13、总结并画出下列程序间的亲缘关 系:winlogon.exe、lsass.exe、csrss.exe、smss.exe。系统进程,用于微软 windows 系统的安全机制。微软 windows 操作系统的一部分。用于管理启动和停止服务。 windows用户登陆程序,管理用户登录和退出。微软客户端/服务端运行时子系统。会话管理子系统,负责启动用户会话。4、打开“ processlnfo ”工程文件,打开文件“ processlnfo. cpp ”,找到函数:createprocess ()的使用方法。按下列步骤建立一个工程项目,将记事本应用程序运 行起来,即创建了一个新的进程。步骤 1、创建一个基

14、于 mfc 的应用程序。lsass.exeservices.exewinlogon.execsrss.cxcsmss.exe项目类an):a):用于创建使用 microsoft 基础类库的应用程序的项目名称):运行记亊本应用程序位量(1):z:my documentswisudl studio2005projcu注册表的操作v v解决方案名称):1运行记亊本应用程序i创建解决方案的目录q)步骤 2、在应用程序类型中选取“基于对话框”的选项。q visual c+ktlclr茗规mfc智 ss 设备 測 awin32分布式系统解决方案田耳他项目类型 (測试项目visual studio己的枚极?

15、gmfc activex校件我的授板索联机根板.趙mfcdll步骤 5、打开界面上的“工具箱”,放置一个“按钮”,如下图:vojd cfe行记事本应用程序dig: : onbnclickedbuttonl 0 /todo:在此添加技件通知处理程序代码步骤 6、双击上面的“buttonl”按钮,切换到代码的编写处:步骤 3、直接点击完成,系统将为你创建一个工程项目。步骤 4、然后在“资源视阁”中,打开对话框“1dd_myj)1alog”,将出现以下对话框:输入以下语句:void c运行记事本应用程序dig: :onbnclickedbuttonl()|istartupinfo si = size

16、of(si) ;processjnformation pi:bool fok = createprocessw(lc :windowsnotepad. exe, null, null, null, false,0, null, null, &si, &pi);if (fok) closehandle(pi. hprocess);closehandle(pi. hthread);步骤 7、编译并运行此工程项目,看看运行的结果。1、本实验的实验报告一份(电子版或纸质版一份,具体形式由任课教师确定,格式参 考学院统一实验报告)2、实验源程序一份,请表明题号(电子版)备注:做下一次实验

17、之时提交上一次实验的材料,由各班学习委员以班为单位收集并上交任课 教师。3、实验成绩总分为10分,由指导老师根据学生实验表现和实验材料进行评定,本门 课程结束后实验平均成绩(实验总成绩/实验次数)按照10%10%的比例记入期末考试总成 绩。实验三windows中的线程与线程同步现象一、实验目的1、掌握windows中线程的操作。2、熟悉线程不同步时的现象及环境因素。3、掌握一种同步对象的使用。二、实验理论基础及教材对应关系1、线程和线程不同步的认识。2、线程间的同步和通信。u!、实验材料的提交与成绩评定3、本实验内容主要对应于教材第2章中关于线程的各节。三、实验内容与步骤1、定义全局变量int

18、 i = 0;初始值置为0。2、创建两个线程,一个对i执行加1操作,另一个对i执行减1操作。两个线程 执行相同的次数。显然,正常情况k, i的仍然保持为0。#include #include #define maxcount 9000000/循环次数要很大,可多次尝试一些值dword stdcall fun 1( lpvoidpl)for( int j =0 ;j maxcount;j+) i+;return 0;dword stdcall fun2( lpvoidpl)for( int j =0 ;j maxcount;j+)i-;return 0;3、观察两个线程执行后的情况,可以发觉最后

19、i的值不一定是0,有时是很大的正 数,有吋是很大的负数,这就是多个线程在操作同一个变量i吋,未同步吋带来的严 重问题。还应该了解,在多个线程操作共享的变量时,需耍考虑同步问题。5、给这两个线程加上同步代码,再来观察对 i 值的影响。步骤 2 的函数稍微改动即可:critical_section cs;dword _stdcall fun 1( lpvoid pi)for( int j =0 ;j maxcount;j+) :entercriticalsection(&cs);i+;:leavecriticalsection (&cs);dword _stdcall fun2(

20、lpvoid pi)for( int j =0 ;j maxcount;j+) :entercriticalsection(&cs);i;:leavecriticalsection (&cs);加入的同步代码的两个线程,无论如何执行,i 的值总是 0 ,结果是正确的。 6、主函数的写法 int main ()dword idl, id2;handle hthread2;:initializecriticalsection(&cs);hthread0 = :createthread (0, 0, funl, 0, 0, &idl);hthreadl = :crea

21、tethread (0, 0, fun2, 0, 0, &id2);:waitformultipleobjects(2, hthread, 1, infinite); printf ci = %drt, i);:deletecriticalsection(&cs); getchar (); return 0;实验材料的提交与成绩评定1、本实验的实验报告一份(电子版或纸质版一份,具体形式由任课教师确定,格式参 考学院统一实验报告)2、实验源程序一份,请表明题号(电子版)备注:做下一次实验之时提交上一次实验的材料,由各班学习委员以班为单位收集并上交任课教师。3、实验成绩总分为 10

22、 分,由指导老师根据学生实验表现和实验材料进行评定,本门 课程结束后实验平均成绩(实验总成绩/实验次数)按照 10%的比例记入期末考试总成 绩。实验四操作系统中的经典线程同步问题一、实验目的1、加深对线程的理解、掌握 windows 屮线程的操作。2、掌握死锁产生的原因。3、掌握信号量、互斥量、事件、临界区等同步对象的使用。二、实验理论基础及教材对应关系1、进程和线程的关系。2、线程间的同步和通信。3、本实验内容主要对应于教材第 2 章中关于线程的各节、第 3 章中关于死锁的 各节。三、实验内容与步骤1、运行实验程序“reader writer. exe”,出现如下界面:si readerjriterreader count:t创建读昔钱g 1 writerwriter countcount: :划建写者线程2、交替点击“创建读者线程”和“创建写者线程”按钮,出现如下界面:3、观察第二步的实验现象,多次试验

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论