GNU/LINUX環(huán)境編程

出版時間:2010-3  出版社:清華大學出版社  作者:瓊斯  頁數(shù):530  譯者:張元章  
Tag標簽:無  

前言

GNU/Linux是操作系統(tǒng)中的“瑞士車刀”。從最小的設備(如蘋果的iPod)到最大的設備(如;IBM的“藍色基因”巨型機)中部可以看到它的蹤影。你會發(fā)現(xiàn)GNU/Linux運行在很多不同的架構中,從老式的x86處理器到PlayStation3使用的cell處理器,不一而舉。本書提供GNU/Linux操作系統(tǒng)上的應用程序開發(fā)的基礎知識。無論你是為iPod還是BlueGene開發(fā)應用程序,所需要的編程概念與API均可以在本節(jié)中找到。 本書內容 本書全面介紹GNU/Linux環(huán)境下應用程序丌發(fā)的所有知識。全書五部分,包含GNU工具、應用程序開發(fā)、shell與腳本、調試與硬化及——些介紹性的主題,如虛擬化基礎。 具體包含以下主題。 GNU/Linux架構與虛擬機制。 GNU工具,如GCC、make、automake/autoconf、源代碼擰制系統(tǒng)、GNU Debugger以及GNUplot。 應用程序開發(fā)基礎,如庫(靜態(tài)的和動態(tài)的)、文件管理、管道、套接字、編程等。 GNU/Linux進程模型(包括線程)和POSIX IPC機制(消息序列、旗語及共享內存)。 shell與腳本基礎,從相應的GNU/Linux命令到Bash、Ruby以及Python。sed和awk文本管理,flex和bison語法分析器生成。 本書還覆蓋調試和硬化技術,包括軟件測試工具、覆蓋測試和利用GCov和GProf的剖析及內存調試工具(如valgrind等)。 本書配套資源 本書面向的讀者 如果你想學習如何開發(fā)運行與GNU/Linux操作系統(tǒng)有關的應用程序,或者想擴充知識以進入更高深的開發(fā)領域,那么本書就是為你而寫的,本節(jié)適合GNU/Linux初級和中級程序開發(fā)人員閱讀與參考。書中覆蓋相關的工具、API及開發(fā)技術,并通過大量實例來闡明如何使用GNU/Linux的API。

內容概要

GNU/Linux也稱Linux,被譽為操作系統(tǒng)中的“瑞士軍刀”。從iPod之類的小型設備到IBM的Blue Gene之類的超級計算機,都可以看到它的”芳蹤”。GNU/LinuX可以運行于大眾化體系結構之上,從老式的x86處理器到最新的Play Station 3游戲機采用的cell處理器,不一而舉。  本書詳細介紹如何開發(fā)可以運行于GNU/Linux操作系統(tǒng)的應用程序,經(jīng)過全面修訂的第2版涵括所有必要的工具和編程技術,提供豐富的例子來說明GNU/Linux API的使用。  GNU/Linux架構與虛擬化技術  GNU工具,如GCC,make、automake/autoconf,源代碼控制系統(tǒng),GNU Debugger和Gnuplot  應用程序開發(fā)基礎主題,包括庫(動態(tài)的和靜態(tài)的)、文件處理、管道、套接字和編程基礎等  GNU/Linux過程模型(包括線程)和POSIXIPC機制(如消息隊列、旗語和共享內存)  shell和腳本編程基礎,從常用的GNU/Linux命令到Bash、Ruby和Python  sed和AWK文本處理,flex和bison解析器  調試和代碼硬化技術,包括軟件測試工具、覆蓋測試和GCov和GPro概要和內存調試工具等  本書針對Linux程序員,本書詳細介紹如何開發(fā)高性能、高安全性的應用程序。經(jīng)過全面修訂的第2版涵括所有必要的工具和編程技術,提供豐富示例來說明GNU/Linux APl的用法。全書共5部分34章,主題涉及GNU工具,應用程序開發(fā),shell與腳本編程,調試和提高安全性,虛擬化技術。凡此種種,吸引著近萬名程序員選擇本書宋學習GNU/Linux編程技術?! ”緯鴾\顯易懂,從全局介紹Linux編程基礎,重點強調Linux編程利器的使用,對Linux程序員具有重要的參考和指導作用。

作者簡介

M.Tim Jones是一名嵌入式軟件架構師,也是多部暢銷書的作者,代表作有AI Application Programming,BSD Sockets Proqramming from a Multilanguage Perspective,Artificial Intelligence:A Systems Approach,還發(fā)表過大量技術文章。他的工程背景很豐富,曾經(jīng)為太空船開發(fā)過內核,也開發(fā)過嵌入式系統(tǒng)架構和聯(lián)網(wǎng)協(xié)議。Tim目前在科羅拉多Longmont的Emulex公司擔任顧問工程師。

書籍目錄

第Ⅰ部分 導論  第1章 GNU/Linux的歷史  第2章 GNU/Linux系統(tǒng)架構  第3章 自由軟件開發(fā)  第4章 Linux虛擬化與仿真 第Ⅱ部分 GNU工具  第5章 GNU編譯工具鏈  第6章 應用GNU make構建軟件  第7章 庫的構建與使用  第8章 用automake/affcoconf打包  第9章 GNU/Linux的源碼控制  第10章 應用Gnuplot進行數(shù)據(jù)可視化 第Ⅲ部分 應用程序開發(fā)主題  第11章 GNU/Linux的文件操作  第12章 管道編程  第13章 套接字編程簡介  第14章 GNU/Linux進程模型  第15章 POSIX線程(P線程)編程  第16章 消息隊列IPC  第17章 旗語同步  第18章 共享內存編程  第19章 高級文件操作  第20章 其他應用程序開發(fā)主題 第Ⅳ部分 GNU/Linux的shell與腳本  第21章 GNU/Linux標準命令  第22章 Bourne-Again shell(Bash)  第23章 使用sed進行編輯  第24章 使用awk進行文本處理  第25章 使用flex和bison  第26章 Ruby腳本編程  第27章 Python腳本編程  第28章 GNU/Linux管理基石出 第Ⅴ部分 調試與測試  第29章 軟件單元測試框架  第30章 用GDB進行調試  第31章 代碼硬化  第32章 用GNU gcoy進行覆蓋測試  第33章 用GNU gprof進行  第34章 高級調試主題 附錄 縮寫與部分 縮寫詞

章節(jié)摘錄

插圖:完全虛擬化完全虛擬化方法為客戶操作系統(tǒng)創(chuàng)建一個虛擬機實例,使客戶操作系統(tǒng)可以不加修改地運行。虛擬機模擬底層硬件的某些部分,捕捉需要由管理程序(虛擬機監(jiān)視器)進行仲裁的調用。這種虛擬化模式如圖4.1所示。完全虛擬化要求所有的操作系統(tǒng)都是針對同一處理器架構開發(fā)的,這是一個很普通的要求,實驗性的或開發(fā)中的系統(tǒng)可能不能滿足這一點。運行中各個操作系統(tǒng)都不加改動并且不知道它是在一個虛擬平臺上執(zhí)行。此外,完全虛擬化可以在支持虛擬化的硬件上運行。虛擬化當中最大的問題是如何處理特殊的特權模式指令。這些指令必須被正確捕捉并且由管理程序處理。所以在一個未加修改的操作系統(tǒng)中(沒有虛擬化硬件),必須找出這些調用并轉換為管理程序調用。這個過程稱為代碼掃描,其結果是向原始代碼中找到的特權捕獲指令處插入管理程序調用代碼。準虛擬化最近的公告修改了“準虛擬化”的定義。早期的準虛擬化方法要求對修改客戶操作系統(tǒng),使得操作系統(tǒng)知道它實際上已經(jīng)被虛擬化了。這意味著更高的性能(因為不必進行代碼掃描),但也限制了能被虛擬化的操作系統(tǒng)(見圖4.5)。但是現(xiàn)在,準虛擬化的定義已經(jīng)變化了。擁有了支持虛擬化的硬件,操作系統(tǒng)的修改不再必要。這意味著所有的操作系統(tǒng)都可以被虛擬化,因為虛擬化對各個客戶操作系統(tǒng)都是透明的(見圖4.6)。

編輯推薦

《GNU/LINUX環(huán)境編程(第2版)》:淺顯易懂,容易理解的Linux編程基礎聚焦Linux編程利器——GNU工具和庫全面覆蓋各種有用的API配套資源包含《GNU/LINUX環(huán)境編程(第2版)》代碼和所有API

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    GNU/LINUX環(huán)境編程 PDF格式下載


用戶評論 (總計34條)

 
 

  •   很不錯的書,對GNU/LINUX環(huán)境編程有個很系統(tǒng)的介紹,對任何層次的開發(fā)人員都很適合。
  •   這本書對于學習linux很有幫助
  •   斷斷續(xù)續(xù)的玩了好久的LINUX了,還停留在入門階段,這本書剛好適合。
  •   參考用書,項目開發(fā)需要用到的。
  •   正在學習中,還沒看完。比APUE內容淺一些,更容易理解。
  •   學計算機必備的,朋友推薦的,買來看看!
  •   工具書備用
  •   書質量不錯,運貨速度也是超快!內容正在看
  •   其實這書已經(jīng)不用我評論了,經(jīng)典的書就是經(jīng)典啊
  •   今天剛拿到書本,還沒有顧上看這本,大概翻閱了一下,書本質量不錯,是正版的,呵呵,質量不錯的書本就有看下去的欲望了,希望內容實用。
  •   涉及的比較寬,算是全面介紹一下linux編程吧
  •   以前編程都在windows下用VC IDE,近期由于移植幾個unix平臺下的軟件包被迫研究unix環(huán)境編程,但對makefile、gcc等很摸不著頭腦,看了這本書的前幾部分感覺收獲較大。
  •   這本書的內容很全,看目錄就知道了,也有一定厚度。但是注意這是一本“快速”入門書,所謂快速是指它的內容相當簡略,很多地方都是一帶而過。學習這本書最好配有電腦和網(wǎng)絡,將它作為一個地圖,隨時上網(wǎng)查找、上機練習。本書對于自學能力強的人來說還是一本不錯的入門書的
  •   書內容還不錯,翻譯就比較無語了,信號量說成什么旗語,最悲劇的是tarball翻譯成tar球,部分地方存在小錯誤,應該是譯者沒用弄懂的原因,基本上不影響閱讀。
  •   腰椎間盤突出伴坐骨神經(jīng)痛比較喜歡,只是給我發(fā)了本舊書。。。。
  •   買此書的原因是因為看到內容及其組織還可以,對于初學者挺合適。但是買回來后發(fā)現(xiàn)翻譯得蠻粗糙的,如果有原版的話還是建議看原版。
  •   內容太寬泛,很多東西都是泛泛而提,不適合初學者??措娮影娴模篬GNU[1].Linux.編程指南.(第二版)].Linux.Programming.Unleashed.Second.Edition.[美].Kurt.Wall.掃描版.pdf,中文名是《GNU/Linux 編程指南》發(fā)現(xiàn)這本書還可以,決定買本看看,因為老看電子版的不舒服。但是沒找到,就買了這本《GNU/Linux環(huán)境編程》,看了之后發(fā)現(xiàn)不實用。
  •   翻譯質量不行,若不是初學者,看看還是可以的。
  •   說實話我沒有看完。。。。。。。我發(fā)現(xiàn)我們lab的東西根本用不到這么高深的linux知識
  •   很好的書,正在繼續(xù)看,以后還會買的
  •   很有用的一本書,真心喜歡,真不錯!
  •   還沒看完不過內容挺好
  •   內容不少,不過一帶而過。。。
  •   Linux c/c++必須要入手一本啊。
  •   這本書涉及的內容著實廣泛,對于初學者開闊視野很有好處。在這本書中,想不到還介紹了詞法分析工具flex,而我最近正準備使用這個工具,應該會是個不錯的入門。另外,感覺這本書印刷和排版也不錯,看起來很美觀。該書講述得條理清晰,貼近初學者,是學習GNU/Linux的絕佳之選。對于初學者,另外一本很好的書應該就是《鳥哥的私房菜》了。
  •   送貨速度比較慢。這本不如UNIX環(huán)境編程出名,但是對Linux挺合適,里面也介紹了不少和編程相關的東西,擴展知識面不錯,作為入門級的書挺好
  •   其實我覺得這本書挺好的, 但是不知道為什么沒人來評。APUE也看不懂,這本書給我入門的,雖然講得很泛泛,但是那些例子都是很好,把例子運行一遍東西就差不多會了。既然是入門,那當然是講一些常用的而且直接就教你用了。講得很泛泛,看完之后,再去看高級一點的。入門我推薦這本書。之后是讀linux程序設還是GNU/linx編程指南呢,有沒有答我一下
  •   入個門看這個書還行
  •   GNU/LINUX環(huán)境編程(第2版)
  •   linux下編程指南
  •   作為參考書使用
  •   等了好久了,終于有貨了
  •   比較好的linux書籍
  •   Linux很好的書
 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網(wǎng) 手機版

京ICP備13047387號-7