導航:首頁 > 編程系統 > gnulinux編程指南pdf

gnulinux編程指南pdf

發布時間:2022-02-05 07:33:40

linux中gnu的含義是什麼

1.GNU

gnu計劃,又稱革奴計劃,是由richard stallman在1983年9月27日公開發起的。它的目標是創建一套完全自由的操作系統。richard stallman最早是在.unix-wizards新聞組上公布該消息,並附帶一份《gnu宣言》等解釋為何發起該計劃的文章,其中一個理由就是要「重現當年軟體界合作互助的團結精神」。
gnu是「gnu's not unix」的縮寫。stallman宣布gnu應當發音為guh-noo,與canoe發音相同,以避免與gnu(非洲牛羚,發音與new相同)這個單詞混淆。unix是一種廣泛使用的商業操作系統的名稱。由於gnu將要實現unix系統的介面標准,因此gnu計劃可以分別開發不同的操作系統部件。gnu計劃採用了部分當時已經可自由使用的軟體,例如tex排版系統和x window視窗系統等。不過gnu計劃也開發了大批其他的自由軟體。
為保證gnu軟體可以自由地「使用、復制、修改和發布」,所有gnu軟體都在一份在禁止其他人添加任何限制的情況下授權所有權利給任何人的協議條款,gnu通用公共許可證(gnu general public license,gpl)。這個就是被稱為「反版權」(或稱left)的概念。
1985年richard stallman又創立了自由軟體基金會(free software foundati hat兼並的cygnus soluti
到了1990年,gnu計劃已經開發出的軟體包括了一個功能強大的文字編輯器emacs,c語言編譯器gcc,以及大部分unix系統的程序庫和工具。唯一依然沒有完成的重要組件就是操作系統的內核(稱為hurd)。
1991年linus torvalds編寫出了與unix兼容的linux操作系統內核並在gpl條款下發布。linux之後在網上廣泛流傳,許多程序員參與了開發與修改。1992年linux與其他gnu軟體結合,完全自由的操作系統正式誕生。(盡管如此gnu計劃自己的內核hurd依然在開發中,目前已經發布beta版本。)
許多unix系統上也安裝了gnu軟體,因為gnu軟體的質量比之前unix的軟體還要好。gnu工具還被廣泛地移植到windows和mac os上。

2.gnu/linux

linux只是一個操作系統內核,而gnu提供了大量的自由軟體來豐富在其之上各種應用程序。
因此,嚴格來講,linux這個詞本身只表示linux內核,但在實際上人們已經習慣了用linux來形容整個基於linux內核,並且使用gnu 工程各種工具和資料庫的操作系統。基於這些組件的linux軟體被稱為linux發行版。一般來講,一個linux發行套件包含大量的軟體,比如軟體開發工具,資料庫,web伺服器(例如apache),x window,桌面環境(比如gnome和kde),辦公套件(比如openoffice.org),等等。
絕大多數基於linux內核的操作系統使用了大量的gnu軟體,包括了一個shell程序、工具、程序庫、編譯器及工具,還有許多其他程序,例如emacs。正是由於linux使用了許多gnu程序,gnu計劃的開創者richard stallman博士提議將linux操作系統改名為gnu/linux。但有些人只把操作系統叫做"linux"。
有部分linux套件,包括了debian,採用了「gnu/linux」的稱呼。但大多數商業linux套件依然將操作系統稱為linux。有些人也認為「操作系統」一詞指的應該只是系統的內核,其他程序都只能算是應用軟體,這么一來,該操作系統的內核應叫linux,而linux套件是在linux內核的基礎上加入各種gnu工具。

❷ 跪求《GNU/Linux編程指南(第二版)》電子書

XUNLEI上有可以下的

❸ Linux學習書籍求推薦

Linux學習書籍求推薦
1、《Linux與Unix Shell 編程指南》
C語言基礎
1、《C Primer Plus,5th Edition》【美】Stephen Prata著
2、《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)著
3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE)
4、《嵌入式Linux應用程序開發詳解》
Linux內核
1、《深入理解Linux內核》(第三版)
2、《Linux內核源代碼情景分析》毛德操 胡希明著
研發方向
1、《UNIX Network Programming》(UNP)
2、《TCP/IP詳解》
3、《Linux內核編程》
4、《Linux設備驅動開發》(LDD)
硬體基礎
1、《ARM體系結構與編程》杜春雷著
2、S3C2410 Datasheet
英語基礎
1、《計算機與通信專業英語》
系統教程
1、《嵌入式系統――體系結構、編程與設計》
2、《嵌入式系統――採用公開源代碼和StrongARM/Xscale處理器》毛德操 胡希明著
3、《Building Embedded Linux Systems》
理論基礎
1、《演算法導論》
2、《數據結構(C語言版)》
3、《計算機組織與體系結構?性能分析》
4、《深入理解計算機系統》【美】Randal E. Bryant David O』Hallaron著
5、《操作系統:精髓與設計原理》
6、《編譯原理》
7、《數據通信與計算機網路
8、《數據壓縮原理與應用》
入門篇
《LINUX權威指南》書不錯,寫的很全面也比較廣,涉及的不深,做為入門書籍不錯,可以比較全面的了解linux 。另外比較熱門的也可以看看《鳥哥的私房菜》等書,偏管理類的書。如果想做server方向的可以找來看看。
驅動 篇
《LINUX設備驅動程序 》就是網上說的「LDD」,經典之作,必備書籍。國產經典《Linux驅動詳細解》也是一本非常不錯的書,很實用,書中源代碼分析比較多,基於2440的,對linux外圍驅動有很全面的講解
內核篇
浙江大學的《LINUX內核源代碼情景分析》,外國鬼子的《萊昂氏UNIX源代碼分析》還有《深入理解linux內核》都是出名的經典巨作。另外趙 炯的《LINUX內核完全剖析–基於0.12內核》也非常不錯,對內核代碼進行了詳細的注釋,非常有助於對內核的理解和代碼的分析。
shell篇
《LINUX與UNIX Shell編程指南》
應用 編程
不用說了肯定是《unix環境高級編程》被稱為unix編程的聖經。
TCP/IP篇
《TCP/IP詳解》作者W.Richard Stevens也是《unix環境高級編程》的作者,牛人出的書沒有一本不是經典的。但是英年早逝,默哀一下。
c語言
《The C Programming Language》正是作者造出來的c語言,書能垃圾就怪了
《c和指針》和《c缺陷和陷阱》兩本必備。包含了c語言最容易出錯的地方,加深c語言功力的好材料。
關於演算法
《演算法導論》
1 熟悉linux基本環境 >>> 《鳥哥的私訪菜》《unix初級教程》 《linux編程寶典》(市面上無,圖書館有), 等等。
2 熟悉操作系統的基礎知識 >>> 《現代操作系統》 《操作系統概念》
3 熟悉系統編程 >>> 《unix環境高級編程第二版》《unix操作系統設計與實現》
4 內核 按先後順序: 《 linux內核設計與實現》 《linux設備驅動程序》 《深入理解 linux內核》 《linux內核源代碼情景分析》 《深入理解linux虛擬內存系統》
5 其他一些書籍: 《freebsd操作系統設計與實現》 《solaris內核結構》 《unix高級教程:系統技術內幕》 《現代體系結構的unix系統:內核程序員的smp與cache技術》 《保護方式下的80386及其編程》 (後3本市面上沒了,大學圖書館里一般都有》 《Intel64 and IA-32 Arichitectures Software Developer』s Manual》
6 其實內核玩深了,體系和編譯也要學好 《計算機體系結構:量化研究方法》 《編譯原理》(龍書)

Linux編程推薦書籍一覽表
shell 編程
《LINUX與UNIX SHELL編程指南》
BASH寶典:
Advanced Bash Scripting Guide (如果你使用的是 GNU/Debian 系統,可以用 apt-get install abs-guide 安裝該文檔)
BASH Programming – Introction HOW-TO
Bash Man

用戶級編程書籍:
Advanced Programming in the UNIX Environment(中文版《UNIX環境高級編程》第二版) 作者 W.Richard
Stevens/尤晉元等
GNU/Linux編程指南 作者 Kurt Wall
Linux 程序設計權威指南 作者 於明儉、陳向陽、方漢
《The Art of Unix Programming》作者 E.S.R
Computer Systems A Programmer』s Perspective
(中文名)《深入理解計算機系統(修訂版)》
《Unix Systems Programming》(中文版《UNIX系統編程》)作者: (美)KAY
A.ROBBINS, STEVE ROBBINS 譯者:陳涓 趙振平
網路編程:
Unix Network Programming V1 & V2,Unix網路編程卷1、2 作者 W.Richard Stevens
《unix網路編程》
XWindow編程
Definitive Guides to the X WindowSystem 作者 Dan Heller, Paula M. Ferguson

內核源代碼閱讀(結合源代碼)和編程
(入門)
《邊干邊學Linux內核指導》
(高級)
《Linux Kernel Development》
《Linux內核源代碼情景分析》
《深入分析Linux內核源代碼》 陳莉君
《 Understanding Linux Network Internals 》即《 深入理解Linux網路內幕(英文影印版)》Christian Benvenuti
內核模塊編程
《The Linux Kernel Mole Programming Guide》
Linux設備驅動編程
Linux設備驅動程序/Linux Device
Drivers 作者 Alessandro Ruibini
多線程編程
《多線程編程指南》

❹ 誰能提供《GNU/Linux編程指南》的下載地址

http://so.xunlei.com/search?search=Linux%E7%BC%96%E7%A8%8B%E6%8C%87%E5%8D%97&restype=-1&id=10003

❺ 推薦一本linux環境下c語言編程的書,適合初學者的。

Linux操作系統下C語言編程入門
GNU.Linux.編程指南.(第二版)
網上教程也很多,其實linux下和windows下的c語法都是一樣的,只是編譯c文件的編譯器不一樣罷了。
《C Primer Plus&C++Primer Plus第五版中文版》 此書也有英文版,比較經典的一本書,內容詳細,知識涵蓋廣,就是比較厚,有耐力的話,推薦這本。

❻ 計算機二級考試(編程類),可否選擇GNU/linux或者unix操作系統答題謝謝

環境的影響有這么大嗎?我覺得WRC車手應該不至於因為只有帕薩特就寧願不開車吧。

❼ linux中的C編程問題<sys/types.h>

ubuntu:~/reer_temp$ ls /usr/include/sys/types.h -l
-rw-r--r-- 1 root root 6838 2011-04-11 04:07 /usr/include/sys/types.h

你查看一下有不有這個目錄。

更多技術文章可以關注我的微博,名字:成都睿爾科技 。

❽ gnu/linux編程指南哪有

建議去大書店買本書。這種書我在西單圖書大廈見到很多(不過書名想不起來……)。
你可以看你需要買,最厚的比《現代漢語詞典》還要厚吧?

❾ C/C++/Linux/編程/開源方面的問題:Mozilla和GNU的區別

許多混亂就始於你不知道License到底是什麼,到底有什麼含義。當你對你的產品使用License時,並不意味著你放棄了任何權利,你依然對其擁有原著作權。License只是授予他們於特定權利來使用你的產品。

License只是把你的作品釋放到公有領域,或者給各個拷貝賦予許可權。也意味著你放棄了版權收入,別人也沒有義務把你列為原作者或貢獻者。

開放源代碼許可協議更容易為他人作出貢獻,而不必尋求特別的許可。它也可以保護你作為原創者的權利,至少確認了你的貢獻。它還可以保證你的工作不為別人所剽竊。
GNU General Public License

GNU General Public License (GPL)的可能是開源項目最常用的許可證。GPL賦予和保證了開源項目開發者廣泛的權利。基本上,它允許用戶合法復制,分發和修改軟體。 這意味著你可以:

* 復制軟體

復制軟體到自己的伺服器,客戶端的伺服器,你自己的電腦,幾乎任何你想要的地方,而且沒有數量限制。
* 發布軟體

發布你想要的軟體,例如,在你的網站提供下載鏈接,刻成光碟,列印出來等等。
* 收取費用

如果你想在向別人提供軟體時收費,如設置在別人的網站上或者其他用途時。GPL允許你這么做,但是你必須給客戶提供一個GPL副本,告訴他們可以在其他地方得到免費版本。當然最好在此之前,告訴客戶,你為什麼收費。
* 可以任意修改

如果你想添加或刪除功能,沒問題。如果想在其他項目中使用部分代碼,也是可以的,但是唯一的限制是此項目也必須按GPL發布。

商業軟體不能使用GPL協議的代碼。
GNU Lesser General Public License

還有另一個GNU License:GNU Lesser General Public License (LGPL)。比起GPL它授予的許可權較少。一般來說,LGPL比較適合連接到非GPL或者非開源文件的庫文件。由於GPL的規定,使用到部分GPL代碼的軟體,必須也使用GPL,開發人員不能使用GPL來開發收費軟體或者專有軟體。LGPL則沒有這方面的要求,不要求使用與部分代碼相同的 License。

商業軟體可以使用,但不能修改LGPL協議的代碼。
BSD License

BSD License與其他自由軟體License相比,如GPL,限制更少。但是請注意到BSD License兩種版本之間的差別:New BSD License/Modified BSD License 和Simplified BSD License/FreeBSD License。它們兩者都是於GPL兼容的自由軟體License。

New BSD License (」3-clause license」) 可以用於任何作為版權聲明和保證許可的免責聲明的目的,可以通過無限長的再分發來得以維持,也就是說如果再發布的產品中包含源代碼,則在源代碼中必須帶有原來代碼中的BSD協 議。它還有一個特殊限制條款,不用特別的許可就是限制使用派生工作的工作者名字,也就是說不可以用開源代碼的作者/機構名字和原來產品的名字做市場推廣。

New BSD License和Simplified BSD License的主要區別是,後者忽略了非認可條款。

商業軟體可以使用,也可以修改使用BSD協議的代碼。
MIT License

MIT是和BSD一樣寬松的許可協議,作者只想保留版權,而無任何其他了限制.也就是說,你必須在你的發行版里包含原許可協議的聲明,無論你是以二進制發布的還是以源代碼發布的。

* 你可以使用,復制和修改軟體
* 你可以免費使用軟體或出售
* 唯一的限制是,它是必須附有MIT授權協議

商業軟體可以使用,也可以修改MIT協議的代碼,甚至可以出售MIT協議的代碼。
Mozilla Public License 1.1 (MPL)

MPL協議允許免費重發布、免費修改,但要求修改後的代碼版權歸軟體的發起者。這種授權維護了商業軟體的利益,,它要求基於這種軟體得修改無償貢獻版權給該軟體。這樣,圍繞該軟體得所有代碼得版權都集中在發起開發人得手中。但MPL是允許修改,無償使用得。MPL軟體對鏈接沒有要求。

商業軟體可以使用,也可以修改MPL協議的代碼,但修改後的代碼版權歸軟體的發起者。
Common Development and Distribution License

CDDL(Common Development and Distribution License,通用開發與銷售許可)開源協議,是MPL(Mozilla Public License)的擴展協議,它允許公共版權使用,無專利費,並提供專利保護,可集成於商業軟體中,允許自行發布許可。

商業軟體可以使用,也可以修改CDDL協議的代碼。
Apache License

Apache Licence是著名的非盈利開源組織Apache採用的協議。該協議和BSD類似,同樣鼓勵代碼共享和尊重原作者的著作權,同樣允許代碼修改,再發布 (作為開源或商業軟體)。需要滿足的條件:

* 需要給代碼的用戶一份Apache License。
* 如果你修改了代碼,需要在被修改的文件中說明。
* 在延伸的代碼中(修改和有源代碼衍生的代碼中)需要帶有原來代碼中的協議,商標,專利聲明和其他原來作者規定需要包含的說明。
* 如果再發布的產品中包含一個Notice文件,則在Notice文件中需要帶有Apache License。你可以在Notice中增加自己的許可,但不可以表現為對Apache License構成更改。

Apache Licence也是對商業應用友好的許可。使用者也可以在需要的時候修改代碼來滿足需要並作為開源或商業產品發布/銷售。

商業軟體可以使用,也可以修改使用Apache協議的代碼。
Eclipse Public License

EPL是一個與CPL相類似的許可證,任何擴展自Eclipse源碼的代碼也必須是開源的。
Creative Commons

Creative Commons(CC)的許可證不太開放源代碼授權,它們通常用於設計項目。 CC許可證有著寬廣的定義,每個定義都會授予一定的權利。它有四個基本部分,可以單獨或者組合使用。下面是部分概述:

* 署名

作者必須是作品的原創者。 除此之外,作品可以修改,分發,復制和以其他方式使用。
* 相同方式共享

工作可以修改,分發等等,但必須在一個許可證下。
* 非商業

可以修改,分發等,但不用於商業目的。 關於什麼是「商業」,說法比較含糊(沒有提供明確的定義),因此您可能需要在自己的項目中澄清這一點。
* 禁止修改

這意味著您可以復制和分發許可工作,但你不能以任何方式修改,或在原有的基礎開發。

商業軟體的使用要遵從CC協議的具體規定,最嚴格的許可證將是「署名,非商業,不能修改」的授權。這意味著你可以自由共享的工作,但不能改變它,你必須把它歸功於原創者。
Common Public License 1.0

Common許可證有一些細節性的規定值得參考:

* 明確了專利授權。一般的開源軟體都明確源代碼的版權人將自己的修改權、復制權等版權權利向公眾許可,但保留署名權,而Common許可證在此基礎上還明確假如源代碼中含有專利權,源代碼專利權人將復制、使用的專有權利向公眾許可。
* 規定可以將源代碼及修改過的源代碼與其他類型的不受本許可證約束的代碼結合,以新產品的形式發布,只要其中經該許可證獲得的源代碼及修改過的源代碼能按該許可證的要求發布即可。
* 細化了該許可證終止的情形,包括發生專利侵權訴訟。
* 明確了一個獨立承擔責任的原則,就是假如按該許可證使用源代碼的使用者將獲得的源代碼應用於商業使用,那麼他就要對在商業應用中出現的由於使用該源代碼程序而產生的侵權訴訟承擔完全責任。這一條規定是比較特殊的,絕大多數開源軟體許可證都不這么要求。

商業軟體可以使用,也可以修改Common協議的代碼,但要承擔代碼產生的侵權責任。

❿ LINUX需要什麼基礎才可以學還有LINUX職業問題

從整體市場上來說,Linux的發展前景是非常不錯的,就業方向有很多,相對於其他的編版程語言來說權,Linux操作系統是比較簡單的,入門比較容易,適合零基礎人員進行學習,所以即便是沒有基礎只要自己用心,也是可以學習Linux的。
學習Linux之後,可以從事:Linux運維工程師、linux高級架構師、運維開發工程師、資料庫管理員、雲計算架構師等。已經覆蓋了多個應用領域,其中包含了教育、醫療、企業、交通等,與通信、互聯網、物聯網產業進行了融合,起到相輔相成的作用,因此現在人才需求量在不斷的加劇提升之中

閱讀全文

與gnulinux編程指南pdf相關的資料

熱點內容
2017微信最新養號規則 瀏覽:246
什麼叫有網路 瀏覽:540
win10文件傳輸 瀏覽:186
轉移文件到u盤沒反應 瀏覽:488
shemustappear 瀏覽:766
delphi2010幫助文件 瀏覽:906
音頻文件轉文字軟體 瀏覽:8
javasolr視頻教程 瀏覽:511
linux返回指令輸入 瀏覽:289
百度雲36老版本 瀏覽:460
ps模擬器沒有bios文件被載入 瀏覽:71
坤辰貸款的app哪裡下載 瀏覽:195
js數組遍歷 瀏覽:249
win7安裝網路列印機步驟 瀏覽:749
愛樂之城濾鏡是什麼App 瀏覽:717
蘋果u盤修復工具 瀏覽:297
什麼是rt編程 瀏覽:97
河北幹部網路培訓學院 瀏覽:124
為什麼百度互聯必須用原廠數據線 瀏覽:386
征地審批文件有哪些 瀏覽:524

友情鏈接