1. 程式人生 > >馬哥linux作業--第一周

馬哥linux作業--第一周

使用 第一周 ice 安全管理 系統 哲學思想 內核 bsd pri

Q1:描述計算機的組成及其功能。

現在計算機的體系結構為馮?諾依曼體系結構,在此體系結構中,計算機由五大部份組成,分別是:運算器控制器存儲器輸入設備輸出設備(其中運算器和控制器共同組成CPU)。五大組成部分功能如下:

  • 運算器:用於完成算術運算和邏輯運算。
  • 控制器:協調和指揮整個計算機系統的操作。
  • 存儲器:又分為內部存儲器(內存)和外部存儲器(硬盤)。內存容量小,速度快,用於存放程序運行過程和產生的臨時數據,但掉電內容易失;硬盤容量大,速度慢,但其存儲是永久性的,用來長期存儲數據。
  • 輸入設備:將要處理的數據或信號輸入到計算機中,比如鍵盤、鼠標。
  • 輸出設備:計算機將處理結果輸出到輸出設備,比如顯示器。

Q2:描述內核功能以及作用。

  • 進程管理
  • 內存管理
  • 硬件管理
  • 文件系統管理
  • 網絡功能
  • 安全管理

Q3:按系列羅列常見Linux的發行版本,並描述不同發行版的聯系與區別。

  • slackware
    • SUSE
    • OpenSuse
  • debian
    • ubuntu
    • mint
  • redhat
    • RedHat Enterprise Linux
    • Fedora
    • CentOs
  • Gentoo
  • ArchLinux
  • LFS(Linux From Scratch)
    各發行版本都是基於Linux內核,基礎功能相同,各發行版本可自行添加新功能;配置文件和一些設備的名字等可能也有一些差異。

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

  • GPL(General Public License):使用的GPL協議的程序,可以自由修改源代碼,但是必須開源,且采用GPL許可證。
  • LGPL(Lesser General Public License):使用LGPL協議的程序,不必開源,但是如果修改了源代碼,則修改的和衍生的代碼都要采用LGPL協議
  • BSD(Berkeley Software Distribution):可以自由的使用和修改源代碼,但是必須包含源代碼中是BSD協議,並且不能用源代碼的作者的名義做推廣。
  • Apache:c可以自由的使用和修改源代碼,但是必須在修改的文件中說明,且要帶上原有的協議說明。

Q5:描述Linux的哲學思想,並按照自己的理解對其進行解釋性描述。

  • 一切皆文件:在Linux中,所有東西(包括硬件設備)都被抽象為文件(目錄是一種特殊的文件),可以用操作文件(目錄)的方式操作所有東西。
  • 配置文件都是TEXT文本:所以的配置文件,都是Human Readable的純文本文件。
  • 每個程序都盡量簡單,功能單一:復雜的功能(包括Linux本身)都是由一個個小型的、功能單一的程序組成。
  • 盡量減少或不跟用戶交互:所有程序運行時的數據,通過參數的形式給出(或帶有默認值),而不是在運行過程中,再跟用戶交互。

Q6:描述Linux目錄結構以及目錄結構命名規定。

Linux的文件系統是rootfs,即根文件系統,目錄的組織方式是FHS,即Filesystem Hierarchy Standard,規定了每個發行版的文件系統必須有的目錄和文件。

  • FHS各目錄介紹
    • /boot:系統啟動相關的文件,如內核、initrd、grub(bootloader)
    • /dev:設備文件
    • /etc:配置文件
    • /home:用戶主目錄
    • /root:root的主目錄
    • /lib:庫文件和內核模塊文件(/lib/modules)
    • /media:掛載點目錄(移動設備)
    • /mnt:掛載點目錄(額外的臨時文件系統)
    • /misc:雜項
    • /opt:可選目錄,第三方程序的安裝目錄
    • /proc:偽文件系統,內核映射文件
    • /sys:偽文件系統,跟硬件設備相關的屬性映射文件
    • /tmp:臨時文件
    • /var:可變化的文件
    • /bin:可執行文件,用戶命令
    • /sbin:可執行文件,管理命令
    • /usr:
      • /usr/bin
      • /usr/sbin
      • /usr/lib
      • /usr/local(第三方,非必須)
        • /usr/local/bin
        • /usr/local/sbin
        • /usr/local/lib

馬哥linux作業--第一周