Linux開發(fā)工具箱

出版時(shí)間:2008-9  出版社:清華大學(xué)出版社  作者:(美)法斯克(Fusco,J)  頁數(shù):476  字?jǐn)?shù):670000  譯者:賈嚴(yán)磊,董西廣,王在奇  
Tag標(biāo)簽:無  

前言

如果您已經(jīng)掌握了使用Linux的基本操作,比如會(huì)使用ls、grep、find和sort這樣的命令,而且還是一名C或C++程序員,知道如何使用Linux系統(tǒng)調(diào)用,就應(yīng)該明白除了能使用鼠標(biāo)“單擊”之外,Linux還能給自己的生活帶來更多的方便——只是現(xiàn)在還不知道怎樣做到而已,所以您會(huì)問自己:“我該如何去做呢?”本書會(huì)幫您回答這個(gè)問題。作者以其廣博的知識(shí),向那些非Linux初學(xué)者展示了如何攀越下一階段并走向精通的求知之路。從用于調(diào)試和性能分析的命令行工具,到/proc目錄下的文件列表,本書將會(huì)向您介紹這些Linux行家里手所熟練使用的各種工具,從而使您在日常生活中更方便、更有效地使用Linux。本書除了告訴您很多的“是什么”(什么工具,什么選項(xiàng),什么文件),還會(huì)告訴您“為什么”。本書會(huì)解釋它們的運(yùn)行原理,使您能知其然并知其所以然,最終將Linux(還有UNIX)的精華了然于胸。本書是獻(xiàn)給Linux程序員的一席饕餮大餐,希望您能用心品味,至少我是這么做的。開始享受吧!

內(nèi)容概要

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

作者簡介

John Fusco是GE Healthcare的一名軟件開發(fā)人員,專門編寫Linux應(yīng)用程序和設(shè)備驅(qū)動(dòng)程序。他在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  識(shí)別存檔文件    1.4.2  查詢存檔文件    1.4.3  提取存檔文件  1.5  認(rèn)識(shí)軟件包管理器    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:高級(jí)軟件包工具    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  背景知識(shí)    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  理解錯(cuò)誤和警告    2.4.1  常見的Makefile錯(cuò)誤    2.4.2  配置階段的錯(cuò)誤    2.4.3  創(chuàng)建階段的錯(cuò)誤    2.4.4  理解編譯器錯(cuò)誤    2.4.5  理解編譯器警告信息    2.4.6  理解鏈接器錯(cuò)誤  2.5  小結(jié)    2.5.1  本章用到的工具    2.5.2  網(wǎng)絡(luò)資源第3章  查找?guī)椭? 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)核知識(shí)  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  初識(shí)調(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ū)動(dòng)程序    5.4.1  設(shè)備驅(qū)動(dòng)程序的類型    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  選擇一個(gè)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ā)送信號(hào)給進(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  信號(hào)    7.4.1  向進(jìn)程發(fā)送信號(hào)    7.4.2  信號(hào)處理    7.4.3  信號(hào)掩碼和信號(hào)處理    7.4.4  實(shí)時(shí)信號(hào)    7.4.5  具有sigqueue和sigaction的高級(jí)信號(hào)  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  信號(hào)量    7.8.1  POSIX信號(hào)量使用的API    7.8.2  System V信號(hào)量使用的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)的信號(hào)量    8.5  POSIX IPC用到的工具    8.5.1  POSIX共享內(nèi)存    8.5.2  POS[X消息隊(duì)列    8.5.3  POSIX信號(hào)量  8.6  信號(hào)用到的工具  8.7  管道和套接字用到的工具    8.7.1  管道和FIFO    8.7.2  套接字  8.8  使用索引識(shí)別文件和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  多處理器平臺(tái)    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)儲(chǔ)    10.6.4  使用信號(hào)    10.6.5  使用procfs調(diào)試  10.7  小結(jié)    10.7.1  本章用到的工具    10.7.2  在線資源    10.7.3  參考資料

章節(jié)摘錄

5.1  簡介本章假定你已掌握了一定的編寫Linux應(yīng)用程序的經(jīng)驗(yàn)并且對內(nèi)核已有了初步的了解。本章將涵蓋一些與內(nèi)核相關(guān)的主題。這些主題在論述內(nèi)核實(shí)質(zhì)的書中經(jīng)常出現(xiàn)。與這些書不同的是,本章更側(cè)重從應(yīng)用角度進(jìn)行分析。本章所涵蓋的內(nèi)容有Linux的調(diào)度程序,近來這些調(diào)度程序經(jīng)歷了許多變革。此外,本章還將闡述進(jìn)程優(yōu)先權(quán)和搶占方式調(diào)度策略,以及它們的角色和實(shí)時(shí)應(yīng)用。32位的地址空間足夠滿足需要,因此多數(shù)應(yīng)用系統(tǒng)在實(shí)際操作中從未受阻。但現(xiàn)在,32位的系統(tǒng)已能支持超過4GB的RAM,許多程序員往往在操作受阻時(shí)還不知道他們遭遇的是怎樣的問題。學(xué)完本章后,你將對這些問題有個(gè)更清晰的認(rèn)識(shí),并且學(xué)會(huì)如何在操作中規(guī)避它們。本章還將介紹輸入輸出系統(tǒng)以及它與進(jìn)程之間的關(guān)系。也許你已經(jīng)被現(xiàn)代處理器的高速時(shí)鐘速度搞得眼花繚亂,但不料卻失望地發(fā)現(xiàn)低速的啟動(dòng)設(shè)備程序正嚴(yán)重扼殺處理器的操作性能。本章將介紹一些Linux程序設(shè)計(jì)模型中的低效構(gòu)件,以及如何在操作中繞開它們。本章還將詳細(xì)討論Linux 2.6版本中I/O調(diào)度程序的改進(jìn),以及如何更好地發(fā)揮其性能。5.2  用戶模式與內(nèi)核模式執(zhí)行進(jìn)程的模式有兩種:用戶模式和內(nèi)核模式。你編寫的代碼和執(zhí)行所鏈接的庫是在用戶模式下。當(dāng)進(jìn)程需要內(nèi)核的服務(wù)時(shí),就必須執(zhí)行內(nèi)核代碼,而且這只能在內(nèi)核模式下運(yùn)行。這聽起來很簡單,但是真正操作時(shí)存在許多困難。首先來討論為什么需要兩種操作模式。原因之一就是安全性。當(dāng)一個(gè)進(jìn)程在用戶模式下執(zhí)行時(shí),它所占的內(nèi)存空間對它來說是唯一的。Linux是一個(gè)多用戶操作系統(tǒng),因此一個(gè)進(jìn)程不能訪問另一進(jìn)程的內(nèi)存空間,因?yàn)榱硪贿M(jìn)程可能包含密碼或一些敏感信息。用戶模式可以確保一個(gè)進(jìn)程只能訪問它自己的內(nèi)存空間。此外,如果一個(gè)進(jìn)程破壞了它自己的內(nèi)部結(jié)構(gòu),它也只能影響它自己,而不會(huì)波及到其他任何進(jìn)程,當(dāng)然更不會(huì)影響到整個(gè)系統(tǒng)。在用戶模式下,進(jìn)程所能訪問的內(nèi)存稱為用戶空間(user space)。因?yàn)樵撓到y(tǒng)是作為一個(gè)整體運(yùn)作的,所以內(nèi)核需要維護(hù)數(shù)據(jù)結(jié)構(gòu)以控制系統(tǒng)中的每個(gè)進(jìn)程,因此內(nèi)核提供了一個(gè)所有的進(jìn)程共享的內(nèi)存區(qū)域。因?yàn)橄到y(tǒng)中的所有進(jìn)程都在執(zhí)行內(nèi)核,所以每個(gè)進(jìn)程都需要訪問同一個(gè)共享的內(nèi)存區(qū)域。然而,為了保證安全性,內(nèi)核代碼和數(shù)據(jù)結(jié)構(gòu)必須嚴(yán)格獨(dú)立于用戶代碼和數(shù)據(jù)。這就是我們需要內(nèi)核模式的原因。只有內(nèi)存代碼可以在內(nèi)核模式下運(yùn)行,訪問共享的內(nèi)核數(shù)據(jù)以及執(zhí)行特權(quán)指令。把進(jìn)程在內(nèi)核模式下訪問的內(nèi)存區(qū)域叫做內(nèi)核空間(kernel space)。內(nèi)核空間只有一個(gè),在內(nèi)核模式下的每一個(gè)進(jìn)程都可以訪問內(nèi)核空間,但與用戶空間不同的是,內(nèi)核空間是每一個(gè)進(jìn)程所特有的。圖5-1顯示了所有進(jìn)程中內(nèi)核的虛擬地址分配。在這個(gè)例子中, 1G的虛擬地址高地址分配給了內(nèi)核,剩下部分則分配給了進(jìn)程。這樣的分配方式可以在構(gòu)建內(nèi)核時(shí)確立。但這種所謂的3G/1G分配方式在很多現(xiàn)存的內(nèi)核中(也)是常見的。在這種配置下,內(nèi)核的所有地址都大于0XCJ0000000。當(dāng)進(jìn)程要訪問這些地址時(shí),就必須在內(nèi)核模式下執(zhí)行。

編輯推薦

《Linux開發(fā)工具箱:項(xiàng)目開發(fā)的最有效途徑》共分10個(gè)章節(jié),系統(tǒng)性地介紹GNU/Linux的開源工具,并通過可以被讀者容易修改的簡明示例說明如何使用這些工具,具體內(nèi)容包括開源工具的下載和安裝、從源代碼構(gòu)建、查找?guī)椭⒕庉嫼捅4嬖次募?、開發(fā)者必備內(nèi)核知識(shí)等?!禠inux開發(fā)工具箱:項(xiàng)目開發(fā)的最有效途徑》可供各大專院校作為教材使用,也可供從事相關(guān)工作的人員作為參考用書使用。

圖書封面

圖書標(biāo)簽Tags

評論、評分、閱讀與下載


    Linux開發(fā)工具箱 PDF格式下載


用戶評論 (總計(jì)14條)

 
 

  •   買回來后悔了。。
  •   說實(shí)話,我對翻譯的質(zhì)量要求不高,特別是技術(shù)類書記,不要達(dá)雅,信就可以了??墒沁@本書里面顯而易見的錯(cuò)誤(翻譯,印刷)讓人難以忍受。翻了第七章,實(shí)在受不了了,語句不通順,不知道在說啥,估計(jì)譯者自己都沒搞明白。瞅著不錯(cuò)的一本書被翻譯成這樣,真是浪費(fèi)阿。建議要買的XD還是先去書店隨便翻翻,5分鐘內(nèi)你會(huì)得出要不要買的結(jié)論。
  •   沒看過原版的,但是這個(gè)翻譯真的不值得,紕漏不少。我快看完了,收獲沒有想象中多,有點(diǎn)后悔浪費(fèi)了這么多時(shí)間
  •   這本書真的是垃圾中的垃圾,我本來對技術(shù)類的書籍翻譯沒有太高的要求,但這本書真是讓我忍無可忍,書的內(nèi)容挺好,說實(shí)話,應(yīng)該是英文版相當(dāng)?shù)牟诲e(cuò),可是翻譯的那叫一個(gè)爛!!譯者是學(xué)計(jì)算機(jī)出身的嗎,做過開源Linux下開發(fā)嗎?我懷疑是不是用翻譯機(jī)翻譯的???白瞎我的銀子了~~給1顆星都多了,真是氣死我了~~
  •   這本書的價(jià)值在于作者在Linux開發(fā)領(lǐng)域的視野和對這些工具的理解,你如果想要拓展一下自己的視野而成為一只老鳥,它值!
  •     看了一點(diǎn)
      覺得的確有點(diǎn)亂
      難道果真像ls說的 是來騙錢的 郁悶咯 這次
      還是堅(jiān)持看下去
  •     這是我讀過的最惡心的中文版技術(shù)圖書。整本書就是一堆狗屁不通的文字和令人發(fā)指的排版錯(cuò)誤的大集合。我懷疑那三個(gè)中文作者是來組團(tuán)忽悠的吧。你們合伙羞辱了John Fusco 的智慧。
      
      我呸.............還我的58塊錢!?。。。。。。?!
  •   呵呵,你看見是清華大學(xué)出版社就應(yīng)該知道是什么質(zhì)量了...
  •   我翻過中文版 完全是不止所謂
    建議大家還是去網(wǎng)上下原版的,書是好書
  •   翻譯的是不太好,但也沒有l(wèi)z說的那么差吧!
  •   有l(wèi)z說的那么差勁嗎,我沒從頭看,只是挑著看了下
  •   翻譯得確實(shí)惡心
  •   實(shí)在是爛啊。
  •   完全同意! 翻的狗屁不通! (看在我的RMB的份上,就讓我說句臟話發(fā)泄下吧。。)
 

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

京ICP備13047387號(hào)-7