作業系統運作時有很多層面要考量,在 Linux 核心中它用來負責進行硬體資源的調度,把合適的資源提供給行程使用。運作時涉及的層面眾多,對於 Linux 管理者來說,理解其內部運作能夠在維運時更能全面性的評估系統狀態。
在現今的基礎架構中,很多中小企業已轉為虛擬化機制,雖然這是一個趨勢,但是仍有不變的重點項目必須瞭解。首先我們要知道一個應用系統在運作時要滿足哪些需求,這些項目可能從端使用者或是其它主機來,以 Web 應用程式來說不見得只有應用程式本身,可能還包含了資料庫、網路或儲存等需求。每個資訊系統之所以能夠正常運作都是由基礎建設提供必要的實體資源,就算在虛擬化架構中,虛擬主機的規格也應視為基礎建設資源概念的一種,所以透過需求的產生,我們會評估該使用什麼樣的資源讓應用系統可以順利運作。
應用系統程式如何運作,這就要依賴作業系統核心來處理了,所以我們在管理 Linux 系統時就想常常聽到要觀查硬體資源的使用量,以確保有足夠的資源讓程式運作與提供服務。由於基礎建設需要投入一定的成本,所以企業營運時就會對此錙銖必較,當我們瞭解了這些運作原理後,也能夠在需求產生時能夠評估出可應付的資源規格,避免產出現低估或高估實際使用量的機率。
我們會在此針對幾個一般應用系統維運時的需求進行瞭解,然而關於 Linux 核心在系統資源的分配作業所要處理的範圍很廣,基本上可以獨出來成為一門學科,也超出了本書設定的內容,在此僅針對大方向廣義性的探討。
現今的企業環境和高效能計算中,對硬體資源的需求日益複雜和精密。以下是一些重要的硬體組件和考量因素:
處理器(CPU):
記憶體(RAM):
存儲設備:
網絡介面:
輸入/輸出設備:考量使用者交互和操作效率,選擇合適的輸入/輸出設備。
了解和選擇適當的硬體資源是構建和維護高效、可靠和安全的 Linux 系統的基石。在企業和高性能計算環境中,這些選擇更是關係到整個組織的生產力和業務連續性。
在 Linux 作業系統中,行程是作業系統資源分配的基本單位。這些項目包含:
CPU 時間與多核心應用:
記憶體空間的使用與管理:
I/O 操作與管理:
這些資源的管理需要作業系統有高度的協調和調度能力。透過精確的資源控制,可以確保系統的穩定性、回應速度和效能。瞭解這些機制有助於我們在開發和維護系統時做出合適的解決方式。
核心作為作業系統的心臟,負責管理和調度所有的硬體和軟體資源。以下為核心在行程運作時要處理的主要工作:
行程調度:
記憶體管理:
I/O操作的控制與優化:
資源分配與監控:
安全和隔離:
我們可以看到核心在行程運作時的需要處理資源的複雜性和多樣性。它不僅要協調硬體資源的分配和使用,還要考慮效能、安全和穩定性等多方面的需求。這些核心工作是支撐 Linux 作業系統功能和性能的基石,也是系統管理和開發人員必須概括性理解的重要知識。