電腦網路與作業系統 電腦網路與作業系統

電腦網路與作業系統上課教材 - 2018 年版

電腦網路與作業系統 > 課程內容 > 期末考練習 - 計概與作業系統簡易管理操作

期末考練習 - 計概與作業系統簡易管理操作

上次更新日期 2018/06/13

全部的課程上完之後,請自己檢驗一下你是否學會這些東西:

  • 最基礎的資料表示:包括 10 進位與 2 進位的概念、bite, byte, KB, MB, GB, TB 等單位說明、中文的編碼、RGB 3 原色與佔用的容量等等。
  • 基礎的計概:包括 PC 硬體構成、五大組成元件、以 4 個同心圓介紹硬體、作業系統與應用程式的關係、記憶體的種類、 PCIE 的版本與速度、硬碟的界面與速度的概念、螢幕的連接界面等
  • 基礎的作業系統操作:多元程式處理系統的功能、初次使用 Linux 作業系統、process 與 program 的差異、 process 在 Linux 系統下的觀察、樹狀目錄的檔案管理、檔案系統的建置管理、基本的帳號建立與管理等等
  • 權限的設計:包括 Linux 的 UID, GID 以及 r, w, x 的權限控制等
  • 之後則是應用軟體的操作,包括單機版本的 office 操作、雲端系統的 office 操作等功能
  • 網際網路相關通訊協定認識、Linux 網路觀察與設定等等任務
  • 網路伺服器的基本建置跟簡單的資料傳輸功能。

期末考全部的東西都要考,大家加油!

  • P1.1: 筆試 (close book) 部份
  • P1.2: 上機 (open book) 部份

P1.1: 筆試 (close book) 部份

嘗試思考與回答底下的問題:

  1. 基礎的資料表示法以及單位換算:
    1. 分別以 10 進位與 2 進位,說明 1Tbytes 等於多少 Kbyte 容量?
    2. 硬碟出廠時,假設容量定為 4TB,則格式化成為檔案系統後,這顆硬碟可以存放的檔案容量大概是多少 (寫下計算式)?
    3. 如果你家裡的中華電信光纖到府的服務,你家的網路速度是下載/上傳分別為 100Mbps/60Mbps,則當你『下載』一個 4Gbytes 的容量時, 如果以最大理論速度來計算,幾秒鐘後,可以下載完畢?
    4. 寫下 172 這個 10 進位的數值,轉成 2 進位會是多少?並以 1 byte 的方式來紀錄 (寫下計算式)?
    5. 一般電腦系統常用的影像為使用 RGB 三原色,這三個顏色分別是什麼?
    6. 假設你的手機拍照功能中,他具有一千兩百萬像素,如果你使用 4:3 的格式,請問: (a)最大解析度大概是多少? (b)若存檔使用 BMP 的格式,則每個檔案會佔用多少容量,請用 MBytes 為單位?
    7. 在一般桌上型電腦使用的硬體速度或頻寬方面,經常使用的單位是什麼?舉例來說,常見的(1)容量單位、(2)速度時脈單位、(3)網路速度單位、 (4)PCI-E或者是其他匯流排的頻寬單位,個別是什麼?
  2. 基礎計算機概論 - 關於超級電腦與運算能力的計算部份:
    1. 查詢一下Intel 的 CPU E5-2650 v4: (1)這個 CPU 的基礎時脈是多少(連同單位)、(2)有幾個核心、(3)幾個執行緒、(4)從理論上來說, 這顆 CPU 的浮點運算 (Float point per second, Flops) 大概的算法是『 時脈 * 核心數 * 16 』,請依據這個算法算出這顆 CPU 的基礎浮點運算量。
    2. 數值模式大多使用浮點運算進行資料的計算。假設我有個模式需要運作,粗步估計該模式的運作每個網格每一天需要花費 100GFlops 的運算效能。 且假設我需要的網格點數為 100x90 這麼多,且模擬 30 天,請問,這個模式要花費多少運算效能?(寫出 GFlops 或 TFlops 的數據)
    3. 承上,那個模式使用 Intel E5 2650 v4 這個 CPU 來運作的話,大概要花費多少小時來完成這個模式的進行?
    4. 查詢一下這個連結 https://www.top500.org/system/179170, 該電腦位於台灣的國家高速網路中心。假設我可以拿這個系統來操作我的模式,那麼完成我的模式又需要多少時間?
  3. 基礎計算機概論 - 關於 CPU 與相關硬體的部份:
    1. 目前桌機使用精簡指令集的 CPU,請說明主要的代表架構是哪一種?而手機主要使用精簡指令集的 CPU,主要的架構又是哪一種?
    2. 所謂的 32 位元 CPU 指的是 CPU 有 32 條記憶體定址。請問 32 位元 CPU 最大可讀取的記憶體資料是多少 GBytes 呢?
    3. 目前主機板上的線路中,CPU 主要與記憶體、南橋晶片及 PCI-E 插槽互相連接。請問這個連接到 CPU 的 PCI-E 對於桌機來說,主要大概都是安裝什麼硬體元件?
    4. CPU 為 64 位元,時脈 3GHz,為 8 核心,那麼這顆 CPU 的最大可讀寫頻寬是多少 Gbytes/s?(寫下算式)
    5. DDR4-3200 記憶體中,(1)那個 3200 指的是什麼?此外,(2)一般記憶體的資料寬度是多少 bit
    6. 說明 PCI-E 3.0 的 4x 頻寬大約是多少 (單指上傳或下載,不是兩者相加)
    7. 記憶體(含輔助記憶體)大概種類有主記憶體(RAM)、唯讀記憶體(ROM)、硬碟等等,那麼BIOS這組程式碼是放置在哪種記憶體中?
    8. 寫出目前常見的硬碟與主機板上的連接界面,至少 3 個。
    9. 說明 SATA 3.0 與 USB 3.0 的界面理論頻寬個別是多少 (Mbytes/s)?
    10. 寫出常見的螢幕連接到顯示卡的界面,至少 3 個。
    11. 承上,哪一種界面可以同時傳輸聲音與影像?
    12. 所謂的 4K 與 8K 電視,指的是什麼?
  4. 基礎計算機概論 - 關於作業系統的部份:
    1. 作業系統設計從批次系統轉到多元程式處理系統的目的主要是什麼?
    2. 繪製出『多元程式處理系統』的工作在記憶體內的五種程序狀態,與各狀態間的關係。
    3. 以四個同心圓繪製出 x86_64 硬體、Linux kernel、POSIX、office 的相關性
    4. 作業系統的程式被執行後會在記憶體裡面變成程序 (process),並且每個程序會有獨一無二的 PID,同時每個程序依據重要性不同, 也可能會有優先序 (Priority) 的差異。另外,如果程序的 I/O wait 程序太嚴重,效能會變得很糟糕。
    5. 在 Linux 系統下,透過哪些指令可以查到程序的 PID 呢 (至少寫出三個)
    6. 無論是 windows / Linux,一般來說,作業系統裡面的帳號主要分為哪兩種?
    7. 事實上帳號中、英文是給人類看的,系統紀錄的其實是數值。使用者識別與群組識別的簡寫為何?
    8. 在 Linux 環境下,哪兩個指令可以讓你建立一個帳號 (含密碼)
    9. 另外,假設帳號名稱為 alex,這個帳號的『家目錄』預設通常是在哪裡?(寫出完整路徑)
    10. 一般來說,windows 與 Linux 的系統管理員帳號名稱分別是什麼?
    11. 相對於 windows 檔名最頂層為『本機 (或我的電腦)』,Linux 最頂層檔名稱為 root,符號為?
    12. 在 Linux 的目錄樹裡面有幾個常見的符號,請說明其意義: (1) ./ (2) ../ (3) /
    13. 使用 ll /etc/passwd 與 file /etc/passwd 的結果差異為何?
  5. 基礎計算機概論 - 關於檔案系統的部份:
    1. 常見的檔案系統設計方式有索引式檔案系統 (indexed allocation) 與鍊結式檔案系統 (Linked allocation), 請說明 FAT, EXT4, XFS, NTFS 各為哪一種檔案系統類型。
    2. 所謂的檔案系統建立,就是一般簡稱的格式化。在索引式檔案系統中,格式化時,會有哪三個重要的項目被建置出來?
    3. 呈上,時間、檔案擁有者、檔案權限、檔案容量等屬性,以及檔案的內容文件,分別放置在哪兩個區塊上?
    4. 將檔案系統 (可以想成是某個裝置) 連結到某個目錄,這個動作被稱為掛載。那麼在 Linux 系統中,哪些指令可以讓你觀察目前的掛載點? 至少寫出兩個。
    5. 一般硬碟可能要先經過分割才能夠被格式化利用。目前常見的 windows/Linux 系統中,主要支援的分割表有那兩種?
    6. 在 Linux 系統中,上述兩種分割表,各別要使用哪一個指令進行分割的行為?
    7. 在 Linux 系統中,寫出 /etc/fstab 內容中的每一行六個欄位的意義。
    8. 在 Linux 系統中, touch /some/filename1 與 mkdir /some/filename2 的結果,產生的兩個檔名是什麼?
    9. lsblk 與 mkfs.xfs 的功能各為何?
    10. partprobe 的功能是什麼?
    11. 一般來說,在 Linux 系統下,每個檔案會有三組 rwx 的權限,是哪三組身份?
    12. chown, chgrp, chmod 個別是在修改什麼?
  6. 基礎計算機概論 - 乙太網路與 Internet 基礎:
    1. 乙太網路就像門牌,這個門牌上面會有識別碼,請問識別碼 (1)名稱為? (2)佔用的資料位元數?
    2. 一般來說,網路線的接頭形式為 RJ-45 網路接頭,共有幾條芯
    3. 請說明 CAT5, CAT5e, CAT6, CAT6a 網路線所搭配的基本網路傳輸速度是多少?
    4. 說明全雙工與半雙工的差異。
    5. 簡易說明乙太網路 CSMA/CD 的意義。
    6. hub 與 switch 哪一個是共享頻寬?哪一個是獨立頻寬?
    7. 在 OSI 七層協定裡面,說明 Layer 2, 3, 4 各層的名稱
    8. 第二層的訊框名稱為何?
    9. 第三層的封包名稱為何?
    10. 第四層的封包名稱為何 (主要有兩個)?
    11. 路由概念是在第幾層?
    12. TCP 與 UDP 的封包格式差異中,TCP 多了哪個功能,所以會是可靠連線。
    13. 關於第四層的 port 問題:(針對 IPv4 版本) (1)埠口號碼的範圍是幾號之間? (2)特權埠口 (就是只有用 root 才能夠啟用的埠口) 號碼的範圍 (3)用戶端隨機取用的埠口號碼範圍 (4)http, https, FTP, ssh 協定所使用的埠口號碼為多少?
    14. 說明網路基本定義中, Class A, B, C 的第一組 10 進位數值範圍各為何?
    15. 承上,那 Class A, B, C 個別的 netmask 又是多少?
    16. 例如 172.30.26.31 若寫成 IP/netmask ,依據標準的 Internet 分類,該如何撰寫?
    17. 有個 IP 網段為 192.168.31.25/24,以 10 進位數值的方式,寫下 Netmask, Network IP, Broadcast IP, 可用 IP 範圍個別是多少?
    18. 寫下 Private IP 在 Class A, B, C 提供的位址。
    19. 在每一部可以連上 Internet 的主機都會有的內部迴圈測試網路,(1)是哪一段 Class A,(2)常用來設定的 IP 是哪一個?
    20. DNS 系統最主要的目的為何?
    21. 無線數據網路 wifi 所使用的頻率通常是哪兩個區段?
    22. 說明 802.11g 及 802.11n 兩者間的最大傳輸速率為多少?

P1.2: 上機 (open book) 部份

上機考試時,雖然是 open book 的考試,不過你只能攜帶底下的資料,不准攜帶其他電子式設備喔!

  • 各種書籍 (任何書籍資料都可以,但不能是影印版本),帶幾本都沒關係
  • 你的手抄筆記 (一定是自己手抄的,不能使用影印版本,即使是自己做的電子版轉印都不行)

底下就是可能會考的實做內容:

  1. 啟動硬碟前,請務必確定在 gocloud 的網頁上面,進階設定的硬碟格式一定要選擇『Red Hat SCSI 晶片』,同時網路卡為『Red Hat 高速網卡』才行!
  2. 網路功能的處理方面:
    1. 請使用底下的網路參數來設定好你的 Linux 網路:
      • IP/Netmask: 172.20.100.*/16,其中 * 為你的學號尾數
      • Gateway: 172.20.0.254
      • DNS: 120.114.100.1
    2. 設定好你的主機名稱為 site*.dic.ksu,其中 * 為你的學號尾數
    3. 當你下達 ping site* 或 ping site*.dic.ksu 時,系統會正確的顯示出你的主機 IP
    4. 當你下達 ping site254 時,系統會顯示出 172.20.0.254 這個 IP
  3. 檔案系統處理的部份:
    1. 在你的雲端機器中,額外分割出 1 個分割槽,容量大約是 1.5 GB 即可。
    2. 讓此分割槽格式化為 xfs 檔案系統
    3. 修改主設定檔,讓 1.5GB 分割槽開機會自動掛載到 /srv/linux/ 目錄裡。 注意,這裡我們要求請使用 UUID 的方式來進行設定的行為! (要注意修改主設定檔完成後,建議立刻重新開機測試成功與否。)
  4. 系統更新的部份:
    1. 請進行一次全系統升級,並且升級完畢之後,直接重新開機,以讓系統使用新核心
    2. 讓系統每天凌晨 3 點進行一次全系統升級的例行工作。
  5. 帳號管理的部份:
    1. 系統有個名為 baduser 的帳號,這個帳號需要移除!且移除後此帳號的家目錄也會跟著被移除
    2. 建立三個帳號,帳號名稱為 dicuser1, dicuser2, dicuser3,且密碼為 MyPassWord
  6. 檔案權限之觀察與修改,及檔案管理的部份:
    1. 將 /etc/services 複製成為 /srv/linux/myservices 檔案,並且這個檔案的權限設定為:擁有者為 dicuser1, 擁有群組為 users。dicuser1 可讀可寫, users 群組是唯讀,其他人則沒有任何權限。
    2. 建立一個提供給 dicuser1 群組共享的目錄,目錄名稱為 /srv/linux/share/ ,此目錄可提供 dicuser1 群組的成員進行任何動作,但其他人則沒有任何權限喔。
    3. 將 /etc /root /home 打包成為 /backups/system.tar.gz 檔案。打包完成後,讓這個 /backups/system.tar.gz 的權限變成只有 root 為唯讀, 群組與其他人則沒有任何權限。
    4. 在根目錄底下有個名為 myfiles.tar.bz2 的檔案,請將他在 /srv/linux/extra/ 目錄下解開(若目錄不存在,請自行建立)
  7. 服務管理的部份:
    1. 關閉 cups, avahi-daemon, atd 等服務,且下次重新開機也不會啟動這三個服務。
    2. 讓你的系統同時具有 http://localhost 以及 https://localhost 的網頁伺服器功能
    3. 這兩個服務會對整個 Internet 放行防火牆的連線
    4. 這兩個服務會開機後直接持續提供服務。
    5. 當顯示 http://localhost 時,畫面會顯示你的姓名與學號而已 (不是歡迎畫面,姓名可以寫英文)
  8. 其他部份:
    1. 在區網內有一部主機 IP 為 172.20.0.254,請用 vim 在 /root/ans.txt 檔案裡面寫下這部主機的網卡卡號 (MAC address)
    2. 找出一個指令名稱中有 cron 關鍵字存在的程序,並將該程序的 PID 與 NI 值寫出來。 (注:你可以先使用 pstree 找出來 PID 後, 再以 top -p PID 的方式去找出 NI 這個數值即可。