下载此文档

操作系统大作业.doc


文档分类:IT计算机 | 页数:约9页 举报非法文档有奖
1/9
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/9 下载此文档
文档列表 文档介绍
操作系统试验报告姓名:学号:学院:实验一实验要求:获得当前系统中正在运行的所有进程的优先级。实验程序://实验一:获取当前系统的所有优先级#include<>#include<>#include<iostream>//当在用户模式机内核模式下都提供所耗时间时,在内核模式下进行所耗时间的64位计算的帮助方法DWORDGetKernelModePercentage(constFILETIME&ftKernel, constFILETIME&ftUser){ //将FILETIME结构转化为64位整数 ULONGLONGqwKernel= (((ULONGLONG))<<32)+ ; ULONGLONGqwUser= (((ULONGLONG))<<32)+ ; //将消耗时间相加,然后计算消耗在内核模式下的时间百分比 ULONGLONGqwTotal=qwKernel+qwUser; DWORDdwPct= (DWORD)(((ULONGLONG)100*qwKernel)/qwTotal); return(dwPct);}//以下是将当前运行进程名和消耗在内核模式下的时间百分数都显示出来的应用程序voidmain(){ //对当前系统中运行的进程拍取"快照" HANDLEhSnapshot=::CreateToolhelp32Snapshot( TH32CS_SNAPPROCESS, //提取当前进程 0); //如果是当前进程,就将其忽略//初始化进程入口 PROCESSENTRY32pe; ::ZeroMemory(&pe,sizeof(pe)); =sizeof(pe); //按所有进程循环 BOOLbMore=::Process32First(hSnapshot,&pe); while(bMore) { //打开用于读取的进程 HANDLEhProcess=::OpenProcess(PROCESS_QUERY_INFORMATION, //指明要得到信息FALSE, //); //要打开的进程 if(hProcess!=NULL) { DWORDdwPriority=::GetPriorityClass(hProcess);//消除句柄::CloseHandle(hProcess); std::cout<<"ProcessID:"<<<<",Processpriority:"; switch(dwPriority) { caseHIGH_PRIORITY_CLASS: std::cout<<"High"; break; caseNORMAL_PRIORITY_CLASS: std::cout<<"Normal"; break; caseIDLE_PRIORITY_CLASS: std::cout<<"Idle"; break; caseREALTIME_PRIORITY_CLASS: std::cout<<"Realtime"; break

操作系统大作业 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数9
  • 收藏数0 收藏
  • 顶次数0
  • 上传人文库旗舰店
  • 文件大小230 KB
  • 时间2020-04-06