注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)操作系統(tǒng)LinuxLinux開發(fā)工具箱

Linux開發(fā)工具箱

Linux開發(fā)工具箱

定 價(jià):¥58.00

作 者: (美)法斯克(Fusco,J) 著;賈嚴(yán)磊,董西廣,王在奇 譯
出版社: 清華大學(xué)出版社
叢編項(xiàng): 項(xiàng)目開發(fā)的最有效途徑
標(biāo) 簽: LINUX

ISBN: 9787302177869 出版時(shí)間: 2008-09-01 包裝: 平裝
開本: 16開 頁數(shù): 476 字?jǐn)?shù):  

內(nèi)容簡介

  《Linux開發(fā)工具箱:項(xiàng)目開發(fā)的最有效途徑》將系統(tǒng)性地介紹GNU/Linux的開源工具,并通過可以被讀者容易修改的簡明示例說明如何使用這些工具,以滿足讀者的實(shí)際需求?!禠inux開發(fā)工具箱:項(xiàng)目開發(fā)的最有效途徑》首先介紹如何下載、構(gòu)建和安裝開源項(xiàng)目,如何發(fā)布開源工具,以及如何避免將時(shí)間浪費(fèi)到還未準(zhǔn)備好的項(xiàng)目中,并引導(dǎo)讀者構(gòu)建自己的項(xiàng)目。然后通過示例演示了如何在文本編輯器中進(jìn)行查找操作,展示了幾個常用文本編輯器中會用到的小技巧?!禠inux開發(fā)工具箱:項(xiàng)目開發(fā)的最有效途徑0》接下來對Linux內(nèi)核的基礎(chǔ)知識和操作系統(tǒng)的內(nèi)部原理進(jìn)行了詳細(xì)且通俗易懂的闡述,并示范了如何將這些知識應(yīng)用到更高級的工具中。還重點(diǎn)講解sar、vmstat、valgrind和strace等工具的輸出,以及如何將它們運(yùn)用到應(yīng)用程序中;如何利用各種編程API來開發(fā)適用于自己的工具。最后,作者介紹了可以提高軟件性能的工具;解釋了如今市面上的多芯CPU的內(nèi)在原理,并演示了如何從這些系統(tǒng)中獲取最佳性能;以及介紹了在各種環(huán)境下調(diào)試代碼的工具和技術(shù)。對于程序員來說,如果希望自己開發(fā)出來的程序更為簡潔有效,如果想對Linux編程環(huán)境有更深刻的理解,那么,《Linux開發(fā)工具箱:項(xiàng)目開發(fā)的最有效途徑》提供的資料相信能給您帶來驚喜!

作者簡介

  John Fusco是GE Healthcare的一名軟件開發(fā)人員,專門編寫Linux應(yīng)用程序和設(shè)備驅(qū)動程序。他在Unix軟件行業(yè)有十多年的工作經(jīng)驗(yàn),從內(nèi)核2.0版本就開始開發(fā)Linux應(yīng)用程序。他曾為Embedded Systems Programming和Linux Journal撰寫文章。

圖書目錄

第1章 開源工具的下載和安裝
1.1 簡介
1.2 什么是開放源碼
1.3 開放源碼的意義
1.3.1 搜索工具
1.3.2 版本格式
1.4 存檔文件
1.4.1 識別存檔文件
1.4.2 查詢存檔文件
1.4.3 提取存檔文件
1.5 認(rèn)識軟件包管理器
1.5.1 源代碼或二進(jìn)制格式的選擇
1.5.2 使用軟件包
1.6 關(guān)于安全性和軟件包
1.6.1 驗(yàn)證的必要性
1.6.2 軟件包的基本認(rèn)證
1.6.3 數(shù)字簽名的軟件包驗(yàn)證機(jī)制
1.6.4 RPM格式的GPG簽名
1.6.5 何時(shí)不能驗(yàn)證軟件包
1.7 檢查軟件包目錄
1.7.1 查看軟件包
1.7.2 深入理解RPM軟件包
1.7.3 深入理解Debian軟件包
1.8 軟件包更新
1.8.1 Apt:高級軟件包工具
1.8.2 Yum:Yellowdog修訂版更新
1.8.3 Synaptic:The GUI Front End For Apt
1.8.4 up2date:Red Hat軟件包更新
1.9 小結(jié)
1.9.1 本章用到的工具
1.9.2 網(wǎng)絡(luò)資源
第2章 從源代碼構(gòu)建
2.1 簡介
2.2 構(gòu)建工具
2.2.1 背景知識
2.2.2 make工具
2.2.3 程序的鏈接
2.2.4 深入理解庫
2.3 創(chuàng)建過程
2.3.1 GNU構(gòu)建工具
2.3.2 配置階段
2.3.3 構(gòu)建階段:make
2.3.4 安裝階段:make install
2.4 理解錯誤和警告
2.4.1 常見的Makefile錯誤
2.4.2 配置階段的錯誤
2.4.3 創(chuàng)建階段的錯誤
2.4.4 理解編譯器錯誤
2.4.5 理解編譯器警告信息
2.4.6 理解鏈接器錯誤
2.5 小結(jié)
2.5.1 本章用到的工具
2.5.2 網(wǎng)絡(luò)資源
第3章 查找?guī)椭?br /> 3.1 簡介
3.2 在線幫助工具
3.2.1 man頁面
3.2.2 man結(jié)構(gòu)
3.2.3 查找man頁面:apropos
3.2.4 查找正確的man頁面:whatis
3.2.5 在man頁面中查找
3.2.6 一些推薦的man頁面
3.2.7 GNUinfo
3.2.8 瀏覽info頁面
3.2.9 查找info頁面
3.2.10 推薦info頁面
3.2.11 桌面幫助工具
3.3 其他
3.3.1 /usr/share/doc
3.3.2 交叉引用和索引
3.3.3 查詢軟件包
3.4 文件格式
3.4.1 TeX/LaTtex/DVI
3.4.2 Texinfo
3.4.3 DoCbook
3.4.4 HTML
3.4.5 PostScript
3.4.6 便攜式文件格式(PDF)
3.4.7 troff
3.5 來自互聯(lián)網(wǎng)的信息
3.5.1 www.gnu.org
3.5.2 sourceforge.net
3.5.3 Linux文件項(xiàng)目
3.5.4 LIsenet(世界性的新聞組網(wǎng)絡(luò)系統(tǒng))
3.5.5 郵件列表
3.5.6 其他論壇
3.6 查找Linux內(nèi)核信息
3.6.1 內(nèi)核構(gòu)建
3.6.2 內(nèi)核模塊
3.6.3 混雜(miscellaneous)文件
3.7 小結(jié)
3.7.1 本章用到的工具
3.7.2 在線資源
第4章 編輯和保存源文件
4.1 簡介
4.2 文本編輯器
4.2.1 默認(rèn)編輯器
4.2.2 在文本編輯器中查找
4.2.3 vi和Emacs
4.2.4 Vim:vi擴(kuò)展
4.2.5 Emacs
4.2.6 反對復(fù)制品
4.2.7 GUI文本編輯器
4.2.8 內(nèi)存使用率
4.2.9 編輯器概述
4.3 版本控制
4.3.1 版本控制基礎(chǔ)
4.3.2 定義版本控制的術(shù)語
4.3.3 支持工具
4.3.4 diff和patch簡介
4.3.5 檢查和合并更改
4.4 源代碼的優(yōu)化器和瀏覽器
4.4.1 縮進(jìn)代碼優(yōu)化器
4.4.2 Astyle風(fēng)格
4.4.3 用cflow分析代碼
4.4.4 用ctags分析代碼
4.4.5 用cscope瀏覽代碼
4.4.6 用Doxygen瀏覽和記錄代碼
4.4.7 使用編譯器分析代碼
4.5 小結(jié)
4.5.1 本章用到的工具
4.5.2 參考資料
4.5.3 在線資源
第5章 開發(fā)者必備內(nèi)核知識
5.1 簡介
5.2 用戶模式與內(nèi)核模式
5.2.1 系統(tǒng)調(diào)用
5.2.2 用戶空間與內(nèi)核空間的數(shù)據(jù)傳送
5.3 進(jìn)程調(diào)度程序
5.3.1 初識調(diào)度
5.3.2 阻塞,搶先占有和放棄
5.3.3 調(diào)度的優(yōu)先與公平
5.3.4 優(yōu)先權(quán)和Nice值
5.3.5 實(shí)時(shí)優(yōu)先權(quán)
5.3.6 創(chuàng)建實(shí)時(shí)進(jìn)程
5.3.7 進(jìn)程狀態(tài)
5.3.8 時(shí)間度量
5.4 設(shè)備和設(shè)備驅(qū)動程序
5.4.1 設(shè)備驅(qū)動程序的類型
5.4.2 內(nèi)核模塊
5.4.3 設(shè)備節(jié)點(diǎn)
5.4.4 設(shè)備和輸入/輸出
5.5 I/O調(diào)度程序
5.5.1 Ljlnus電梯式調(diào)度(aka noop)
5.5.2 I/O調(diào)度程序的截止時(shí)間
5.5.3 先占I/O調(diào)度程序
5.5.4 完整的公平地排隊(duì)I/O調(diào)度程序
5.5.5 選擇一個I/O調(diào)度程序
5.6 用戶空間的內(nèi)存管理
5.6.1 虛擬內(nèi)存的解釋
5.6.2 內(nèi)存耗盡
5.7 小結(jié)
5.7.1 本章用到的工具
5.7,2 本章討論的APIs
5.7.3 在線資源
5.7.4 參考資料
第6章 進(jìn)程
6.1 簡介
6.2 進(jìn)程的產(chǎn)生
6.2.l fork和vfork
6.2.2 寫拷貝
6.2.3 clone
6.3 exec函數(shù)
6.3.1 可執(zhí)行腳本
6.3.2 可執(zhí)行目標(biāo)文件
6.3.3 二進(jìn)制文件
6.4 wait實(shí)現(xiàn)進(jìn)程同步
6.5 進(jìn)程的內(nèi)存占用
6.5.1 文件描述符
6.5.2 堆棧
6.5.3 常駐內(nèi)存和固定內(nèi)存
6.6 設(shè)定進(jìn)程限制
6.7 進(jìn)程和Drocfs
6.8 進(jìn)程管理工具
6.8.1 通過ps命令顯示進(jìn)程信息
6.8.2 使用formats增加進(jìn)程信息
6.8.3 查找名中帶有ps和pgrep的進(jìn)程
6.8.4 利用pmap查看進(jìn)程使用的空間
6.8.5 通過名字發(fā)送信號給進(jìn)程
6.9 小結(jié)
6.9.1 系統(tǒng)調(diào)用和本章用到的API
6.9.2 本章用到的工具
6.9.3 在線資源
第7章 進(jìn)程通信
7.1 簡介
7.2 使用純文本文件的IPC
7.2.1 文件加鎖
7.2.2 使用文件進(jìn)行IPC的缺點(diǎn)
7.3 共享內(nèi)存
7.3.1 POSIX共享內(nèi)存API
7.3.2 SystemV共享內(nèi)存API
7.4 信號
7.4.1 向進(jìn)程發(fā)送信號
7.4.2 信號處理
7.4.3 信號掩碼和信號處理
7.4.4 實(shí)時(shí)信號
7.4.5 具有sigqueue和sigaction的高級信號
7.5 管道
7.6 套接字
7.6.1 創(chuàng)建套接字
7.6.2 使用socketpair的本地套接字示例
7.6.3 使用本地套接字的客戶端/服務(wù)器端示例
7.6.4 使用網(wǎng)絡(luò)套接字的客戶端/服務(wù)器端示例
7.7 消息隊(duì)列
7.7.1 System V消息隊(duì)列
7.7.2 POSIX消息隊(duì)列
7.7.3 POSIX與System V的消息隊(duì)列的區(qū)別
7.8 信號量
7.8.1 POSIX信號量使用的API
7.8.2 System V信號量使用的API
7.9 小結(jié)
7.9.1 本章中用到的系統(tǒng)調(diào)用和API
7.9.2 參考資料
7.9.3 在線資源
第8章 使用sheLL命令調(diào)試IPC
8.1 簡介
8.2 打開文件時(shí)用到的工具
8.2.1 lsof
8.2.2 fuser
8.2.3 ls
8.2.4 file
8.2.5 stat
8.3 查看文件中的數(shù)據(jù)
8.3.1 字符串命令
8.3.2 xxd命令
8.3.3 hexdump命令
8.3.4 od命令
8.4 用于V IPC系統(tǒng)的內(nèi)核工具
8.4.1 V系統(tǒng)共享內(nèi)存
8.4.2 V系統(tǒng)消息隊(duì)列
8.4.3 V系統(tǒng)的信號量
8.5 POSIX IPC用到的工具
8.5.1 POSIX共享內(nèi)存
8.5.2 POS[X消息隊(duì)列
8.5.3 POSIX信號量
8.6 信號用到的工具
8.7 管道和套接字用到的工具
8.7.1 管道和FIFO
8.7.2 套接字
8.8 使用索引識別文件和IPC對象
8.9 小結(jié)
8.9.1 本章用到的工具
8.9.2 在線資源
第9章 性能優(yōu)化
9.1 簡介
9.2 系統(tǒng)性能
9.2.1 內(nèi)存問題
9.2.2 CPU利用率和總線沖突
9.2.3 設(shè)備和中斷
9.2.4 查找系統(tǒng)性能問題的工具
9.3 應(yīng)用程序性能
9.3.1 計(jì)時(shí)命令的第一步
9.3.2 x86info處理器結(jié)構(gòu)
9.3.3 使用Valgrind檢查指令效率
9.3.4 ltrace簡介
9.3.5 使用strace監(jiān)視程序性能
9.3.6 傳統(tǒng)性能優(yōu)化工具:gcov和gprof
9.3.7 OProfile簡介
9.4 多處理器平臺
9.4.1 SMP硬件的類型
9.4.2 SMP機(jī)上的編程實(shí)現(xiàn)
9.5 小結(jié)
9.5.1 本章介紹的基本性能
9.5.2 本章介紹的專業(yè)術(shù)語
9.5.3 本章用到的工具
9.5.4 在線資源
9.5.5 參考資料
第10章 調(diào)試
10.1 簡介
10.2 最基本的調(diào)試工具:Drintf
10.2.1 使用pdntf存在的問題
10.2.2 有效地使用printf
10.2.3 關(guān)于printf調(diào)試工具的結(jié)束語
10.3 GNU下最好用的調(diào)試器:gdb
10.3.1 使用gdb運(yùn)行代碼
10.3.2 停止和重新執(zhí)行
10.3.3 檢查和管理數(shù)據(jù)
10.3.4 使用gdb連接正在運(yùn)行的進(jìn)程
10.3.5 調(diào)試內(nèi)核文件
10.3.6 使用gdb進(jìn)行多線程調(diào)試
10.3.7 調(diào)試優(yōu)化的代碼
10.4 調(diào)試共享對象
10.4.1 使用共享對象的時(shí)間和原因
10.4.2 創(chuàng)建共享對象
10.4.3 定位共享對象
10.4.4 覆蓋默認(rèn)共享目標(biāo)的位置
10.4.5 共享對象的安全問題
10.4.6 共享對象使用的工具
10.5 查找內(nèi)存問題
10.5.1 兩次釋放
10.5.2 內(nèi)存泄露
10.5.3 緩沖區(qū)溢出
10.5.4 glibc工具
10.5.5 使用valgrind調(diào)試內(nèi)存
10.5.6 使用E1ectric Fence檢測內(nèi)存泄漏
10.6 非常規(guī)技術(shù)
10.6.1 創(chuàng)建自己的黑匣子
10.6.2 獲取運(yùn)行時(shí)的堆棧軌跡
10.6.3 強(qiáng)制內(nèi)核轉(zhuǎn)儲
10.6.4 使用信號
10.6.5 使用procfs調(diào)試
10.7 小結(jié)
10.7.1 本章用到的工具
10.7.2 在線資源
10.7.3 參考資料

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) hotzeplotz.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號