定 價(jià):59.8 元
叢書名:高等學(xué)校信息技術(shù)類新方向新動(dòng)能新形態(tài)系列規(guī)劃教材
- 作者:方元
- 出版時(shí)間:2019/7/1
- ISBN:9787115511584
- 出 版 社:人民郵電出版社
- 中圖法分類:TP316.85
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:128開
本書介紹Linux操作系統(tǒng)的基本組成、使用以及管理和開發(fā)的一些方法。全書共9章,第1章Linux基本介紹講述Linux的發(fā)展和一些主要的發(fā)行版,第2章計(jì)算機(jī)基本結(jié)構(gòu)介紹講述計(jì)算機(jī)系統(tǒng)和Linux的核心組成,第3章Linux桌面系統(tǒng)介紹Ubuntu發(fā)行版的安裝和主要桌面系統(tǒng)軟件,第4章命令行工作方式介紹Linux操作系統(tǒng)命令行環(huán)境的使用方法,第5章shell腳本介紹shell腳本程序,第6章Linux系統(tǒng)管理介紹Linux系統(tǒng)維護(hù)和管理的相關(guān)工作,第7章軟件開發(fā)介紹在Linux環(huán)境中進(jìn)行C語言程序開發(fā)的基本方法,第8章版本控制系統(tǒng)介紹與軟件開發(fā)密切相關(guān)的版本控制系統(tǒng),第9章內(nèi)核管理介紹Linux系統(tǒng)內(nèi)核管理和移植的基本方法。
本書可作為高等學(xué)校電子、計(jì)算機(jī)、物聯(lián)網(wǎng)等電子信息類相關(guān)專業(yè)Linux操作系統(tǒng)課程的教材,也可供Linux操作系統(tǒng)的學(xué)習(xí)者和愛好者參考。
與Windows 操作系統(tǒng)不同的是,Linux操作系統(tǒng)通常有比較專業(yè)的應(yīng)用背景,而不僅限于編輯文檔、上網(wǎng)瀏覽,特別是很多場合還需要鍵盤交互,Linux 還常常用于開發(fā),因此Linux 操作系統(tǒng)的系統(tǒng)性教學(xué)比Windows系統(tǒng)更為重要,而市面上這類教材比 Windows 又少得多。
方元,副教授,碩士生導(dǎo)師,任職于南京大學(xué)電子科學(xué)與工程學(xué)院。研究方向:微計(jì)算機(jī)原理與接口/語音數(shù)字信號(hào)處理/數(shù)字信號(hào)處理。
目錄
第 1章 Linux基本介紹
1.1 操作系統(tǒng)的發(fā)展 2
1.1.1 歷史回顧 2
1.1.2 UNIX的誕生 3
1.1.3 UNIX的發(fā)展 5
1.2 Linux的誕生 6
1.2.1 塔能鮑姆和他的MINIX 6
1.2.2 GNU計(jì)劃 6
1.2.3 Linus和Linux 7
1.2.4 POSIX標(biāo)準(zhǔn) 8
1.3 Linux操作系統(tǒng)的特點(diǎn) 9
1.4 Linux的主要發(fā)行版 12
1.4.1 Slackware 12
1.4.2 Debian 13
1.4.3 Red Hat及其衍生版 13
1.4.4 Gentoo 14
1.4.5 SUSE/openSUSE 15
1.4.6 Ubuntu 15
1.5 小結(jié) 16
1.6 本章練習(xí) 16
第 2章 計(jì)算機(jī)基本結(jié)構(gòu)介紹
2.1 微型計(jì)算機(jī)基礎(chǔ) 18
2.1.1 計(jì)算機(jī)的信息表示方法 18
2.1.2 CPU 20
2.1.3 存儲(chǔ)器 23
2.1.4 I/O接口與外設(shè) 25
2.1.5 總線 26
2.2 操作系統(tǒng)基礎(chǔ) 26
2.2.1 進(jìn)程管理 27
2.2.2 存儲(chǔ)管理 36
2.2.3 文件系統(tǒng) 41
2.2.4 設(shè)備驅(qū)動(dòng) 44
2.2.5 網(wǎng)絡(luò)連接 45
2.3 小結(jié) 50
2.4 本章練習(xí) 50
第3章 Linux桌面系統(tǒng)
3.1 安裝Linux 53
3.1.1 選擇一個(gè)發(fā)行版 53
3.1.2 制作安裝工具 53
3.1.3 選擇安裝方式 55
3.1.4 安裝過程 56
3.1.5 完成安裝 60
3.2 Linux系統(tǒng)桌面環(huán)境 60
3.2.1 外觀 60
3.2.2 桌面環(huán)境配置 61
3.3 常用軟件 62
3.3.1 文件管理器 62
3.3.2 軟件安裝工具 63
3.3.3 文本編輯工具 64
3.3.4 文檔排版工具 65
3.3.5 圖形處理工具 68
3.3.6 多媒體軟件 69
3.3.7 工程類軟件 70
3.4 小結(jié) 73
3.5 本章練習(xí) 73
第4章 命令行工作方式
4.1 命令行的特點(diǎn) 76
4.1.1 兩種字符界面 76
4.1.2 認(rèn)識(shí)終端環(huán)境 76
4.1.3 環(huán)境變量PATH 77
4.1.4 命令行的格式 78
4.1.5 快捷鍵和符號(hào) 80
4.2 目錄 82
4.2.1 游走于目錄之間 82
4.2.2 目錄層次結(jié)構(gòu) 86
4.3 文件屬性 88
4.3.1 列文件清單 88
4.3.2 文件的完整屬性 88
4.3.3 文件的屬性位 89
4.3.4 改變文件的屬性 89
4.4 文件操作 92
4.4.1 復(fù)制文件 92
4.4.2 文件搬家 93
4.4.3 刪除文件 94
4.4.4 文件鏈接 94
4.4.5 瀏覽文件 95
4.4.6 查找文件 96
4.4.7 文件比較 98
4.4.8 文件處理 100
4.5 學(xué)習(xí)更多的命令 105
4.5.1 使用幫助選項(xiàng) 105
4.5.2 手冊(cè)頁 105
4.5.3 shell內(nèi)部命令幫助 107
4.6 正則表達(dá)式 107
4.6.1 匹配規(guī)則 108
4.6.2 重復(fù)匹配 108
4.6.3 非貪婪匹配 109
4.6.4 特殊匹配規(guī)則 110
4.7 磁盤和用戶管理 110
4.7.1 磁盤分區(qū) 110
4.7.2 掛載和卸載文件系統(tǒng) 112
4.7.3 用戶和組 114
4.7.4 用戶和組的管理 116
4.8 進(jìn)程控制 118
4.8.1 進(jìn)程狀態(tài) 118
4.8.2 改變進(jìn)程狀態(tài) 121
4.8.3 歷史命令 122
4.8.4 前臺(tái)與后臺(tái) 123
4.9 I/O重定向與管道 123
4.9.1 I/O重定向 123
4.9.2 管道 127
4.9.3 靈活的處理手段 127
4.10 小結(jié) 128
4.11 本章練習(xí) 129
第5章 shell腳本
5.1 bash環(huán)境 132
5.2 shell變量 132
5.2.1 命名變量 132
5.2.2 變量的運(yùn)算 133
5.2.3 變量的數(shù)值運(yùn)算 134
5.2.4 數(shù)組 136
5.3 基本shell編程 136
5.3.1 shell腳本 136
5.3.2 函數(shù) 138
5.3.3 特殊變量 138
5.3.4 變量的作用范圍 139
5.4 程序流控制 140
5.4.1 條件結(jié)構(gòu) 140
5.4.2 循環(huán)結(jié)構(gòu) 144
5.4.3 陷阱 147
5.5 命令行參數(shù)和選項(xiàng) 149
5.5.1 多參數(shù)的處理方法 149
5.5.2 命令行的選項(xiàng) 149
5.6 模塊化腳本編程 151
5.6.1 模塊化 151
5.6.2 shell子進(jìn)程 152
5.7 小結(jié) 154
5.8 本章練習(xí) 154
第6章 Linux系統(tǒng)管理
6.1 操作系統(tǒng)的啟動(dòng)過程 157
6.1.1 硬盤的邏輯結(jié)構(gòu) 157
6.1.2 引導(dǎo)加載器 158
6.2 Linux系統(tǒng)的啟動(dòng)配置 158
6.2.1 SysV初始化 159
6.2.2 systemd初始化 163
6.3 包管理工具 168
6.3.1 安裝包格式 168
6.3.2 后臺(tái)包管理工具 169
6.3.3 高級(jí)包管理工具 170
6.3.4 snapcraft 172
6.3.5 安裝包格式轉(zhuǎn)換 172
6.4 網(wǎng)絡(luò)工具 172
6.4.1 設(shè)置網(wǎng)絡(luò)地址 173
6.4.2 域名解析 174
6.4.3 Ubuntu網(wǎng)絡(luò)配置 175
6.4.4 防火墻設(shè)置 175
6.4.5 遠(yuǎn)程連接 178
6.5 服務(wù)管理 179
6.5.1 網(wǎng)絡(luò)文件系統(tǒng)服務(wù) 179
6.5.2 SAMBA 180
6.5.3 遠(yuǎn)程登錄服務(wù) 181
6.5.4 計(jì)劃任務(wù)管理 181
6.6 系統(tǒng)備份 183
6.7 系統(tǒng)日志 187
6.7.1 日志文件在哪里 187
6.7.2 日志文件的產(chǎn)生 188
6.8 用戶安全認(rèn)證 190
6.9 小結(jié) 193
6.10 本章練習(xí) 194
第7章 軟件開發(fā)
7.1 編譯工具 196
7.1.1 GCC工具鏈 196
7.1.2 gcc常用選項(xiàng)說明 196
7.1.3 代碼分析工具 197
7.2 軟件開發(fā)過程 201
7.2.1 源程序的準(zhǔn)備 201
7.2.2 編譯和運(yùn)行 203
7.2.3 將模塊編譯成庫 203
7.2.4 程序優(yōu)化 206
7.3 軟件調(diào)試 209
7.3.1 啟動(dòng)gdb 209
7.3.2 運(yùn)行程序 210
7.3.3 調(diào)試功能 211
7.3.4 gdb常用命令 213
7.3.5 匯編語言調(diào)試命令 214
7.3.6 其他調(diào)試器 214
7.4 GNU Make 215
7.4.1 Makefile基本結(jié)構(gòu) 216
7.4.2 GNU Make基本規(guī)則 218
7.4.3 GNU Make的依賴 224
7.4.4 偽目標(biāo) 225
7.4.5 條件判斷 226
7.4.6 內(nèi)建函數(shù) 227
7.4.7 靜態(tài)庫的更新 229
7.5 集成開發(fā)環(huán)境 230
7.5.1 集成開發(fā)環(huán)境的特點(diǎn) 230
7.5.2 Glade 230
7.5.3 Glade的多語言支持 234
7.5.4 Geany 235
7.5.5 Anjuta 235
7.5.6 GNOME Builder 236
7.6 源代碼移植 237
7.6.1 獲取源碼 237
7.6.2 源碼結(jié)構(gòu) 237
7.6.3 配置編譯環(huán)境 238
7.6.4 編譯與安裝 239
7.7 小結(jié) 240
7.8 本章練習(xí) 240
第8章 版本控制系統(tǒng)
8.1 版本控制系統(tǒng)的形式 243
8.2 git版本控制系統(tǒng) 244
8.3 基本git操作 245
8.3.1 git配置 246
8.3.2 初始化倉庫 246
8.3.3 添加文件 247
8.3.4 提交更新 249
8.3.5 移除文件 250
8.3.6 文件移動(dòng) 251
8.3.7 標(biāo)簽 251
8.3.8 數(shù)字簽名 252
8.4 項(xiàng)目回溯 253
8.4.1 查看日志 253
8.4.2 撤銷操作 255
8.4.3 取消暫存的文件 256
8.4.4 撤銷對(duì)文件的修改 257
8.5 分支與合并 257
8.5.1 創(chuàng)建分支 257
8.5.2 暫存提交 258
8.5.3 對(duì)比差異 259
8.5.4 分支合并 259
8.5.5 變基 260
8.6 遠(yuǎn)程分支 261
8.6.1 獲取遠(yuǎn)程倉庫 261
8.6.2 遠(yuǎn)程與本地同步 261
8.6.3 推送本地分支 262
8.6.4 查看分支 263
8.6.5 刪除遠(yuǎn)程分支 263
8.7 git服務(wù)器設(shè)置 264
8.7.1 本地協(xié)議 264
8.7.2 HTTP/HTTPS協(xié)議 264
8.7.3 SSH協(xié)議 265
8.7.4 git協(xié)議 265
8.8 小結(jié) 265
8.9 本章練習(xí) 266
第9章 內(nèi)核管理
9.1 操作系統(tǒng)核心文件 268
9.1.1 內(nèi)核鏡像文件 268
9.1.2 模塊與設(shè)備驅(qū)動(dòng) 268
9.1.3 設(shè)備文件 270
9.1.4 進(jìn)程管理目錄/proc 270
9.1.5 /sys目錄 270
9.2 內(nèi)核重構(gòu) 271
9.2.1 為什么要編譯內(nèi)核 271
9.2.2 內(nèi)核源碼結(jié)構(gòu) 272
9.2.3 配置和編譯內(nèi)核 273
9.3 小結(jié) 276
9.4 本章練習(xí) 277
參考文獻(xiàn) 278