OS相關(guān)概念
1.操作系統(tǒng)(OS):
操作系統(tǒng)是指控制和管理整個(gè)計(jì)算機(jī)系統(tǒng)的硬件和軟件資源罚攀,并合理地組織調(diào)度計(jì)算機(jī)的工作和資源的分配家夺,以提供給用戶和其它軟件方便的接口和環(huán)境的程序集合。
2.操作系統(tǒng)的目標(biāo)
使用方便槽驶,高效工作
3.操作系統(tǒng)的功能
處理機(jī)管理握侧,存儲(chǔ)器管理蚯瞧,設(shè)備管理,文件管理
4.提供的接口:
命令接口品擎,程序接口
5.管態(tài)和目態(tài)
寄存器清零指令可能在管態(tài)下執(zhí)行埋合,也可能在目態(tài)下執(zhí)行。
進(jìn)程和線程
1.什么叫進(jìn)程萄传?為什么要引入進(jìn)程甚颂?
進(jìn)程是進(jìn)程實(shí)體的運(yùn)行過程,是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個(gè)獨(dú)立單位。
在多道程序環(huán)境下振诬,允許多個(gè)程序并發(fā)執(zhí)行蹭睡,此時(shí)它們將失去封閉性,并具有間斷性及不可再現(xiàn)性的特征赶么,為此引入了進(jìn)程的概念肩豁,以便更好地描述和控制程序的并發(fā)執(zhí)行。
2.動(dòng)態(tài)性是進(jìn)程的最基本的特征
3.進(jìn)程的創(chuàng)建(創(chuàng)建原語(yǔ)):
1.為新進(jìn)程分配一個(gè)唯一的進(jìn)程標(biāo)識(shí)符辫呻,并申請(qǐng)一個(gè)空白的PCB
2.為新進(jìn)程分配資源清钥,為新進(jìn)程的程序、數(shù)據(jù)以及用戶棧分配必要的內(nèi)存空間
3.初始化PCB
4.如果就緒隊(duì)列能夠接受新進(jìn)程放闺,就將新進(jìn)程插入就緒隊(duì)列祟昭,等待被調(diào)度
4.進(jìn)程的終止(撤銷原語(yǔ)):
1.根據(jù)進(jìn)程的標(biāo)識(shí)符,檢索PCB雄人,查看進(jìn)程的狀態(tài)
2.若進(jìn)程處于執(zhí)行狀態(tài)从橘,則終止該進(jìn)程的執(zhí)行,講處理機(jī)資源分配給其它進(jìn)程
3.若該進(jìn)程有子進(jìn)程础钠,則終止其所有子進(jìn)程
4.將該進(jìn)程所擁有的資源全部歸還給其父進(jìn)程或操作系統(tǒng)
5.將其PCB從隊(duì)列中刪除
5.進(jìn)程包括:PCB恰力、程序段、數(shù)據(jù)段旗吁,其中PCB是進(jìn)程存在的唯一標(biāo)志
6.進(jìn)程控制塊PCB包含的信息:
標(biāo)識(shí)信息踩萎,說明信息,現(xiàn)場(chǎng)信息很钓,管理信息
進(jìn)程描述信息香府、進(jìn)程控制和管理信息、資源分配清單和處理機(jī)相關(guān)信息
7.進(jìn)程通信:
低級(jí)通信:PV操作
高級(jí)通信:
1.共享存儲(chǔ):基于數(shù)據(jù)結(jié)構(gòu)码倦、基于存儲(chǔ)區(qū)
2.消息傳遞:消息通信(直接)企孩、信箱通信(間接)
3.管道通信:通過共享文件(pipe文件),須有互斥袁稽、同步和確定對(duì)方存在的能力
8.線程的概念:
線程是輕量級(jí)進(jìn)程勿璃,它是一個(gè)基本的CPU執(zhí)行單元,由線程ID推汽、程序計(jì)數(shù)器补疑、寄存器集合和堆棧組成。
9.線程和進(jìn)程的比較:
1.引入線程后歹撒,線程代替進(jìn)程成為獨(dú)立調(diào)度的基本單位
2.進(jìn)程是擁有資源的基本單位莲组,而線程不擁有系統(tǒng)資源
3.進(jìn)程切換開銷大,線程切換開銷小暖夭,且線程之間的同步和通信更容易實(shí)現(xiàn)
4.進(jìn)程的地址空間相互獨(dú)立锹杈,線程共享其所屬進(jìn)程的資源
處理機(jī)調(diào)度
1.作業(yè)調(diào)度:
作業(yè)調(diào)度又稱高級(jí)調(diào)度撵孤,主要任務(wù)是按一定的原則從外存上處于后備狀態(tài)的作業(yè)中挑選一個(gè)作業(yè),給它分配內(nèi)存以及必要的資源嬉橙,并建立相應(yīng)的進(jìn)程早直,使它獲得競(jìng)爭(zhēng)處理機(jī)的權(quán)利。
2.中級(jí)調(diào)度:
中級(jí)調(diào)度又稱內(nèi)存調(diào)度市框,將那些暫時(shí)不能運(yùn)行的進(jìn)程調(diào)至外存,等它們具備運(yùn)行條件并且內(nèi)存有空閑空間時(shí)糕韧,由中級(jí)調(diào)度將它們?cè)僦匦抡{(diào)回內(nèi)存枫振,并掛在就緒隊(duì)列上等待。
3.進(jìn)程調(diào)度:
進(jìn)程調(diào)度又稱低級(jí)調(diào)度萤彩,主要是按照某種方法和策略從就緒隊(duì)列中選一個(gè)進(jìn)程粪滤,將處理機(jī)分配給它。
4.五種狀態(tài)轉(zhuǎn)換圖
進(jìn)程同步
1.原語(yǔ)
原語(yǔ)是指處于系統(tǒng)最底層雀扶,操作只能一氣呵成杖小,不能被中斷的程序。
2.臨界資源
一次僅允許一個(gè)進(jìn)程使用的資源稱為臨界資源愚墓。
3.臨界區(qū)
進(jìn)程中訪問臨界資源的代碼片段成為臨界區(qū)予权。
4.管程
管程是由一組數(shù)據(jù)以及定義在這組數(shù)據(jù)上的操作組成的軟件模塊。
組成:
1.局部于管程的共享結(jié)構(gòu)數(shù)據(jù)說明
2.對(duì)該數(shù)據(jù)結(jié)構(gòu)進(jìn)行操作的一組過程
3.對(duì)局部于管程的共享數(shù)據(jù)設(shè)置初始值的語(yǔ)句
死鎖
1.死鎖產(chǎn)生的原因:
1.資源競(jìng)爭(zhēng)? 2.進(jìn)程推進(jìn)順序不當(dāng)
2.死鎖產(chǎn)生的必要條件
1.互斥條件
2.不可剝奪條件
3.請(qǐng)求和保持條件
4.循環(huán)等待條件
3.預(yù)防死鎖
通過破壞四個(gè)必要條件之一浪册,以防止死鎖發(fā)生扫腺。
破壞互斥條件,不太可行
破壞不可剝奪條件:實(shí)現(xiàn)復(fù)雜
破壞請(qǐng)求和保持條件:預(yù)先靜態(tài)分配資源
破壞循環(huán)等待條件:采用順序資源分配法
4.避免死鎖
在資源動(dòng)態(tài)分配過程中村象,用銀行家算法等方法防止系統(tǒng)進(jìn)入不安全狀態(tài)
5.死鎖解除
資源剝奪法笆环、撤銷進(jìn)程法、進(jìn)程回退法
6.死鎖的概念
死鎖是指多個(gè)進(jìn)程因競(jìng)爭(zhēng)資源而造成的一種互相等待的僵局厚者,若無(wú)外力作用躁劣,這些進(jìn)程都講無(wú)法向前推進(jìn)。
內(nèi)存管理概念
1.程序的執(zhí)行過程
編譯――鏈接――裝入
鏈接分為:靜態(tài)鏈接库菲,裝入時(shí)動(dòng)態(tài)鏈接账忘,運(yùn)行時(shí)動(dòng)態(tài)鏈接
裝入分為:絕對(duì)裝入,可重定位裝入(靜態(tài)重定位)蝙昙,動(dòng)態(tài)運(yùn)行時(shí)裝入(動(dòng)態(tài)重定位)
絕對(duì)裝入技術(shù)是在編譯時(shí)完成地址重定位
可重定位裝入是在裝入時(shí)進(jìn)行地址重定位
動(dòng)態(tài)運(yùn)行時(shí)裝入是在執(zhí)行時(shí)地址重定位
2.具有快表的請(qǐng)求分頁(yè)存儲(chǔ)系統(tǒng)的地址變換過程:
3.請(qǐng)求分頁(yè)系統(tǒng)的硬件和軟件支持
硬件:請(qǐng)求分頁(yè)的頁(yè)表闪萄,缺頁(yè)中斷,地址變換機(jī)構(gòu)
軟件:請(qǐng)求調(diào)頁(yè)的軟件奇颠,頁(yè)面置換的軟件
4.請(qǐng)求分頁(yè)系統(tǒng)的頁(yè)表項(xiàng)中的域
頁(yè)號(hào),物理塊號(hào),狀態(tài)位P,訪問字段A,修改位M,外存地址
5.快表的概念
地址變換機(jī)構(gòu)中具有并行查找能力的高速緩沖存儲(chǔ)器败去,用來存放當(dāng)前訪問的若干頁(yè)表項(xiàng),以加快地址變換過程烈拒。
文件管理
1.文件
文件是指由創(chuàng)建者所定義的圆裕、具有文件名的一組相關(guān)元素的集合广鳍,可以分為有結(jié)構(gòu)文件和無(wú)結(jié)構(gòu)文件兩種。
文件系統(tǒng)管理的目標(biāo)之一是提供統(tǒng)一的用戶接口吓妆,其含義是不同設(shè)備提供同樣的接口赊时,方便用戶操作和編程。
2.文件屬性
包括 名稱行拢、標(biāo)識(shí)符祖秒、類型、位置舟奠、大小竭缝、保護(hù)、時(shí)間沼瘫、日期和用戶標(biāo)識(shí)等抬纸。
3.文件的打開
將指定的文件屬性信息從外存拷貝到內(nèi)存打開文件目錄表的一個(gè)表目中,并將該表目的編號(hào)返回給用戶耿戚,可以有效避免多次訪問外存而導(dǎo)致的資源和時(shí)間浪費(fèi)湿故。
4.文件的邏輯結(jié)構(gòu)
1.無(wú)結(jié)構(gòu)文件(流式文件)
2.有結(jié)構(gòu)文件(記錄式文件)
? ? ? 順序文件,可以順序存儲(chǔ)或鏈表存儲(chǔ)膜蛔。
? ? ? 索引文件坛猪,可以加快檢索速度。
? ? ? 索引順序文件
? ? ? 直接文件或散列文件
5.文件控制快
文件控制快(FCB)是用來存放控制文件需要的各種信息的數(shù)據(jù)結(jié)構(gòu)飞几,以實(shí)現(xiàn)“按名存取”砚哆。
6.文件索引結(jié)點(diǎn)
將文件名與文件描述信息分開,文件描述信息單獨(dú)形成一個(gè)稱為索引結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)屑墨。
7.文件目錄
文件目錄是一種數(shù)據(jù)結(jié)構(gòu)躁锁,用于標(biāo)識(shí)系統(tǒng)中文件及其物理地址,以實(shí)現(xiàn)“按名存取”和加快文件檢索和共享等卵史。
8.文件共享的兩種方式
1.基于索引結(jié)點(diǎn)的共享方式(硬連接)
通過引用指針實(shí)現(xiàn)战转,除非引用值減為0,文件才會(huì)刪除
2.利用符號(hào)鏈實(shí)現(xiàn)文件共享(軟鏈接)
引用的一方只是存儲(chǔ)文件的路徑以躯,當(dāng)文件所有者刪除文件時(shí)槐秧,文件真正刪除,其他符號(hào)鏈無(wú)法訪問忧设。
9.文件分配方式(物理結(jié)構(gòu))
連續(xù)分配
鏈接分配
? ? ? 分隱式鏈接和顯式鏈接
索引分配
? ? ? 建立索引表
10.文件存儲(chǔ)空間管理
空閑表法刁标,空閑鏈表法,位示圖法址晕,成組鏈接法(UNIX)
I/O系統(tǒng)
1.設(shè)備獨(dú)立性
設(shè)備獨(dú)立性又稱設(shè)備無(wú)關(guān)性膀懈,使應(yīng)用程序獨(dú)立于具體使用的物理設(shè)備。
2.SPOOLing技術(shù)
輸入進(jìn)程控制:
? ? ? 輸入設(shè)備――輸入緩沖區(qū)――輸入井
輸出進(jìn)程控制:
? ? ? 輸出井――輸出緩沖區(qū)――輸出設(shè)備
3.設(shè)備分配過程
SDT―DCT―COCT―CHCT
DCT:設(shè)備控制表谨垃,COCT:控制器控制表启搂,CHCT:通道控制表硼控,SDT:系統(tǒng)設(shè)備表。
4.設(shè)備管理
操作系統(tǒng)設(shè)備管理的主要對(duì)象有I/O設(shè)備胳赌,設(shè)備控制器牢撼,I/O通道
Windows98是一個(gè)單用戶多任務(wù)的操作系統(tǒng)。
單用戶多任務(wù)操作系統(tǒng):一臺(tái)計(jì)算機(jī)同時(shí)只能有一個(gè)用戶使用疑苫,但該用戶一次可以運(yùn)行或提交多個(gè)作業(yè)熏版。
輸入輸出指令需要中斷操作,中斷操作必須在核心態(tài)下執(zhí)行缀匕。
存在磁盤上的文件既可隨機(jī)訪問(直接訪問)纳决,又可順序訪問。是根據(jù)文件的物理結(jié)構(gòu)而定的乡小。
文件有邏輯結(jié)構(gòu)和物理結(jié)構(gòu)。
分頁(yè)式存儲(chǔ)管理:每個(gè)進(jìn)程擁有一張頁(yè)表饵史,有內(nèi)部碎片满钟。對(duì)用戶透明。
段式存儲(chǔ)管理:每個(gè)進(jìn)程擁有一張段表胳喷,有外部碎片湃番,方便編程,信息保護(hù)與共享吭露,動(dòng)態(tài)增長(zhǎng)吠撮。
段頁(yè)式存儲(chǔ)管理:有內(nèi)部碎片。
對(duì)于磁盤讲竿,物理上讀寫的最小單位是一個(gè)物理塊(扇區(qū))泥兰。
進(jìn)程由三部分組成:進(jìn)程控制塊(PCB),數(shù)據(jù)段题禀,程序段鞋诗。
進(jìn)程最基本的特征是“動(dòng)態(tài)性”。
操作系統(tǒng)提供的接口:命令接口迈嘹,程序接口削彬。