當前位置:編程學習大全網 - 源碼下載 - kernel是怎麽根據mbr分區讀取對應分區的文件系統的?

kernel是怎麽根據mbr分區讀取對應分區的文件系統的?

mbr記錄裏面有分區表的位置信息,kernel讀取這些信息後,再查找分區表,然後定位系統,各個分區表的二進制編碼不同,這樣就可以去頂對應分區的文件系統了,文件系統之間的區別其實就是文件存放方式的區別,不同的文件系統,在分區表記錄所指向的文件系統分配表不同。

將這個過程說具體點,主分區記錄裏面除了壹些分區信息的記錄外,有個引導程序,如果引導程序短的話,這個引導程序直接存儲在MBR裏面,否則如果太大,就是壹個指針,這個指針指向的是引導程序所在的位置,然後把BIOS的壹些系統信息傳給引導程序,由引導程序申請kernel的執行空間,並復制kernel的鏡像,然後kernel根據mbr分區信息,讀取磁盤分區表,這個表有兩個,壹個是原版,壹個是備份,其位置記錄在mbr裏面,然後通過這個分區表來確定各分區的信息,每個分區對應的信息裏面有指向文件系統記錄的表的指針,這個表在LINUX的EXT系統中,是壹個線性表,這樣就可以讀取文件系統信息了;在windows裏面采用的文件分配表也通過windows的kernel來查找和讀取,實際上這些文件系統在表中記錄的是塊的信息或者簇信息,不同的文件塊之間由鏈表指針串起來的。

其實個人感覺,如果妳對這個感興趣,可以去下載壹些kernel的源代碼,然後花上幾個月讀讀,這樣就了解kernel的各方面工作過程,或者自己買個嵌入式系統的開發板,這樣可以通過交叉編譯方式,自己壹邊修改kernel,壹邊通過pc上面的軟件查看工作過程,比直接在PC上面看或者編譯運行效果好得多;另壹方面,用嵌入式系統的開發板來執行,比使用PC來學習這類東西來得快,操作也容易,而且單就kernel來看差別也不大。

  • 上一篇:2023年上半年工作計劃怎麽寫?
  • 下一篇:google chrome瀏覽器中 查看框架的源代碼,具體是幹什麽用的,為什麽有些網頁有這個選項,有些沒有。
  • copyright 2024編程學習大全網