magedu-第一週做業

一、描述計算機的組成及其功能。react

計算器主要有如下兩部分組成linux

  • 軟件
  • 系統軟件

主要控制硬件和協調計算機外部設備的系統(如windows,liunx)編程

  • 應用軟件

只用戶使用各類程序設計語言進行編程進行實現某一功能和解決某一問題(如微信,QQ等)windows

  • 硬件
  • 主機

計算機核心部分(CPU,RAM,ROM等)centos

  • 外部設備

配合核心部分做出一系列指令的單獨設備,輸入設備(鍵盤鼠標),輸出設備(顯示器等),外部存儲器(硬盤,U盤等)服務器

 

 

二、描述內核功能以及做用微信

  • 內核是指一個系統軟件,是操做系統的核心,負責進程,內存,設備驅動程序,文件和網絡系統等。
    • 進程管理:內核負責建立和銷燬進程, 並處理它們與外部世界的聯繫(輸入和輸出),不一樣進程間通信(經過信號,管道,或者進程間通信原語)對整個系統功能來講是基本的,也由內核處理。 另外, 調度器, 控制進程如何共享CPU,是進程管理的一部分。更一般地,內核的進程管理活動實現了多個進程在一個單個或者幾個CPU 之上的抽象。網絡

    • 內存管理:計算機的內存是主要的資源, 處理它所用的策略對系統性能是相當重要的。內核爲全部進程的每個都在有限的可用資源上創建了一個虛擬地址空間。內核的不一樣部分與內存管理子系統經過一套函數調用交互,從簡單的malloc/free對到更多更復雜的功能。異步

    • 文件管理:Linux 在很大程度上基於文件系統的概念;幾乎Linux中的任何東西均可看做一個文件。內核在非結構化的硬件之上創建了一個結構化的文件系統,結果是文件的抽象很是多地在整個系統中應用。另外,Linux 支持多個文件系統類型,就是說,物理介質上不一樣的數據組織方式。例如,磁盤可被格式化成標準Linux的ext3文件系統,廣泛使用的FAT文件系統,或者其餘幾個文件系統。函數

    • 驅動管理:幾乎每一個系統操做終都映射到一個物理設備上,除了處理器,內存和很是少的別的實體以外,所有中的任何設備控制操做都由特定於要尋址的設備相關的代碼來進行。這些代碼稱爲設備驅動。內核中必須嵌入系統中出現的每一個外設的驅動,從硬盤驅動到鍵盤和磁帶驅動器。

    • 網絡管理:網絡必須由操做系統來管理,由於大部分網絡操做不是特定於某一個進程: 進入系統的報文是異步事件。報文在某一個進程接手以前必須被收集,識別,分發,系統負責在程序和網絡接口之間遞送數據報文,它必須根據程序的網絡活動來控制程序的執行。另外,全部的路由和地址解析問題都在內核中實現。

三、按系列羅列常見Linux的發行版,並描述不一樣發行版之間的聯繫與區別。

linux的發行版:
RedHat、Fedora、suse(Novell)、紅旗、debian、Ubuntu、centos
不一樣發行版之間的聯繫和區別:
  • Red Hat ,是redhat本身的發行的企業版,是redhat的一個重要節點。
  • Fedore是一款基於linux的操做系統,也是一組維持計算機正常運行的軟件集合。由紅帽公司贊助。
  • suse linux,針對我的用戶。
  • 紅旗linux的發行版,包括桌面版、工做站版、數據中心服務器版、HA集羣版和紅旗嵌入式linux等產品,是中國較大、較成熟的linux發行版之一。
  • debian,三大發行版中惟一以社區形式運做,不以商業公司形式運做。是一個致力於建立自由操做系統的合做組織。並且debian開發者所建立的操做系統中絕大部分基礎工具來自於GNU工程。
  • Ubuntu(烏版圖)是一個以桌面應用爲主的linux操做系統。Ubuntu的目標在於爲通常用戶提供一個最新的、同時又至關穩定的主要由自由軟件構建而成的操做系統。
  • Centos是一個基於redhat linux 提供的可自由使用源代碼的企業級linux發行版本。目前Centos已被收購,成爲redhat

四、描述常見的開源協議(GPL,LGPL, BSD,Apache等)以及開源協議的區別

  • GPL
  1. 確保軟件自始至終都以開放源代碼形式發佈,保護開發成果不被竊取用做商業發售。任何一套軟件,只要其中使用了受 GPL 協議保護的第三方軟件的源程序,並向非開發人員發佈時,軟件自己也就自動成爲受 GPL 保護而且約束的實體。也就是說,此時它必須開放源代碼。
  2. GPL 大體就是一個左側版權(Copyleft,或譯爲「反版權」、「版權屬左」、「版權所無」、「版責」等)的體現。你能夠去掉全部原做的版權 信息,只要你保持開源,而且隨源代碼、二進制版附上 GPL 的許可證就行,讓後人能夠很明確地得知此軟件的受權信息。GPL 精髓就是,只要使軟件在完整開源 的狀況下,儘量使使用者獲得自由發揮的空間,使軟件獲得更快更好的發展。
  3. 不管軟件以何種形式發佈,都必須同時附上源代碼。例如在 Web 上提供下載,就必須在二進制版本(若是有的話)下載的同一個頁面,清楚地提供源代碼下載的連接。若是以光盤形式發佈,就必須同時附上源文件的光盤。
  4. 開發或維護遵循 GPL 協議開發的軟件的公司或我的,能夠對使用者收取必定的服務費用。但仍是一句老話——必須無償提供軟件的完整源代碼,不得將源代碼與服務作捆綁或任何變相捆綁銷售。
  • LGPL

LGPL是 GNU Lesser General Public License (GNU 寬通用公共許可證)的縮寫形式,舊稱GNU Library General Public License (GNU 庫通用公共許可證),後來改稱做Lesser GPL,即爲更寬鬆的GPL,在寬鬆程度上與BSD, Apache,XFree86 許可證類似。GPL(General Public License)和LGPL是GNU的兩種License。愈來愈多的自由軟件(Free Software)使用GPL做爲其受權聲明,若是對GPL一點都不瞭解,有可能在使用自由軟件時違反GPL的受權,恐怕會有被起訴的風險。因此任何公司在使用自由軟件以前應該保證在LGPL或其它GPL變種的受權下。

LGPL 是GPL的一個爲主要爲類庫使用設計的開源協議。和GPL要求任何使用/修改/衍生之GPL類庫的的軟件必須採用GPL協議不一樣。LGPL 容許商業軟件經過類庫引用(link)方式使用LGPL類庫而不須要開源商業軟件的代碼。這使得采用LGPL協議的開源代碼能夠被商業軟件做爲類庫引用並 發佈和銷售。可是若是修改LGPL協議的代碼或者衍生,則全部修改的代碼,涉及修改部分的額外代碼和衍生的代碼都必須採用LGPL協議。因 此LGPL協議的開源 代碼很適合做爲第三方類庫被商業軟件引用,但不適合但願以LGPL協議代碼爲基礎,經過修改和衍生的方式作二次開發的商業軟件採用。
GPL/LGPL都保障原做者的知識產權,避免有人利用開源代碼複製並開發相似的產品。

  • BSD

BSD許可證原先是用在加州大學柏克利分校發表的各個4.4BSD/4.4BSD-Lite版本上面(BSD是Berkly Software Distribution的簡寫)的,後來也就逐漸沿用下來。1979年加州大學伯克利分校發佈了BSD Unix,被稱爲開放源代碼的先驅,BSD許可證就是隨着BSD Unix發展起來的。BSD許可證被Apache和BSD操做系統等開源軟件所採納。
相較於GPL許可證和MPL許可證的嚴格性,BSD許可證就寬鬆許多了,同樣是只須要附上許可證的原文,不過比較有趣的是,它還要求全部進一步開發者將本身的版權資料放上去,因此拿到以BSD許可證發行的軟件可能會遇到一個小情況,就是這些版權資料許可證佔的空間比程序還大。

  • Apache

Apache Licence是著名的非盈利開源組織Apache採用的協議。該協議和BSD相似,一樣鼓勵代碼共享和尊重原做者的著做權,一樣容許代碼修改,再發布(做爲開源或商業軟件)。須要知足的條件也和BSD相似:

  1. 須要給代碼的用戶一份Apache Licence
  2. 若是你修改了代碼,須要在被修改的文件中說明。
  3. 在延伸的代碼中(修改和有源代碼衍生的代碼中)須要帶有原來代碼中的協議,商標,專利聲明和其餘原來做者規定須要包含的說明。
  4. 若是再發布的產品中包含一個Notice文件,則在Notice文件中須要帶有Apache Licence。你能夠在Notice中增長本身的許可,但不能夠表現爲對Apache Licence構成更改。

六、描述linux目錄結構以及目錄結構命名規定

目錄結構

  • 文件系統從根目錄開始 "/"來表示
  • 路徑分隔使用"/"
  • 文件名稱區分大小寫
  • .開始文件爲隱藏文件
  • 單根倒置樹結構

命名規則

  • 文件名最長255字節

文件名稱大小寫敏感

  • 路徑+文件名稱最長爲4095字節
  • 斜槓和NULL,全部字符都有效,可是不建議使用。
相關文章
相關標籤/搜索