- 相關推薦
操作系統的學習總結
操作系統的學習總結一
經過一天半的戰斗,終于把操作系統概論這本書給拿下了。對于曾經專業課學過一些電腦硬件知識的我來說,這本書更加吸引我,以前一些聽過的名詞或高大上的詞語在這本書上被詳細介紹了,看的非常有收獲。下面來總結下自己的收獲:
首先第一章引論,在這里首先介紹了計算機系統,包括了軟件和硬件兩部分。
接下來就是第一章的重點:操作系統。如下圖:
當前流行的操作系統有windows、unix、linux等。微軟的windows系統經歷了一個從簡單到復雜,從低級到高級的過程;從ms-dos---windows3---windows95---windows98---windowsnt---windows2000,再到現在win7、8甚至win10,微軟始終在進步。unix是一個通用的交互式分時操作系統,有at&t公司下屬的bell實驗室開發,在誕生后,源代碼就一直公開,用戶可以參與到unix的升級中。unix的特點:1.短小精悍;2.可裝卸的多層次文件系統;3.可移植性好;4.網絡通信功能強。linux是網絡時代的產品,繼承于unix,并做了很多改進。
第一章總領了全書,后面的二三四五六章都是講的計算機的`各種管理,總結如下圖:
在這里我把每章中的重點用紅色的顏色標記出來了,這樣在精讀的時候就可以有重點的向外擴散,抓住考點,征服考試。第一遍閱讀畫的有點粗糙,在精讀的時候再大大的豐富下。
操作系統學習總結2
這里的設備指的是i/o設備,即馮若依曼所提出的計算機五大部件的輸入/輸出部件,在五大部件中占其二,可想其重要行了,現在,開始我的總結之旅了
i/o系統可以分為:微機i/o設備和主機i/o設備。這兩個之間的區別和聯系,我還是不太清楚。感覺微機i/o比主機i/o要簡單。
對i/o系統的管理有以下幾種管理方式:
程序控制方式:這種方式好比學51單片機編匯時反復去檢測一個端口是否有要求的信號來一樣,簡單,但對cpu利用率太太太太太低了。
中斷方式:這種方式應該用的比較多吧,曾經有老師在課堂上這樣形象地描繪中斷這個東西,比如說你編程,突然,你的朋友來了個電話,很明顯,你不能置之不理,所以,你接了這個電話,掛電話之后,你就會返回剛才編程思路被打斷的地方,繼續編程了。但這種方式的致命缺點就是,每次傳送的數據量太少了,若要傳輸大量的設備,很明顯,設備將要進行n多次的中斷,我們知道,我一次中斷,會保存當前的psw,register等等信息,所以,是有開銷的,若進行很多次中斷,cpu的利用率同樣很多,因為,很多cpu時間用到對中斷的處理上了。
dma方式:這種方式是現在廣泛運用的管理方式了,向我們現在聽說的什么打開dma啊之類的就是指的這個東西。dma全稱是directmemoryaccess(直接內存讀寫)。它的優點不用說,因為有direct,所以,是很快的。cpu僅僅是干預開始和結束,其他一概由dma控制器來完成,所以,大大的節省了大量的cpu時間。
通道方式:通道完成主存儲器和外設之間的信息傳輸,由于通道這種東西平時沒看到過,對這種方式沒有什么理解,按照書上所說,這加大了i/o和cpu并行工作的程度。想想也是,cpu僅僅控制通道,通道就可以控制mm和i/o設備之間的信息傳輸,在后面的章節中,課本對通道的'工作過程有了更詳細的描述,就是cpu僅僅給出通道所要執行的通道程序在內存中的首地址,其余#url#的事情就有通道完成了,好像通道是一個附加的cpu,專門用來完成數據傳輸的工作,的確加大了并行工作的程度。
設備管理的目標:提高設備利用率,為用戶提供方便,統一的界面。這里值得我好好理解。
這里的方便,指的是屏蔽設備的物理特性,用戶只需要知道操作而不必知道每一個設備具體的工作原理。這里的統一指的是不同的設備用統一的操作方式,這樣,用戶在操作的時候,對不同的設備,好像是用同一種操作命令,如winxp中對硬盤和u盤的操作好像是一樣的,比如同樣的復制命令等等,統一、簡化了用戶的使用。把方便和統一結合起來看,就是讓用戶面對的不再是一個個的物理設備,而是一組具有相同特征的邏輯設備。
設備管理的主要技術:中斷技術,dma技術,通道技術,緩沖技術
androidlogcat如何獲取輸出所有內容?想要的東東沒有輸出。我覺得前三個主要是通過硬件來實現的,而緩沖技術,借助硬件,主要是以某種算法,以軟件實現的。
前面一直再說硬件,現在開始說軟件了。
設備管理軟件的基本思想是分層構造。想想也是#url#,為了實現設備管理的目標:為用戶提供方便,統一的界面,如果不通過分層的思想,層層抽象,是達不到這個目的的。
設備管理軟件的目標:設備獨立性和統一命名。設備獨立性可以這樣來理解,當最底層的物理設備變化的時候,面向用戶的那一層軟件并不用變,因為,它的下層的軟件把這種變化屏蔽了,具體的情況就是,當硬件變化后,我們僅僅改變了驅動程序,但驅動程序與上層軟件的接口并沒有變,所以,我們的上層軟件就不用變化了。提高了軟件的復用。這個原理很像我們在數據庫中學的三級模式,兩級映像,不光提供了物理獨立性,還提供了邏輯獨立性。統一命名比較難懂,通過例子來說明吧,在winxp中,西部數據和邁拓的硬盤被當作同樣的硬盤設備來使用,在unix中,i/o設備被當作文件來處理,這樣,可以通過路徑來訪問i/o設備。
操作系統學習總結3
1.聯機命令的類型:系統訪問類型;磁盤操作類型;文件操作類型;目標操作類型;通信類;其他命令
2.操作系統的目標:方便性、有效性、可擴充性、開放性。
3.操作系統的作用:os作為用戶與計算機硬件系統之間的接口;os作為計算機系統資源的管理者;os用作擴充機器。
4.操作系統的基本特性:并發、共享、虛擬、異步。
5.操作系統的功能:處理機管理(進程控制、進程通信、調度)、存儲器管理(內存分配、內存保護、地址映射、內存擴充。)、設備管理(緩沖管理、設備管理、設備處理)、文件管理(文件存儲空間的管理、目錄管理、文件的讀/寫管理和保護)。
6.常見的操作系統接口有:命令接口、程序接口、圖形接口。
7.單緩沖和雙緩沖的區別:兩臺機器之間的通信,配置單緩沖則在任意時刻都只能實現但方向的數據傳輸,絕不允許雙方同時向對方發送數據。在兩臺機器中設置兩個緩沖區,一個用作發送緩沖區,另一個用作接受緩沖區,可實現雙向數據傳輸。
8.操作系統的定義:是一組控制和管理計算機硬件和軟件資源,合理的對各類作業進行調度以及方便用戶使用的程序集合。
9.高級調度(長度調度或作業調度):用于決定把外存上處于后備隊列中那些作業調入內存,并為他們創建進程,分配必要的資源,然后再將新創建的進程排列到就緒隊列上,準備執行。
10.低級調度(進程調度或短程調度):用來決定就緒隊列中的哪個進程應獲得處理機,然后再由分派程序執行把處理機分配給該進程的具體操作。
11.中級調度(中程調度)引入目的:為了提高內存利用率和系統吞吐量。
12.進程通信的類型:共享存儲系統,消息傳遞系統,管道通信,信號量通信。
13.產生死鎖的原因:競爭資源,進程間推進順序非法
14.產生死鎖的必要條件:互斥條件,請求和保持條件,不剝奪條件,環路等待條件。
15.預防死鎖:(1)摒棄“請求和保持”條件:若系統有足夠的資源分配給某進程,便可把其需要的所有資源分配給該進程,則該進程在整個運行期間,便不會提出資源請求,從而摒棄了請求條件,在分配資源時只要有一種資源不能滿足其進程的要求,即使其余所需的各資源都空閑,也不分配給該進程,而該進程等待。由于該進程的等待時間,他并未占有任何資源,因而也摒棄了保持條件,從而可以避免發生死鎖。(2)摒棄“不剝奪”條件:當一個已經保持了某些資源的進程,在提出新的資源請求而不能立即得到滿足時,必須釋放它已經保持了的所有資源,待以后需要時再重新申請,即某一進程已經占有的資源,在運行中會被暫時的釋放掉,也可被認為是被剝奪了,從而摒棄了不剝奪條件。(3)摒棄“環路等待”條件:所以進程對資源的請求必須嚴格按資源序號遞增的次序提出,這樣在所形成的資源分配圖中,不可能在出現環路,因而摒棄了環路等待條件。
16.為什么引入動態重定位?如何實現?
答:為了在程序執行過程中,每當訪問指令或數據時,將要訪問的程序或數據的'邏輯地址轉換成物理地址,所以引入了動態重定位.可在系統中增加一個重定位寄存器,用它來裝入(存放)程序在內存中的起始地址,程序在執行時,真正訪問的內存地址是相對地址與重定位寄存器中的地址相加而形成的,從而實現動態重定位.
17.進程的三種基本狀態:就緒狀態,執行狀態,和阻塞狀態。
18.進程控制塊(pcb)的作用:使一個在多道程序環境下不能獨立運行的程序(數據),成為一個能獨立運行的基本單位,一個能與其他進程并發執行的進程。
19.進程控制塊的定義:是進程實體的一部分,是操作系統中最重要的記錄型數據結構。
20.引入進程的目的:為了使多個程序能并發執行,以提高資源利用率和系統吞吐量。
21.引入線程的目的:為了減少程序在并發執行時所付出的空開銷,使操作系統具有更好的并發性。
線程的屬性:輕型實體,獨立調度和分派的基本單位,可并發執行,共享進程資源。
22.分時系統的特征:多路性,獨立性,及時性和交互性。
23.進程的特征:結構特征,動態性,并發性,獨立性和異步性。
24.多道批處理系統的特征:(1)提高cpu的利用率(2)提高內存和輸入輸出設備的利用率(3)增加系統吞吐量:多道性,無序性和調度性(4)宏觀上并行微觀上串行
優缺點:資源利用率高,系統吞吐量大,平均周期長,無交互能力;需解決的問題:處理機管理問題,內存管理問題,輸入輸出設備管理問題,作業管理問題
25.單道批處理系統含義:由于系統對作業的處理都是成批地進行的,且在內存中始終只保持一道作業。單批道處理系統者在提高系統資源后利用率和系統吞吐量。
26.分時系統的定義:在一臺主機上接連了多個帶有顯示器和鍵盤的終端,同時允許多個用戶通過自己的終端以交互方式使用計算機共享主機中的資源。分時系統是為了滿足用戶要求所形成的一種新型os.
27.實時系統是指系統能及時響應外部事件的請求,在規定時間內完成對該事件的處理,并控制所有實時任務協調一致的運行。
28.傳統的操作系統結構:模塊化的os結構,分層式操作系統結構,微內核操作系統結構(能有效地支持多處理機運行,所以非常適用于分布式系統環境,具有以微內核為操作系統核心,以客戶/服務為基礎,并采用了面向對象程序設計方法的特征)。
29.程序的并發執行的實質:宏觀下程序并行和微觀下程序串行
30.先來先服務調度算法:周轉時間=完成時間-到達或提交時間
帶權周轉時間=周轉時間/服務時間
31.常用的幾種實時調度算法:最早截止時間優先即edf算法,最低松弛優先即llf算法
32.多處理器系統的類型:緊密耦合mps和松弛耦合mps,對稱多處理器系統和非對稱多處理器系統
34.死鎖的解除:剝奪資源,撤銷進程
35.內存的連續分配方式:單一連續分配;固定分區分配;動態分區分配;動態重定位分配。
36.動態分區分配算法間的區別:(1)首次適應算法ff:分配內存時,順序查找,直到找到滿足要求的空閑分區為止,優先利用內存中的低址空閑區為大作業的內存空間創造了條件,每次都從開頭找,增加查找空閑分區時的開銷。(2)循環首次適應算法:從上次找到的空閑分區的下一個空閑分區開始查找,直到找到一個能滿足要求的空閑分區,從中劃出一塊與請求大小相等的的內存空間分配給作業,使內存中的空閑分區分布均勻,減少查找空閑分區的開銷,但會缺乏大的空閑分區。(3)最佳適應算法:所有空閑分區按容量從小到大順序排列,每次分配內存時,把能滿足要求且最小的空閑分區分配給作業。但會留下許多難以利用的小空閑區。
37.引起進程阻塞和喚醒的事件:請求系統服務;啟動某種操作;新數據尚未到達;無新工作可做。
38.阻塞原語:block;喚醒原語:wakeup;掛起原語:suspend;激活原語:active。
39.臨界區:每個進程中訪問臨界資源的那段代碼。
40.進程同步機制應遵循的規則:空閑讓進;忙則等待;有限等待;讓權等待。
41.p、v操作:wait(s):whiles≤0dono-op
s:=s-1;
signal(s):s:=s+1;
42.文件的邏輯結構是指從用戶的觀點出發所觀察到的文件組織形式,也就是用戶可以直接處理的數據及其結構,它獨立于物理特性。有記錄式文件和流式文件。
43.文件的物理結構則是指文件在外存上的存儲組織形式,與存儲介質的存儲性能有關。有連續文件、串連文件、索引文件。
44.什么是分頁?什么是分段?二者主要有何區別?
答:分頁是將一個進程的邏輯地址空間分成若干大小相等的部分,每一部分稱作頁面。
分段是一組邏輯信息的集合,即一個作業中相對獨立的部分。
分頁和分段的主要區別是:分頁和分段都采用離散分配的方式,且都要通過地址映射機構來實現地址變換,這是它們的共同點;不同點:頁是信息的物理單位,段是信息的邏輯單位;頁的大小是由系統固定的,段的長度因段而異,由用戶決定;分頁的作業地址空間是一維的,分段的作業地址空間是二維的
45.spooling(假脫機操作)定義:在聯機情況下實現的同時外圍操作。
46.spooling技術是對脫機輸入、輸出系統的模擬。
47.spooling系統的特點:提高了i/o的速度;將獨占設備改造為共享設備;實現了虛擬設備功能。
【操作系統的學習總結】相關文章:
Linux操作系統KDE簡介學習01-22
Linux操作系統學習筆記權限管理03-19
操作系統的種類07-07
LINUX操作系統01-22
初學者學習linux操作系統用什么版本03-18
Linux操作系統使用命令總結04-02
WindowsXP操作系統知識12-02
關于android操作系統03-20
操作系統功能介紹03-29