Linux基礎及操作架構概述

來源:互聯網
上載者:User

標籤:linux   作業系統   ubuntu   android   移動   

      學習Linux, 當然是要從Linux的基礎開始,學習任何一門技術,都要首先紮實基礎,那麼你後面的路就會越走越順。

      關於Linux,這裡我不想做過多的介紹。大家都知道,Linux是從1991年的時候,有一個叫Linus的人寫了第一個版本的Linux,也就是0.0.1這個版本,當時大概是有8000行的這樣一個代碼,後來他加入了GNU,這個組織是打造一個開源的公用環境。這個組織定義了一個叫GPL的協議,意思就是做這個系統的時候,必須開源,允許別人修改和傳播,但不能作為商業用途。

       現在我們進入課題。

       之前我們記得我們給硬體加電的時候,就是硬體在啟動過程。在以前沒有Linux作業系統的時候,我們是不是一加電,我們就可以到具體的一個物理地址去讀我們寫的程式,然後由這個程式去顯示我們想要的東西,無論是列印出來還是幹嘛的。當時後來我們有了作業系統了,很多事情都交給作業系統來完成,我們啟動過程就發生了一些改變,先是加電,加完電過後通過我們的Bios,因為加完電之後,我們的CPU就要到具體的一個物理地址去取東西,取到的是一個Bios,所以所BIOS是依託於我們系統之外的,然後BIOS又去一個具體的地方,這個地方就是我們儲存空間的首地址,對於我們硬碟來說就是零符道的第一扇區,如果是磁碟片啟動也是第一扇區。那麼去到第一扇區找到啟動入口,這個啟動入口對於我們Linux而然,就是找到了Grub這樣的一個引導程式,這個引導程式就會根據具體情況,因為它知道我們作業系統是在什麼地方的,所以它就去載入我們作業系統的核心。那麼載入核心之後還有很多步驟,那麼其中一個就是要先去掛載我們的檔案系統,因為有了檔案系統我們才能去訪問,才能去儲存。所以這個就是這樣的一個過程。那麼載入了系統核心之後我們還要啟動什麼呢。我們還要啟動我們的系統服務,系統服務要去啟動我們的應用程式,這樣我們整個作業系統就載入完了。


那麼下面我們想一下,如果我們要設計一個作業系統,那我們要怎麼開始來設計呢?

至少我們認為,做一個作業系統的話,我們首先,作業系統至少要知道怎麼去啟動,所以引導必須要有一個入口,其次,這個作業系統至少要能訪問我們的磁碟儲存,這個我們稱之為檔案系統;再次,我們作業系統是不是要有使用者管理,這個先不說,作業系統也有可能是單使用者的。作業系統必須跑程式,那麼跑程式是怎麼跑的呢,那就是要載入到記憶體裡面,那麼要怎麼來存放呢,我們稱之為進程。當然,進城後面我們又誕生了線程這些概念。再其次,我們呢在存放進程的時候,是不是該有記憶體管理。這個就是我們要考慮作業系統的最核心的部分。


我們現在無法去設計一個作業系統,我們就選一個作業系統,當然是選我們的Ubuntu了。

Ubuntu是一個很好的一個開源的,是Android指定的一個作業系統,那就很方便,Ubuntu發展也很快,現在Ubuntu已經開始支援ARM架構了。

Ubuntu官網: www.ubuntu.com

在使用Ubuntu和安裝Ubuntu之前,我們先來瞭解一下Linux作業系統的核心架構。

那麼典型的Linux作業系統是什麼樣子的 ?

        

         ?

         


Linux的主要特點就是:它對硬體的要求是比較低的,因為Linux它的圖形介面是設計到它系統程式去支援的,也就是說它的核心就考慮到圖形介面這一塊,還有Linux預設情況下是沒有圖形介面的。它的圖形介面無非就是進行了一個協議層的封裝。


認識Ubuntu的一些版本。long-term表示長期維護的一個版本。

desktop

server

還有一個cloud版本


Ubuntu的安裝

1、安裝前的準備工作

(1)硬體準備:這個沒什麼好說的,一般現在只要能跑得動的電腦都可以裝。

(2)vmware

(3)檔案系統 : 

1、什麼是檔案系統?

     簡單來說,檔案系統其實就是一種儲存和組織電腦檔案和資料的方法。只不過我們把它做成了一      個  種系統服務。它其實也是一個軟體程式。

2、檔案系統通用結構 ?

      FAT32   NTFS

     EXT3     Swap

      我們想象一下,我們在磁碟上放一個檔案,我們Windows系統是不是有分區這個概念,Linux沒      有。但Linux有引導這個概念,首先我們要去引導它們,所以我們在定義檔案系統的時候首先要有              一個引導塊,其二,我們針對這個磁碟,我們是要儲存磁碟資訊的,比如說我們磁碟有多大,每個      扇區的大小是多少,這個稱之為master,超級塊。其三,我們是不是有一個資料庫去存放資料,           這個就是我們 的資料區塊。我們存取資料快是因為我們有索引區,我們又INode。

3、檔案系統的分類

     磁碟檔案系統

NTFS, EXT3(記錄檔系統)

     快閃記憶體檔案系統

JFFS2,YAFFS

     資料庫檔案系統

BFS,WINFS

     網路檔案系統

NFS

     虛擬檔案系統

VFS(Proc)

4、EXT3  SWAP


2、安裝 Ubuntu desktop & server


Linux檔案及檔案系統:

一切皆檔案

檔案屬性

Linux檔案目錄結構


檔案類型(7種)

一般檔案 -

目錄檔案 d

連結檔案 l

塊裝置 b

字元裝置 c

socket s

管道 p (其實就是把一個程式的出口寫到另外一個程式的入口)


Linux基礎及操作架構概述

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.