作業系統的學習,是為了更好的去了解計算機的啟動過程,還有計算機是怎麼工作的等等。自從本人讀大學以來,我讀的是電子資訊工程技術,有學到一門課程叫做微控制器。它的歷史已經有好幾十年了,主要是用在工業控制技術方面會比較多,因為開發這樣的產品相對來說不需要耗費大量的cpu資源,效能也比較好,過了幾十年後的今天,依然沿用著微控制器的技術,這說明微控制器對我們社會科技的發展依然是至關重要的。
在大多數人看來,我們依然可以認為微控制器也是乙個作業系統,因為它可以控制其它的硬體,最終構成乙個控制系統。在作業系統中,有控制匯流排,資料匯流排和位址匯流排,匯流排是計算機各種功能部件之間傳送資訊的公共通訊幹線,它是由導線組成的傳輸線束。同樣在微控制器中,也存在著這三個匯流排,這樣才能識別外部引腳給予的硬體訊號,硬體訊號通過匯流排讓cpu中的暫存器進行取址、解碼、執行,將微控制器工程師寫的c語言程式通過編譯生成彙編,最終彙編成為二進位制**,再由相應的內部晶元對這些二進位制**進行處理,翻譯成對應的輸入輸出訊號1和0,通常在這些裝置中1表示高電平,0表示低電平,於是微控制器就開始工作起來了。
那麼對應我們使用的計算機,是不是也是這樣的呢?
在現在看來,乙個完整的作業系統需要具備這幾樣東西。
1、bootloader(也就是對應window的bios),bios是什麼東西?從英文簡寫的意思可以看出,它的意思是基本輸入輸出系統。
2、核心:核心是作業系統的基本組成部分,是乙個作業系統
的核心。是基於硬體的第一層軟體擴充,提供作業系統的最基本的功能,是作業系統工作的基礎,它負責管理系統的程序、記憶體、
裝置驅動
程式、檔案和
網路系統,決定著系統的效能和穩定性。
3、檔案系統:在計算機中,檔案系統(file system)是命名檔案及放置檔案的邏輯儲存和恢復的系統。dos、windows、os/2、macintosh和unix-based作業系統都有檔案系統,在此系統中檔案被放置在分等級的(樹狀)結構中的某一處。檔案被放置進目錄(windows中的資料夾)或子目錄,在樹狀結構中你希望的位置中。
4、圖形介面:這個就不用說了,難道你還去用字元介面,恐怕叫乙個初學者去從字元介面開始去學習計算機,那肯定是枯燥無味的,畢竟現在是21世紀2023年了,晶元整合度越來越高,當然顯示桌面的ui也將越來越人性化。
當你啟動你的window系統的時候,一般會停止在這樣的乙個介面10幾秒鐘,有得甚至一兩分鐘也有:
在這黑黝黝的介面中,你確實不知道它的背後在做什麼。
但是作為linux的開發者,你會知道它背後大概在幹什麼東西,因為一開機你就知道了:
以下是紅帽5.5的開機:
它開機之後會做一些基本的初始化程式,比如啟動一些服務,也會關閉一些服務等等,最終系統就跑到了執行執行級別的操作,在linux系統中有多個級別,你可以設定啟動就進入字元介面,也可以設定圖形介面,甚至你想惡搞一下別人你還可以設定開機不斷重啟,哈哈哈哈哈,這種活以前剛學linux的時候喜歡ssh進別人的系統,改掉執行指令碼,接下來就會有很多驚奇搞笑的事情發生,這些在往後的博文中會有說明。玩玩就好!!後果自負!!
所以pc機作業系統和所謂的微控制器還是有一定區別的,像51微控制器開發的那種就類似於arm嵌入式的裸板開發,也就是不帶核心,檔案系統的,分分鐘直接和暫存器打交道。但是對於系統級別的開發,比如現在的嵌入式系統的開發最流行的就有安卓,安卓的底層其實就是linux核心,寫好對應的驅動程式之後,向上層提供介面,上層對底層介面進行呼叫之後就可以間接的操控硬體了,這類的知識還有很多很多,博主也正在不斷學習充實中!
關於計算機的啟動的詳細過程,在往後的博文都會涉及,歡迎繼續關注bruce.yang的嵌入式之旅。
作業系統學習筆記 作業系統基礎
先看下面的一張圖 你會聯想到什麼?沒錯這是整個計算機啊。我們講計算機是用來幫助人們解決一些實際問題的工具 那我們不妨先 一下,在螢幕上輸入 hello 計算機內部都會進行哪些工作吧。輸出 hello 的工作 cpu發指令給記憶體,把記憶體位址為300的地方東西拿出來,寫入到777視訊記憶體位址。螢幕...
作業系統 學習筆記 作業系統概述
桌面常見四大作業系統 基本功能 應用程式執行需要作業系統提供哪些支援?作業系統的功能 記憶體管理 裝置管理 檔案管理 作業系統的定義 各種各樣的應用系統 除錯程式 裝入程式 編輯程式 編譯程式 匯程式設計序 裝配程式 作業系統 機器語言 微程式裸機 手工操作 沒有作業系統 單道批處理系統 多道批處理...
作業系統 作業系統的概念
3 作業系統的目標和功能 作業系統用做擴充機器 計算機系統自上而下可區分為 從作業系統的角度 計算機系統的概述 在計算機中的cpu 記憶體 輸入 輸出裝置等硬體,提供了基本的計算機資源 應用程式等規定了按何種方式來使用這些資源來為使用者服務 作業系統控制和協調各使用者程式對硬體的分配和呼叫。所以作業...