本教材是操作系統(tǒng)原理的實驗配套教材,以CentOS 7.5為實驗平臺,根據(jù)操作系統(tǒng)的功能模塊設計了若干相關(guān)實驗,包括文件管理、進程管理、存儲管理、設備管理等幾大功能模塊。全書共7章,第1章介紹了Linux的安裝;第2章介紹了Linux操作系統(tǒng)的基本使用;第3章介紹了文件管理;第4章介紹了進程管理;第5章是存儲管理;第6章是設備管理;第7章是網(wǎng)絡基本配置及shell編程簡介。讀者可以通過這些實驗完成操作系統(tǒng)的主要功能實現(xiàn)原理的學習。本教材適合應用型本科計算機類操作系統(tǒng)原理的教學,也可作為有興趣學習Linux原理的參考書。
第1部分 概論與基本操作
第1章 安裝CentOS 7
1.1 實驗目的
1.2 實驗環(huán)境
1.3 預備知識
1.3.1 虛擬機簡介
1.3.2 CentOS簡介
1.3.3 安裝CentOS基礎(chǔ)知識
1.4 實驗步驟
1.4.1 創(chuàng)建虛擬機
1.4.2 使用ISO文件安裝CentOS 7
1.5 思考與練習
第二部分 Linux操作基礎(chǔ)
第2章 Linux的啟動、登錄和關(guān)機
2.1 實驗目的
2.2 實驗環(huán)境
2.3 預備知識
2.4 實驗步驟
2.4.1 啟動和登錄Linux
2.4.2 練習完成以下操作
2.4.3 注銷系統(tǒng)與關(guān)機
2.5 思考與練習
第3章 Linux的權(quán)限用戶(組)管理基本操作
3.1 實驗目的
3.2 實驗環(huán)境
3.3 預備知識
3.3.1 與權(quán)限用戶(組)管理相關(guān)的文件
3.3.2 權(quán)限用戶管理命令
3.3.3 權(quán)限用戶組管理命令
3.3.4 密碼管理命令
3.4 實驗步驟
3.4.1 權(quán)限用戶創(chuàng)建和管理
3.4.2 練習完成以下操作
3.5 思考與練習
第4章 vi文本編輯器的使用
4.1 實驗目的
4.2 實驗環(huán)境
4.3 預備知識
4.4 實驗步驟
4.5 思考與練習
第三部分 文 件 管 理
第5章 Linux文件(目錄)訪問權(quán)限
5.1 實驗目的
5.2 實驗環(huán)境
5.3 預備知識
5.3.1 Linux文件系統(tǒng)
5.3.2 Linux文件屬性
5.3.3 常用文件操作命令
5.4 實驗步驟
5.4.1 查看和修改文件的權(quán)限
5.4.2 用戶和用戶組權(quán)限設置測試
5.5 思考與練習
第6章 Linux常用文件系統(tǒng)
6.1 實驗目的
6.2 實驗環(huán)境
6.3 預備知識
6.3.1 硬盤參數(shù)
6.3.2 Linux常用文件系統(tǒng)
6.3.3 文件系統(tǒng)常用操作命令
6.3.4 xfs文件系統(tǒng)的信息
6.3.5 AG*塊信息
6.4 實驗步驟
6.4.1 使用命令ls查看文件屬性信息
6.4.2 使用命令df查看文件系統(tǒng)磁盤占用信息
6.4.3 查看xfs文件系統(tǒng)的描述數(shù)據(jù)
6.4.4 查看inode信息數(shù)據(jù)
6.5 思考與練習
第7章 Linux文件系統(tǒng)的管理
7.1 實驗目的
7.2 實驗環(huán)境
7.3 預備知識
7.3.1 文件系統(tǒng)的創(chuàng)建
7.3.2 文件系統(tǒng)的注冊和注銷
7.3.3 文件系統(tǒng)的安裝與卸載
7.4 實驗步驟
7.4.1 查看文件系統(tǒng)的安裝情況
7.4.2 文件系統(tǒng)的創(chuàng)建及使用
7.4.3 文件系統(tǒng)的自動掛載
7.5 思考與練習
第四部分 進 程 管 理
第8章 Linux*程查看及計劃任務
8.1 實驗目的
8.2 實驗環(huán)境
8.3 預備知識
8.3.1 進程管理和監(jiān)控常用命令
8.3.2 Linux系統(tǒng)中作業(yè)啟動
8.4 實驗步驟
8.4.1 進程查看命令練習
8.4.2 計劃任務配置
8.5 思考與練習
第9章 GCC編譯器的使用
9.1 實驗目的
9.2 實驗環(huán)境
9.3 預備知識
9.3.1 GCC編譯器
9.3.2 GDB調(diào)試器
9.3.3 Linux文件操作函數(shù)簡介
9.3.4 fork()函數(shù)
9.4 實驗步驟
9.4.1 gcc編譯程序
9.4.2 用fork創(chuàng)建子進程
9.5 思考與練習
第10章 子進程的創(chuàng)建
10.1 實驗目的
10.2 實驗環(huán)境
10.3 預備知識
10.4 實驗步驟
10.4.1 子進程創(chuàng)建示例
10.4.2 子進程創(chuàng)建編程
10.4.3 返回子進程退出狀態(tài)
10.5 思考與練習
第11章 進程同步與互斥
11.1 實驗目的
11.2 實驗環(huán)境
11.3 預備知識
11.3.1 進程同步與互斥概念
11.3.2 P、V操作與信號量
11.3.3 利用P、V操作實現(xiàn)進程的同步與互斥
11.4 實驗步驟
11.4.1 生產(chǎn)者—消費者問題
11.4.2 一個簡單例子
11.5 思考與練習
第12章 信號通信及管道通信
12.1 實驗目的
12.2 實驗環(huán)境
12.3 預備知識
12.3.1 信號通信
12.3.2 管道通信
12.4 實驗步驟
12.4.1 信號通信源程序
12.4.2 無名管道通信源程序
12.4.3 有名管道通信源程序
12.5 思考與練習
第13章 消息隊列通信及共享內(nèi)存通信
13.1 實驗目的
13.2 實驗環(huán)境
13.3 預備知識
13.3.1 消息隊列通信
13.3.2 共享內(nèi)存通信
13.4 實驗步驟
13.4.1 消息隊列通信
13.4.2 共享內(nèi)存通信
13.5 思考與練習
第14章 信號量通信
14.1 實驗目的
14.2 實驗環(huán)境
14.3 預備知識
14.3.1 信號量集的概念
14.3.2 信號量集涉及的函數(shù)及結(jié)構(gòu)
14.4 實驗步驟
14.5 思考與練習
第15章 套接字通信
15.1 實驗目的
15.2 實驗環(huán)境
15.3 預備知識
15.3.1 socket概述
15.3.2 socket編程所涉及的基本函數(shù)
15.3.3 socket編程模型
15.4 實驗步驟
15.4.1 socket通信服務器端源代碼
15.4.2 socket通信客戶端源代碼
15.5 思考與練習
第16章 銀行家算法
16.1 實驗目的
16.2 實驗環(huán)境
16.3 預備知識
16.3.1 死鎖的概念
16.3.2 銀行家算法
16.4 實驗步驟
16.5 思考與練習
第五部分 存 儲 管 理
第17章 內(nèi)存監(jiān)控和回收
17.1 實驗目的
17.2 實驗環(huán)境
17.3 預備知識
17.3.1 內(nèi)存實時查看命令
17.3.2 /proc/meminfo文件
17.3.3 內(nèi)存分配及釋放
17.4 實驗步驟
17.5 思考與練習
第18章 Linux虛擬內(nèi)存
18.1 實驗目的
18.2 實驗環(huán)境
18.3 預備知識
18.3.1 32位的Linux虛擬內(nèi)存、內(nèi)核空間和用戶空間
18.3.2 64位的Linux虛擬內(nèi)存、內(nèi)核空間和用戶空間
18.4 實驗步驟
18.5 思考與練習
第六部分 設 備 管 理
第19章 設備查看與設備驅(qū)動
19.1 實驗目的
19.2 實驗環(huán)境
19.3 預備知識
19.3.1 設備相關(guān)文件
19.3.2 設備號
19.3.3 stat命令
19.3.4 設備驅(qū)動程序
19.4 實驗步驟
19.4.1 設備查看操作
19.4.2 驅(qū)動程序示例
19.5 思考與練習
第七部分 Linux網(wǎng)絡配置與管理
第20章 網(wǎng)絡配置與shell編程
20.1 實驗目的
20.2 實驗環(huán)境
20.3 預備知識
20.3.1 網(wǎng)絡參數(shù)配置方法
20.3.2 shell程序編程簡介
20.4 實驗步驟
20.4.1 網(wǎng)絡參數(shù)查看及配置
20.4.2 shell程序設計
20.5 思考與練習
第21章 基于KVM的虛擬機安裝
21.1 實驗目的
21.2 實驗環(huán)境
21.3 預備知識
21.4 實驗步驟
21.4.1 安裝虛擬化軟件包
21.4.2 安裝虛擬機
21.5 思考與練習
附錄AVMware Workstation 14 Pro使用指南
A.1 認識虛擬機
A.1.1 虛擬機簡介
A.1.2 虛擬機的優(yōu)點
A.1.3 使用虛擬機的系統(tǒng)環(huán)境
A.1.4 關(guān)于虛擬機的4個術(shù)語
A.2 使用虛擬機
A.2.1 啟動虛擬機
A.2.2 關(guān)閉虛擬機
A.2.3 為虛擬機拍攝快照
A.3 配置虛擬機的網(wǎng)絡
A.3.1 橋接模式
A.3.2 網(wǎng)絡地址轉(zhuǎn)換模式
A.3.3 僅主機模式
A.3.4 自定義配置模式
A.4 配置VMware虛擬網(wǎng)絡
A.4.1 添加虛擬網(wǎng)卡
A.4.2 虛擬網(wǎng)絡編輯器
附錄B使用yum安裝軟件包
B.1 直接使用Internet安裝軟件包
B.2 使用本地光盤源安裝軟件包
附錄CELF文件簡介
C.1 ELF file header
C.2 Section header
C.3 Program segment header
C.4 ELF文件實例分析
C.5 readelf命令
附錄Dmakefile文件簡介
D.1 makefile的語法
D.2 偽目標
D.3 make命令
D.4 自定義變量與系統(tǒng)變量
參考文獻