




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上操作系统课程设计实验报告实验名称: 进程控制 姓名/学号: xx 一、实验目的设计并实现Unix的“time”命令。“mytime”命令通过命令行参数接受要运行的程序,创建一个独立的进程来运行该程序,并记录程序运行的时间。二、实验内容一、在Windows下实现:· 使用CreateProcess()来创建进程· 使用WaitForSingleObject()在“mytime”命令和新创建的进程之间同步· 调用GetSystemTime()来获取时间在Linux下实现:· 使用fork()/execv()来创建进程运行程序
2、3; 使用wait()等待新创建的进程结束· 调用gettimeofday()来获取时间mytime的用法:$ mytime.exe program1三、实验环境 操作系统:Windows7旗舰版 处理器:Intel Core2 Duo p7450 2.13GHz 内存:2.00GB 32位操作系统 LINUX版本信息:Linux ubuntu 2.6.32-21-generic #32-Ubuntu SMP Fri Apr 16 08:10:02 UTC 2010 i686 GNU/Linux 四、程序设计与实现一.windows下的实验 1、创建进程之前先用系统函数getsyst
3、emtime获取当前时间 。 SYSTEMTIME systime; GetSystemTime(&systime); 2、调用createprocess函数创建进程:BOOL bRet = CreateProcess( NULL, /不在此指定可执行文件的文件名 argv1, /命令行参数 NULL, /默认进程安全性 NULL, /默认线程安全性 FALSE, /当前进程内的句柄不可以被子进程继承 CREATE_NEW_CONSOLE, /为新进程创建一个新的控制台窗口 NULL, /使用本进程的环境变量 NULL, /使用本进程的驱动器和目录 &si, /父进程传给子进程
4、的一些信息 &pi); /保存新进程信息的结构 由于要使用命令行来创建进程,所以我的createprocess函数第一个参数设置为NULL,通过第二个参数在命令行里实现创建进程。3、使用等待函数来等待所创建进程的死亡。 WaitForSingleObject(pi.hProcess,INFINITE);4、再次取得系统当前时间,与上次取得时间作差,得到进程运行时间。 具体做法是:将两次时间对应位作差,然后换算成相应秒数。t=(systime.wHour-h)*3600+(systime.wMinute-m)*60+systime.wSecond-s+(systime.wMillisec
5、onds-ms)/1000;二Linux下的实验 1、创建进程之前先得到系统时间 struct timeval start; struct timeval end; gettimeofday(&start,NULL); 2、用fork函数创建进程,这时函数会返回两个值,需要通过返回值来判断是子进程还是父进程。 pc = fork(); if ( pc < 0 ) /* 如果出错 */ exit(1); else if ( pc = 0) /* 如果是子进程 */else /* 如果是父进程 */3、如果是子进程运行,则在子进程中调用execv函数在命令行中来运行一个程序。exec
6、v(argv1,&argv1);4、如果是父进程在运行,则先等待子进程结束,然后获取时间。pr = wait(NULL);/* 等待子进程结束 */gettimeofday(&end,NULL);5、计算程序运行时间。time =end.tv_sec-start.tv_sec;printf("programm running %ld 秒n",time);五、实验结果和分析 一、windows下实验结果 程序运行时程序运行结束:实验结果分析:程序正确运行,显示出程序开始和结束时间,并计算出程序运行时间。Linux系统下实验:一、调用扫雷程序二、关闭扫雷程序,计算运行时间:实验结果分析:程序正确运行,调用一个游戏程序,并计算程序运行时间。五、讨论、心得 在windo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 一年级体育说课稿
- 2025授权打印合同模板
- 2025合同范本租赁合同(简化版)示例
- 车库车位租赁与广告位共享合同
- 民用机场场地空地租赁与航空服务合同
- 2025合同管理编码准则
- 2025电子产品生产销售合同协议书
- 2025特许经营加盟合同模板
- 入股店铺协议书范本合同
- 绵阳辅警考试题库及答案
- 少年军校协议合同
- 口腔正畸考试试题及答案
- 完全单孔腹腔镜胃癌手术操作专家共识(2025版)解读
- 2025部编版语文二年级下册第七单元测试卷(含答案)
- 免疫细胞疗法在阿尔茨海默病中的应用-全面剖析
- SWOT分析应用试题及答案
- DB15T 3727-2024温拌再生沥青混合料超薄磨耗层碳排放核算技术规程
- 浦发银行贷款合同文本样式
- 2025年刑事技术考试试题及答案
- 2024年安徽省《辅警招聘考试必刷500题》考试题库及完整答案(必背)
- 2025年部编版新教材语文一年级下册期末测试题及答案(一)
评论
0/150
提交评论