作者 主題: 2004-09-07 台南班(14)  (閱讀 4187 次)

0 會員 與 1 訪客 正在閱讀本文。

netman

  • 管理員
  • 俺是博士!
  • *****
  • 文章數: 17375
    • 檢視個人資料
    • http://www.study-area.org
2004-09-07 台南班(14)
« 於: 2004-10-26 23:24 »
2004-10-26 (星期二)

* 溫習重點

KERNEL
        System Layer
        Sub Systems
        Version
                development
                stable
        Necessary ?
 source
 .config
 make
 bzImage
        Modules
                modprobe
                insmod
                        modules.dep
                        modules.conf
                                alias
                                options
 lsmod
 rmmod
 modinfo
 modules.conf
 loader
   lilo
   grub
 initrd


* 思考練習

1) 請以圖表結構畫出 kernel 在整個 system 層階中的位置及其它層級的關係:
   結構圖:









2) 請以圖表結構畫出 kernel 各 sub system 的關係:
   結構圖:









3) Linux Kernel 的版本有分 stable 及 development 兩種,
請問如何區分?
   方法:

當我們打算更新或重編 kernel 的時侯,第一個要問的問題是甚麼?
   問題:

倘若前述問題是否定的話,那就盡量不要變動 kernel 了。
但若真的認為變動 kernel 是必需的,請問你要準備好哪些條件?
   條件:





4) 請問 kernel source directory 之路逕在哪?
   路逕:
在進入該目錄後, 老師建議你修改一個檔案,它與編譯出來的 kernel 版本有關?
   檔案名稱:

5) 在進行編譯前, 我們需要在目錄下產生出一個檔案,
請問你知道它的名稱嗎?
   檔案名稱:

又,除了用複制的方法,你可用甚麼方法產生或修改該檔呢?
   方法(多種):



請以實作方式嘗試上面所答的每一種操作方式,
並了解彼此的條件差異。
   實作:


6) 能否說明一下 kernel(built-in) 與 module 的關係呢?
   說明:



7) 當 .config 檔準備好之後,接下來如何產生及安裝 kernel 跟 modules?
   說明:


8) 當核心編議成功後, 如何安裝?
   說明:

9) 在舊版的 LILO 之使用上,需要注意的問題是甚麼?
(提示:與硬碟相關的)
   說明:

10) 能否說明一下 lilo.conf 的作用?
   說明:

能否說明一下如下的 global 設定是何意思?
   boot :
   prompt :
   timeout :
   message :

能否說明一下如下的 image 設定是何意思?
   image:
   label:
   read-only:
   append:

11) 請問 lilo.conf 修改後, 如何才能安裝?
   說明:


12) 請問 grub 的設定檔路逕在哪?
   路逕:

假設 / partition 在 hda6 而 /boot 目錄並無獨立出來,
且新的 kernel image 叫 vmlinuz-2.4.20-8custom ,
同時 initrd 的名稱是 initrd-2.4.20-custom.img ,
請問你會如何設定 grub ?
   說明:





若以上條相同, 但 /boot partion 設於 hda2 上面,
那又改如何設呢?
   說明:


* netxt:
http://phorum.study-area.org/viewtopic.php?t=27174

hor5651

  • 可愛的小學生
  • *
  • 文章數: 10
    • 檢視個人資料
2004-09-07 台南班(14)
« 回覆 #1 於: 2004-10-28 18:40 »
1) 請以圖表結構畫出 kernel 在整個 system 層階中的位置及其它層級的關係:
結構圖:

user
--------------------
application
------------
o/s (kernel)
--------------------
H/w




2) 請以圖表結構畫出 kernel 各 sub system 的關係:
結構圖:
         kernel
user                >>>   system call
--------------------
application      
------------
o/s (kernel)        >>>  process,IPC,Net,schedular, MM, F/s
--------------------
H/w      >>>   driver (module)


3) Linux Kernel 的版本有分 stable 及 development 兩種,
請問如何區分?
方法:

>>>看minor.number是單數>>開發版
                    雙數>>>stable

當我們打算更新或重編 kernel 的時侯,第一個要問的問題是甚麼?
問題:


>>necessary

倘若前述問題是否定的話,那就盡量不要變動 kernel 了。
但若真的認為變動 kernel 是必需的,請問你要準備好哪些條件?
條件:
>>功能性
>>效能性
>>安全性
>>開發性
>>學習性


4) 請問 kernel source directory 之路逕在哪?
路逕: /usr/src/linux[-version]

在進入該目錄後, 老師建議你修改一個檔案,它與編譯出來的 kernel 版本有關?
檔案名稱: makefile>>extraversion=????

5) 在進行編譯前, 我們需要在目錄下產生出一個檔案,
請問你知道它的名稱嗎?.config
檔案名稱: copy other config files of same version
           make .config

又,除了用複制的方法,你可用甚麼方法產生或修改該檔呢?
方法(多種): copy other config files of same version
           make .config



請以實作方式嘗試上面所答的每一種操作方式,
並了解彼此的條件差異。
實作:


6) 能否說明一下 kernel(built-in) 與 module 的關係呢?
說明: built-in>>隨開機而run
       module>>需要才load



7) 當 .config 檔準備好之後,接下來如何產生及安裝 kernel 跟 modules?
說明:
>>make