注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡操作系統(tǒng)LinuxLinux高級編程

Linux高級編程

Linux高級編程

定 價:¥89.00

作 者: (英)Neil Matthew等著;葉小虎,龍浩等譯
出版社: 機械工業(yè)出版社
叢編項: Wrox程序員參考系列
標 簽: Linux

ISBN: 9787111094036 出版時間: 2002-01-01 包裝: 簡裝本
開本: 24cm 頁數(shù): 878 字數(shù):  

內容簡介

  隨著Linux平臺的廣泛使用,與之相關專業(yè)的應用開發(fā)變得越來越重要。本書以一個DVD出租商店為例,貫穿全文講解了Linux 的數(shù)據(jù)存儲、GUI實現(xiàn)、PHP模型、使用Python、使用RPC和CORBA、文件編制、國際化及無盤的Linux和Beowulf群等技術,是Linux編程不可多得的參考書。本書適合Linux程序員及操作系統(tǒng)開發(fā)者使用。

作者簡介

  Neil MatthewNeil從1974開始就從事各種計算機編程工作,但他并不老。出于對編程語言和使用編程語言來解決不同問題的方法的熱愛,他已經編寫了他的經歷同競爭者、翻譯者共享,包括Basic、BCPL、FP、Lisp、Prolog以及BBC微處理機核心中的6502微處理器便件。他畢業(yè)于英格蘭University of Nottingham,獲得數(shù)學學士學位,但他被計算機深深吸引。從1978年開始,他就開始使用UNIX,包括大多數(shù)學術的商用的產品,有些現(xiàn)在已經不用了。特別是PDP11/34和71/70上的UNIX版本6和版本7、PDP 11/23Inte1286和386上的Xenix,DECVAX11/750上的BSD4.2 Micro VAX和Intel1386上的UNIX System V sparc上的Sun SunOs4以及Sparc和Intel上的Sparis。現(xiàn)在他正收集Linux分布到他的6臺PC家庭網絡中。Neil認為Linux是一個很偉大的開發(fā)環(huán)境,因為它提供了傳統(tǒng)UNIX系統(tǒng)所有靈活性和功能。為UNIX編寫的程序只要稍做改動就可移植到Linux上。20世紀80年代作為Camtec Electronics的軟件和原理工程師,Neil用C和C++為實時嵌入式系統(tǒng)編程。Linux在他所從事的工作中越來越重要。等等

圖書目錄

作者簡介
前言
第1章 應用程序設計 
1.1 概述 
1.2 需求捕獲 
1.3 開發(fā)模型 
1.3.1 “快速跟蹤”開發(fā) 
1.3.2 早測試、經常測試 
1.4 DVD存儲店 
1.4.1 初始化需求 
1.4.2 分析用戶需求
1.5 需求聲明 
1.6 應用程序結構 
1.6.1 詳細的設計 
1.6.2 數(shù)據(jù)訪問函數(shù)
1.6.3 成員函數(shù) 
1.6.4 片名函數(shù) 
1.6.5 盤函數(shù) 
1.6.6 租賃函數(shù)
1.6.7 基準執(zhí)行過程 
1.7 參考資料 
1.8 小結
第2章 CVS 
2.1 Linux工具 
2.2 術語 
2.3 資料庫
2.4 單用戶CVS項目 
2.4.1 CVS命令格式 
2.4.2 環(huán)境變量 
2.4.3 引入一個新項目 
2.4.4 開始項目工作 
2.4.5 檢查資料庫中的修改 
2.4.6 將修改更新到資料庫中
2.4.7 釋放項目 
2.4.8 檢查修改 
2.4.9 從項目中添加和刪除文件 
2.4.10 關鍵詞替代 
2.5 修訂、標簽和分支 
2.5.1 修訂版本 
2.5.2 標簽 
2.5.3 分支 
2.6 多用戶CVS 
2.6.1 協(xié)同工作
2.6.2 使用Watch命令 
2.7 使用CVS的更多功能
2.7.1 二進制文件 
2.7.2 修正錯誤的注解 
2.8 通過網絡訪問CVS 
2.9 GUI CVS客戶端 
2.10 參考資料 
2.11 小結 
第3章 數(shù)據(jù)庫 
3.1 選擇數(shù)據(jù)庫 
3.1.1 mSQL 
3.1.2 MySQL
3.1.3 PostgreSQL 
3.1.4 尋找適合自己的數(shù)據(jù)庫 
3.2 PostgreSQL 
3.3 數(shù)據(jù)庫基礎 
3.3.1 第一范式 
3.3.2 第二范式 
3.3.3 第三范式 
3.3.4 降低規(guī)范化
3.3.5 一個簡單的數(shù)據(jù)庫 
3.4 使用psql 
3.4.1 psql的命令 
3.4.2 數(shù)據(jù)定義命令
3.4.3 數(shù)據(jù)操作命令
3.4.4 事務處理 
3.5 數(shù)據(jù)庫設計技巧 
3.6 參考資料 
3.7 小結 
第4章 與PostgreSQL接口 
4.1 從代碼中訪問PostgreSQL 
4.1.1 Libpq 
4.1.2 ECPG 
4.1.3 選擇方法 
4.2 應用 
4.3 小結 
第5章 MySQL 
5.1 安裝和試用 
5.1.1 預編譯軟件包 
5.1.2 用源代碼安裝 
5.1.3 安裝后的配置 
5.2 MySQL 管理 
5.2.1 命令 
5.2.2 創(chuàng)建用戶并提供權限 
5.2.3 口令 
5.2.4 創(chuàng)建數(shù)據(jù)庫 
5.3 在PostgreSQL和MySQL中的SQL支持 
5.4 用C語言訪問MySQL數(shù)據(jù) 
5.4.1 連接例行程序 
5.4.2 處理錯誤 
5.4.3 執(zhí)行SQL語句 
5.4.4 其他的函數(shù) 
5.5 參考資料 
5.6 小結 
第6章 處理故障 
6.1 錯誤類別 
6.2 報告錯誤 
6.3 檢測軟件錯誤 
6.4 軟件錯誤的類型
6.5 調試語句 
6.6 調試位置 
6.7 準備調試 
6.7.1 使用調試程序 
6.7.2 GDB命令示例 
6.7.3 其他GDB功能 
6.8 參考資料 
6.9 小結 
第7章 LDAP目錄服務 
7.1 目錄服務的概念 
7.2 目錄服務器結構 
7.2.1 局部的命名 
7.2.2 dn命名 
7.2.3 對象組件
7.2.4 LDAP目錄樹 
7.2.5 LDIF文件 
7.3 安裝并配置LDAP服務器 
7.3.1 安裝OpenLDAP的步驟 
7.3.2 配置OpenLDAP 
7.4 運行服務器 
7.5 用C訪問LDAP
7. 5.1 初始化LDAP庫 
7.5.2 綁定LDAP服務器
7.5.3 LDAP錯誤處理 
7.5.4 第一個LDAP客戶端程序 
7.5.5 查詢 
7.6 修改數(shù)據(jù)
7.6.1 添加新條目 
7.6.2 修改條目 
7.6.3 刪除條目 
7.7 應用程序 
7.8 參考資料 
7.9 小結 
第8章 利用GNOME/GTK+進行GUI編程 
8.1 GTK+/GNOME庫 
8.2 glib 
8.2.1 類型
8.2.2 宏 
8.2.3 串函數(shù) 
8.2.4 內存分配
8.2.5 列表 
8.3 GTK+ 
8.3.1 窗口小部件 
8.3.2 gtk_init和gtk_main 
8.3.3 GTK+應用程序示例 
8.4 GNOME基礎 
8.4.1 菜單和工具欄 
8.4.2 對話框 
8.4.3 GNOME應用程序示例 
8.5 GNOME源樹 
8.5.1 配置保存
8.5.2 對話管理
8.5.3 利用popt分析命令行 
8.6 GNOME/GTK+參考資料 
8.7 小結 
第9章 使用Glade和GTK+/GNOME構建GUI 
9.1 Glade概述 
9.2 Glade指南 
9.2.1 主窗口 
9.2.2 選項板 
9.2.3 屬性窗口
9.2.4 Glade構建的源樹 
9.2.5 lookup_widget 
9.2.6 添加代碼 
9.2.7 libglade 
9.3 DVD Store GNOME GUI 
9.3.1 設計 
9.3.2 編譯和運行dvdstore 
9.3.3 結構 
9.3.4 代碼 
9.4 小結 
第10章 Flex和Bison 
10.1 輸入結構 
10.1.1 掃描器和句法分析器 
10.1.2 生成器的工作原理 
10.2 掃描器 
10.2.1 一個簡單的掃描器 
10.2.2 掃描器說明 
10.2.3 最長匹配原則
10.2.4 規(guī)則表達式 
10.2.5 操作 
10.2.6 改變掃描器的輸入輸出 
10.2.7 返回標識 
10.2.8 上下文相關掃描器 
10.2.9 flex的選項 
10.3 句法分析器 
10.3.1 生成句法分析器 
10.3.2 創(chuàng)建語法測試程序
10.3.3 標識類型 
10.3.4 規(guī)則操作 
10.3.5 bison選項
10.3.6 語法中的沖突 
10.3.7 數(shù)學表達式 
10.4 參考資料 
10.5 小結 
第11章 測試工具 
11.1 測試需求類型 
11.1.1 應用程序結構
11.1.2 步驟 
11.1.3 普通測試 
11.1.4 回歸測試 
11.1.5 一個測試程序 
11.1.6 測試dvdstore程序 
11.1.7 腳本測試 
11.1.8 expect 
11.1.9 內存問題
11.1.10 安裝mpatrol 
11.1.11 使用mpatrol 
11.1.12 測試覆蓋 
11.1.13 性能測試 
11.2 小結 
第12章 安全程序設計 
12.1 安全程序設計的概念 
12.2 為什么安全程序設計是困難的 
12.2.1 文件系統(tǒng)安全 
12.2.2 驗證用戶 
12.2.3 安全地使用密碼術 
12.2.4 安全網絡編程 
12.2.5 書寫協(xié)議 
12.2.6 標準網絡密碼工具 
12.2.7 環(huán)境問題 
12.2.8 Python 
12.2.9 PHP 
12.3 參考資料 
12.4 小結 
第13章 使用KDE/Qt進行GUI編程 
13.1 簡介 
13.1.1 關于Qt 
13.1.2 關于KDE
13.1.3 安裝Qt 
13.1.4 安裝KDE
13.1.5 庫 
13.2 使用Qt編寫應用程序 
13.2.1 開始“Hello World” 
13.2.2 使用tmake來簡化Makefile文件的管理 
13.2.3 信號和插槽 
13.2.4 再訪“Hello World” 
13.2.5 從基類中派生 
13.2.6 窗口小部件 
13.2.7 布局 
13.3 使用KDE編寫應用程序 
13.4 參考資料 
13.5 小結 
第14章 用KDE/Qt寫DVD商店圖形用戶界面 
14.1 應用程序設計 
14.1.1 應用程序設計
14.1.2 主窗口 
14.1.3 會員對話框 
14.1.4 租賃對話框 
14.1.5 租賃報告對話框 
14.1.6 搜索窗口 
14.1.7 設置管理器
14.2 代碼的KDE轉換
14.3 KConfig和SettingManager函數(shù) 
14.4 參考資料 
14.5 小結 
第15章 Python 
15.1 簡介 
15.1.1 特征
15.1.2 Python:工作的好幫手 
15.1.3 并非適合于任何工作 
15.2 安裝Python 
15.3 運行Python 
15.3.1 交互式解釋器 
15.3.2 命令參數(shù) 
15.3.3 腳本參數(shù) 
15.3.4 可執(zhí)行的“Standalone” 
15.4 詳解 
15.4.1 解釋器和字節(jié)編譯 
15.4.2 注解語法 
15.4.3 區(qū)分大小寫
15.4.4 內建數(shù)據(jù)類型和運算符 
15.4.5 變量 
15.4.6 塊結構的語法 
15.4.7 語句的語法 
15.4.8 函數(shù) 
15.4.9 內部函數(shù) 
15.4.10 名稱空間
15.4.11 模塊和包
15.4.12 標準產品中的一些模塊 
15.4.13 類和對象 
15.4.14 擴展的Python 
15.5 一個例程:精打細算 
15.6 在線參考資料 
15.7 小結 
第16章 使用PHP創(chuàng)建Web界面 
16.1 PHP和服務器端的腳本 
16.1.1 服務器端的腳本 
16.1.2 PHP的功能 
16.2 安裝和配置PHP 
16.3 PHP語法簡介 
16.3.1 變量、常數(shù)和數(shù)據(jù)類型 
16.3.2 PHP的運算符 
16.3.3 語句 
16.3.4 函數(shù) 
16.3.5 數(shù)組 
16.4 在DVD程序中使用PHP 
16.5 應用程序 
16.5.1 登錄 
16.5.2 預訂狀態(tài) 
16.5.3 查找片名 
16.5.4 預訂片名 
16.5.5 刪除 
16.5.6 dvdstorefunctions.php 
16.5.7 dvdstorecommon.php 
16.5.8 dvdstorelogin.php 
16.5.9 dvdstoresearch.php
16.5.10 dvdstorestatus.php 
16.5.11 dvdstorecancel.php 
16.5.12 dvdstorereserve.php
16.6 參考資料 
16.7 小結 
第17章 使用C/C++嵌入和擴展Python 
17.1 在C/C++中開發(fā)擴展模塊 
17.1.1 所需軟件工具 
17.1.2 使用SWIG擴展Python 
17.2 使用C API擴展Python 
17.2.1 Python對象類型 
17.2.2 引用記數(shù)和所有權
17.2.3 開發(fā)C擴展模塊的概念 
17.2.4 簡單函數(shù) 
17.2.5 一個略微復雜的函數(shù) 
17.2.6 全局解釋器鎖定 
17.2.7 創(chuàng)建新的Python對象類型 
17.2.8 使用C API封裝C++對象 
17.3 在C/C++中嵌入Python 
17.3.1 嵌入開發(fā)環(huán)境 
17.3.2 使用高級函數(shù)嵌入Python 
17.3.3 將主程序靜態(tài)鏈接到擴展模塊上 
17.3.4 使用低級調用嵌入Python 
17.4 一般性建議 
17.5 參考資料 
17.6 小結 
第18章 遠程過程調用 
18.1 概述 
18.2 一個簡單的網絡DVD商店數(shù)據(jù)庫 
18.2.1 BSD 套接字 
18.2.2 使用BSD套接字接口的編程主題 
18.2.3 ONC RPC 結構和概念 
18.3 在DVD商店應用程序中使用RPC的原因 
18.4 RPC工具和實用程序 
18.5 將RPC應用到DVD商店
18.5.1 沒有參數(shù)或返回值的函數(shù) 
18.5.2 帶簡單參數(shù)和簡單返回類型的函數(shù) 
18.5.3 更復雜的示例 
18.5.4 返回數(shù)組 
18.5.5 客戶端超時
18.6 認證 
18.6.1 AUTH_NONE 
18.6.2 AUTH_UNIX 
18.6.3 客戶端認證支持 
18.6.4 服務器端認證支持
18.7 用/etc/inetd.conf來使用RPC服務器 
18.8 簡化網絡編程的其他方法 
18.9 參考資料 
18.10 小結 
第19章 多媒體與Linux 
19.1 現(xiàn)狀 
19.2 程序集成 
19.3 聲音 
19.3.1 設備
19.3.2 處理標準的音頻格式 
19.3.3 自己編程 
19.4 動畫 
19.4.1 軟件播放器 
19.4.2 硬件播放器 
19.4.3 混合 
19.5 政治和法律問題 
19.6 參考資料 
19.7 小結 
第20章 CORBA 
20.1 接口定義語言 
20.2 對象請求代理 
20.3 交互操作式對象引用 
20.4 對象適配器 
20.5 服務器 
20.6 命名和交易服務 
20.7 評價CORBA 
20.8 CORBA與RPC
20.9 CORBA和套接字 
20.10 與CORBA類似的系統(tǒng) 
20.10.1 DCOM或COM+ 
20.10.2 Java遠程方法調用 
20.10.3 企業(yè)JavaBeans 
20.10.4 IBM MQSeries 
20.10.5 SOAP 
20.11 IDL:定義接口 
20.11.1 模塊 
20.11.2 接口 
20.11.3 基本數(shù)據(jù)類型 
20.11.4 模板類型 
20.11.5 DVD應用程序示例 
20.12 語言映射 
20.12.1 語言映射組件 
20.12.2 C映射 
20.13 介紹性示例:簡單消息系統(tǒng) 
20.13.1 簡單消息傳遞 
20.13.2 在IDL中使用ORBit 
20.13.3 消息客戶 
20.13.4 消息服務器
20.13.5 編輯ORBit應用程序 
20.13.6 運行消息應用程序 
20.14 參考資料 
20.15 小結 
第21章 用ORBit實現(xiàn)CORBA 
21.1 為DVD商店應用程序使用CORBA 
21.1.1 DVD客戶 
21.1.2 DVD服務器 
21.1.3 日志服務器
21.1.4 驗證服務器
21.1.5 客戶代碼 
21.1.6 記錄服務器
21.1.7 DVD服務器 
21.1.8 集中在一起
21.2 使用libgnorba 
21.3 為多主機使用配置ORBit 
21.4 GOAD—GNOME對象活動目錄 
21.5 CORBA在GNOME上的使用 
21.6 高級CORBA功能 
21.6.1 動態(tài)接口調用
21.6.2 CORBAServices 
21.6.3 CORBAFacilities 
21.6.4 設計和運行可擴展的CORBA服務 
21.7 參考資料 
21.8 小結 
第22章 無盤系統(tǒng) 
22.1 歷史回顧 
22.2 沒有磁盤 
22.3 為什么要建立無盤系統(tǒng) 
22.4 它的工作原理 
22.4.1 啟動無盤系統(tǒng)
22.4.2 無盤系統(tǒng)的網絡標識 
22.4.3 運行操作系統(tǒng) 
22.5 服務器配置 
22.6 創(chuàng)建引導鏡像
22.7 無盤Linux內核
22.8 引導文件系統(tǒng) 
22.9 問題 
22.10 客戶應用程序 
22.11 小結 
第23章 XML和libxml 
23.1 XML文檔結構 
23.1.1 XML語法 
23.1.2 結構完善的XML 
23.1.3 有效的XML 
23.2 XML句法分析 
23.2.1 DOM 
23.2.2 SAX 
23.2.3 LibXML a.k.a. gnome-xml 
23.2.4 完整的解析器 
23.3 參考資料 
23.4 小結 
第24章 Beowulf群 
24.1 硬件設置 
24.2 軟件配置 
24.3 Beowulf群件編程 
24.4 使用MPI編程 
24.4.1 MPI程序的基本功能 
24.4.2 編譯并執(zhí)行一個簡單的MPI程序 
24.4.3 分布式的MP3編碼器 
24.4.4 Beowulf群的通信性能
24.4.5 MPI的高級特性 
24.4.6 一些MPI編程的例子 
24.5 用PVM編程 
24.5.1 與MPI的比較 
24.5.2 獲取并安裝PVM 
24.5.3 PVM庫例程 
24.5.4 一個PVM例子程序 
24.6 參考資料 
24.7 小結 
第25章 文件編制 
25.1 讀者對象 
25.2 終端用戶文件編制:GUI 
25.2.1 在本地機上運行文件GUI 
25.2.2 文件Web GUI 
25.3 高級用戶/系統(tǒng)管理員文件編制 
25.3.1 命令行選擇:提供--help 
25.3.2 手冊頁 
25.3.3 保持事件在管理范圍內 
25.3.4 字體 
25.3.5 段落 
25.3.6 表 
25.3.7 為API編寫手冊頁 
25.3.8 下一代manpage—info文件 
25.4 從單個程序到分布系統(tǒng)的結構
25.5 文件編制工具 
25.5.1 仍然很強大的舊的TeX和LaTeX 
25.5.2 一個新的種類:HTML、XML和DocBook 
25.5.3 HOWTO和FAQ文件 
25.6 開發(fā)者文件編制 
25.6.1 Perl的POD方法
25.6.2 文獻程序編程 
25.6.3 次要的文獻程序編程 
25.6.4 文件交換 
25.6.5 PDF文件 
25.7 小結 
第26章 設備驅動程序 
26.1 執(zhí)行環(huán)境 
26.2 模塊和初始化代碼 
26.3 鏈接段 
26.4 PCI設備和驅動程序 
26.4.1 結構體pci_dev 
26.4.2 查找PCI設備 
26.4.3 PCI驅動程序 
26.4.4 PCI訪問函數(shù) 
26.4.5 資源分配 
26.4.6 中斷處理器
26.4.7 訪問用戶空間存儲器 
26.4.8 kiobuf體系結構 
26.4.9 鎖定原語 
26.4.10 調度和等待隊列 
26.4.11 模塊使用數(shù) 
26.4.12 構建 
26.5 怎樣處理新驅動程序 
26.6 小結 
第27章 應用程序的發(fā)布 
27.1 RPM軟件包 
27.1.1 RPM用戶 
27.1.2 我們已經安裝了什么 
27.1.3 RPM數(shù)據(jù)庫 
27.1.4 對一個RPM包的分析 
27.1.5 源代碼包 
27.2 Configure、autoconf和automake文件 
27.3 建立一個RPM包 
27.4 補丁 
27.4.1 制作補丁 
27.4.2 補丁的應用
27.5 GNATS 
27.6 小結 
第28章 國際化 
28.1 I18N術語 
28.2 Unicode是解決方案嗎 
28.3 字符編碼問題 
28.3.1 ISO 2022:編碼字符集的擴展技術 
28.3.2 使用Unicode編程 
28.4 I18N 模型和系統(tǒng)環(huán)境
28.4.1 POSIX本地模型 
28.4.2 X/Open 兼容向導
28.5 輸出格式和輸入處理
28.6 I18N編程的實際考慮
28.6.1 I18N和內部文本處理 
28.6.2 用locale變量編程 
28.6.3 I18N和Xlib編程 
28.6.4 I18N和Linux GUI
28.6.5 I18N和Linux軟件開發(fā)的現(xiàn)狀 
28.7 在實際軟件開發(fā)工程中的I18N 
28.7.1 面向對象編程和I18N 
28.7.2 應用生成器和I18N 
28.7.3 Linux I18N的下一步
附錄A GTK+和GNOME 對象參考 
附錄B DVD商店RPC協(xié)議定義 
附錄C 開放源代碼許可 
附錄D 支持、勘誤及P2P.Wrox.Com

本目錄推薦

掃描二維碼
Copyright ? 讀書網 ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號