問題:一、爲何單塊內存管理法中操做系統和應用程序換位置之後會有影響?
二、怎樣判斷偏移量和幀的大小?
三、我在本身的計算機裏怎麼找文件?
四、進程是否是線程?程序員
第十章、操做系統
一、計算機的操做系統把硬件和軟件緊密地聯繫在一塊兒,它是其餘軟件依附的基礎,並容許咱們編寫與機器進行交互的程序
二、軟件的分類:現代軟件能夠分爲兩類:應用軟件和系統軟件。應用軟件是爲了知足特定須要——解決現實世界中的問題而編寫的;系統軟件負責在基礎層上管理計算機系統,它爲建立和運行應用軟件提供了工具和環境。它能夠直接與硬件交互。
三、計算機的操做系統是軟件的核心,操做系統負責管理計算機資源,其餘系統軟件則支持特定的目的
四、一臺計算機一般只有一個活動的操做系統,載入ROM提供用戶界面的過程被稱之爲引導計算機。引導能夠由雙引導和多引導,但不管怎樣,計算機始終被一個操做系統所控制。
五、操做系統的中心思想是良好的共享。多個 併發執行的程序將共享主存。正在執行的程序都駐留在主存中。
六、操做系統的一些重點概念:(1)、內存管理:瞭解主存中載有多少程序以及它們的位置的動做。
(2)、進程:程序執行過程當中的動態表示法
(3)、進程管理:瞭解活動進程的信息的動做
(4)、內存管理和進程管理都須要CPU調度:肯定主存中的哪一個進程能夠訪問CPU以便執行的動做。
(5)、做業:用戶須要爲執行程序所需的系統軟件或其餘資源提供一套單獨的指令,程序和指令集合在一塊兒稱爲做業
(6)、分批:包含須要相同或類似資源的做業,這些做業將被載入內存,競爭CPU和其餘共享資源的使用權。分批不須要用戶和程序之間的交互。
(7)、分時:分時系統容許多個用戶同時與計算機進行交互。多道程序設計法容許同時有多個活動進程。分時系統最初由一臺主機和一組鏈接到主機的啞終端構成。啞終端:一套顯示器和鍵盤。啞終端能夠遍及整個大樓,而主機則放置在專用的房間中,操做系統駐留在主機中,全部處理都在這裏發生。
(8)、登陸進程;表示每一個用戶。
七、其餘OS要素:操做系統要負責與各類bi各樣的設備通訊,這些通訊是在設備驅動程序的協助下完成的,所謂設備驅動程序,就是了解特定設備接受和發佈信息所但願採用的方式的小程序。
操做系統的最後一個要素是須要支持實時系統的,實時系統:應用程序的特性決定了響應時間相當總要的系統。響應時間:收到信號和生成響應之間的延遲時間。
八、內存管理:操做系統須要對軟件進行以下內容:一、跟蹤一個程序駐留在內存的什麼位置以及是如何駐留的。二、把邏輯程序地址轉換成實際的內存地址。
九、邏輯地址:對一個存儲值得引用,是相對於引用它的程序的
物理地址:主存儲設備中的真實地址
地址聯編:邏輯地址和物理地址間的映射
在編譯程序時,對標識符的引用將被轉化爲邏輯地址。當程序最終載入內存時,每一個邏輯地址將被轉換成對應的物理地址。邏輯地址使得程序能夠在內存中移動或者每次載入不一樣的位置。只要知道程序存儲的位置,就能夠肯定任何邏輯地址對應的物理地址。
十、內存的管理方法:
單塊內存管理:就只分紅兩個部分:操做系統和要執行的應用程序,要生成物理地址只要用邏輯地址加上程序在物理主存中的其實地址便可,這樣的方式很簡單,可是大大浪費了內存空間和CPU時間
分區內存管理:固定分區法:主存將被劃分爲特定數目的分區,這些分區的大小不必定要相同,但在操做系統初始引導時,它們的打小就固定了。做業將被載入空間足夠容納它的分區。OS具備一個地址表,存放了每一個分區的起始地址和長度。
動態分區:將根據程序的須要建立分區。地址信息會隨着程序的載入和清除而改變。起始地址存儲到基址寄存器中,分區的長度被存儲到界限寄存器中。在動態分區中,連續的空白分區將會被合併成一個大的空白分區。
十一、三種經常使用的分區選擇法:
最早匹配:把第一個足夠容納程序的分區分配給它。
最佳匹配:把最小的可以容納程序的分區分配給它。
最差匹配:把最大的可以容納程序的分區分配給它。在動態分配中有用
頁式內存管理法:其須要跟蹤分配的內存,還要解析地址,可是消除了整個進程都必須做爲連續總體載入內存,讓進城大小無上限。
把進程劃分爲大小固定的頁,載入內存時存儲在幀中的內存管理方法。
幀:大小固定的一部分主存,用於存放進程頁
頁:大小固定的一部分進程,存儲在內存幀中
頁映射表:操做系統用於記錄頁和幀之間的關係的表
頁式內存管理系統中的邏輯地址與區分系統中的同樣,地址被換成兩個值:頁編號和偏移量。用頁面大小除以邏輯地址的商是頁編號,餘數是偏移量。<頁編號、偏移量>,要生成物理地址,首先要先查看PMT,用幀編號乘以幀大小,加上偏移量便可
分頁的優勢在乾沒必要把進程存儲在連續的內存空網電。這種分割進程的能力把爲進程尋找一大塊可用空閱的問題線花成了尋找足夠多的小塊內存。
請求分頁:頁式內存管理法的擴展,只有當頁面被引用時纔會被載入內存
頁面交換:把一個頁面從二級存儲設備載入內存,一般會使另外一個頁面從內存中刪除
虛擬內存:因爲整個程序沒必要同時處於內存而形成的程序大小沒有限制的假象
系統顛簸:頻繁的頁面交換形成的低效處理
十二、進程管理:
一、進程狀態:進入系統、準備執行、執行、等待資源、執行結束
注意準備就緒狀態,進程沒有任何執行障礙。可能有多個進程處於準備就緒或等待狀態,但只有一個進程處於運行狀態
在運行過程當中,進程可能被操做系統中斷,有可能爲了另外一個進程得到CPU資源,也多是讀取新引進的部分
1三、進程控制塊:操做系統管理進程信息使用的數據結構。
1四、PCB存儲的信息:
有關進程的各類信息
進程在其餘全部CPU寄存器中的值
維護關於CPU調度的信息
覈算信息,如帳戶、時間限制以及迄今爲止使用的CPU時間
上下文切換:當一個進程移出CPU,另外一個進程取代它時發生的寄存器信息交換
1五、CPU調度:
非搶先調度:當前執行的進程自願放棄了CPU時發生的調度
搶先調度:當操做系統決定照顧另外一個進程而搶佔了當前執行進程的CPU資源。
先到先服務和最短做業優先都是非搶先調度。就是字面意思
輪詢法:就是規定了時間片,而後按照順序輪迴,一個項目結束,就自此終止,以後的輪迴它再也不參與。
週轉週期:每一個進程的週轉週期是它的完成時間
第九章、文件系統和目錄
一、文件系統:主存是存放活動的程序和正在使用的數據的地方。
文件:數據的有名集合,用於組織二級存儲設備
文件系統:操做系統爲他管理的文件提供的邏輯視圖
目錄:文件的有名分組
有些文件的格式很嚴格,有些文件的格式比較靈活
能夠把文件看作爲序列、字節序列、行序列或記錄序列
二、文本文件和二進制文件
文本文件:包含字符的文件
二進制文件:包含特定格式的數據的文件,要求給位串一個特定的解釋
有些信息有字符表示法,有時這種文件叫作源文件
文件類型:文本數據文件、音頻文件、圖像文件、字處理文檔、程序員文件
文件名一般由點號分爲兩部分,即主文件名和文件擴展名。文件擴展名說明了文件的類型,告訴了你文件的打開方式。改變文件擴展名不會改變文件中的數據或它的內部格式。
三、文件操做:
在操做系統協助下:
建立文件
刪除文件
打開文件
關閉文件,從文件中讀取數據,把數據寫入文件,重定位文件中的當前文件指針,把數據附加到文件結尾,刪除文件,重命名文件,複製文件
讀文件:是指操做系統提交文件中從當前文件指針開始的數據的副本。發生讀操做後,文件指針將被更新,寫信息是指把數據存儲到由當前文件指針所指向的位置,而後更新文件指針
刪除文件:刪除文件的內容,但不刪除文件表中的管理條目
四、文件訪問:文件的訪問類型是在建立文件時設置的
文件訪問方法定義了重定位當前文件指針的方法,它們與存儲文件的設備的物理限制無關
五、文件訪問的兩種方法:
順序文件訪問:以線性的方式訪問文件中的數據的方法
直接文件訪問:經過指定邏輯記錄編號直接訪問文件中的數據的方法
六、文件保護:文件保護設置有三類:即OWNER,GROUP,WORLD
OWNER可讀寫,GROUP可讀,world不能讀寫
七、目錄:目錄中存放有文件名、文件類型、文件存儲在硬盤上的地址以及文件的當前大小,此外目錄中還存放文件的保護設置的信息,以及文件是什麼時候建立的什麼時候被最後修改的
一旦創建了目錄文件,它就必須支持對目錄文件的通常操做。
八、目錄樹:
展現文件嵌套目錄組織的結構
根目錄:包含其餘全部目錄的最高目錄,有點像樹結構
九、工做目錄:當前活動的子目錄
十、路徑:文件或字目錄在文件系統中的位置的文本名稱
絕對路徑:從根目錄開始,包含全部後繼子目錄的路徑
相對路徑:從當前工做目錄開始的路徑。
使用相對路徑時:有時須要返回上層目錄,注意使用絕對路徑不會遇到這種狀況.
..表示父目錄
十一、磁盤調度:決定先知足那個磁盤 I/O請求的操做
十二、先到先服務磁盤調度法
最短尋道時間優先磁盤調度法
SCAN磁盤調度法小程序