windows进程管理实验报告.doc

windows进程管理实验报告.doc

ID:55512369

大小:192.00 KB

页数:17页

时间:2020-05-15

windows进程管理实验报告.doc_第1页
windows进程管理实验报告.doc_第2页
windows进程管理实验报告.doc_第3页
windows进程管理实验报告.doc_第4页
windows进程管理实验报告.doc_第5页
资源描述:

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

1、成绩:实验报告课程名称:操作系统实验项目:windows进程管理姓名:专业:计算机科学与技术班级:学号:计算机科学与技术学院计算机系2019年4月23日哈尔滨理工大学计算机科学与技术学院实验教学中心实验报告实验项目名称:windows进程管理一、实验目的1.学习windows系统提供的线程创建、线程撤销、线程同步等系统调用;2.利用C++实现线程创建、线程撤销、线程同步程序;3.完成思考、设计与练习。二、实验用设备仪器及材料1.Windows7或10,VS2010及以上版本。三、实验内容1线程创建与撤

2、销写一个windows控制台程序(需要MFC),创建子线程,显示Hello,ThisisaThread.然后撤销该线程。相关系统调用:线程创建:CreateThread()线程撤销:ExitThread()线程终止:ExitThread(0)线程挂起:Sleep()关闭句柄:CloseHandle()参考代码://OS-TEST.cpp:定义控制台应用程序的入口点。//#include"stdafx.h"#include"OS-TEST.h"#ifdef_DEBUG#definenewDEBUG_NE

3、W#endif//唯一的应用程序对象CWinApptheApp;usingnamespacestd;voidThreadName1();哈尔滨理工大学计算机科学与技术学院实验教学中心实验报告int_tmain(intargc,TCHAR*argv[],TCHAR*envp[]){intnRetCode=0;staticHANDLEhHandle1=NULL;DWORDdwThreadID1;HMODULEhModule=::GetModuleHandle(NULL);if(hModule!=NULL)

4、{//初始化MFC并在失败时显示错误if(!AfxWinInit(hModule,NULL,::GetCommandLine(),0)){//TODO:更改错误代码以符合您的需要_tprintf(_T("错误:MFC初始化失败"));nRetCode=1;}else{//TODO:在此处为应用程序的行为编写代码。}}else{//TODO:更改错误代码以符合您的需要_tprintf(_T("错误:GetModuleHandle失败"));nRetCode=1;}hHandle1=CreateT

5、hread((LPSECURITY_ATTRIBUTES)NULL,0,(LPTHREAD_START_ROUTINE)ThreadName1,(LPVOID)NULL,0,&dwThreadID1);Sleep(5000);CloseHandle(hHandle1);哈尔滨理工大学计算机科学与技术学院实验教学中心实验报告ExitThread(0);//getchar();returnnRetCode;}voidThreadName1(){printf("Hello,ThisisaThread.");

6、}运行结果如图所示。完成以下设计题目:1.向线程对应的函数传递参数,如字符串“helloworld!”,在线程中显示。2.如何创建3个线程A,B,C,并建立先后序执行关系A→B→C。实验内容2线程同步完成父线程和子线程的同步。父线程创建子线程后进入阻塞状态,子线程运行完毕后再唤醒。相关系统调用:等待对象WaitForSingleObject(),WaitForMultipleObjects();信号量对象CreateSemaphore(),OpenSemaphore(),ReleaseSemaphor

7、e();HANDLEWINAPICreateSemaphore(_In_opt_LPSECURITY_ATTRIBUTESlpSemaphoreAttributes_In_LONGlInitialCount,_In_LONGlMaximumCount,_In_opt_LPCTSTRlpName);第一个参数:安全属性,如果为NULL则是默认安全属性第二个参数:信号量的初始值,要>=0且<=第三个参数第三个参数:信号量的最大值第四个参数:信号量的名称返回值:指向信号量的句柄,如果创建的信号量和已有的信号

8、量重名,那么返回已经存在的信号量句柄哈尔滨理工大学计算机科学与技术学院实验教学中心实验报告参考代码://OS-TEST.cpp:定义控制台应用程序的入口点。//#include"stdafx.h"#include"OS-TEST.h"#ifdef_DEBUG#definenewDEBUG_NEW#endif//唯一的应用程序对象CWinApptheApp;usingnamespacestd;//voidThreadName1();staticHANDLE

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

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

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