版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
《計(jì)算機(jī)操作系統(tǒng)》實(shí)驗(yàn)指導(dǎo)書2
一、實(shí)驗(yàn)第01講Windows系統(tǒng)管理與訪問Linux系統(tǒng)2
1、實(shí)驗(yàn)1Windows2000系統(tǒng)管理(必做)2
2、實(shí)驗(yàn)2Windows2000進(jìn)程編程(必做)3
3、實(shí)驗(yàn)3linux系統(tǒng)訪問泌做)4
二、實(shí)驗(yàn)第02講Windows進(jìn)程管理與管理Linux系統(tǒng)進(jìn)程及Linux重定向和管
道7
1、實(shí)驗(yàn)1Windows任務(wù)管理器的進(jìn)程管理(必做)7
2、實(shí)驗(yàn)2Windows2000進(jìn)程編程(必做)8
3、實(shí)驗(yàn)3管理Linux系統(tǒng)進(jìn)程(必做)10
4、實(shí)驗(yàn)4Linux重定向和管道(必做)11
三、實(shí)驗(yàn)第03講Linux文件信息命令、基本文件管理與文件權(quán)限12
1、實(shí)驗(yàn)1Linux文件信息命令和基本文件管理(必做)12
2、實(shí)驗(yàn)2Linux文件權(quán)限(必做)13
四、實(shí)驗(yàn)第04講Windows進(jìn)程與線程編程15
1、實(shí)驗(yàn)1Windows2000進(jìn)程的“一生”(必做)15
2、實(shí)驗(yàn)2Windows2000線程同步(必做選做)19
3、實(shí)驗(yàn)3Windows2000線程間的通訊(選做)23
五、實(shí)驗(yàn)第05講Linux并發(fā)程序設(shè)計(jì)及Linux用戶程序的內(nèi)存管理28
1、實(shí)驗(yàn)1Linux并發(fā)程序設(shè)計(jì)(必做)28
2、實(shí)驗(yàn)2Linux用戶程序的內(nèi)存管理(必做)30
六、實(shí)驗(yàn)第06講Windows存儲管理32
1、實(shí)驗(yàn)1提高Windows2000的內(nèi)存性能(必做)32
2、實(shí)驗(yàn)2Windows2000內(nèi)存結(jié)構(gòu)(必做)35
3、實(shí)驗(yàn)3Windows2000虛擬內(nèi)存(必做)36
七、實(shí)驗(yàn)第07講Linux聲音設(shè)備編程40
1、實(shí)驗(yàn)1Linux聲音設(shè)備編程(必做)40
《計(jì)算機(jī)操作系統(tǒng)》實(shí)驗(yàn)指導(dǎo)書
課程編號:10302340實(shí)驗(yàn)學(xué)時(shí):8學(xué)時(shí)
先修課程:《計(jì)算機(jī)組成原理》、《高級語言程序設(shè)計(jì)》、《數(shù)據(jù)結(jié)構(gòu)》
—、實(shí)驗(yàn)第01講Windows系統(tǒng)管理與訪問Linux系統(tǒng)
1、實(shí)驗(yàn)1Windows2000系統(tǒng)管理(必做)
1、實(shí)驗(yàn)學(xué)時(shí)與難度
?實(shí)驗(yàn)估計(jì)時(shí)間:60分鐘,難度系數(shù):3。
2、背景知識簡介
-Windows2000Professional的“管理工具”中集成了許多系統(tǒng)管理工具,利用這
些工具,管理員可以方便地實(shí)現(xiàn)各種系統(tǒng)維護(hù)和管理功能
'這些工具集中在“控制面板”的“管理工具”選項(xiàng)下,用戶和管理員可以很容易地
對它們操作和使用
■默認(rèn)情況下,只有一些常用工具隨Windows200。系統(tǒng)的安裝而安裝
?服務(wù):啟動和停止由Windows系統(tǒng)提供的各項(xiàng)服務(wù)
?計(jì)算機(jī)管理器:管理磁盤以及使用其他系統(tǒng)工具來管理本地或遠(yuǎn)程計(jì)算機(jī)
?事件查看器:顯示來自于Window和其他程序的監(jiān)視與排錯信息
?數(shù)據(jù)源(ODBC):添加、刪除以及配置ODBC數(shù)據(jù)源和驅(qū)動程序
?性能:顯示系統(tǒng)性能圖衣以及配置數(shù)據(jù)日志和警報(bào)
?組件服務(wù):配置并管理C0M+應(yīng)用程序
-另一些工具則隨系統(tǒng)服務(wù)的安裝而添加到系統(tǒng)中,例如:
?Telnet服務(wù)器管理:查看以及修改Telnet服務(wù)器設(shè)置和連接
?Internet服務(wù)管理器:管理HS、Internet和IntranetWeb站點(diǎn)的W2b服
務(wù)器
?本地安全策略:查看和修改本地安全策略,諸如用戶權(quán)限和審計(jì)策略
3、實(shí)驗(yàn)?zāi)康暮鸵?/p>
■了解和學(xué)習(xí)Windows系統(tǒng)管理工具及其使用
?熟悉Windows系統(tǒng)工具的內(nèi)容和應(yīng)用
■進(jìn)一步熟悉Windows操作系統(tǒng)的應(yīng)用環(huán)境
4、實(shí)驗(yàn)環(huán)境
■需要準(zhǔn)備一臺運(yùn)行Windows2000Professional操作系統(tǒng)的計(jì)算機(jī)
5、實(shí)驗(yàn)內(nèi)容與步驟
■為了幫助用戶管理和監(jiān)視系統(tǒng),Windows2000提供了多種系統(tǒng)管理工具,其中最主
要的有
?計(jì)算機(jī)管理
?事件查看器
?性能監(jiān)視
?服務(wù)
?數(shù)據(jù)源(ODBC)
?管理工具組中,有哪些系統(tǒng)管理工具,基本功能是什么?
'對“系統(tǒng)工具”、“存儲”、“服務(wù)和應(yīng)用程序”等進(jìn)行實(shí)驗(yàn)記錄
實(shí)驗(yàn)記錄
名稱類型描述
2、實(shí)驗(yàn)2Windows2000進(jìn)程編程(必做)
1、實(shí)驗(yàn)學(xué)時(shí)與難度
■實(shí)驗(yàn)估計(jì)時(shí)間:30分鐘,難度系數(shù):3。
2、背景知識簡介
■Windows2000可以識別的應(yīng)用程序包括控制臺應(yīng)用程序、GUI應(yīng)用程序和服務(wù)應(yīng)用
程序
■控制臺應(yīng)用程序匕以創(chuàng)建GUI:GUI應(yīng)用程序可以作為服務(wù)來運(yùn)行;服務(wù)也可以向標(biāo)
準(zhǔn)的輸出流寫入數(shù)據(jù)一一不同類型應(yīng)用程序間的惟一重要區(qū)別是其啟動方法
■Windows2000是以NT的技術(shù)構(gòu)建的,它提供了創(chuàng)建控制臺應(yīng)用程序的能力,使用
戶可以利用標(biāo)準(zhǔn)的C++工具,如iostream庫中的cout和cin對象,來創(chuàng)建小型應(yīng)
用程序。當(dāng)系統(tǒng)運(yùn)仃時(shí),Windows2000的服務(wù)道常要向系統(tǒng)用尸提供所需功能
■服務(wù)應(yīng)用程序類型需要ServiceMailO函數(shù),由服務(wù)控制管理器(SCM)加以調(diào)用。
SCM是操作系統(tǒng)的集成部分,負(fù)責(zé)響應(yīng)系統(tǒng)啟動以開始服務(wù)、指導(dǎo)用戶控制或從另
一個(gè)服務(wù)中來的請求。其本身負(fù)責(zé)使應(yīng)用程序的行為像一個(gè)服務(wù)。通常,服務(wù)登錄
到特殊的LocalSystem賬號下,此賬號具有與開發(fā)人員創(chuàng)建的服務(wù)不同的權(quán)限
'當(dāng)令C++編譯器創(chuàng)建可執(zhí)行程序時(shí),編譯器將源代碼編譯成OBJ文件,然后將其與
標(biāo)準(zhǔn)庫相鏈接。產(chǎn)生的EXE文件是裝載器指令、機(jī)器指令和應(yīng)用程序的數(shù)據(jù)的集合。
裝載器指令告訴系統(tǒng)從哪里裝載機(jī)器代碼。另一個(gè)裝載器指令告訴系統(tǒng)從哪里開始
執(zhí)行進(jìn)程的主線程。在進(jìn)行某些設(shè)置后,進(jìn)入開發(fā)者提供的mainO>Service亞in()
或WinMainO函數(shù)的低級入口點(diǎn)。機(jī)器代碼中包括有控制邏輯,它所做的事包括跳
轉(zhuǎn)到WindowsAPI函數(shù),進(jìn)行計(jì)算或向磁盤寫入數(shù)據(jù)等
'Windows允許開發(fā)人員將大型應(yīng)用程序分為較小的、互相有關(guān)系的服務(wù)模塊,即動
態(tài)鏈接庫(DLL)代碼塊,在其中包含應(yīng)用程序所使用的機(jī)器代碼和應(yīng)用程序的數(shù)據(jù)
3、實(shí)驗(yàn)?zāi)康暮鸵?/p>
■通過對Windows200()進(jìn)程編程
?進(jìn)一步熟悉操作系統(tǒng)的基本概念
?進(jìn)一步熟悉進(jìn)程的概念
?初步理解Windows2(X)0進(jìn)程的編程
4、實(shí)驗(yàn)環(huán)境
■需要做以下準(zhǔn)備
?一臺運(yùn)行Windows2(X)0Professional操作系統(tǒng)的計(jì)算機(jī)
?計(jì)算機(jī)中需安裝VisualC++6.0專業(yè)版或企業(yè)版
5、實(shí)驗(yàn)內(nèi)容與步驟
■列出當(dāng)前運(yùn)行進(jìn)程的優(yōu)先級(具體內(nèi)容見源程序)
6、源程序
//prochandle項(xiàng)目
#include<windows.h>
#include<iostream>
//確定自己的優(yōu)先權(quán)的喻單應(yīng)用程序
voidmain()
(
//從當(dāng)前過程中提雙句柄
HANDLEhProccssThis=::GctCurrcntProcess():
//請求內(nèi)核提供該過程所屬的優(yōu)先權(quán)類
DWORDdwPriority=::GetPriorityClass(hProcessThis);
//發(fā)出消息,“為用戶描述該類
std::cout?."currentprocesspriority/';
switch(dwPriority)
(
caseHIGH_PRIORITY_CLASS:
std::cout?*High*;
break;
caseNORMAkPRIORITY_CLASS:
std::cout<<"Normal";
break;
caseIDLE_PRIORITY_CLASS:
std::cout?*ldle,x;
break;
caseREALTIME_PRIORTTY_C1.ASS:
std::cout?”Realtime";
break;
default:
std::cout?*<unknow>*;
break;
)
std::cout?std::endl;
)
7、進(jìn)階
■更改當(dāng)前運(yùn)行進(jìn)程的優(yōu)先級。
3、實(shí)驗(yàn)3linux系統(tǒng)訪問(必做)
1、實(shí)驗(yàn)學(xué)時(shí)與難度
?實(shí)驗(yàn)估計(jì)時(shí)間:90分鐘,難度系數(shù):4。
2、背景知識簡介
?Linux是■個(gè)與DOS或Windows完全不同的操作環(huán)境,具有它自己獨(dú)特的風(fēng)格
-登錄Linux和使用GNOME
?首先回顧Linux登錄ID和II令的要求,使用標(biāo)準(zhǔn)圖形用戶界面GNOME練習(xí)
登錄Linux系統(tǒng),并修改登錄口令
?接著,學(xué)習(xí)使用GNOME。GNOME是優(yōu)秀的Linux桌面平臺,也是目前Linux
各版本中使用的對國際化支持最好的桌面平臺。使用GNOME需要熟悉面板,
練習(xí)使用鼠標(biāo)和鍵盤管理視窗;還需要練習(xí)工作空間的切換和使用工作空間
菜單
?然后通過Linux系統(tǒng)的Shell、Linux文件、目錄和權(quán)限等諸方面來掌握Linux
系統(tǒng)管理的有關(guān)知識
?最后,退出(或者注銷)并返回Linux登錄界面
■Linux系統(tǒng)的Shell
?使用Linux系統(tǒng)時(shí),用戶多數(shù)時(shí)間是通過Shell與系統(tǒng)進(jìn)行對話的。Shell
是一個(gè)接收用戶輸入命令并將其轉(zhuǎn)換成指令的程序,它是用戶與Linux系統(tǒng)
之間的界面之一
?Linux系統(tǒng)中可以使用的Shell包括:
■bash:BourneAgainShello這是Linux系統(tǒng)上最常用的Shell,它
合乎POS1X(PortableOperatingSystemInterface)標(biāo)準(zhǔn)且相容
于BourneShell,是GNU工程[自由軟件基金會)的產(chǎn)物,并且提
供了編輯命令行的功能
■esh:CShello由Berkeley(伯克利大學(xué))開發(fā),與BourneShell
在交互式使用上很多是相兼容的,但在程序設(shè)計(jì)界面上卻有很大的
不同。它不提供編輯命令行的功能,但它有類似的功能叫命令歷史
記錄
■ksh:KornShell。在UNIX系統(tǒng)下得到普遍使用,并最早將現(xiàn)代Shell
技術(shù)(包括取自CShell的部分)引入BourneShell,提供了編輯
命令行功能
■sh:BourneShell?是原始的Shell,不提供編輯命令行功能
■tesh:CShell的加強(qiáng)版,提供了編輯命令行的功能
■zsh:ZShello最新的Shell,與BourneShell兼容,提供編輯命
令行的功能
?Linux系統(tǒng)的文件、目錄和權(quán)限
?Linux的文件名與DOS有許多相似之處也有其自身的特點(diǎn)
?Linux文件名沒有標(biāo)準(zhǔn)格式。通常文件名中可以包含任何字符(“/”字符
除外,”字符不能作為文件名的第一個(gè)字符),文件名的長度限制在256
個(gè)字符以內(nèi)。Linux的文件名也提供了功能強(qiáng)大且精確的通配符
?文件的權(quán)限是Linux系統(tǒng)安全的核心部分,包括
?Read(可讀)權(quán)限:表示可以讀取文件內(nèi)的數(shù)據(jù)
?Write(可寫)權(quán)限:表示可以改變或刪除該文件
?Execute(可執(zhí)行)權(quán)限:表示可以把該文件當(dāng)成程序執(zhí)行
-除文件權(quán)限之外,Linux系統(tǒng)上還有目錄和很多其他類型的文件,其中包括
特殊文件(設(shè)備)、Socket和符號連接等等(平時(shí)我們經(jīng)常使用的Windows
設(shè)備如軟驅(qū)、光驅(qū)等在Linux中也是一種特殊的文件)
?擁有root口令的用戶稱為超級用戶,超級用戶有權(quán)訪問整個(gè)系統(tǒng),包括建
立普通用戶帳號、修改密碼、安裝與卸載軟件等一切權(quán)限。超級用戶的提示
符為“#",普通用戶提示符為“$”
?幾個(gè)用戶在一個(gè)系統(tǒng)下共用一個(gè)帳號,其個(gè)人文件的安全就得不到保障。建
立普通用戶帳號后,系統(tǒng)能保證用戶是唯一能夠存取其個(gè)人文件的人。另一
方面,即使沒有與人共享一個(gè)系統(tǒng),建立普通用戶帳號也是必要的。因?yàn)槿?/p>
果總是以超級用戶登錄進(jìn)行操作(超級用戶的權(quán)限是整個(gè)系統(tǒng)),一旦出現(xiàn)
誤操作(如:破壞或移動、刪除一個(gè)重要的系統(tǒng)文件)處理起來也很棘手
■Linux文件系統(tǒng)
?Linux的文件系統(tǒng)是文件和FI錄層次的集合。了解Linux文件系統(tǒng)的結(jié)構(gòu)有
助于更好地理解和使用Linuxo在Linux文件系統(tǒng)根目錄下,有如下子目錄:
bin-,dev,etc、home-install、lib、nnl、proc、roottmp、user,var
(不同版本,目錄會略有不同)
■/bin目錄該目錄中存放許多基本的系統(tǒng)程序。
■/cev目錄該目錄中存放的文件是設(shè)備驅(qū)動程序,用來訪問系統(tǒng)設(shè)
備和資源,如磁盤設(shè)備、調(diào)制解調(diào)器、內(nèi)存等
3、實(shí)驗(yàn)?zāi)康暮鸵?/p>
■登錄Linux和熟悉GNOME
?通過登錄Linux操作理解以下內(nèi)容
■Linux登錄ID的要求
■在GMOME環(huán)境下登錄進(jìn)入Linux系統(tǒng)
■修改口令
■正確退出或者注銷Linux系統(tǒng)
?通過以下操作熟悉GNOME界面
■回顧GNOME面板圖標(biāo)和菜單
■管理GNOME視窗
■使用LinuxShell
?了解用戶Linux環(huán)境所使用的Shell
?更改用戶系統(tǒng)的Shell
,初步了解bash
■熟悉Linux的文件和目錄
?掌握Linux文件名通配符的使用
?了解Linux系統(tǒng)目錄的特點(diǎn)
■了解Linux文件系統(tǒng)
?Linux文件系統(tǒng)根目錄的子目錄
?/bin目錄中的文件
?/dev目錄中的文件
4、實(shí)驗(yàn)環(huán)境
?需要做以下準(zhǔn)備
?由指導(dǎo)老師分配的Linux登錄用戶ID(如user2)和口令
?一臺運(yùn)行RedHatLinux操作系統(tǒng)并帶有GNOME的計(jì)算機(jī)
5、實(shí)驗(yàn)內(nèi)容與步驟
-登錄規(guī)則和口令規(guī)則
■登錄Linux
■熟悉GNOME
■Linux系統(tǒng)中的Shell
■Linux系統(tǒng)中文件與目錄
,Linux的文件系統(tǒng)
?注銷GNOME
6、進(jìn)階
-Linux的常用命令(可選練習(xí))
?有關(guān)目錄的命令:pwd、cd
,有關(guān)文件的命令:Is、cat、chown、cp、date、dd、file、find
?其他的命令:kill>clear、mount、umountsreboot>passwd、su
二、實(shí)驗(yàn)第02講Windows進(jìn)程管理與管理Linux系統(tǒng)進(jìn)程及
Linux重定向和管道
1、實(shí)驗(yàn)1Windows任務(wù)管理器的進(jìn)程管理(必做)
1、實(shí)驗(yàn)學(xué)時(shí)與難度
?實(shí)驗(yàn)估計(jì)時(shí)間:30分鐘,難度系數(shù):3。
2、背景知識簡介
■Windows2000的任務(wù)管理器提供了用戶計(jì)算機(jī)上正在運(yùn)行的程序和進(jìn)程的相關(guān)信
息,也顯示了最常用的度量進(jìn)程性能的單位
■使用任務(wù)管理器
?可以打開監(jiān)視計(jì)算機(jī)性能的關(guān)鍵指示器,快速查看正在運(yùn)行的程序的狀態(tài),
或者終止已停止響應(yīng)的程序
-也可以使用多個(gè)參數(shù)評估正在運(yùn)行的進(jìn)程的活動,以及查看CPU和內(nèi)存使
用情況的圖形和數(shù)據(jù)
■任務(wù)管理器中
?“應(yīng)用程序”選項(xiàng)卡:顯示正在運(yùn)行程序的狀態(tài),用戶能夠結(jié)束、切換或者
啟動程序
?“進(jìn)程”選項(xiàng)卡:顯示正在運(yùn)行的進(jìn)程信息。例如,可以顯示關(guān)于CPU和
內(nèi)存使用情況、頁面錯誤、句柄計(jì)數(shù)以及許多其他參數(shù)的信息
?“性能”選項(xiàng)卡:顯示計(jì)算機(jī)動態(tài)性能,包括CPU和內(nèi)存使用情況的圖表,
正在運(yùn)行的句柄、線程和進(jìn)程的總數(shù),物理、核心和認(rèn)可的內(nèi)存總數(shù)(KB)等
3、實(shí)驗(yàn)?zāi)康暮鸵?/p>
-通過在Windows任務(wù)管理器中對程序進(jìn)程進(jìn)行響應(yīng)的管理操作
'熟悉操作系統(tǒng)進(jìn)程管理的概念
?學(xué)習(xí)觀察操作系統(tǒng)運(yùn)行的動態(tài)性能
4、實(shí)驗(yàn)環(huán)境
■需要準(zhǔn)備一臺運(yùn)行Windows2000Professional操作系統(tǒng)的計(jì)算機(jī)
5、實(shí)驗(yàn)內(nèi)容與步驟
?使用任務(wù)管理器終止進(jìn)程
-顯示其他進(jìn)程記數(shù)器
?更改正在運(yùn)行的程序的優(yōu)先級
6、實(shí)驗(yàn)提示
■注意實(shí)驗(yàn)中所使用的是操作系統(tǒng)的哪個(gè)版本
?了解在當(dāng)前機(jī)器中正在運(yùn)行的應(yīng)用程序
-在WindowsXP的任務(wù)管理相中,“進(jìn)程”選項(xiàng)卡增加了一個(gè)“用戶名”欄目,其中
區(qū)分了SYSTEM、NETWORKSERVICE、LOCALSERVICE和用戶的不同進(jìn)程類別
-終止進(jìn)程時(shí)要小心,有可能導(dǎo)致不希望發(fā)生的結(jié)果,包括數(shù)據(jù)丟失和系統(tǒng)不穩(wěn)定等;
終止進(jìn)程將結(jié)束它直接或間接創(chuàng)建的所有子進(jìn)程
2、實(shí)驗(yàn)2Windows2000進(jìn)程編程(必做)
1、實(shí)驗(yàn)學(xué)時(shí)與難度
?實(shí)驗(yàn)估計(jì)時(shí)間:60分鐘,難度系數(shù):4。
2、背景知識簡介
'Windows2000可以識別的應(yīng)用程序包括控制臺應(yīng)用程序、GUI應(yīng)用程序和服務(wù)應(yīng)用
程序
-控制臺應(yīng)用程序可以創(chuàng)建GUI;GUI應(yīng)川程序可以作為服務(wù)來運(yùn)行;服務(wù)也可以向標(biāo)
準(zhǔn)的輸出流寫入數(shù)據(jù)一一不同類型應(yīng)用程序間的惟一重要區(qū)別是其啟動方法
?Windows2000是以NT的技術(shù)構(gòu)建的,它提供了創(chuàng)建控制臺應(yīng)用程序的能力,使用
戶可以利用標(biāo)準(zhǔn)的C++工具,如iostream庫中的cout和cin對象,來創(chuàng)建小型應(yīng)
用程序。當(dāng)系統(tǒng)運(yùn)行時(shí),Windows2000的服務(wù)通常要向系統(tǒng)用戶提供所需功能
■服務(wù)應(yīng)用程序類型需要ServiceMailO函數(shù),由服務(wù)控制管理器(SCM)加以調(diào)用。
SCM是操作系統(tǒng)的集成部分,負(fù)責(zé)響應(yīng)系統(tǒng)啟動以開始服務(wù)、指導(dǎo)用戶控制或從另
一個(gè)服務(wù)中來的請求。其本身負(fù)責(zé)使應(yīng)用程序的行為像一個(gè)服務(wù)。通常,服務(wù)登錄
到特殊的LocalSystem賬號下,此賬號具有與開發(fā)人員創(chuàng)建的服務(wù)不同的權(quán)限
■當(dāng)令C++編譯器創(chuàng)建可執(zhí)行程序時(shí),編譯器將源代碼編譯成OBJ文件,然后將其與
標(biāo)準(zhǔn)庫相鏈接。產(chǎn)生的EXE文件是裝載器指令、機(jī)器指令和應(yīng)用程序的數(shù)據(jù)的集合。
裝載器指令告訴系統(tǒng)從哪里裝載機(jī)器代碼。另一個(gè)裝載器指令告訴系統(tǒng)從哪里開始
執(zhí)行進(jìn)程的主線程。在進(jìn)行某些設(shè)置后,進(jìn)入開發(fā)者提供的mainO.Service址in()
或眄nMain()函數(shù)的低級入口點(diǎn)。機(jī)器代碼中包括有控制邏輯,它所做的事包括跳
轉(zhuǎn)到WindowsAPI函數(shù),進(jìn)行計(jì)算或向磁盤寫入數(shù)據(jù)等
?Windows允許開發(fā)人員將大型應(yīng)用程序分為較小的、互相有關(guān)系的服務(wù)模塊,即動
態(tài)鏈接庫(DLL)代碼塊,在其中包含應(yīng)用程序所使用的機(jī)器代碼和應(yīng)用程序的數(shù)據(jù)
3、實(shí)驗(yàn)?zāi)康暮鸵?/p>
■通過對Windows2000進(jìn)程編程
?進(jìn)一步熟悉操作系統(tǒng)的基本概念
?進(jìn)一步熟悉進(jìn)程的概念
進(jìn)一步理解Windows2000進(jìn)程的編程
較好地理解Windows2000進(jìn)程的結(jié)構(gòu)
4、實(shí)驗(yàn)環(huán)境
'需要做以下準(zhǔn)備
?一臺運(yùn)行Windows2000Professional操作系統(tǒng)的計(jì)算機(jī)
?計(jì)算機(jī)中需安裝VisualC++6.0專業(yè)版或企業(yè)版
5、實(shí)驗(yàn)內(nèi)容與步驟
?參照計(jì)算機(jī)的任務(wù)管理器中的進(jìn)程欄所列出的內(nèi)容,列出當(dāng)前系統(tǒng)所有運(yùn)行進(jìn)程及
其相關(guān)信息(具體內(nèi)容見源程序)
6、源程序
//proc1ist項(xiàng)目
#include〈windows.h>
#include<tlhelp32.h>
#include<iostream.h>
//當(dāng)在用戶模式機(jī)內(nèi)核模式下都提供所耗時(shí)間時(shí),在內(nèi)核模式下進(jìn)行所耗時(shí)間的64位計(jì)算的利助方
法
DWORDGetKernelModePercentage(constFILETIME&ftKernel,
constFILETIME&ftUser)
{
//將FILETIME結(jié)構(gòu)轉(zhuǎn)化為64位整數(shù)
Ul.ONGLONGqwKernel=(((ULONGLONG)ftKernel.dwIIighDateTime)
?32)+ftKcrncl.dwLowDatcTimc:
LLONGLONGqwlser=(((ULONGLONG)ftUser.dwHighDateTime)
?32)+ftUser.dwLowDateTime;
//將消耗時(shí)間相加,然后計(jì)算消耗在內(nèi)核模式下的時(shí)間百分比
LLONGLONGqwTotal=qwKernel+qwliser;
DWORDdwPct=(DWORD)(((ULONGLONG)100*qwKernel)/qwTotal);
return(dwPct);
}
//以下是將當(dāng)前運(yùn)行過程名和消耗在內(nèi)核模式下的時(shí)間百分?jǐn)?shù)都顯示出來的應(yīng)用程序
voidmain()
(
//對當(dāng)前系統(tǒng)中運(yùn)行的過程拍取“快照”
HANDLEhSnapshot=::CreateToolhelp32Snapshot(
TH32CS_SNAPPR0CESS,//提取當(dāng)前過程
0);//如果是當(dāng)前過程,就將其忽略
//初始化過程入口
PR0CESSENTRY32pe:
::ZeroMemory(&pe,sizeof(pe));
pe.dwSize=sizeof(pe);
BOOLbMore=::Process32First(hSnapshot,&pe);
while(bMore)
(
//打開用于讀取的過程
HANDLEhProccss=::0penProccss(
PROCESS_QUERY_INEORMATION,//指明要得到信息
FALSE,//不必繼承這一句柄
pe.th32ProcessID);//要打開的進(jìn)程
if(hProcess!=Nl)LL)
(
//找出進(jìn)程的時(shí)間
FILETIMEftCreation,ftKernelMode,ftUserMode,ftExit;
::GetProcessTimes(
hProcess,//所感興趣的進(jìn)程
&f[Creation,//進(jìn)程的啟動時(shí)間
&ftExit,//結(jié)束時(shí)間(如果有的話)
&flKernelMode,//在為核模式下消耗的時(shí)間
&ftUscrModc);//在用戶模式下消耗的時(shí)間
//計(jì)算內(nèi)核模式消耗的時(shí)間百分比
DWORDdvPctKernel=::GetKernelModePercentage(
ftKernelMode,//在內(nèi)核模式上消耗的時(shí)間
ftUserMode);//在用戶模式下消耗的時(shí)間
//向用戶犀示進(jìn)程的某號信息
cout?*processID:"?pe.th32ProcessID
?”,EXEfile:*?pe.szExeFile
?*,%inKernelmode:*?dwPctKernel?endl:
//消除句柄
::Closelland1c(hProcess);
}
//轉(zhuǎn)向下一個(gè)進(jìn)程
bMorc=::Proccss32Ncxt(hSnapshot,&pe);
}
)
7、進(jìn)階
?對列出的所有的進(jìn)程,可以改變所選進(jìn)程的優(yōu)先級。
3、實(shí)驗(yàn)3管理Linux系統(tǒng)進(jìn)程(必做)
1、實(shí)驗(yàn)學(xué)時(shí)與難度
-實(shí)驗(yàn)估計(jì)時(shí)間:30分鐘,難度系數(shù):4。
2、背景知識簡介
-在本實(shí)驗(yàn)中,我們將使用Linux命令工作,來標(biāo)識和控制系統(tǒng)進(jìn)程。Linux操作系
統(tǒng)使用進(jìn)程管理作業(yè),進(jìn)程由系統(tǒng)或者用戶初始化。用戶在Linux環(huán)境下執(zhí)行的作
業(yè)大多數(shù)都會啟動?個(gè)進(jìn)程。進(jìn)程可以啟動或者派生一個(gè)子進(jìn)程,這樣創(chuàng)建了?個(gè)
進(jìn)程層次結(jié)構(gòu)或者進(jìn)程樹,類似于具有父子關(guān)系的文件系統(tǒng)層次結(jié)構(gòu)
'可以使用ps(進(jìn)程狀態(tài))命令工作,監(jiān)控系統(tǒng)進(jìn)程,使用kill命令終止不想要的
進(jìn)程
3、實(shí)驗(yàn)?zāi)康暮鸵?/p>
■回顧系統(tǒng)進(jìn)程的概念,加深對Linux/UNIX進(jìn)程管理的理解
■回顧ps命令和選項(xiàng)
■列出當(dāng)前shell中的進(jìn)程
?列出運(yùn)行在系統(tǒng)中的所有進(jìn)程
?根據(jù)命令名搜索特定的進(jìn)程
?確定一個(gè)進(jìn)程,終止它
?使用kill命令終止進(jìn)程
'根據(jù)用戶查找和終止進(jìn)程
-根據(jù)命令名終止近程
4、實(shí)驗(yàn)環(huán)境
■需要做以下準(zhǔn)備
?由指導(dǎo)老師分配的登錄用戶ID(如user2)和口令
?一臺運(yùn)行RedHatLinux操作系統(tǒng)的計(jì)算機(jī)
5、實(shí)驗(yàn)內(nèi)容與步驟
登錄進(jìn)入GNOME
訪問命令行
?回顧系統(tǒng)進(jìn)程概念
■回顧ps命令和信息
?列出系統(tǒng)中運(yùn)行的所有進(jìn)程
-根據(jù)命令名搜索特定的進(jìn)程
■確定一個(gè)要終止的進(jìn)程
?使用kill命令終止一個(gè)進(jìn)程
-按照用戶查找和終止一個(gè)進(jìn)程
4、實(shí)驗(yàn)4Linux重定向和管道(必做)
1、實(shí)驗(yàn)學(xué)時(shí)與難度
?實(shí)驗(yàn)估計(jì)時(shí)間:60分鐘,難度系數(shù):5。
2、背景知識簡介
■本實(shí)驗(yàn)使用高級Linux命令來完成重定向和管道。
?每一個(gè)Linux命令都有一個(gè)源作為標(biāo)準(zhǔn)輸入,一個(gè)目的作為標(biāo)準(zhǔn)輸出
?命令的輸入通常來自鍵盤(盡管它也可以來自文件)
?命令通常輸出到監(jiān)視器或者屏幕上
?Linux計(jì)算環(huán)境使用重定向可以控制命令的I/O.當(dāng)試圖把命令的輸出保存到一個(gè)文
件,以供以后查看的時(shí)候是很有用的
?通過管道,可以取得一個(gè)命令的輸出,把它作為另一個(gè)命令的進(jìn)一步處理的輸入
-有幾個(gè)元字符可用于輸入/輸出重定向符號
?輸出重定向使用右尖括號(》,又稱大于號)
?輸入重定向使用左尖括號(<,又稱小于號)
?出錯輸出重定向使用右尖括號之前有一個(gè)數(shù)字2(如2>)
-重定向命令的格式是:
?CommandRedirection-Symbo1File(textfileordevicefile)
-標(biāo)準(zhǔn)輸出比標(biāo)準(zhǔn)輸入或標(biāo)準(zhǔn)出錯更經(jīng)常被重定向。許多命令,如Is、cat、head和
tail產(chǎn)生標(biāo)準(zhǔn)輸出到屏幕上,常常會希望把這個(gè)輸出重定向到一個(gè)文件中,以便將
來查看、處理或者打印
-通過替換文件名,可以截獲命令的輸出
?最強(qiáng)大的元字符之一是管道符號(I)。管道取得一個(gè)命令的標(biāo)準(zhǔn)輸出,把它作為
標(biāo)準(zhǔn)輸入傳遞給下一個(gè)命令(通常為more命令、Ip(行式打印機(jī))命令或者一個(gè)文
件處理命令,如grep或sort)
?必須在管道的每邊都有一個(gè)命令,命令和管道之間的空格是可選的
-管道命令的格式是:
?command|command
3、實(shí)驗(yàn)?zāi)康暮鸵?/p>
■通過重定向和管道操作:
?熟悉輸入/輸出(I/O)重定向
?把標(biāo)準(zhǔn)輸出重定向創(chuàng)建一個(gè)文件
?防止使用重定向的時(shí)候覆蓋文件
?把輸出追加到一個(gè)現(xiàn)有的文件中
把一個(gè)命令的輸出導(dǎo)入到另一個(gè)命令中
4、實(shí)驗(yàn)環(huán)境
■需要做以下準(zhǔn)備:
?由指導(dǎo)老師分配的登錄用戶名(如user2)和口令
?一臺運(yùn)行RedHatLinux操作系統(tǒng),帶有GNOME的計(jì)算機(jī)
5、實(shí)驗(yàn)內(nèi)容與步驟
■在本實(shí)驗(yàn)中將會用到下列命令:
?pwd顯示當(dāng)前的工作路徑
?cd改變目錄路徑
?1S顯示指定目錄的內(nèi)容
?more分頁顯示文件的內(nèi)容。顯示文本文件首選
?head截取顯示文件的開頭部分(默認(rèn)為開頭10行:)
?tail截取顯示文件的結(jié)尾部分(默認(rèn)為最后10行)
?cal有關(guān)日歷的命令
?setshell特性的設(shè)置
?echo顯示變量的值
?ps顯示當(dāng)前進(jìn)程
?data顯示或設(shè)置系統(tǒng)日期和時(shí)間
?grep查找文件中有無指定的關(guān)鍵字
?使用重定向標(biāo)準(zhǔn)輸出符號
-使用管道符號
6、實(shí)驗(yàn)提示
-如果對命令的格式不清楚,可以用man命令請求幫助,即:
?manmore
三、實(shí)驗(yàn)第03講Linux文件信息命令、基本文件管理與文件
權(quán)限
1、實(shí)驗(yàn)1Linux文件信息命令和基本文件管理(必做)
1、實(shí)驗(yàn)學(xué)時(shí)與難度
'實(shí)驗(yàn)估計(jì)時(shí)間:60分鐘,難度系數(shù):4。
2、背景知識簡介
?在本實(shí)驗(yàn)中,我們將使用不同的信息命令,來調(diào)查和發(fā)現(xiàn)文件的信息;使用命令來
幫助確定文件類型和創(chuàng)建文件的應(yīng)用;也可以使用幾個(gè)命令來查看文本文件的內(nèi)容
和對它們進(jìn)行比較
■作為基礎(chǔ),使用命令來分析和管理文件及目錄的能力對于進(jìn)一步學(xué)習(xí)Linux操作系
統(tǒng)是非常重要的。Linux特權(quán)用戶和系統(tǒng)管理員必須有使用命令行的工作背景,例
如創(chuàng)建可執(zhí)行的腳本文件等(Linux腳本文件包含著一系列的Linux命令)。許多
操作系統(tǒng)管理和設(shè)備配置作業(yè)需要理解Linux命令,并且在某些情況下,命令行是
僅有的操作方式
?在本實(shí)驗(yàn)中,我們將在命令行下使用文件管理命令工作,介紹文件和目錄命名規(guī)則。
我們將創(chuàng)建一個(gè)簡單的目錄結(jié)構(gòu),然后在那些目錄中創(chuàng)建一個(gè)文件,并練習(xí)創(chuàng)建和
刪除文件和目錄
3、實(shí)驗(yàn)?zāi)康暮鸵?/p>
■通過本實(shí)驗(yàn)
?使用控制字符執(zhí)行特殊功能
?使用file和strings命令確定文件類型
?使用cat利more命令顯示文本文件的內(nèi)容
?使用head和tai]命令顯示文本文件的部分內(nèi)容
?使用NC命令確定單詞、行和字符數(shù)
?使用diff命令比較2個(gè)文件
?回顧文件和目錄命名約定
?使用touch命令創(chuàng)建新文件
?使川mkdir命令創(chuàng)建新目錄
?使用rm命令刪除文件
?使用rm-r命令刪除目錄
4、實(shí)驗(yàn)環(huán)境
■需要做以下準(zhǔn)備
?由指導(dǎo)老師分配的登錄用戶帳號(如user2)和口令
?一臺運(yùn)行Linux操作系統(tǒng)的計(jì)算機(jī)
5、實(shí)驗(yàn)內(nèi)容與步驟
?文件信息命令
'基本的命令行文件管理
2、實(shí)驗(yàn)2Linux文件權(quán)限(必做)
1、實(shí)驗(yàn)學(xué)時(shí)與難度
?實(shí)驗(yàn)估計(jì)時(shí)間:90分鐘,難度系數(shù):5。
2、背景知識簡介
■作為全面安全策略的一個(gè)主要組成部分,文件系統(tǒng)安全決定了誰可以訪問什么數(shù)據(jù),
以及他們可以如何處理數(shù)據(jù)。系統(tǒng)管理員基于用戶、屬組和權(quán)限建立其文件系統(tǒng)安
全。目錄和文件權(quán)限可以使用帶-I(長列表)選項(xiàng)的Is(列表)命令來確定???/p>
以使用IsT命令確定文件類型、權(quán)限、所有者和屬組。系統(tǒng)將顯示文件和目錄的
權(quán)限,解釋結(jié)果,以評價(jià)不同用戶類別上權(quán)限的作用
'接著,將使用命令行工具程序分析和修改Linux文件系統(tǒng)安全權(quán)限
?文件和目錄權(quán)限可以使用chmod(修改模式)命令修改。在正常情況下,文件或目
錄的默認(rèn)權(quán)限可以滿足大多數(shù)安全的需要??赡苡泻芏啻蜗胍薷奈募蚰夸浀臋?quán)
限。在默認(rèn)情況下,所有創(chuàng)建的文件設(shè)定了允許其他類別的用戶可以讀取這個(gè)文件
的權(quán)限。這意味著所有擁有登錄id的人都可以查看和拷貝文件的內(nèi)容。對于機(jī)密文
件和私人信息,可以修改文件的權(quán)限,防止其他人訪問它
?shell腳本是想要修改其權(quán)限的另一個(gè)例子。當(dāng)創(chuàng)建一個(gè)shell腳本文件(或任何
文件)的時(shí)候,既使是對文件的所有者/創(chuàng)建者,默認(rèn)的權(quán)限不包括執(zhí)行權(quán)限。為了
運(yùn)行shell腳本,必須通過給用戶(所有者)類別添加執(zhí)行權(quán)限來修改權(quán)限
'最后,使用GNOME(公共桌面環(huán)境)文件管理器來分析和修改文件系統(tǒng)權(quán)限。GNOME
文件管理器工具程序提供了一個(gè)文件系統(tǒng)的圖形化界面,可以用來查看和修改文件
和文件夾的權(quán)限
3、實(shí)驗(yàn)?zāi)康暮鸵?/p>
?確定文件系統(tǒng)權(quán)限
?顯示文件系統(tǒng)權(quán)限
?解釋權(quán)限
?確定文件的用戶權(quán)限、屬組權(quán)限或其他(公共)權(quán)限
?確定對于一個(gè)可執(zhí)行文件的文件權(quán)限
?使用默認(rèn)權(quán)限創(chuàng)建一個(gè)文件或目錄
-從命令行中修改權(quán)限
?使用文件系統(tǒng)來控制安全訪問
?回顧chmod命令模式
?使用符號模式修改文件或目錄的權(quán)限
?確定八進(jìn)制模式權(quán)限
?使用八進(jìn)制模式修改文件或目錄的權(quán)限
?使用vi編輯器創(chuàng)建一個(gè)腳本文件,并且使它可執(zhí)行
?使用文件管理器修改權(quán)限
?訪問文件管理器,使用文件和目錄權(quán)限工作
.使用文件管理器確定文件或文件夾的權(quán)限
?使用文件管理器修改文件或文件夾的權(quán)限
4、實(shí)驗(yàn)環(huán)境
?需要做以下準(zhǔn)備
?由指導(dǎo)老師分配的登錄用戶帳號(如user2)和口令
?一臺運(yùn)行Linux操作系統(tǒng)的計(jì)算機(jī)
5、實(shí)驗(yàn)內(nèi)容與步驟
-確定文件系統(tǒng)權(quán)限及在命令行中修改權(quán)限
?使用文件管理器修改權(quán)限
6、進(jìn)階
在不同的角色下,安裝相同的軟件(如Oracle),從而體會Linux的文件權(quán)限的重要
性以及如何設(shè)置與操作。
四、實(shí)驗(yàn)第04講Windows進(jìn)程與線程編程
1、實(shí)驗(yàn)1Windows2000進(jìn)程的“一生”(必做)
1、實(shí)驗(yàn)學(xué)時(shí)與難度
■實(shí)驗(yàn)估計(jì)時(shí)間:60分鐘,難度系數(shù):4。
2、背景知識簡介
■Windows所創(chuàng)建的每個(gè)進(jìn)程都從調(diào)用CreateProcess()API函數(shù)開始,該函數(shù)的任
務(wù)是在對象管理器子系統(tǒng)內(nèi)初始化進(jìn)程對象
■每?進(jìn)程都以調(diào)用ExitProcess()或TerminateProcess()API函數(shù)終止。通常應(yīng)
用程序的框架負(fù)責(zé)調(diào)用ExitProcess()函數(shù)。對于C++運(yùn)行庫來說,這一調(diào)用發(fā)
生在應(yīng)用程序的main。函數(shù)返回之后
?創(chuàng)建進(jìn)程
?CreateProcessO調(diào)用的核心參數(shù)是可執(zhí)行文件運(yùn)行時(shí)的文件名及其命令
行
-正在運(yùn)行的進(jìn)程
?如果一個(gè)進(jìn)程擁有至少一個(gè)執(zhí)行線程,則為正在系統(tǒng)中運(yùn)行的進(jìn)程。道常,
這種進(jìn)程使用主線程來指示它的存在。當(dāng)主線程結(jié)束時(shí),調(diào)用ExitProcess。
API函數(shù),通知系統(tǒng)終止它所擁有的所有正在運(yùn)行、準(zhǔn)備運(yùn)行或正在掛起的
其他線程
?當(dāng)進(jìn)程正在運(yùn)行時(shí),可以通過一系列的API函數(shù)來查看它的許多特性,其中
少數(shù)特性也允許加以修改
■終止進(jìn)程
?所有進(jìn)程都是以調(diào)用ExitProcess?;蛘逿erminateProcess()函數(shù)結(jié)束
的。但最好使用前者而不要使用后者,因?yàn)檫M(jìn)程是在完成了它的所有的關(guān)閉
“職責(zé)”之后以正常的終止方式來調(diào)用前者的。而外部進(jìn)程通常調(diào)用后者即
突然終止進(jìn)程的進(jìn)行,由于關(guān)閉時(shí)的途徑不太正常,有可能引起錯誤的行為
?TerminateProcessOAPI函數(shù)只要打開帶有PROCESS_TERMINATE訪問權(quán)的
進(jìn)程對象,就可以終止進(jìn)程,并向系統(tǒng)返回指定的代碼。這是一種“野蠻”
的終止進(jìn)程的方式,但是有時(shí)卻是需要的
3、實(shí)驗(yàn)?zāi)康暮鸵?/p>
■通過創(chuàng)建進(jìn)程、觀察正在運(yùn)行的進(jìn)程和終止進(jìn)程的程序設(shè)計(jì)和調(diào)試操作,進(jìn)一步熟
悉操作系統(tǒng)的進(jìn)程概念,理解Windows200()進(jìn)程的“一生”
■通過閱讀和分析實(shí)驗(yàn)程序,學(xué)習(xí)創(chuàng)建進(jìn)程、觀察進(jìn)程和終止進(jìn)程的程序設(shè)計(jì)方法
4、實(shí)驗(yàn)環(huán)境
?需要做以下準(zhǔn)備:
?一臺運(yùn)行Windows2000Professional操作系統(tǒng)的計(jì)算機(jī)
?計(jì)算機(jī)中需安裝VisualC++6.0專業(yè)版或企業(yè)版
5、實(shí)驗(yàn)內(nèi)容與步驟
■創(chuàng)建進(jìn)程(具體內(nèi)容見源程序1)
?正在運(yùn)行的進(jìn)程(具體內(nèi)容見源程序2)
■終止進(jìn)程(具體內(nèi)容見源程序3)
6、源程序
源程序1
//proccreate項(xiàng)目
^include〈windows.h>
^include<iostream>
#include<stdio.h>
//創(chuàng)建傳遞過來的進(jìn)程的克隆過程并賦于其ID值
voidStartClone(intnCloneID)
(
//提取用于當(dāng)前可執(zhí)行文件的文件名
TCHARszFilename[MAX_PATH];
::GetModuleFileNameTNULL,szFilename,MAXPATH);
//格式化用于子進(jìn)程的命令行并通知其EXE文件名和克隆TD
TCHAKszCmdLine[MAX_PATH];
::sprintf(szCmdLine,szFilename,nCloneID):
//用于子進(jìn)程的STARTUPINFO結(jié)構(gòu)
STARTUPINFOsi;
::ZeroMemory(reinterpret_cast<void*>(&si),sizeof(si));
si.cb=sizeof(si);//必須是卞結(jié)構(gòu)的大小
//返回的用于子進(jìn)程的進(jìn)程信息
PROCESS.INFORMATIONpi;
//利用同樣的可執(zhí)行文件和命令行創(chuàng)建進(jìn)程,并賦于其子進(jìn)程的性質(zhì)
BOOLbCiualvOK=;.CivalvPr
szFilename,//產(chǎn)生這個(gè)EXE的應(yīng)用程序的名稱
szCmdLine,//告訴其行為像一個(gè)子進(jìn)程的標(biāo)志
NULL,//缺省的進(jìn)程安全性
NULL,//缺省的線程安全性
FALSE,//不繼承句柄
CREATE_NEWCOXSOLE,//使用新的控制臺
NULL,//新的環(huán)境
NULL,//當(dāng)前目錄
&si,//啟動信息
&pi);//返回的進(jìn)程信息
//對手進(jìn)程釋放引用
if(bCreateOK)
::CloseHandle(pi.hFrocess);
::CloseHandle(pi.hThread):
)
intmain(intargc,char*argv[])
//確定進(jìn)程在列表中的位置
intnClone(O);
if(argc>1)
(
//從第二個(gè)參數(shù)中提取克隆ID
::sscanf(argv[l],,&nClone);
}
//顯示進(jìn)程位置““
std::cout?wProcessID:"?::GetCurrentProcessId()
?”,CloneID:"?nClone
?std::cndl:
//檢查是否有創(chuàng)建子進(jìn)程的需要
constintc_nCloneMax=25:
if(nClone<c_nCloneMax)
(
//發(fā)送新進(jìn)程的命令行和克隆號
StartClone(++nClone);
}
//在終止之前暫停一下("2秒)
::Sleep(500);
return0;
源程序2
//version項(xiàng)目
#include<windows.h>
#include<iostream>
//利用進(jìn)程和操作系統(tǒng)的版本信息的簡單示例
voidmainO
(
//提取這個(gè)進(jìn)程的ID號
DWORDdwldThis=::GetCurrentProcessldO;
//獲得這一進(jìn)程和報(bào)告所需的版本,也可以發(fā)送0以便指明這一進(jìn)程
DWORDdwVcrRcq=::GctProccssVcrsion(dwIdThis);
WORDwMajorReq=(WORD)(dwVerReq>16);
WORDwMinorReq=(WORD)(dwVerReq&Oxffff):
std::cout<<*ProcessID:*<<dwIdThis
?,,requiresOS:?wMajorRcq
?wMinorReq?std::endl;
//設(shè)置.版本信息的數(shù)據(jù)結(jié)構(gòu),以便保存操作系統(tǒng)的版本信息
OSVERSIONINFOEXosvix;
::ZeroMemory(&osvix,sizeof(osvix));
osvix.dwOSVersionInfoSize=sizeof(osvix);
//提取版本信息和報(bào)告
::GetVersionEx(reinterpret_cast<LPOSVERSIONINFO>(&osvix));
std::cout?”RunningonOS:*?osvix.dwMajorVersion?*.*
?osvix.dwMinorVersion<<std::end];
//如果是MTS(Windows2000)系統(tǒng),則提高其優(yōu)先權(quán)
if(osvix.dwPlatformId==VER_PLATFORM_WIN32_NT&&osvix.dwMajorVersion>=5)
(
//改變優(yōu)先級
::SetPriorityClass(
::GetCurrentProcessO,/
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版國際貿(mào)易實(shí)務(wù)買賣合同的標(biāo)的
- 二零二五版車輛貸款保證合同規(guī)范樣本2篇
- 2024科技創(chuàng)新項(xiàng)目前期咨詢服務(wù)協(xié)議版
- 2024版權(quán)授權(quán)協(xié)議書范本
- 武漢警官職業(yè)學(xué)院《光學(xué)實(shí)驗(yàn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 文山學(xué)院《設(shè)施園藝學(xué)實(shí)踐》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024版房屋出售委托協(xié)議3篇
- 二零二五年電子制造企業(yè)技術(shù)工人勞動合同范本2篇
- 二零二五年度人工智能教育股份分紅與人才培養(yǎng)協(xié)議3篇
- 圖木舒克職業(yè)技術(shù)學(xué)院《別墅空間設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 高二物理競賽霍爾效應(yīng) 課件
- 金融數(shù)學(xué)-(南京大學(xué))
- 基于核心素養(yǎng)下的英語寫作能力的培養(yǎng)策略
- 現(xiàn)場安全文明施工考核評分表
- 亞什蘭版膠衣操作指南
- 四年級上冊數(shù)學(xué)教案 6.1口算除法 人教版
- DB32-T 3129-2016適合機(jī)械化作業(yè)的單體鋼架塑料大棚 技術(shù)規(guī)范-(高清現(xiàn)行)
- 6.農(nóng)業(yè)產(chǎn)值與增加值核算統(tǒng)計(jì)報(bào)表制度(2020年)
- 人工挖孔樁施工監(jiān)測監(jiān)控措施
- 供應(yīng)商物料質(zhì)量問題賠償協(xié)議(終端)
- 物理人教版(2019)必修第二冊5.2運(yùn)動的合成與分解(共19張ppt)
評論
0/150
提交評論