《UNIX環境高階程式設計》這本書怎麼看?怎麼學習?

時間 2021-05-05 15:07:33

1樓:湖心島主人

什麼都講了,什麼都沒講全,這邊只能說是基礎版;

unix環境程式設計必須看這本書,第二章是廢話;

另外再說一句,同樣的實現有很多技術,不一定要照搬照抄

2樓:

首先我覺得這本書不適合unix入門級人員,但如果你想在unix環境下有進一步的程式設計功底提公升,不管你是什麼語言的開發者,這本書絕對是一本承上啟下的神器。它就像一盞燈,為你照亮了unix作業系統黑盒無法窺視的一面,又不會對你暴露太多細節以致讓你覺得枯燥乏味。

3樓:Chr1sL1

感覺apue其實講得有點淺,好在已有內容講得很透恨細。而且apue和unp兩卷之間重複的內容好多好多。另外就是內容有點陳舊了。

epoll和kqueue模型的內容,unp裡沒有涉及,ucontext部分的內容apue裡也沒有。

4樓:趙長青

正好在看,說說經歷吧。之前一直跨不過第二章,感覺雜亂沒有頭緒,又不知道對後面有多少影響。後來有一次終於看到第十章,感覺收穫真的很大,但是第十章是本書最難的一章,當時就卡在那裡。

然後現在又拿起來,已經看到第十五章了,應該這個週末就可以看完,第十章仍然是最難的一章。

技術書而論,本書可讀性很高。

5樓:

一定要實踐。

實踐的方式,原始碼的話有skynet,freebsd 的 tools/regression 目錄等。

習題。如果是deb 系的話,感興趣的原始碼 apt-get source package-name 通通下下來。

6樓:楊賽

適合不適合不是說你工作多少年後的問題。

如果你覺得看不懂,那麼只是你的學習方法不對.

學習最重要講究循序漸進.突然跑到高處,當然矇圈了.這本書完全算不上詞典,對於乙個常年讀書的人來說,這本書的東西我感覺接受起來並不吃力.

但是要有好的基礎,如果基礎不好,直接看這本書效果不好.

我個人推薦最基本的書籍是王爽的組合語言,然後看看c primer,再看深入理解作業系統,這時候你再看這個高階環境程式設計,就水到渠成. 不要說繞的彎子太大,學習嘛,當然要系統.不系統不能集大成.

再說了,學習本身就沒有終點,始終在路上,急不得.

7樓:JasonShawn

看了以上回覆,主要講兩點,第一,這本書不該被視為字典,而是應當被反覆通讀,作者對unix/Linux底層機制進行了很友好的闡述,清楚講述原理的同時迴避了具體的實現細節;第二,讀者不需要太多的基礎,只需要了解Linux環境下的基本操作,但是閱讀過程中要動手實現相關例程。

8樓:devzhaoyou

我在豆瓣上看到很多人評價這本書是多麼多麼好,但是真的不適合我,讀起來很乾澀。書確實有好壞優劣這本,但是再好的書如果不符合我們這個水平層次,看了也不會覺得有多好。另外感覺應該有不少人是人云亦云的,別人都說這本書好,看了一下看不懂,果然高大上啊,嗯好書。

呵呵,適合自己水平層次,能夠讓自己吸收進步乙個台階的才是最好的。

9樓:李意揚

可以先看《Unix/Linux程式設計實踐教程》 作為過渡,這本書的特點是例子很多,翻譯也可以,由淺入深。然後再看APUE。

10樓:

Stevens著有三大本:UNIX環境高階程式設計、TCP/IP詳解、UNIX網路程式設計。

我是抱著學習網路程式設計進而閱讀web framework原始碼來學習它們的。

另外也是想提公升一下自己的程式設計素養,為以後看kernel原始碼什麼的做鋪墊。

首先我是買了這本書,另外兩套暫時沒買。

開始也是各種不解,我就是想核心究竟幹些啥事,如何通過system_call與之通訊?

其實讀這些書需要一些基礎的。

作業系統原理、gcc、shell等等。

其實我也沒全看完,建議先把環境裝好(編譯apue.h),然後乙個乙個執行書中示例。當然不是盲目的學,要知道自己差那一塊就補那塊。

我也是初學,算是共勉吧。

update at 2019↓

其實直到現在我也沒有太細緻的閱讀和實踐本書,主要是畢業後很少再用C,但Linux我現在是比較熟了,而且也能夠初窺kernel,主要還是重在原理上的認知吧,以及同程式設計活動實踐的整合(不一定得是C系統程式設計),其實說到底無非是程序、檔案、虛存以及網路不是嗎。另外, 《網路程式設計》中關於IO的論述值得一看。

11樓:「已登出」

如果有人問我PATH怎麼改這種問題,原來我推薦他們看鳥哥的,但是他們不會去看,即使我把章節指出來。後來我推薦他們看這本書........當然我不知道他們看了沒有

12樓:李遙

這本書其實很平常,我一直不懂為什麼有這麼多人推崇。但凡做過作業系統原理和編譯原理大作業,寫過乙個mini UNIX-like kernel和C compiler的人幾乎完全不用看這本書

13樓:

建議先看《Unix/Linux程式設計實踐教程》如果自我感覺計算機理論知識框架不太好的話仔細學習下《深入理解計算機系統》這本書,這本書比較系統綜合了下各方面知識,但是都不深入,不過可以讓你對計算機有乙個巨集觀認識。

14樓:盲刺客

這書買了好久沒開始系統的看過自己平時工作寫一些小的指令碼幫助整合一些自己常用的命令

svn啥的。

最近重新開始看這書並手打裡面的例項第乙個就出錯了。原來是沒有apue.h的標頭檔案自己折騰了折騰頭四個例項都成功了,很快一下午就過去了,還有很大的吸引力!

學習還是要看興趣

15樓:桂俊鴻

過來人,這本書我一共看了兩遍了,現在也經常看,這本書概括了幾乎所有unix環境下的程式設計介面,是一本難得的教程和參考書。推薦有一定程式設計經驗的人看。至少要熟悉c程式設計,如果再熟悉unix/linux作業系統的基本原理和應用,理解起來就更容易些了。

看書要邊看邊實踐,舉一反三,不懂的地方就google一下吧。

16樓:孫建希

建議不要一開始看這本書。可以先看其他簡單的,這本書統籌了所有流行的unix實現。複雜繁瑣,適合高階可移植編碼需求的人看。

你可以看看wrox系列的linux程式設計再回來看這本。這本需要很好的知識積累。不然看完沒有太多收穫。

而且這本書是一本字典。

另外: 我相信更多人是在linux下開發,我重點推薦:

Linux/UNIX系統程式設計手冊Linux/UNIX系統程式設計手冊 (豆瓣)

UNIX環境高階程式設計 第三版 關於不帶緩衝I O的理解?

風生水起 這裡是指在使用者空間不帶buffer,直接通過syscall呼叫核心的read函式。如果在使用者空間帶buffer,使用fread即可。很明顯這樣的話,核心態和使用者態的切換次數比read要少多了。如果不是記憶體比較緊張的情況,一般使用fread。當然如果你們需要把資料馬上寫入介質,用di...

如何評價《全民學程式設計》這本書?

Alexander Huang 蹭熱度吧,騙騙不懂的小白。不過從這我倒是想到一些其他問題 現在國內人心太浮躁,因為這十幾年資本偏向網際網路,導致一些人蹭熱度,各種手段騙小白錢 而小白又不懂,感覺隨便找本書入個門就能年薪百萬。其實程式設計應該是個技術工作,硬生生被搞成了搬磚的。我個人不建議全民學程式設...

如何評價《寫給所有人的程式設計思維》這本書?

驚鴻一瞥 少兒程式設計老師前來作答。我個人覺得,這本書的優勢在於語言通俗易懂,和市面上常見的程式設計書籍相比,不但適合程式設計新手,還很適合兒童閱讀。而且裡面的內容也很生動,可以幫助孩子掌握策劃構思能力 邏輯分析能力 模式識別能力等各種能力,很好地鍛鍊孩子的程式設計思維。 WINWHI Hello ...