TOP
0
0
【簡體曬書區】 單本79折,5本7折,活動好評延長至5/31,趕緊把握這一波!
Linux系統程序設計教程(簡體書)
滿額折

Linux系統程序設計教程(簡體書)

人民幣定價:45 元
定  價:NT$ 270 元
優惠價:87235
領券後再享88折
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:7 點
相關商品
商品簡介
作者簡介
目次

商品簡介

本書基於Linux內核,以RedHat Linux平臺為例,介紹Linux系統程序設計的基礎知識,為準備學習Linux系統程序開發的初學者提供方便快捷的途徑。 全書共12章。第1章介紹Linux操作系統的基本使用方法;第2章介紹Linux平臺下進行C語言開發需要的各種工具;第3章介紹Linux平臺下常用的編程基礎知識;第4~6章介紹文件、文件屬性、目錄文件相關的編程理論和方法;第7、8章介紹進程和線程的編程方法;第9~11章介紹信號、管道、信號量、共享內存、消息隊列、套接字6種進程間通信方式;第12章介紹兩個貫穿本書大多數知識點的綜合案例。 本書可作為高等院校計算機科學與技術、軟件工程、物聯網工程等相關專業“Linux程序設計”相關課程的教材,同時可供本科高年級學生自學使用,也可以作為相關工程技術人員和計算機愛好者的參考書。

作者簡介

王凱,大連東軟信息學院 計算機科學與技術系副教授,多年來一直從事嵌入式軟件開發,移動應用開發等方面的教學與科研工作。

Linux內核最初是由芬蘭人Linus Benedict Torvalds在赫爾辛基大學上學時編寫的。1991年,Linus Benedict Torvalds第一次發佈了Linux內核,隨後採用GPL協議,自此以後越來越多的程序員參與了Linux內核代碼的編寫和修改工作。目前Linux系統在服務器和超級計算機領域佔據絕對主導地位,在手機系統領域(Android)也是佔據了近三分之二的市場,另外在車載終端、智能電視等智能設備方面也佔據了很大的市場份額。因此,對於Linux系統的使用和編程,是計算機愛好者和嵌入式領域工程技術人員非常重要的一項技能。
本書主要介紹基於Linux平臺的文件、進程、進程間通信相關的編程理論和方法,共12章。第1章介紹Linux操作系統的基本使用方法;第2章介紹Linux平臺下進行C語言開發需要的各種工具;第3章介紹Linux平臺下常用的編程基礎知識;第4~6章介紹文件、文件屬性、目錄文件相關的編程理論和方法;第7、8章介紹進程和線程的編程方法;第9~11章介紹信號、管道、信號量、共享內存、消息隊列、Socket 6種進程間通信方式;第12章介紹兩個貫穿本書大多數知識點的綜合案例。
本書的內容包括知識講解和技能訓練,並以案例為核心,將知識與技能有機地結合在一起。本書以典型的Linux系統綜合案例為主線貫穿全書展開各部分的知識講解。在每一章中除介紹相關知識外,還輔以若干個小案例的訓練,從而將知識轉化為解決問題的技能。
本書各章節關係圖如下:
*粗線走向為綜合案例貫穿本書的各個章節順序。
*細線走向為本書中相對獨立的三大知識體系:文件(第4、5、6章),進程(第7、8章),進程間通信(第9、10、11章);第1、2、3章是這三大知識體系的支撐。
本書主要針對具有一定的C語言編程基礎的讀者,可作為高等院校計算機科學與技術、軟件工程、物聯網工程等相關專業“Linux程序設計”相關課程的教材,同時可供本科高年級學生自學使用,也可以作為相關工程技術人員和計算機愛好者的參考書。
本書配有電子課件、源程序代碼、習題解答等教學資源,讀者可以登錄華信教育資源網(www.hxedu.com.cn)註冊後免費下載。
參與編寫本書的都是具有豐富一線教學經驗的老師,在操作系統、Linux管理與應用、C/C++編程開發、嵌入式軟件開發、移動應用軟件開發等領域具有多年的教學和實踐經驗。本書由王凱擔任主編,楊光、竇喬、楊俊偉、餘新橋、孫斌擔任副主編,其中余新橋負責編寫第1章,王凱負責編寫第2、3、11章,孫斌負責編寫第4、5、6章,楊俊偉負責編寫第8章,楊光負責編寫第7、9、10章,竇喬負責編寫第12章。全書最後由王凱負責統稿和定稿。此外,李瑛達、陳豔秋、張福豔、李甯甯、高志君、鄭純軍、賈寧等為本書做了大量的工作,在此表示感謝。
由於時間和作者的水平有限,書中難免有錯誤和不妥之處,請各位讀者,特別是同行專家批評指正(E-mail:wk3113@163.com)。

目次

第1章 Linux基礎
1.1 UNIX/Linux簡介
1.1.1 UNIX簡介
1.1.2 UNIX體系結構
1.1.3 Linux簡介
1.1.4 Linux版本說明
1.1.5 Linux特點
1.2 庫函數與系統調用
1.3 Linux常用命令
1.3.1 用戶和用戶組命令
1.3.2 文件和目錄命令
1.3.3 進程命令
1.3.4 獲取幫助信息
1.4 案例1:通過SSH終端登錄Linux 系統
1.4.1 分析與設計
1.4.2 實施
1.4.3 運行
習題
第2章 Linux系統開發環境
2.1 Vi編輯器
2.1.1 Vi編輯器的工作模式
2.1.2 Vi編輯器的基本用法
2.1.3 Vi編輯器的高級用法
2.2 GCC編譯器
2.2.1 GCC編譯器介紹
2.2.2 GCC編譯器基本用法
2.3 Makefile文件的使用
2.3.1 Makefile文件
2.3.2 Makefile文件的命名
2.3.3 Makefile文件的調用
2.3.4 Makefile文件的內容
2.3.5 make命令的特殊用法
2.4 GDB調試器
2.4.1 輸出調試
2.4.2 GDB調試器
2.5 庫
2.5.1 庫相關概念
2.5.2 靜態庫和共享庫
2.6 案例2:簡易學生成績計算
2.6.1 分析與設計
2.6.2 實施
2.6.3 編譯與運行
習題
第3章 Linux程序設計初步
3.1 程序及進程的存儲結構
3.2 變量的類型修飾符
3.3 命令行參數及獲取
3.3.1 命令行參數
3.3.2 getopt獲取命令行參數
3.4 環境變量
3.4.1 Shell變量
3.4.2 環境變量的相關命令
3.4.3 環境變量函數
3.5 時間管理
3.6 錯誤代碼
3.7 標準I/O與文件I/O
3.8 案例3:設置環境變量
3.8.1 分析與設計
3.8.2 實施
3.8.3 編譯與運行
習題
第4章 文件I/O
4.1 文件系統簡介
4.1.1 UNIX/Linux文件系統概述
4.1.2 虛擬文件系統(VFS)
4.1.3 索引節點(inode)
4.1.4 文件的類型
4.1.5 文件的訪問權限
4.2 訪問文件的內核數據結構
4.3 文件基本I/O操作
4.3.1 打開/創建文件
4.3.2 讀文件
4.3.3 寫文件
4.3.4 文件定位
4.3.5 關閉文件
4.3.6 文件操作舉例
4.4 文件訪問的同步
4.5 案例4:文件複製命令的實現
4.5.1 分析與設計
4.5.2 實施
4.5.3 編譯與運行
習題
第5章 文件屬性
5.1 獲取文件屬性
5.2 用戶/組ID與名字的轉換
5.2.1 用戶和組
5.2.2 獲取文件的用戶和組的信息
5.3 硬鏈接與符號鏈接
5.3.1 硬鏈接與符號鏈接的區別
5.3.2 相關的系統調用
5.4 dup/dup2
5.4.1 輸入/輸出重定向
5.4.2 系統調用dup/dup2
5.5 文件屬性的修改
5.5.1 修改文件屬性
5.5.2 改變文件所有者及所屬組chown/fchown/lchown
5.5.3 改變文件訪問權限chmod/fchmod
5.5.4 改變文件時間utime
5.5.5 改變文件長度truncate/ftruncate
5.6 案例5:顯示文件長格式信息
5.6.1 分析與設計
5.6.2 實施
5.6.3 編譯與運行
習題
第6章 目錄文件管理
6.1 目錄基本操作
6.1.1 打開目錄
6.1.2 讀目錄
6.1.3 關閉目錄
6.2 目錄其他操作
6.2.1 切換當前目錄
6.2.2 創建目錄
6.2.3 刪除目錄
6.2.4 目錄指針定位
6.3 案例6:顯示指定目錄下文件列表
6.3.1 分析與設計
6.3.2 實施
6.3.3 編譯與運行
習題
第7章 進程控制
7.1 進程基本概念
7.1.1 進程和進程控制塊
7.1.2 進程標識
7.1.3 用戶標識
7.2 進程控制
7.2.1 創建進程
7.2.2 exec*系列函數
7.2.3 進程終止
7.2.4 等待進程結束
7.2.5 system函數
7.3 什麼是Shell
7.3.1 用戶登錄Shell
7.3.2 Shell執行命令
7.4 案例7:實現簡單的Shell
7.4.1 分析與設計
7.4.2 實施
7.4.3 編譯與運行
習題
第8章 線程
8.1 線程概念
8.2 線程基本操作
8.3 線程間通信
8.4 案例8:線程實例
8.4.1 分析與設計
8.4.2 實施
8.4.3 編譯與運行
習題
第9章 信號與管道
9.1 信號
9.1.1 信號的概念
9.1.2 信號的產生
9.1.3 信號的響應方式
9.1.4 sleep函數和pause系統調用
9.1.5 信號集
9.2 管道
9.2.1 管道基本概念
9.2.2 FIFO
習題
第10章 進程間通信
10.1 System V IPC簡介
10.2 System V信號量
10.3 System V共享內存
10.4 System V消息隊列
習題
第11章 網絡編程
11.1 網絡編程基本概念
11.1.1 常用網絡相關命令和配置文件
11.1.2 軟件體系結構
11.1.3 網絡協議及OSI參考模型
11.1.4 IP地址和端口
11.1.5 字節順序
11.1.6 網絡數據傳輸方式
11.2 套接字編程基礎
11.2.1 套接字簡介
11.2.2 套接字地址結構
11.2.3 面向連接套接字通信過程
11.2.4 面向無連接套接字通信過程
11.3 套接字編程相關係統調用
11.3.1 系統調用socket
11.3.2 系統調用bind
11.3.3 系統調用listen
11.3.4 系統調用accept
11.3.5 系統調用connect
11.3.6 系統調用send
11.3.7 系統調用sendto
11.3.8 系統調用recv
11.3.9 系統調用recvfrom
11.3.10 系統調用close
11.3.11 系統調用shutdown
11.4 案例9:基於網絡的進程間通信
11.4.1 分析與設計
11.4.2 實施
11.4.3 編譯與運行
11.5 基於UDP的網絡編程
11.6 域名解析
11.6.1 域名解析
11.6.2 IP地址形式轉換
11.6.3 IP地址與主機名
習題
第12章 綜合案例
12.1 Linux網絡傳輸系統
12.1.1 構思
12.1.2 設計
12.1.3 實施
12.1.4 運行
12.2 簡易的文件傳輸系統
12.2.1 構思
12.2.2 設計
12.2.3 實施
12.2.4 運行
習題
附錄A Linux主要的系統調用
附錄B ASCII碼
參考文獻

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 235
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區