作業系統的使用者介面和核心分別扮演什麼角色?
當用戶想要向作業系統發出指令時,可以透過系統呼叫來實現。或者,使用者程式可以透過系統呼叫訪問作業系統的一部分——核心。
這是一種程式化的方法,計算機程式透過它向作業系統核心請求服務。
程式以兩種模式執行,如下所示:
使用者模式 - 無法訪問任何硬體資源,只能執行使用者操作。
核心模式 - 可以訪問硬體資源,例如 RAM 和印表機。
計算機中的處理器根據處理器上執行的程式碼型別在兩種模式之間切換。在使用者模式下執行的程序無法訪問為作業系統保留的虛擬地址。
當作業系統正在執行使用者應用程式(例如處理文字編輯器)時,系統處於使用者模式。當應用程式請求作業系統的幫助或發生中斷或系統呼叫時,就會發生從使用者模式到核心模式的轉換。
在使用者模式下,模式位設定為 1。
當程式需要任何硬體資源時,它需要向核心發出呼叫。透過系統呼叫,程式將切換到核心。這將與核心模式下的硬體資源一起發生。在硬體資源工作編譯完成後,它將再次返回到使用者模式。只有當它需要硬體時,它才會進入核心模式。
以下是系統呼叫的結構:

出於安全原因,使用者應用程式不允許訪問硬體資源,當它們需要執行任何 I/O 或需要一些記憶體時,它會請求作業系統。此請求是透過系統呼叫進行的。
使用者介面和核心的角色
現在讓我們看看使用者介面和核心的角色。
使用者介面
它透過充當應用程式與其使用者之間的中介來促進應用程式與其使用者之間的通訊。作業系統中包含的每個應用程式都提供了特定的 UI 以實現有效的通訊。應用程式使用者介面的兩個基本功能是從使用者那裡獲取輸入並向用戶提供輸出。
它可以分為以下兩類:
圖形使用者介面 (GUI) - 它是介面的圖形化表示。
命令列使用者介面 (CLI) - 在這裡,您必須傳遞特定的程式碼或命令才能實現您的目標。
核心
它是作業系統的核心元件。核心負責管理所有程序、記憶體、檔案等。它充當使用者級應用程式(軟體)和硬體之間的介面(橋樑)。它也被稱為計算機的主要部分或核心。
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP