版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、操作系統(tǒng)是一組控制和管理計算機硬件和軟件資源,合理地對各類作業(yè)進行調度,以及方便用戶使用的程序的集合。虛擬機:在裸機的基礎上,每增加一層新的操作系統(tǒng)的軟件,就變成了功能更為強大的虛擬機或虛機器。操作系統(tǒng)的目標:1. 方便性2. 有效性 3. 可擴充性4. 開放性 操作系統(tǒng)的作用:OS作為用戶與計算機硬件系統(tǒng)之間的接口;OS作為計算機系統(tǒng)資源的管理者;OS實現(xiàn)了對計算機資源的抽象(作擴充機器)。操作系統(tǒng)的特征:并發(fā)性;共享性;虛擬性;異步性推動操作系統(tǒng)發(fā)展的主要動力:不斷提高計算機資源利用率 ;方便用戶;器件的不斷更新?lián)Q代 ;計算機體系結構的不斷發(fā)展 。人工操作方式的特點:用戶獨占全機;CPU等
2、待人工操作;獨占性;串行性。缺點:計算機的有效機時嚴重浪費;效率低脫機I/O方式的主要優(yōu)點:減少了CPU的空閑時間;提高I/O速度。單道批處理系統(tǒng)的特征:自動性 ; 順序性 ;單道性 多道批處理系統(tǒng)原理:用戶所提交的作業(yè)都先存放在外存上并排成一個隊列,稱為“后備隊列”;然后,由作業(yè)調度程序按一定的算法從后備隊列中選擇若干個作業(yè)調入內存,使它們共享CPU和系統(tǒng)中的各種資源。多道批處理系統(tǒng)的優(yōu)缺點 資源利用率高 ;系統(tǒng)吞吐量大 ;可提高內存和I/O設備利用率;平均周轉時間長;無交互能力多道批處理系統(tǒng)需要解決的問題(1)處理機管理問題(2)內存管理問題(3)I/O設備管理問題4)文件管理問題(5)作
3、業(yè)管理問題分時系統(tǒng):在一臺主機上連接了多個帶有顯示器和鍵盤的終端,同時允許多個用戶通過自己的終端,以交互方式使用計算機,共享主機中的資源。 時間片:將CPU的時間劃分成若干個片段,稱為時間片,操作系統(tǒng)以時間片為單位,輪流為每個終端用戶服務實時系統(tǒng)與分時系統(tǒng)特征的比較:多路性;獨立性;及時性;交互性;可靠性 操作系統(tǒng)的特征:并發(fā)性;共享性;虛擬性;異步性操作系統(tǒng)的主要功能:處理機管理;存儲器管理;設備管理;文件管理;作業(yè)管理對處理機管理,可歸結為對進程的管理:進程控制(創(chuàng)建,撤消,狀態(tài)轉換);進程同步(互斥,同步);進程通信;進程調度(作業(yè)調度,進程調度)。存儲器管理功能:內存分配(最基本);內
4、存保護;地址映射;內存擴充 設備管理功能:設備分配;設備處理(相當于啟動);緩沖管理 ;虛擬設備 文件管理功能:文件存儲空間管理;目錄管理;文件讀寫管理;文件保護。用戶接口:命令接口;程序接口;圖形接口傳統(tǒng)的操作系統(tǒng)結構:無結構OS;模塊化OS結構 ;分層式OS結構模塊化操作系統(tǒng)結構:操作系統(tǒng)是由按其功能劃分為若干個具有一定獨立性和大小的模塊。每個模塊具有某個方面的管理功能,規(guī)定好模塊之間的接口。微內核的基本功能:進程管理-存儲器管理-進程通信管理-I/O設備管理進程的特征:動態(tài)性(最基本);并發(fā)性;異步性;獨立性;結構特征(程序段,數(shù)據(jù)段,進程控制塊PCB)進程的基本屬性:可擁有資源的獨立單
5、位;可獨立調度和分配的基本單位。進程控制塊的基本組成:進程標識符;處理機的狀態(tài);進程調度所需信息;進程控制信息。進程控制一般是由操作系統(tǒng)的內核中的原語來實現(xiàn)臨界資源:如打印機、磁帶機等一段時間內只允許一個進程進行使用的資源。信號量:整型,記錄型,and型,信號量集。實現(xiàn)進程互斥,前趨關系,進程同步。semaphore同步P操作在互斥P操作前Swait(S, d, d)表示每次申請d個資源,當少于d個時,便不分配Swait(S, 1, 1)表示互斥信號量Swait(S, 1, 0)可作為一個可控開關(S³1時,允許多個進程進入臨界區(qū);S=0時,禁止任何進程進入臨界區(qū))同步機制應遵循的規(guī)
6、則:空閑讓進;忙則等待;有限等待;讓權等待 生產者進程i: Repeat 生產數(shù)據(jù)nextp; wait(empty); wait(mutex); bufferin:=nextp; in=(in+1)%n ; signal(full); until false;消費者進程i:Repeat wait(full);wait(mutex); Nextc=buffer(out);out=(out+1)%n ; signal(empty); until false;哲學家i:Repeat wait(SM);wait(chopsticki); wait(chopstick(i+1)%5); 就餐; sig
7、nal(chopsticki); signal(chopstick(i+1)%5); signal(sm) ;繼續(xù)思考;until false; Chopstick0.4=1;sm=4讀者進程i:REPAET wait(rmutex); if readcout=0 wait(wmutex); Readcount+; signal(rmutex); 訪問數(shù)據(jù)文件;wait(rmutex); Readcount-; If readcout=0 wait(wmutex); signal(rmutex); until false; 寫者進程i: REPAET wait(wmutex); 修改文件; s
8、ignal(wmutex); until false;司機與售票員的合作問題VAR S1=1;S2=0;司機:Wait(s1);啟動車輛;正常行車;到站停車Signal(s2);售票員:Wait(s2);開車門;上下乘客;關車門Signal(s1);售票讀者進程i: Var s=100;mutex=1;Wait(s);Wait(mutex);查登記表,并置某座位為占用態(tài)Signal(mutex);在座位上坐下閱讀;Wait(mutex);查登記表,并置某座為空閑狀態(tài)Signal(mutex);Signal(s);接收原語Procedure receive(b)BeginJ=internal n
9、ame;Wait(j.sm);Wait(j.mutex);Remove(j.mq,i);Signal(j.mutex);b.sender=i.sizer;b.size=i.size;b.text=i.size;End;進程通信的類型:共享存儲器系統(tǒng);消息傳遞系統(tǒng);管道通信管道通信:用于連接一個讀進程和一個寫進程以實現(xiàn)他們通信的一個共享文件,又名Pipe文件,本身提供了互斥和同步進程的能力。next:指向下一個消息緩沖區(qū)的指針線程的屬性:輕型實體;獨立調度和分派的基本單位;可并發(fā)執(zhí)行;共享進程資源作業(yè)的狀態(tài) “進入” 或“提交”“后備”“運行”“完成” 決定作業(yè)調度的兩個因素:多道程序度;調度算
10、法周轉時間:完成時間-到達時間帶權周轉時間:周轉時間/執(zhí)行時間先來先服務 (FCFS)短作業(yè)(進程)優(yōu)先SJ(P)F高響應比優(yōu)先調度算法HRRN:響應比R = (1+T-到達時間)/服務時間時間片輪轉法RR準則:面向用戶的準則(周轉時間短;反應時間快;截止時間的保證;優(yōu)先權準則);面向系統(tǒng)的準則(系統(tǒng)吞吐量高;處理機利用率好;各類資源的平衡利用)程序的裝入:絕對裝入方式;可重定位裝入方式;動態(tài)運行時裝入方式。程序的鏈接:1、靜態(tài)鏈接:程序運行前先鏈接,再裝入內存:1)對相對地址的改變2)變換外部調用符號2、裝入時動態(tài)鏈接:裝入內存時,邊裝入邊鏈接。3、運行時動態(tài)鏈接:某些模塊的鏈接推遲到執(zhí)行時
11、才執(zhí)行,用不到的模塊可以不調入內存。產生死鎖的原因競爭資源:可剝奪和非剝奪性資源/臨時性資源;進程間推進順序非法。死鎖是指多個進程在運行過程中因爭奪資源而造成的一種僵局,若無外力作用,它們都將無法再向前推進。處理死鎖的基本方法:預防死鎖;避免死鎖;檢測死鎖;解除死鎖產生死鎖的必要條件互斥條件:資源本身的特性;請求和保持條件:在請求不到新資源的時候進程不釋放原來的資源 ;不剝奪條件:進程獲得的資源,為使用完前不可被剝奪 ;環(huán)路等待條件:進程對資源的請求形成一個請求環(huán)形鏈 預防死鎖1、打破請求和保持條件:要求進程一次性申請到全部資源后再運行,不會產生死鎖,但效率降低2、打破不剝奪條件:要求進程提出
12、新資源要求不被滿足后,必須釋放原來的保持的資源,損失代價嚴重;3、打破環(huán)路等待條件:對資源進行線性排序編號,要求每個進程必須從低號到高號申請資源,而不考慮進程實際申請資源的先后順序。 死鎖的解除剝奪資源;撤消進程拼接或緊湊:通過移動內存中作業(yè)的位置,以把原來多個分散的小分區(qū)拼接成一個大分區(qū)的方法。虛擬存儲器的特征:多次性;對換性;虛擬性銀行家算法:主要用來判斷在當前狀態(tài)下如果有進程提出資源請求request,看是否能滿足該請求:a: 判斷請求的合法性,是否滿足小于NEED矩陣中的向量;b:請求的可滿足性判斷,是否小于available向量;c:試探分配,修改相應的參數(shù) availableall
13、ocationneed;d:進行安全性檢查,若分配后安全,則進行分配,若判斷從此進入了不安全狀態(tài),則恢復原來數(shù)據(jù),對進程請求不予滿足。安全性算法檢查:(1)設定兩個向量work=available;finishi=true(2)從進程集合中找到一個能滿足下述條件的進程:finishi=false;needij workj;若找到,執(zhí)行步驟3,否則執(zhí)行步驟4(3)當進程pi獲得資源后,可順利執(zhí)行,直到執(zhí)行,并釋放出分配給它的資源workj= workj+allocationij; finishi=true; Go to step2(4) 如果所有進程finishi=true都滿足,則系統(tǒng)處于安全
14、狀態(tài),否則處于不安全狀態(tài)。Work need、allocation work+allocation虛擬存儲器是指具有請求調入功能和置換功能,能從邏輯上對內存容量加以擴充的一種存儲器系統(tǒng)。其邏輯容量由內存容量和外存容量之和所決定的。 動態(tài)分區(qū)分配算法:首次適應算法:按地址遞增的順序;循環(huán)首次適應算法:從上次找到的空閑分區(qū)的下一個開始;最佳適應算法:按大小遞增的順序;最壞適應算法:按地址遞減的順序地址為A,頁面大小L頁號P,頁內地址d:p=int(A/L)d=AmodL 分段系統(tǒng)的基本原理: 分段:將作業(yè)的邏輯地址空間分為若干個段,每個段內定義一組邏輯信息。作業(yè)的地址空間分為段號(名)+段內地址兩
15、部分。段表:將不同的段分配到內存不連續(xù)的存儲空間,當然,具體每個段,因為長度可能不同,但是需連續(xù)的存儲空間,因此,段表內需確定段號、段的長度、段在內存的起始地址。分頁與分段區(qū)別:(1)頁是信息的物理單位,為了提高內存利用率引入的;段是信息的邏輯單位,是考慮用戶編程需要分成的段。(2)頁的大小固定,段的大小不確定(3)頁的邏輯地址是1維的,段的邏輯地址是2維的。 段頁式存儲管理方式基本原理:首先用戶程序分成若干個段,每個段內再實施分頁,為每個段賦予一個段名。在段頁式系統(tǒng)中,其地址結構由段號、段內頁號及頁內地址三部分組成。頁號、物理塊號、狀態(tài)位p、訪問字段A、修改位M、外存地址頁表機制:頁號和物理
16、塊號,狀態(tài)位P(0表示在外存,沒有調入,1表示在內存);訪問字段A(一段時間內訪問次數(shù)或是否被訪問過,供頁面置換出去時參考);修改位M(一段時間內是否被修改過,置換時需要回寫到外存對換區(qū));外存地址(將來調入內存時使用); 物理塊的分配策略(1)固定分配局部置換(2)可變分配全局置換(3)可變分配局部置換物理塊分配算法(1)平均分配算法(2)按比例分配算法(3)考慮優(yōu)先權的分配算法最佳置換算法(Optimal)先進先出置換算法(FIFO)最近最久未使用(LRU)Clock置換算法設備控制器是在CPU和I/O設備之間的接口,一個設備控制器控制幾個設備。設備控制器的功能接收和識別命令;數(shù)據(jù)交換;標
17、識和報告設備的狀態(tài);地址識別;數(shù)據(jù)緩沖;差錯控制通道是通過執(zhí)行通道程序,并與設備控制器共同實現(xiàn)對I/O設備的控制的。通道程序是由一系列通道指令所構成的。通道程序每條指令: (1)操作碼(2)內存地址(3)計數(shù)(4)通道程序結束位(5)記錄結束標志。設備分配中的數(shù)據(jù)結構1、設備控制表DCT2、控制器控制表COCT、通道控制表CHCT3、系統(tǒng)設備表聯(lián)機命令的類型系統(tǒng)訪問類(login);磁盤操作類format、diskcopy;文件操作類type;目錄操作類mkdir;其它命令spooling 系統(tǒng)組成(1)輸入井和輸出井(2)輸入緩沖區(qū)和輸出緩沖區(qū)(3)輸入進程spi和輸出進程spoSPOOLI
18、NG 系統(tǒng)的特點提高了I/O的速度;將獨占設備改造為共享設備;實現(xiàn)了虛擬設備功能設備處理程序通常又稱為設備驅動程序。是I/O進程與設備控制器之間的通信程序,以進程的形式存在,故稱為設備驅動進程。連續(xù)分配的優(yōu)缺點:(1)順序訪問容易(2)順序訪問速度快(3)要求有連續(xù)的存儲空間(4)必須事先知道文件的長度。顯示鏈接是把鏈接文件個物理塊的指針顯式的存放在內存的一張鏈接表中,整個磁盤僅設置一張混合索引分配方式:UNIX系統(tǒng)V的索引結點中:直接尋址iaddr(0)-iaddr(9);一次間接尋址iaddr(10);多次間接尋址iaddr(11) iaddr(12)對目錄管理的要求如下:(1)實現(xiàn)“按名
19、存取”(2)提高對目錄的檢索速度(3)文件共享(4)允許文件重名文件與文件控制塊一一對應,人們把文件控制塊的有序集合稱為文件目錄多級目錄結構(1)提高了檢索目錄的速度(2)在不同的用戶目錄中,可以使用相同的文件名(3)不同用戶還可以使用不同的文件名來訪問同一個共享文件。輸入下列命令:cp file1 file2時,將文件file1拷貝成file2#include<stdio.h>#include <fcntl.h>#include <sys/types.h>#include<sys/stat.h>int main(int argc,char *a
20、rgv)char buf88;int j,n,m;int fd,fd1;fd=open(argv1,O_RDWR);if(fd<0) printf("open %s failed",argv1);else j=creat(argv2,S_IWRITE | S_IREAD);if(j<0) printf("creat %s failed",argv2);else n=read(fd,buf,sizeof(buf);if(n<0) printf("read %s failed",argv1);else close(fd)
21、;fd1=open(argv2,O_RDWR);if(fd1<0) printf("open %s failed",argv2);elsem=write(fd1,buf,n);if(m<0) printf("write %s failed",argv2);elseclose(fd1);利用無名管道(用pipe()創(chuàng)建)實現(xiàn)進程間的通信。父進程創(chuàng)建兩個子進程,兩個子進程分別向管道中寫一條消息: “I am child1.” 和 “I am child2.”#include<stdio.h>#include<unistd.h&g
22、t;int main()int j,k,m;int fd2;char line40;pipe(fd);if(j=fork()=0)lockf(fd1,1,0);write(fd1,"i am chlid1n",13);lockf(fd1,0,0);else if(k=fork()=0)lockf(fd1,1,0);write(fd1,"I am chlid2n",13);elselockf(fd0,1,0);m=read(fd0,line,26);write(STDOUT_FILENO,line,m);系統(tǒng)調用的類型(1)進程控制類(2)文件操縱類(3)
23、進程通信類對對象操縱和管理的軟件集合是文件管理系統(tǒng)的核心部分。Hash函數(shù),可將記錄鍵值轉換為相應記錄的地址。盤塊的分配:(1)順序掃描位示圖,找出值為0的二進制位進行分配。(2)將所找到的每一個位,轉換為相應的盤塊號b=n(i-1)+j(n為每行位數(shù)) (3)修改位示圖,令mapi,j=1盤塊的回收:1、 將回收的盤塊號轉換為行號和列號i=(b-1)/n+1 j=(b-1)%n+1 2、修改位示圖。令mapi,j=0系統(tǒng)調用在本質上是應用程序請求操作系統(tǒng)內核完成某功能時的一種過程調用,屬于特殊的過程調用系統(tǒng)調用的類型(1)進程控制類(2)文件操縱類(3)進程通信類父進程創(chuàng)建一個子進程,父進程等待子進程,子進程執(zhí)行完后自我終止,并喚醒父進程,父、子進程執(zhí)行時打印有關信息。#include<sys/types.h>#include<unistd.h>int main() int childpid = 0;int retpid = 0; intstatus=0; childpid=fork(); if(childpid < 0) printf("failn"); else if(childpid = 0) printf("sonn"); else printf("father&quo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度中醫(yī)婦科師承教育合作合同4篇
- 2025年度智能化生產線設備采購合同補充協(xié)議3篇
- 2024進出口業(yè)務銷售合同范本
- 2025不銹鋼水箱售后服務與維護保養(yǎng)合同范本3篇
- 2024版潛孔鉆租賃業(yè)務協(xié)議要約一
- 家用電烤盤建設項目申請報告可行性研究報告
- 2025年度智能駕駛技術研發(fā)中心高級工程師個人聘用合同3篇
- 2025年度個人抵押貸款合同終止及債權債務處理合同范本4篇
- 2025年度個人消費信貸融資委托服務協(xié)議3篇
- 2025年寧夏公路橋梁建設有限公司招聘筆試參考題庫含答案解析
- GB/T 12914-2008紙和紙板抗張強度的測定
- GB/T 1185-2006光學零件表面疵病
- ps6000自動化系統(tǒng)用戶操作及問題處理培訓
- 家庭教養(yǎng)方式問卷(含評分標準)
- 城市軌道交通安全管理課件(完整版)
- 線纜包覆擠塑模設計和原理
- TSG ZF001-2006 安全閥安全技術監(jiān)察規(guī)程
- 部編版二年級語文下冊《蜘蛛開店》
- 鍋爐升降平臺管理
- 200m3╱h凈化水處理站設計方案
- 個體化健康教育記錄表格模板1
評論
0/150
提交評論