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

Linux程序設(shè)計

Linux程序設(shè)計

定 價:¥78.00

作 者: (英)Neil Matthew,(英)Richard Stones著;楊曉云等譯
出版社: 機(jī)械工業(yè)出版社
叢編項: Wrox程序員參考系列
標(biāo) 簽: Linux

ISBN: 9787111093220 出版時間: 2002-01-01 包裝: 膠版紙
開本: 24cm 頁數(shù): 782頁 字?jǐn)?shù):  

內(nèi)容簡介

  本書介紹了Linux操作系統(tǒng)的基本知識,以及如何在Linux和其他UNIX風(fēng)格的操作系統(tǒng)上進(jìn)行程序開發(fā)。本書的主要內(nèi)容包括:Linux的入門知識,使用Shell進(jìn)行程序設(shè)計,Linux的管理及開發(fā)工具,Perl程序設(shè)計語言,Web程序設(shè)計等等。本書內(nèi)容豐富、深入淺出、易于理解,還包含大量編程實例。適合Linux的初學(xué)者及希望利用Linux進(jìn)行開發(fā)的程序設(shè)計人員閱讀。

作者簡介

暫缺《Linux程序設(shè)計》作者簡介

圖書目錄

序言
前言
第1章 入門知識 
1.1 什么是UNIX操作系統(tǒng) 
1.2 什么是Linux操作系統(tǒng)
1.3 發(fā)行版本 
1.4 GNU項目和自由軟件基金會 
1.5 為Linux系統(tǒng)設(shè)計程序 
1.6 UNIX程序 
1.7 獲得幫助 
1.8 程序開發(fā)系統(tǒng)的預(yù)備知識 
1.8.1 程序 
1.8.2 頭文件
1.8.3 庫文件
1.8.4 靜態(tài)庫
1.8.5 共享庫
1.9 UNIX系統(tǒng)中程序設(shè)計的特點和原則 
1.9.1 簡單性 
1.9.2 重點性 
1.9.3 可反復(fù)使用的程序組件 
1.9.4 過濾器 
1.9.5 開放的文件格式 
1.9.6 靈活適應(yīng)性 
1.10 本章總結(jié) 
第2章 shell程序設(shè)計 
2.1 什么是shell 
2.2 管道和重定向
2.2.1 對輸出數(shù)據(jù)進(jìn)行重定向 
2.2.2 對輸入數(shù)據(jù)進(jìn)行重定向 
2.2.3 管道 
2.3 可以被視為程序設(shè)計語言的shell 
2.3.1 交互式程序 
2.3.2 編寫腳本程序
2.3.3 把腳本設(shè)置為可執(zhí)行程序 
2.4 shell程序設(shè)計的語法 
2.4.1 變量 
2.4.2 條件測試 
2.4.3 控制結(jié)構(gòu) 
2.4.4 函數(shù) 
2.4.5 命令 
2.4.6 命令的執(zhí)行 
2.4.7 即時文檔 
2.4.8 調(diào)試腳本程序 
2.5 shell程序設(shè)計示例 
2.5.1 工作需求 
2.5.2 設(shè)計 
2.6 本章總結(jié)
第3章 如何使用和處理文件 
3.1 UNIX的文件結(jié)構(gòu) 
3.1.1 目錄結(jié)構(gòu) 
3.1.2 文件和設(shè)備
3.2 系統(tǒng)調(diào)用和設(shè)備驅(qū)動程序 
3.3 庫函數(shù) 
3.4 文件的底層訪問 
3.4.1 write系統(tǒng)調(diào)用
3.4.2 read系統(tǒng)調(diào)用 
3.4.3 open系統(tǒng)調(diào)用 
3.4.4 訪問權(quán)限的初始化值 
3.4.5 umask變量 
3.4.6 close系統(tǒng)調(diào)用 
3.4.7 ioctl系統(tǒng)調(diào)用 
3.4.8 其他與文件管理有關(guān)的系統(tǒng)調(diào)用 
3.5 標(biāo)準(zhǔn)I/O庫 
3.5.1 fopen函數(shù) 
3.5.2 fread函數(shù) 
3.5.3 fwrite函數(shù)
3.5.4 fclose函數(shù)
3.5.5 fflush函數(shù)
3.5.6 fseek函數(shù) 
3.5.7 fgetc、getc、getchar函數(shù) 
3.5.8 fputc、putc、putchat函數(shù) 
3.5.9 fgets、gets函數(shù) 
3.5.10 格式化輸入和輸出
3.5.11 對數(shù)據(jù)流進(jìn)行處理的其他函數(shù) 
3.5.12 文件流錯誤處理 
3.5.13 文件流和文件描述符的關(guān)系 
3.6 文件和子目錄的維護(hù) 
3.6.1 chmod系統(tǒng)調(diào)用 
3.6.2 chown系統(tǒng)調(diào)用 
3.6.3 unlink、link、symlink系統(tǒng)調(diào)用 
3.6.4 mkdir和rmdir系統(tǒng)調(diào)用 
3.6.5 chdir系統(tǒng)調(diào)用和getcwd函數(shù) 
3.7 掃描子目錄 
3.7.1 opendir函數(shù) 
3.7.2 readdir函數(shù) 
3.7.3 telldir函數(shù) 
3.7.4 seekdir函數(shù) 
3.7.5 closedir函數(shù)
3.8 錯誤處理 
3.9 高級論題 
3.9.1 fcntl系統(tǒng)調(diào)用 
3.9.2 mmap函數(shù) 
3.10 本章總結(jié) 
第4章 UNIX環(huán)境
4.1 程序參數(shù) 
4.2 環(huán)境變量 
4.2.1 環(huán)境變量的用途 
4.2.2 environ變量 
4.3 時間與日期 
4.4 臨時文件 
4.5 用戶的個人資料 
4.6 主機(jī)資料 
4.7 日志記錄功能 
4.8 資源和限制 
4.9 本章總結(jié) 
第5章 終端 
5.1 對終端進(jìn)行讀寫 
5.1.1 對重定向輸出進(jìn)行處理 
5.1.2 與終端進(jìn)行“對話” 
5.2 終端驅(qū)動程序和通用終端接口 
5.2.1 概述 
5.2.2 硬件模型 
5.3 termios結(jié)構(gòu)
5.3.1 輸入模式 
5.3.2 輸出模式 
5.3.3 控制模式 
5.3.4 本地模式 
5.3.5 特殊的控制字符 
5.3.6 終端的速度 
5.3.7 其他功能函數(shù)
5.4 終端的輸出 
5.4.1 終端的類型
5.4.2 確定終端類型的方法 
5.4.3 terminfo的使用方法
5.5 檢測鍵盤輸入 
5.6 本章總結(jié) 
第6章 curses函數(shù)庫 
6.1 使用curses函數(shù)庫進(jìn)行編譯 
6.2 基本概念 
6.3 操作的初始化和結(jié)束 
6.4 向屏幕輸出數(shù)據(jù) 
6.5 從屏幕讀取輸入數(shù)據(jù) 
6.6 清除屏幕 
6.7 移動光標(biāo) 
6.8 字符的屬性
6.9 鍵盤 
6.9.1 鍵盤的工作模式 
6.9.2 鍵盤輸入 
6.10 窗口 
6.10.1 WINDOW結(jié)構(gòu) 
6.10.2 通用化函數(shù) 
6.10.3 移動和刷新窗口 
6.10.4 優(yōu)化窗口的刷新操作 
6.11 子窗口 
6.12 鍵盤上的數(shù)字小鍵盤 
6.13 彩色顯示功能 
6.14 邏輯屏幕和顯示平面 
6.15 CD唱盤管理軟件 
6.16 本章總結(jié) 
第7章 數(shù)據(jù)管理 
7.1 內(nèi)存管理 
7.1.1 簡單的內(nèi)存分配機(jī)制 
7.1.2 分配大量的內(nèi)存 
7.1.3 內(nèi)存的濫用 
7.1.4 空指針 
7.1.5 內(nèi)存的釋放 
7.1.6 其他內(nèi)存分配函數(shù) 
7.2 文件封鎖 
7.2.1 創(chuàng)建鎖文件 
7.2.2 文件中的封鎖區(qū) 
7.2.3 封鎖狀態(tài)下的讀寫操作 
7.2.4 文件封鎖的競爭現(xiàn)象 
7.2.5 其他封鎖命令 
7.2.6 死鎖現(xiàn)象 
7.3 數(shù)據(jù)庫 
7.3.1 dbm數(shù)據(jù)庫 
7.3.2 dbm例程 
7.3.3 dbm數(shù)據(jù)庫的訪問函數(shù) 
7.3.4 其他dbm函數(shù) 
7.4 CD唱盤管理軟件
7.5 本章總結(jié) 
第8章 開發(fā)工具 
8.1 多個源文件帶來的問題 
8.2 make命令和制作文件 
8.2.1 制作文件的語法 
8.2.2 make命令的選項和參數(shù) 
8.2.3 制作文件中的注釋 
8.2.4 制作文件中的宏 
8.2.5 多個制作目標(biāo) 
8.2.6 內(nèi)建規(guī)則 
8.2.7 后綴規(guī)則 
8.2.8 用make命令管理函數(shù)庫 
8.2.9 高級論題:制作文件和下級子目錄 
8.2.10 GNU的make和gcc命令 
8.3 源代碼控制系統(tǒng) 
8.3.1 RCS系統(tǒng) 
8.3.2 SCCS系統(tǒng)
8.3.3 CVS系統(tǒng) 
8.4 編寫使用手冊 
8.5 軟件的發(fā)行傳播
8.5.1 patch程序 
8.5.2 軟件發(fā)行方面的其他工具 
8.6 本章總結(jié) 
第9章 調(diào)試與糾錯 
9.1 錯誤的分類 
9.1.1 功能定義錯誤 
9.1.2 設(shè)計規(guī)劃錯誤 
9.1.3 代碼編寫錯誤 
9.2 常用調(diào)試技巧 
9.2.1 一個有漏洞的程序 
9.2.2 代碼審查 
9.2.3 取樣法 
9.2.4 程序的受控執(zhí)行 
9.3 用gdb進(jìn)行調(diào)試糾錯
9.3.1 啟動gdb 
9.3.2 運行一個程序 
9.3.3 堆棧跟蹤 
9.3.4 對變量進(jìn)行檢查 
9.3.5 列出程序清單 
9.3.6 設(shè)置斷點 
9.3.7 用調(diào)試器打補(bǔ)丁 
9.3.8 深入學(xué)習(xí)gdb 
9.4 其他調(diào)試工具 
9.4.1 lint:清理程序中的“垃圾” 
9.4.2 函數(shù)調(diào)用工具 
9.4.3 執(zhí)行記錄 
9.5 假設(shè)驗證 
9.6 內(nèi)存調(diào)試 
9.6.1 ElectricFence 
9.6.2 Checker 
9.7 資源 
9.8 本章總結(jié) 
第10章 進(jìn)程與信號 
10.1 什么是進(jìn)程 
10.2 進(jìn)程的結(jié)構(gòu) 
10.2.1 進(jìn)程表 
10.2.2 查看進(jìn)程
10.2.3 系統(tǒng)進(jìn)程
10.2.4 進(jìn)程的調(diào)度 
10.3 啟動新的進(jìn)程 
10.3.1 等待進(jìn)程 
10.3.2 僵進(jìn)程 
10.3.3 輸入和輸出重定向 
10.3.4 線程 
10.4 信號 
10.4.1 發(fā)送信號 
10.4.2 信號集 
10.5 本章總結(jié) 
第11章 POSIX線程 
11.1 什么是線程 
11.2 檢查有無線程支持 
11.3 第一個線程程序 
11.4 同時執(zhí)行 
11.5 同步 
11.5.1 用信號量進(jìn)行同步 
11.5.2 用互斥量進(jìn)行同步 
11.6 線程的屬性 
11.6.1 detachedstate屬性 
11.6.2 schedpolicy屬性 
11.6.3 schedparam屬性 
11.6.4 inheritsched屬性
11.6.5 scope屬性 
11.6.6 stacksize屬性 
11.6.7 線程屬性—調(diào)度
11.7 取消一個線程 
11.8 多線程 
11.9 本章總結(jié)
第12章 進(jìn)程間通信:管道 
12.1 什么是管道 
12.2 進(jìn)程管道 
12.2.1 popen函數(shù) 
12.2.2 pclose函數(shù)
12.2.3 把輸出送往popen 
12.3 pipe函數(shù) 
12.4 父進(jìn)程和子進(jìn)程 
12.4.1 管道關(guān)閉后的讀操作 
12.4.2 把管道用做標(biāo)準(zhǔn)輸入和標(biāo)準(zhǔn)輸出 
12.5 命名管道:FIFO文件 
12.6 高級論題:以FIFO文件為基礎(chǔ)的客戶/服務(wù)器架構(gòu) 
12.7 CD唱盤管理軟件 
12.7.1 目標(biāo) 
12.7.2 實現(xiàn) 
12.7.3 客戶接口函數(shù) 
12.7.4 服務(wù)器接口 
12.7.5 管道 
12.7.6 對CD唱盤管理軟件的總結(jié) 
12.8 本章總結(jié) 
第13章 信號量、消息隊列和共享內(nèi)存 
13.1 信號量 
13.1.1 信號量的定義 
13.1.2 一個理論性的例子 
13.1.3 UNIX中的信號量功能
13.1.4 使用信號量 
13.1.5 信號量總結(jié) 
13.2 共享內(nèi)存 
13.2.1 概述 
13.2.2 共享內(nèi)存函數(shù) 
13.2.3 共享內(nèi)存總結(jié) 
13.3 消息隊列 
13.3.1 概述 
13.3.2 消息隊列函數(shù) 
13.3.3 消息隊列總結(jié) 
13.4 應(yīng)用示例 
13.5 查看IPC功能狀態(tài)的命令 
13.5.1 信號量 
13.5.2 共享內(nèi)存 
13.5.3 消息隊列 
13.6 本章總結(jié) 
第14章 套接字 
14.1 什么是套接字 
14.2 套接字連接 
14.2.1 套接字屬性 
14.2.2 創(chuàng)建一個套接字 
14.2.3 套接字地址 
14.2.4 給套接字起名字 
14.2.5 創(chuàng)建套接字隊列 
14.2.6 接受連接 
14.2.7 請求連接 
14.2.8 關(guān)閉一個套接字 
14.2.9 套接字通信 
14.2.10 主機(jī)字節(jié)順序和網(wǎng)絡(luò)字節(jié)順序 
14.3 網(wǎng)絡(luò)信息 
14.3.1 因特網(wǎng)守護(hù)進(jìn)程 
14.3.2 套接字選項 
14.4 多客戶 
14.5 select系統(tǒng)調(diào)用 
14.6 本章總結(jié) 
第15章 工具命令語言Tcl 
15.1 Tcl語言概述 
15.1.1 第一個Tcl程序 
15.1.2 Tcl命令 
15.1.3 變量和值
15.1.4 引用和替換 
15.1.5 計算 
15.1.6 控制結(jié)構(gòu) 
15.1.7 錯誤處理 
15.1.8 字符串操作
15.1.9 數(shù)組 
15.1.10 列表
15.1.11 過程
15.1.12 輸入和輸出 
15.2 一個Tcl程序 
15.3 創(chuàng)建一個新Tcl語言 
15.4 Tcl語言的擴(kuò)展 
15.4.1 expect 
15.4.2 [incr Tcl] 
15.4.3 TclX 
15.4.4 圖形 
15.5 本章總結(jié)
第16章 X窗口系統(tǒng)的程序設(shè)計 
16.1 什么是X 
16.1.1 X服務(wù)器
16.1.2 X協(xié)議 
16.1.3 Xlib庫
16.1.4 X客戶 
16.1.5 X工具包
16.2 X窗口管理器 
16.3 X程序設(shè)計模型
16.3.1 啟動 
16.3.2 主循環(huán)
16.3.3 退出整理 
16.4 X程序設(shè)計概述 
16.5 Tk工具包 
16.5.1 窗口程序設(shè)計概述 
16.5.2 配置文件 
16.5.3 其他命令 
16.5.4 Tk素材 
16.5.5 Tk內(nèi)建的對話框 
16.5.6 顏色方案 
16.5.7 字體 
16.5.8 綁定 
16.5.9 bindtags命令 
16.5.10 幾何尺寸管理
16.5.11 焦點及其切換
16.5.12 選項數(shù)據(jù)庫 
16.5.13 應(yīng)用程序間的通信 
16.5.14 selection命令
16.5.15 Clipboard命令
16.5.16 窗口管理器 
16.5.17 動態(tài)/靜態(tài)加載 
16.5.18 Safe Tk 
16.6 一個復(fù)合素材
16.7 使用復(fù)合型樹素材的應(yīng)用程序 
16.8 Tk進(jìn)程記錄查看器 
16.8.1 國際化 
16.8.2 業(yè)界動態(tài)
16.9 本章總結(jié) 
第17章 使用GTK+進(jìn)行GNOME程序設(shè)計 
17.1 GNOME簡介 
17.1.1 GNOME的體系結(jié)構(gòu) 
17.1.2 GNOME桌面 
17.1.3 在GNOME里利用GTk+設(shè)計程序 
17.1.4 GNOME應(yīng)用程序 
17.2 本章總結(jié) 
第18章 Perl程序設(shè)計語言 
18.1 Perl語言簡介 
18.1.1 “Hello”Perl程序 
18.1.2 Perl語言中的變量 
18.1.3 操作符和函數(shù) 
18.1.4 規(guī)則表達(dá)式 
18.1.5 控制結(jié)構(gòu)和子例程 
18.1.6 文件的輸入和輸出 
18.2 一個完整的例子 
18.3 命令行上的Perl 
18.4 模塊 
18.4.1 CPAN 
18.4.2 安裝一個模塊 
18.4.3 perldoc命令 
18.4.4 網(wǎng)絡(luò)功能 
18.4.5 數(shù)據(jù)庫 
18.5 改進(jìn)版CD唱盤數(shù)據(jù)庫 
18.6 本章總結(jié) 
第19章 因特網(wǎng)程序設(shè)計:HTML 
19.1 什么是World Wide Web 
19.2 術(shù)語 
19.2.1 超文本傳輸協(xié)議 
19.2.2 因特網(wǎng)郵件多媒體擴(kuò)展 
19.2.3 標(biāo)準(zhǔn)通用置標(biāo)語言 
19.2.4 文檔類型定義 
19.2.5 超文本置標(biāo)語言
19.2.6 可擴(kuò)展置標(biāo)語言
19.2.7 層疊樣式表 
19.2.8 可擴(kuò)展超文本置標(biāo)語言 
19.2.9 統(tǒng)一資源定位器 
19.2.10 統(tǒng)一資源標(biāo)識符
19.3 一個HTML文檔 
19.4 深入學(xué)習(xí)HTML 
19.4.1 HTML標(biāo)簽 
19.4.2 圖像 
19.4.3 表格 
19.4.4 錨點或超鏈接 
19.4.5 給圖像加上錨點
19.4.6 非HTML的URL地址
19.4.7 鏈接到其他站點 
19.5 編寫HTML文件 
19.6 HTML頁面服務(wù) 
19.6.1 網(wǎng)絡(luò)中的HTML文檔 
19.6.2 設(shè)置一個服務(wù)器 
19.7 可點擊圖片 
19.7.1 服務(wù)器端可點擊圖片 
19.7.2 客戶端可點擊圖片 
19.8 服務(wù)器端的預(yù)處理功能
19.9 編寫WWW主頁的技巧 
19.10 本章總結(jié) 
第20章 因特網(wǎng)程序設(shè)計II: CGI 
20.1 表單元素 
20.1.1 FORM標(biāo)簽
20.1.2 INPUT標(biāo)簽
20.1.3 SELECT標(biāo)簽
20.1.4 TEXTAREA標(biāo)簽 
20.2 一個主頁示例 
20.3 向WWW服務(wù)器發(fā)送信息 
20.3.1 對信息進(jìn)行編碼 
20.3.2 服務(wù)器程序 
20.3.3 編寫服務(wù)器端的CGI程序 
20.3.4 使用擴(kuò)展URL的CGI程序 
20.3.5 對表單數(shù)據(jù)進(jìn)行解碼 
20.4 向客戶返回HTML 
20.5 技巧與竅門 
20.5.1 確保CGI程序能夠退出 
20.5.2 對客戶進(jìn)行重定向 
20.5.3 動態(tài)圖形 
20.5.4 隱藏上下文信息 
20.6 一個應(yīng)用程序 
20.7 應(yīng)用Perl語言 
20.8 本章總結(jié) 
第21章 設(shè)備驅(qū)動程序 
21.1 設(shè)備 
21.1.1 設(shè)備的分類 
21.1.2 用戶空間與內(nèi)核空間 
21.2 字符設(shè)備 
21.3 字符設(shè)備驅(qū)動程序示例:Schar 
21.3.1 MSG宏命令 
21.3.2 字符設(shè)備的注冊 
21.3.3 模塊的使用計數(shù) 
21.3.4 open和release:設(shè)備的打開和關(guān)閉 
21.3.5 文件操作read:從設(shè)備讀出數(shù)據(jù) 
21.3.6 current任務(wù) 
21.3.7 等待隊列 
21.3.8 文件操作write:向設(shè)備寫入數(shù)據(jù) 
21.3.9 非阻塞性讀操作 
21.3.10 查找操作 
21.3.11 文件操作ioctl:I/O控制 
21.3.12 檢查用戶權(quán)限 
21.3.13 文件操作poll:設(shè)備對進(jìn)程的調(diào)度 
21.3.14 模塊的參數(shù) 
21.3.15 proc文件系統(tǒng)接口 
21.3.16 Schar的執(zhí)行情況 
21.3.17 小結(jié) 
21.4 定時和時基:jiffies變量 
21.4.1 短暫延時 
21.4.2 定時器 
21.4.3 讓出處理器 
21.4.4 任務(wù)隊列 
21.4.5 預(yù)定義任務(wù)隊列 
21.4.6 小結(jié) 
21.5 內(nèi)存管理
21.5.1 虛擬內(nèi)存區(qū) 
21.5.2 地址空間 
21.5.3 內(nèi)存地址的類型 
21.5.4 在設(shè)備驅(qū)動程序里申請內(nèi)存 
21.5.5 在用戶空間和內(nèi)核空間之間傳遞數(shù)據(jù) 
21.5.6 簡單的內(nèi)存映射 
21.5.7 I/O內(nèi)存 
21.5.8 IOmap里的設(shè)備分配 
21.5.9 對I/O內(nèi)存實現(xiàn)mmap文件操作 
21.6 I/O端口 
21.6.1 可移植性 
21.6.2 中斷處理 
21.6.3 IRQ處理器
21.6.4 中斷的后處理 
21.6.5 可重入性 
21.6.6 單獨禁止一個中斷 
21.6.7 原子化操作 
21.6.8 對關(guān)鍵節(jié)進(jìn)行保護(hù) 
21.7 塊設(shè)備 
21.7.1 一個簡單的RAM盤模塊:Radimo 
21.7.2 介質(zhì)的更換 
21.7.3 塊設(shè)備的ioctl文件操作 
21.7.4 請求函數(shù):request 
21.7.5 緩沖區(qū)緩存 
21.7.6 小結(jié) 
21.8 調(diào)試 
21.8.1 Oops追查法 
21.8.2 對模塊進(jìn)行調(diào)試 
21.8.3 “魔術(shù)鍵” 
21.8.4 內(nèi)核調(diào)試器—KDB 
21.8.5 遠(yuǎn)程調(diào)試 
21.8.6 調(diào)試工作中的注意事項 
21.9 可移植性 
21.9.1 數(shù)據(jù)類型
21.9.2 字節(jié)的存儲順序 
21.9.3 數(shù)據(jù)的對齊 
21.10 本章總結(jié) 
21.11 內(nèi)核源代碼解剖圖 
附錄A 可移植性 
附錄B 自由軟件基金會和GNU項目 
附錄C 因特網(wǎng)資源 
附錄D 參考書目

本目錄推薦

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