《linux簡(jiǎn)單介紹課件》由會(huì)員分享,可在線閱讀,更多相關(guān)《linux簡(jiǎn)單介紹課件(23頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,第1章 Linux系統(tǒng)概述,Linux操作系統(tǒng)是目前上升最快的操作系統(tǒng),從1991年誕生到現(xiàn)在的二十多年間,Linux逐步完善和發(fā)展。Linux操作系統(tǒng)在服務(wù)器、嵌入式等方向獲得了長(zhǎng)足的發(fā)展,并在個(gè)人操作系統(tǒng)方面有著大范圍的應(yīng)用,這主要得益于其開放性。本章對(duì)Linux的發(fā)展進(jìn)行介紹,主要包含如下幾個(gè)方面:,Linux發(fā)展的歷史,以時(shí)間為主線對(duì)Linux的誕生進(jìn)行介紹;,分析Linux和UNIX操作系統(tǒng)的異同;,介紹常用的幾種Linux發(fā)行版本的特點(diǎn);,對(duì)Linux操作系統(tǒng)的系統(tǒng)架構(gòu)進(jìn)行簡(jiǎn)單的介紹;,介紹了G
2、NU通用公共許可證及其特點(diǎn)。,1.1 Linux發(fā)展歷史,Linux操作系統(tǒng)于1991年誕生,目前已經(jīng)成為主流的操作系統(tǒng)之一。其版本從開始的0.01版本到目前的2.6.28.4版本經(jīng)歷了20多年的發(fā)展,從最初的蹣跚學(xué)步的嬰兒成長(zhǎng)為目前在服務(wù)器、嵌入式系統(tǒng)和個(gè)人計(jì)算機(jī)等多個(gè)方面得到廣泛應(yīng)用的操作系統(tǒng)。,1.1.1 Linux的誕生和發(fā)展,Linux的誕生和發(fā)展與個(gè)人計(jì)算機(jī)的發(fā)展歷程是緊密相關(guān)的,特別是隨著Intel的i386個(gè)人計(jì)算機(jī)的發(fā)展而逐步成熟。在1981年之前沒有個(gè)人計(jì)算機(jī),計(jì)算機(jī)是大型企業(yè)和政府部門才能使用的昂貴設(shè)備。IBM公司在1981年推出了個(gè)人計(jì)算機(jī)IBM PC,從而造成個(gè)人計(jì)算
3、機(jī)的發(fā)展和普及。剛開始的時(shí)候,微軟幫助IBM公司開發(fā)的MS-DOS操作系統(tǒng)在個(gè)人計(jì)算機(jī)中占有統(tǒng)治地位。隨著IT行業(yè)的發(fā)展,個(gè)人計(jì)算機(jī)的硬件價(jià)格雖然逐年在下降,但是軟件特別是操作系統(tǒng)的價(jià)格一直居高不下。,與個(gè)人計(jì)算機(jī)對(duì)應(yīng),在大型機(jī)上的主流操作系統(tǒng)是UNIX,而UNIX操作系統(tǒng)對(duì)操作系統(tǒng)的發(fā)展有諸多障礙:,UNIX的經(jīng)銷商為了尋求高利率,將價(jià)格抬得很高,個(gè)人計(jì)算機(jī)的用戶就根本不能靠近它,不利于操作系統(tǒng)的普及。,1.1.2 Linux名稱的由來,Linux操作系統(tǒng)的名稱最初并沒有被稱作Linux。Linus給他的操作系統(tǒng)取的名字是Freax,這個(gè)單詞的含義是怪誕的、怪物、異想天開的意思。當(dāng)Torva
4、lds將他的操作系統(tǒng)上傳到服務(wù)器ftp.funet.fi上的時(shí)候,這個(gè)服務(wù)器的管理員Ari Lemke對(duì)Freax這個(gè)名稱很不贊成,所以將操作系統(tǒng)的名稱改為了Linus的諧音Linux,于是這個(gè)操作系統(tǒng)的名稱就以Linux流傳下來。,在Linus的自傳Just for Fun一書中,Linus解釋說:“Ari Lemke,他十分不喜歡Freax這個(gè)名字。倒喜歡我當(dāng)時(shí)正在使用的另一個(gè)名字Linux,并把我的郵件路徑命名為pub OS/Linux。我承認(rèn)我并沒有太堅(jiān)持。但這一切都是他搞的。所以我既可以不慚愧地說自己不是那么以個(gè)人為中心,但是也有一點(diǎn)個(gè)人的榮譽(yù)感。而且個(gè)人認(rèn)為,Linux是個(gè)不錯(cuò)的名
5、字?!睂?shí)際上,在早期的源文件中仍然使用Freax作為操作系統(tǒng)的名字,可以從Makefile文件中看出此名稱的一些蛛絲馬跡。,1.2 Linux的發(fā)展要素,Linux操作系統(tǒng)是UNIX的一種典型的克隆系統(tǒng)。在Linux誕生之后,借助于Internet網(wǎng)絡(luò),在全世界計(jì)算機(jī)愛好者的共同努力下,成為目前世界上使用者最多的一種類UNIX操作系統(tǒng)。在Linux操作系統(tǒng)的誕生、成長(zhǎng)和發(fā)展過程中,如下五個(gè)方面起了重要的作用:UNIX操作系統(tǒng)、Minix操作系統(tǒng)、GNU計(jì)劃、POSIX標(biāo)準(zhǔn)和Internet網(wǎng)絡(luò)。,1.2.1 UNIX操作系統(tǒng),UNIX操作系統(tǒng)于1969年在Bell實(shí)驗(yàn)室誕生,它是美國貝爾實(shí)驗(yàn)室
6、的Ken.Thompson和Dennis Ritchie在DEC PDP-7小型計(jì)算機(jī)系統(tǒng)上開發(fā)的一種分時(shí)操作系統(tǒng)。,Ken Thompson開發(fā)UNIX操作系統(tǒng)的初衷是為了能在一臺(tái)閑置的PDP-7計(jì)算機(jī)上運(yùn)行星際旅行游戲,他在1969年夏天花費(fèi)一個(gè)月的時(shí)間開發(fā)出了UNIX操作系統(tǒng)的原型。最開始,開發(fā)UNIX操作系統(tǒng)使用的是BCPL語言(即通常所說的B語言),后來Dennis Ritchie于1972年使用C語言對(duì)UNIX操作系統(tǒng)進(jìn)行了改寫。同時(shí)UNIX操作系統(tǒng)在大學(xué)中得到廣泛的推廣,并將UNIX的授權(quán)分發(fā)給多個(gè)商業(yè)公司。,Linux是一種UNIX的克隆系統(tǒng),采用了幾乎一致的系統(tǒng)API接口。特
7、別是網(wǎng)絡(luò)方面,二者的接口的應(yīng)用程序幾乎完全一致。,1.2.2 MINIX操作系統(tǒng),Minix操作系統(tǒng)也是UNIX操作系統(tǒng)的一種克隆系統(tǒng),它由荷蘭Amsterdam的Vrije大學(xué)著名教授Andrew S.Tanenbaum于1987年開發(fā)完成。Minux操作系統(tǒng)目的主要用于學(xué)生學(xué)習(xí)操作系統(tǒng)原理時(shí)教學(xué)使用。在當(dāng)時(shí)Minix操作系統(tǒng)在大學(xué)中使用是免費(fèi)的,但是其他用途則需要收費(fèi)。目前Minix操作系統(tǒng)已經(jīng)都是免費(fèi)的,可以從許多FTP上下載,目前主要有1.5版本和2.0版本在使用。,由于Minix操作系統(tǒng)提供源代碼,并且與操作系統(tǒng)相結(jié)合,有一本高質(zhì)量的書籍介紹其實(shí)現(xiàn)原理,在當(dāng)時(shí)全世界的大學(xué)中形成了學(xué)習(xí)
8、Minix操作系統(tǒng)的風(fēng)氣,Linus剛開始就是參照此系統(tǒng)在1991年開始開發(fā)Linux的。,1.2.3 POSIX 標(biāo)準(zhǔn),POSIX(Portable Operating System Interface for Computing Systems)是由IEEE和ISO/IEC開發(fā)的一套標(biāo)準(zhǔn)。POSIX標(biāo)準(zhǔn)是對(duì)UNIX操作系統(tǒng)的經(jīng)驗(yàn)和實(shí)踐的總結(jié),對(duì)操作系統(tǒng)系統(tǒng)調(diào)用的服務(wù)接口進(jìn)行了標(biāo)準(zhǔn)化,保證所編制的應(yīng)用程序在源代碼一級(jí)可以在多種操作系統(tǒng)上進(jìn)行移植。,在90年代初,POSIX標(biāo)準(zhǔn)的制定處于最后確定的投票階段,而Linux正處于開始的誕生時(shí)期。作為一個(gè)指導(dǎo)性的綱領(lǐng)性標(biāo)準(zhǔn),Linux的接口與POSI
9、X相兼容。,1.3 Linux與UNIX異同,Linux是UNIX操作系統(tǒng)的一個(gè)克隆系統(tǒng),沒有UNIX就沒有Linux。但是,Linux和傳統(tǒng)的UNIX有很大的不同,兩者之間的最大區(qū)別是關(guān)于版權(quán)方面的:Linux是開放源代碼的自由軟件,而UNIX是對(duì)源代碼實(shí)行知識(shí)產(chǎn)權(quán)保護(hù)的傳統(tǒng)商業(yè)軟件。兩者之間還存在如下的區(qū)別:,UNIX操作系統(tǒng)大多數(shù)是與硬件配套的,操作系統(tǒng)與硬件進(jìn)行了綁定;而Linux則可運(yùn)行在多種硬件平臺(tái)上,UNIX操作系統(tǒng)是一種商業(yè)軟件(授權(quán)費(fèi)大約為5萬美元);而Linux操作提供則是一種自由軟件,是免費(fèi)的,并且公開源代碼。,UNIX的歷史要比Linux悠久,但是Linux操作系統(tǒng)由于
10、吸取了其他操作系統(tǒng)的經(jīng)驗(yàn),其設(shè)計(jì)思想雖然源于UNIX但是要優(yōu)于UNIX。,1.4 操作系統(tǒng)類型選擇和內(nèi)核版本的選擇,要在Linux環(huán)境下進(jìn)行程序設(shè)計(jì),首先要選擇合適的Linux發(fā)行版本和Linux的內(nèi)核,選擇一款適合自己的Linux操作系統(tǒng)。本節(jié)對(duì)常用的發(fā)行版本和Linux內(nèi)核的選擇進(jìn)行了介紹,并簡(jiǎn)要講解了如何定制自己的Linux操作系統(tǒng)。,1.4.1 常見不同公司發(fā)行的Linux的異同,Linux的發(fā)行版本眾多,曾有人收集過超過300種的發(fā)行版本。當(dāng)然,不能在本書中介紹眾多的發(fā)行版特點(diǎn),這超出了本書的范圍。,版本名稱,網(wǎng)址,特點(diǎn),軟件包管理器,Debian Linux,www.debian.
11、org,開放的開發(fā)模式,并且易于進(jìn)行軟件包升級(jí),apt,Fedora Core,,擁有數(shù)量龐大的用戶,優(yōu)秀的社區(qū)技術(shù)支持,并且有許多創(chuàng)新,up2date,(,rpm),,,yum,(,rpm,),CentOS,www.centos.org,CentOS,是一種對(duì),RHEL,(,Red Hat Enterprise Linux,)源代碼再編譯的產(chǎn)物,由于,Linux,是開發(fā)源代碼的操作系統(tǒng)并不排斥基于源代碼的再分發(fā),,CentOS,就是將商業(yè)的,Linux,操作系統(tǒng),RHEL,進(jìn)行源代碼在編譯后分發(fā),并在,RHEL,的基礎(chǔ)上修正了不少已知的,Bug,rpm,SUSE Linux,,專業(yè)的操作系統(tǒng)
12、,易用的,YaST,軟件包管理系統(tǒng)開放。,YaST,(,rpm,),第三方,apt,(,rpm,)軟件庫(,repository,),Mandriva,,操作界面友好,使用圖形配置工具,有龐大的社區(qū)進(jìn)行技術(shù)支持,支持,NTFS,分區(qū)的大小變更,rpm,KNOPPIX,,可以直接在,CD,上運(yùn)行,具有優(yōu)秀的硬件檢測(cè)和適配能力,可作為系統(tǒng)的急救盤使用,apt,Gentoo Linux,www.gentoo.org,高度的可定制性,使用手冊(cè)完整,portage,Ubuntu,,優(yōu)秀易用的桌面環(huán)境,基于,Debian,的不穩(wěn)定版本構(gòu)建,apt,1.4.2 內(nèi)核版本的選擇,內(nèi)核是Linux操作系統(tǒng)的最重
13、要的部分,從最初的0.95版本到目前的2.6.28.4版本,Linux內(nèi)核開發(fā)經(jīng)過了近20年的時(shí)間,其架構(gòu)已經(jīng)十分穩(wěn)定。Linux內(nèi)核的編號(hào)采用如下編號(hào)形式:,主版本號(hào).次版本號(hào).主補(bǔ)丁號(hào).次補(bǔ)丁號(hào),Linux內(nèi)核版本的開發(fā)源代碼樹目前比較通用的是2.6.xx的版本,當(dāng)然,有部分2.4的版本仍在使用。與2.4版本的內(nèi)核相比較,2.6版本內(nèi)核具有如下的優(yōu)勢(shì):,支持絕大多數(shù)的嵌入式系統(tǒng),加入了之前嵌入式系統(tǒng)經(jīng)常使用的Clinux的大部分代碼,并且子系統(tǒng)的支持更加細(xì)化可以支持硬件體系結(jié)構(gòu)的多樣性,可搶占內(nèi)核的調(diào)度方式支持實(shí)時(shí)系統(tǒng),可定制內(nèi)核。,1.5 Linux的系統(tǒng)架構(gòu),Linux系統(tǒng)從應(yīng)用角度來
14、看,分為內(nèi)核空間和用戶空間兩個(gè)部分。內(nèi)核空間是Linux操作系統(tǒng)的主要部分,但是僅有內(nèi)核的操作系統(tǒng)是不能完成用戶任務(wù)的。豐富并且功能強(qiáng)大的應(yīng)用程序包是一個(gè)操作系統(tǒng)成功的必要條件。,1.5.1 Linux內(nèi)核的主要模塊,Linux的內(nèi)核主要由5個(gè)子系統(tǒng)組成:進(jìn)程調(diào)度、內(nèi)存管理、虛擬文件系統(tǒng)、網(wǎng)絡(luò)接口、進(jìn)程間通信。下面依次講解這五個(gè)子系統(tǒng)。,1進(jìn)程調(diào)度SCHED,2內(nèi)存管理MMU,3虛擬文件系統(tǒng)VFS,4網(wǎng)絡(luò)接口,5進(jìn)程間通訊,1.5.2 Linux的文件結(jié)構(gòu),與Windows下的文件組織結(jié)構(gòu)不同,Linux不使用磁盤分區(qū)符號(hào)來訪問文件系統(tǒng),而是將整個(gè)文件系統(tǒng)表示成樹狀的結(jié)構(gòu),Linux系統(tǒng)每增加
15、一個(gè)文件系統(tǒng)都會(huì)將其加入到這個(gè)樹中。,操作系統(tǒng)文件結(jié)構(gòu)的開始,只有一個(gè)單獨(dú)的頂級(jí)目錄結(jié)構(gòu),叫做根目錄。所有一切都從“根”開始,用“/”代表,并且延伸到子目錄。DOS/Windows下文件系統(tǒng)按照磁盤分區(qū)的概念分類,目錄都存于分區(qū)上。Linux則通過“掛接”的方式把所有分區(qū)都放置在“根”下各個(gè)目錄里。,1.5.2 Linux的文件結(jié)構(gòu),1.6 GNU通用公共許可證,GNU通用公共許可證(簡(jiǎn)稱為GPL)是由自由軟件基金會(huì)發(fā)行的用于計(jì)算機(jī)軟件的一種許可證制度。GPL最初是由Richard Stallman為GNU計(jì)劃而撰寫。目前,GNU通行證被決大多數(shù)的GNU程序和超過半數(shù)的自由軟件采用。此許可證最
16、新版本為“版本3”,于2007年發(fā)布。GNU寬通用公共許可證(簡(jiǎn)稱LGPL)是由GPL衍生出的許可證,被用于一些GNU程序庫。,1.6.1 GPL許可證的歷史,GPL的“版本1”,在1989年1月誕生。在1990年時(shí),因?yàn)橐恍┕蚕韼斓氖褂枚霈F(xiàn)了對(duì)GPL許可證制度更為寬松的需求,在GPL“版本2”在1991年6月發(fā)布時(shí),另一許可證庫通用許可證(Library General Public License,簡(jiǎn)稱LGPL)也隨之發(fā)布,并記作“版本2”以示對(duì)GPL的補(bǔ)充。在LGPL版本2.1發(fā)布時(shí)與GPL版本不再對(duì)應(yīng),而LGPL也被重命名為GNU寬通用公共許可證(Lesser General Public License)。,相對(duì)于GPLv2,主要有四個(gè)不同的方面:,數(shù)字版權(quán)問題。,專利擴(kuò)散許可。,衍生產(chǎn)品的定義。,GPLv3協(xié)議于其他協(xié)議的兼容問題。,1.6.2 GPL的自由理念,軟件的版權(quán)保護(hù)機(jī)制在保護(hù)發(fā)明人權(quán)益的同時(shí),對(duì)軟件的技術(shù)進(jìn)步造成了影響。版權(quán)所有軟件的最終用戶幾乎不能從所購買的軟件中得到任何軟件設(shè)計(jì)相關(guān)的權(quán)利(除了使用的權(quán)利),甚至可能限制像逆向工程等法律允許范圍內(nèi)的行為。與此