前言
作業系統是計算機系統中軟體與硬體的紐帶,作業系統的優劣直接影響計算機系統的整體性能和用戶使用計算機的方便程度。作業系統課程是計算機科學與技術專業的重要專業基礎課程,同時也是計算機套用開發人員應該掌握的核心課程之一。本課程主要介紹作業系統的基本原理和實現技術,學習本課程是理解計算機系統工作、用戶與計算機系統互動、設計開發套用系統等基本知識結構的重要途徑。
本教材的第一版於2010年出版,教材出版以來得到套用型本科院校的廣泛好評。本次教材的修訂,是為了更好地適應套用型本科院校以及中高等職業院校使用。2014年,我們承擔了江蘇省中高等職業教育銜接課程體系建設課題“中高等計算機專業教育銜接課程體系建設的研究”(201436)。課題組對中高等職業院校開設的課程進行了深入調研,並結合本課程進行了詳盡分析,提出了以理論與實踐相結合的理念設計教材的修訂方案。2016年,該課題被鑑定為優秀課題,本教材是該課題的研究成果之一。教材的具體修訂內容主要有以下幾個方面:
1.將用戶界面單獨編排為一章。這一章是學生學習和使用作業系統的入口,為學生自主學習作業系統課程起到積極作用。
2.將進程與進程通信單獨編排為一章。這一章主要闡述計算機內部活動是以進程為單位的,作業系統需要對它們進行管理,使其合理地利用資源,相互之間有條不紊地進行通信。
3.將進程互斥、同步與死鎖單獨編排為一章。這一章充分證明作業系統是以進程為單位運作的,其動態性、並發性將引發計算機資源的競爭,作業系統將協調它們之間的關係,讓其能夠按照應有的規律運行。
4.以 Linux 作業系統為例,增加實踐內容,讓學生通過動手操作來認識、理解作業系統的相關知識,做到理論與實踐相結合。
5.增加課後習題,通過習題讓學生更好地理解和掌握作業系統的基本原理和實現技術,提高學生分析問題和解決問題的能力。
本教材共分為8章,建議課堂教學44學時,實驗教學20學時。
第1章作業系統概述。本章系統地介紹了作業系統的概念、出現和發展、分類以及結構,最後對Linux作業系統進行了簡要的介紹。建議課堂教學4學時。
第2章用戶界面。本章介紹了作業系統為用戶使用計算機提供的接口。建議課堂教學2學時,實驗教學4學時。
第3章進程與進程通信。本章系統地介紹了進程與執行緒的基本概念、進程控制、處理器調度以及進程間通信,最後對 Linux 進程管理進行了簡要的介紹。建議課堂教學8學時,實驗教學2學時。
第4章進程互斥、同步與死鎖。本章首先介紹了進程互斥與同步等基本概念,闡述如何通過信號量機制和管程來實現進程互斥與同步,然後分析了死鎖產生的原因以及處理死鎖的相關策略,最後介紹了Linux系統的同步機制。建議課堂教學8學時,實驗教學4學時。
第5章存儲管理。本章介紹了存儲管理的基本概念和常見的存儲管理方法,並分別介紹了各種記憶體管理技術的實現思想、算法和硬體支持,最後介紹了Linux存儲管理。建議課堂教學7學時,實驗教學4學時。
第6章設備管理。本章系統地介紹了I/O 硬體、I/O 軟體、設備分配、磁碟管理,最後簡要地介紹了 Linux 設備管理。建議課堂教學5學時,實驗教學2學時。
第7章檔案管理。本章系統地介紹了檔案的基本概念、檔案的結構與存取方法、輔存空間管理、檔案目錄管理與檔案共享、檔案的保護以及檔案的使用,最後簡要地介紹了 Windows 和 Linux 檔案系統。建議課堂教學6學時,實驗教學2學時。
第8章作業系統安全。本章介紹了作業系統安全的基本概念,闡述了作業系統的安全機制及Linux的安全策略。建議課堂教學4學時,實驗教學2學時。
為適應現代教學手段,本教材配備了數位化教學資源,具體內容包括多媒體課件、習題答案解析和實驗平台,以上資源可通過掃描封底二維碼關注“作業系統課程學習”公眾號獲取。
本教材由江蘇理工學院李紅衛、白鳳娥任主編;江蘇理工學院郭慶軍,安徽三聯學院張健、梅瑩瑩,江蘇理工學院謝峰以及大連海洋大學套用技術學院王冰冰任副主編。具體編寫分工如下:第1章、第2章由李紅衛編寫,第3章由白鳳娥編寫,第4章由郭慶軍編寫,第5章由張健編寫,第6章由梅瑩瑩編寫,第7章由謝峰編寫,第8章由王冰冰編寫。全書由李紅衛統稿並定稿。此外,大連理工大學高俊傑審閱了書稿並提出了改進建議,在此表示衷心的感謝。
本教材得到了江蘇省中高等職業教育銜接課程體系建設課題“中高等計算機專業教育銜接課程體系建設的研究”(201436)的資助,得到了江蘇理工學院教務處、江蘇理工學院計算機工程學院的大力支持,同時也得到了同事的大力協助。在此,僅致謝忱。
在編寫本教材的過程中,我們參考、借鑑了許多專家、學者的相關著作,對於引用的段落、文字儘可能一一列出,謹向各位專家、學者一併表示感謝。
目錄
第1章作業系統概述
1.1作業系統的概念
1.2作業系統的出現和發展
1.3作業系統的分類
1.4作業系統的結構
1.5Linux作業系統的介紹
習題
第2章用戶界面
2.1作業的概念及命令控制接口
2.2程式接口
2.3CPU工作狀態
2.4中斷技術
2.5Linux基本操作
2.6Linux系統基本操作實驗
習題
第3章進程與進程通信
3.1程式的執行
3.2進程概述
3.3進程控制
3.4執行緒概述
3.5處理器調度
3.6進程間通信
3.7Linux中的進程
3.8Linux中進程間通信
3.9進程管理實驗
3.10進程通信實驗
習題
第4章進程互斥、同步與死鎖
4.1進程互斥與同步
4.2死鎖
4.3作業系統的特性
4.4Linux系統的同步
4.5進程互斥與同步實驗
習題
第5章存儲管理
5.1存儲管理概述
5.2分區存儲管理
5.3記憶體擴充技術
5.4分頁式存儲管理
5.5分段式與段頁式存儲管理
5.6請求分頁式存儲管理
5.7Linux存儲管理
5.8存儲管理實驗
習題
第6章設備管理
6.1I/O硬體
6.2I/O軟體
6.3設備分配
6.4磁碟管理
6.5Linux設備管理
6.6設備管理實驗
習題
第7章檔案管理
7.1檔案管理概述
7.2檔案的結構與存取方法
7.3輔存空間管理
7.4檔案目錄管理與檔案共享
7.5檔案的保護
7.6檔案的使用
7.7檔案系統實例
7.8檔案系統實驗
習題
第8章作業系統安全
8.1作業系統安全概述
8.2作業系統的安全機制
8.3Linux的安全策略
8.4Linux作業系統安全實驗
習題
參考文獻
出版背景
本教材的第一版於2010年出版,教材出版以來得到套用型本科院校的廣泛好評。本次教材的修訂,是為了更好地適應套用型本科院校以及中高等職業院校使用。
2014年我們承擔了江蘇省中高等職業教育銜接課程體系建設課題《中高等計算機專業教育銜接課程體系建設的研究》(201436),課題組對中職學校開設的課程進行了深入調研,並結合本課程進行了詳盡的分析,提出了理實一體化教學方法,在此基礎上制訂了課程標準,提出了以理論與實踐相結合的理念組織教材的修訂方案。2016年該課題結題鑑定為優秀課題,本教材是該課題的研究成果之一 。2015年獲得江蘇理工學院重點教材立項建設(修訂)。這些都激勵我們用更高的熱情完成教材的修訂,以適應套用型本科院校以及3+4中高職計算機類專業學生使用。