核心幹了很多任務作。我認為巨集觀的說核心讓程式合理並且高效的控制硬體。
處理器每次只能執行一條指令,但是linux表面上看起來同是執行了很多東西。核心用快速切換任務的方式來實現這樣的效果。它把處理器的能力發揮到極致,通過不斷監視哪個程序可以行、那個程序在等待(比如等待硬碟讀取檔案、鍵盤輸入等等)。這些核心的工作叫做排程。
如果乙個程式什麼也不做了,它就不必待在記憶體裡。即使程式正在執行,也可能存在某些部分不在執行。為程式分配的記憶體空間以頁為單位。核心跟 蹤哪些程序的哪些頁使用最頻繁。哪些不常用的頁面會被移動到交換分割槽,當需要他們的時候,另外乙個不常用的頁會交換到硬碟上來給他讓位。這就是虛擬記憶體管 理。
如果你曾經編譯過自己的核心,你會注意到每個裝置都有很多選項。核心包括了很多特別的**用於和多種多樣的硬體溝通,並且以很規範的方式提供給應用程式。
核心還管理檔案系統、程序間通訊還有很多網路功能。
一旦核心被讀入,它會先尋找init程式來執行。
lilo: linux root=/dev/hda3如果你正在從源**建立乙個系統,你可以通過建立乙個「monolithic」的核心來使過程變得很輕鬆。它沒有模組,這樣你就不用拷貝核心模組到目標系統了。
注意:核心記錄器要使用system.map來確定模組生成資訊。程式也要用到這些資訊。當你把核心複製到目標系統時,把system.map一起拷貝過去。
思考如下問題:/dev/hda3是乙個用來描述硬碟的特殊檔案。但是他在檔案系統裡面貌似和其他檔案沒什麼區別。核心想知道在哪個分割槽上安裝根檔案系統——但這時還根本沒有檔案系統,它是如何讀取/dev/hda3並找到要安裝的分割槽的?
如果你還沒有建立你自己的核心,閱讀所有選項的幫助資訊。
看看你可以把核心做的多小。你可以從錯誤中學到很多!
hack! 看看你能不能讓它顯示些別的資訊或者做些其他事。
從按下電源開關到bash提示符 序言
這是我很多年前翻譯的。最近發現再硬碟裡面。所以貼上來。原文見http users.rsise.anu.edu.au okeefe p2b chinese power2bash.html 很多東西已經過時了。所以如果你發現文章有問題也是很正常。不過基本的東西還是沒什麼變的。我發現很多在我linux機器...
線性電源開關電源
線性電源 工頻變壓器 輸出整流電路 控制電路 保護電路 線性電源先將交流電經過變壓器變壓,再經過整流濾波電路得到未穩定的直流電壓,再經過控制電路反饋調整輸出電壓,最後得到高精度的直流電壓優點 1.電磁干擾小 輸出電壓純淨 紋波小 2.沒有開關動作,屬於連續模擬控制,結構簡單 成本低 缺點 1.調整管...
電控電源開關(1)
上位機選用tk1,下位機是stm32作為電控系統。本節講tk1上的電控程式。使用tk1的引腳的高低電平做下位機電源控制設計。注 tk1上引腳電壓只有1.8v 需要做乙個電壓轉換到自己需要電壓的電壓板模組。xx 鍵盤鍵 1 2 控制電源開關 include stdio.h include stdlib...