Linux程序設計--技術技巧與項目實踐(余有明)(附光盤)
定 價:¥33.6
中 教 價:¥25.87 (7.70折)
庫 存 數: 0
《Linux程序設計:技術技巧與項目實踐(附光盤)》以Linux技術為基礎,以實戰技巧為導向,以項目實踐為演習,深入淺出地闡述了Linux程序設計的理論與實踐。 全書共分十章,在內容安排上循序漸進,從了解Linux的基礎知識到基本掌握Linux的編程環境的搭建,從在Linux環境下掌握基本的Linux技能到重點學習shell編程和C編程的理念與技術,在此基礎上再深入學習文件系統編程、進程調度與通信編程、線程編程與網絡編程技術,最后給出了鞏固學習過程的實踐項目,便于讀者系統掌握Linux技術和學習編程的原理與實踐。附帶光盤收錄了各章案例程序的源代碼及電子教案。 《Linux程序設計:技術技巧與項目實踐(附光盤)》結構合理、實例豐富,具有很強的啟發性和實用性,可作為高等院校計算機、電氣信息和控制類專業的本科生和研究生學習Linux系統與編程的專業基礎教材,也可以供廣大希望從事Linux環境下工作和轉入嵌入式領域的科研與工程技術人員自學或參考使用。
第1章 LINUX概述1.1 Linux的淵源1.2 Linux的發行版本1.3 Linux的特性與生命力1.4 Linux用戶應該掌握的50個常用命令1.5 Linux編程學習指導1.6 實戰技巧:Linux平臺下的軟件自動安裝與升級工具 APT與YUM1.6.1 APT的用法1.6.2 YUM的用法第2章 構建LINUX編程環境2.1 Linux編程環境概述2.1.1 編程環境的風格2.1.2 Linux下的編程環境與工具2.1.3 Linux下的編程分類2.1.4 Linux幫助應用指南2.2 基本名詞術語與硬件需求2.2.1 系統操作術語2.2.2 系統特性術語2.2.3 系統硬件需求與安裝準備2.3 Linux系統的多元化安裝2.3.1 裸機上的安裝與卸載過程2.3.2 多系統共享的安裝過程2.3.3 在Windows下VMware中的Linux的安裝過程2.3.4 用Cygwin軟件創建Linux仿真環境2.3.5 即時系統Ubuntu Linux和WinPE2.4 Linux下軟件的安裝與卸載2.4.1 二進制分發軟件包的安裝與卸載2.4.2 軟件包的安裝與卸載2.5 Xshell的安裝與使用2.6 代碼閱讀工具Source Insight2.7 實戰技巧: VMware tools的安裝與多平臺下的文件夾共享2.7.1 VMware tools的安裝2.7.2 多平臺下的文件夾共享第3章 LINUX應用技術3.1 系統管理與維護技術3.1.1 系統注銷關機或重啟命令3.1.2 顯示登錄用戶信息命令3.1.3 賬號管理命令3.1.4 修改密碼的passwd命令3.1.5 顯示與時間設置命令3.1.6 磁盤空間管理命令3.2 文件與目錄操作技術3.2.1 文件系統認識與權限設置3.2.2 列表與分屏顯示命令3.2.3 切換創建與刪除目錄的命令3.2.4 文件復制刪除與合并命令3.2.5 文件目錄的移動與更名和路徑顯示命令3.2.6 重定向與管道命令3.2.7 改變文件訪問權限與歸屬的命令3.2.8 文件定位搜索與查找命令3.3 前后臺程序的運行與狀態切換3.4 任務調度技術3.4.1 系統工作調度3.4.2 用戶工作任務調度與刪除3.5 文件的打包與壓縮解壓縮3.6 進程管理技術3.6.1 命令ps的用法3.6.2 命令top的用法3.6.3 殺死進程命令kill3.7 控制提示符與命令組合3.8 編輯器Vi的應用技術3.8.1 Vi的三種執行模式3.8.2 基本操作3.8.3 查找和替換3.9 實戰技巧:非空目錄刪除與終端字體大小改變3.9.1 Linux系統中非空目錄的刪除3.9.2 改變XTerm的字體大小的方法第4章 SHELL基礎與編程技術4.1 Shell概述4.2 shell程序設計基礎4.3 Shell基本命令4.3.1 內部命令4.3.2 外部命令4.3.3 命令分組4.3.4 函數4.3.5 Shell的命令組合4.3.6 Shell特殊字符4.4 Shell變量4.4.1 用戶自定義變量4.4.2 變量的類型聲明4.4.3 數組變量4.4.4 變量的引用4.4.5 鍵盤輸入變量4.4.6 位置變量4.4.7 預定義特殊變量4.4.8 環境變量與置換變量4.4.9 算術運算4.5 Shell程序流程4.5.1 測試語句test4.5.2 條件語句if4.5.3 開關語句case4.5.4 循環語句for4.5.5 循環語句while4.5.6 循環語句until4.5.7 循環控制命令break和continue4.5.8 流程控制select4.5.9 shift語句和repeat語句4.6 程序調試4.7 Shell編程綜合范例4.7.1 系統自動備份程序設計4.7.2 終端顏色搭配的color腳本4.7.3 目錄菜單編制程序4.7.4 問題交互圖形化設計例程4.7.5 計算兩日期間的天數例程4.7.6 系統信息測試與顯示例程4.8 實戰技巧:系統資源查看與多命令執行4.8.1 使用vmstat命令來查看系統資源情況4.8.2 使用分號同時執行多條命令第5章 C程序設計技術5.1 管中窺豹學Linux下的C編程5.2 GCC編譯器應用解析5.2.1 編譯器的工作過程5.2.2 GCC編譯選項5.2.3 GCC編譯過程與游戲編程5.3 GDB調試技術5.3.1 調試編譯與選項5.3.2 程序調試設置5.3.3 在線調試過程5.3.4 在GDB中查看源程序5.3.5 在GDB中查看棧信息5.3.6 在GDB中查看運行數據5.3.7 在GDB中改變程序的執行路線5.3.8 在不同語言中使用GDB5.4 Make工程管理器5.4.1 Makefile文件5.4.2 make命令5.4.3 makefile變量5.4.4 Makefile規則5.5 多文件項目的Autotools應用5.5.1 Autotools基本工具5.5.2 Autotools制作Makefile基本流程例解5.5.3 用make完成程序安裝和發布5.6 Linux下的C程序設計實踐5.6.1 文件拷貝程序設計5.6.2 猜數字游戲設計5.6.3 進程調用程序設計5.6.4 管道通信程序設計5.6.5 "巧抓竊賊"程序設計5.7 實戰技巧:Linux啟動模式與定時任務設置5.7.1 Linux系統的命令行與X圖形模式啟動的設置與切換5.7.2 定時任務設置第6章 LINUX文件系統與編程6.1 文件系統概述6.1.1 文件系統的目錄樹6.1.2 文件系統的結構6.1.3 Ext2文件系統6.1.4 VFS6.2 設備文件6.2.1 設備文件概述6.2.2 設備驅動程序6.2.3 中斷處理6.2.4 設備驅動程序的框架6.3 文件的系統調用6.3.1 文件的創建和讀寫6.3.2 文件的各個屬性6.3.3 目錄文件的操作6.4 文件系統的設計與實現6.5 實戰技巧:消除XWindows下的死機現象第7章 進程調度與通信編程7.1 Linux下的進程概述7.1.1 進程的概念7.1.2 Linux進程的PCB結構7.1.3 Linux進程的組織方式7.1.4 Linux進程的異常檢測7.2 進程的系統調用7.2.1 getpid的用法7.2.2 fork的用法與多進程解惑7.2.3 exit和_exit7.3 進程間通信7.3.1 管道通信7.3.2 管道技術7.3.3 無名管道編程7.3.4 命名管道編程7.3.5 信號通信7.4 信號7.4.1 信號常識7.4.2 常用信號定義7.4.3 信號的接收7.4.4 信號的發送7.4.5 共享內存7.4.6 消息隊列7.5 守護進程7.5.1 守護進程基礎7.5.2 守護進程的特點7.5.3 守護進程的啟動方式7.5.4 守護進程的錯誤輸出7.5.5 守護進程的編程要點7.5.6 守護進程案例7.6 實戰技巧:巧妙使用Tab鍵第8章 線程編程技術8.1 線程thread的內涵8.2 線程調用8.2.1 線程的定義8.2.2 線程的分類8.2.3 線程的實現8.2.4 Linux線程實現機制分析8.3 多線程編程實踐8.4 線程的數據處理8.4.1 線程數據8.4.2 互斥鎖8.4.3 條件變量8.4.4 信號量8.5 多線程編程8.5.1 線程的創建和終止8.5.2 線程控制函數8.5.3 線程間的互斥8.5.4 線程間的同步8.5.5 修改線程的屬性8.5.6 多線程編程解決生產者和消費者問題8.6 實戰技巧:拷貝與粘貼的快捷程序第9章 網絡編程9.1 Socket的概念9.2 Socket的建立與配置9.3 Socket的連接建立9.4 數據傳輸9.5 Socket編程實例9.5.1 服務器端的軟件程序9.5.2 客戶端的軟件程序9.5.3 阻塞和非阻塞9.5.4 基于POP3客戶端實例9.6 ping命令解析9.6.1 命令基本功能9.6.2 命令ping源碼例程9.7 實戰技巧:光驅與軟驅的加載方法9.7.1 光驅的使用9.7.2 軟驅的使用第10章 LINUX程序設計實踐項目10.1 實踐項目一 虛擬機環境下的Linux安裝10.1.1 實踐目的10.1.2 實踐準備10.1.3 實踐內容10.2 實踐項目二 Linux的系統管理與基本命令10.2.1 實踐目的10.2.2 實踐內容10.2.3 實踐步驟10.3 實踐項目三 Vi編輯器練習10.3.1 實驗目的10.3.2 實驗內容10.3.3 實驗步驟10.4 實踐項目四 Shell程序設計10.4.1 實踐目的10.4.2 實踐內容10.4.3 實踐步驟10.5 實踐項目五 C程序設計與多文件編譯10.5.1 實踐目的10.5.2 實踐要求10.5.3 實踐內容10.6 實踐項目六 內存動態分區管理10.6.1 實踐目的10.6.2 實踐內容10.6.3 實踐程序及分析10.7 實踐項目七 Linux文件操作編程10.7.1 實踐目的10.7.2 實踐內容10.7.3 實踐源程序清單10.8 實踐項目八 系統調用與設備管理10.8.1 實踐目的10.8.2 實踐內容10.8.3 實踐源程序清單附錄 LINUX系統的安全防護技巧參考文獻