实验2-进程控制与通信管理.doc

实验2-进程控制与通信管理.doc

ID:53322888

大小:190.00 KB

页数:9页

时间:2020-04-03

实验2-进程控制与通信管理.doc_第1页
实验2-进程控制与通信管理.doc_第2页
实验2-进程控制与通信管理.doc_第3页
实验2-进程控制与通信管理.doc_第4页
实验2-进程控制与通信管理.doc_第5页
资源描述:

《实验2-进程控制与通信管理.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、年级11级专业计算机科学与技术班级五班组号12组实验室9#205日期2014/05/17实验名称 实验二、 进程控制与通信管理实验内容分项内容实验级别1、Linux系统常用进程管理命令的使用操作系统观察级2、Linux系统常用进程创建与管理的系统调用原码阅读与系统编程级3、Windows平台常用进线程控制API原码阅读与系统编程级4、进程同步与互斥控制(读者写者、一家人吃苹果桔子、哲学家吃饭)码阅读与系统编程级5、简单进程通信(管道、消息缓冲、邮件槽等)(原码阅读与系统编程级)小组成员姓名学号组内分工自我评分教师评分独立完成实验二(1)良好独立完成实验二(2)良好独立完成实验二(

2、3)良好独立完成实验二(4)良好独立完成实验二(5)良好小组成绩评定教师签名:年月日实验分项11、Linux系统常用进程管理命令的使用2、Linux系统常用进程创建与管理的系统调用3、Windows平台常用进线程控制API4、进程同步与互斥控制5、简单进程通信实验目的一、实验目的:l1、加深对进程概念的理解,明确进程和程序的区别。l2、进一步认识并发执行的实质。l3、分析进程争用资源的现象,学习解决进程互斥的方法。实验要求具体题目:进程创建、进程控制系统平台:Linux/Windows操作系统实验原理步骤(算法流程)二、实验原理1.Linux系统常用进程管理命令(1)at命令:定

3、时运行命令让系统在两天后的17:30执行文件data中指定的作业,使用命令:#at-fdata15:30+2days(2)bg命令后台运行命令如果要将一个大目录的文件进行排序后,将结果输入到一个文件中,可以使用命令:#du-a/

4、sort-rn>/tmp/du.sorted(3)Fg挂起程序使用fg命令时,要加入后台任务号码,如果不加任何号码,则所变动的均是当前任务。#du-a/

5、sort-rn>/tmp/du.sorted&[1]237#fg1(4)Jobs显示后台程序先把两个进程放在系统后台运行,然后使用jobs命令查看后台任务的执行情况:#du-a/etc>user.dat

6、a&[1]233#find/-namecore-typef-ls>core.data&[2]234#jobs-l[1]+237Runningdu-a/etc>user.data[2]-238Runningfind/-namecore-typef-ls>core.data(5)kill命令杀掉进程命令执行过程如果出错,用户可用"kill"来结束任务。对于在后台运行的进程,可以使用kill命令终止:#du-a/

7、sort-rn>/tmp/du.sorted&[1]237#kill237(6)nice命令改变权限优先级将ls命令的优先序加1并执行,将结果输入文件1.txt:#nice-

8、n1ls>1.txt(7)renice命令修改优先级将进程PID为987及32的进程与进程拥有者为daemon及root的优先级别号加1:#renice+1987-udaemonroot-p32(8)sleep命令暂停进程下面的命令使进程先暂停60秒,然后查看哪个用户登录到系统中:#sleep60;who2、进程同步与互斥控制(数据同步),原理如下:(1)、设置全局变量:intticket=100;互斥量:HANDLEhMutex;(2)、创建互斥信号量ticket:hMutex=CreateMutex(NULL,TRUE,"ticket");(3)、用WaitForSingle

9、Object(hMutex,INFINITE);捕获互斥信号量hMutex(4)、用ReleaseMutex(hMutex);释放互斥量的使用权3、通过邮件槽实现简单进程通信,原理如下:(1)、油槽服务器:1)hMailslot=CreateMailslot("\\.\mailslot\MyMailslot",0,MAILSLOT_WAIT_FOREVER,NULL);//创建一个邮路。2)ReadFile(hMailslot,buf,100,&dwRead,NULL);//读取邮路数据3)CloseHandle(hMailslot);//关闭油槽(2)、油槽客户端:1)

10、hMailslot=CreateFile("\\.\mailslot\MyMailslot",GENERIC_WRITE,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);//创建油槽文件2)WriteFile(hMailslot,buf,strlen(buf)+1,&dwWrite,NULL);//写入数据3)CloseHandle(hMailslot);//关闭油槽实验源代码如下:1、进程同步

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。