iT邦幫忙

2025 iThome 鐵人賽

DAY 2
0
佛心分享-IT 人自學之術

軟體工程師的湖濱散記系列 第 2 篇

02 用戶態、內核態 suck it

  • 分享至 

  • xImage
  •  

「態」感覺用一個環境、一個空間、一個「界」的概念來解釋比較好理解。

用戶態就是人間界的概念,所有的應用程序都住在人間界。
內核態就是天界的概念,只有一個 Kernel 住在天界。

天界有各種精華、資源,這些東西不是隨隨便便一個凡人可以接近的。
這些精華就象徵硬體的資源,這些資源很寶貴不能隨便給用戶態的應用程序使用。

但有個宇宙至尊名為 CPU 遊俠,可以任意穿梭在人間跟天界,他神通廣大,可以完成所有請求,只要在他的能力還有體力範圍內。

所以凡人可以透過喊一聲咒語「系統調用!!!我要XXX資源」來觸發 CPU 的任務機制,CPU 會馬上飛到天界找 Kernel,他會叫 Kernel 完成凡人的請求,再把結果帶回凡間給這個凡人。

要搞這麼麻煩是因為:

1.維護天界的秩序跟安全:凡人愚鈍,阻絕他們,以免天界被破壞。
2.資源採集難度高:只有 Kernel 有考過證照,除了他沒人有辦法取得資源。
3.資源分配:CPU 遊俠公平公正公開,確保每個凡人都能有公平獲得這些資源的權利。

實際上 CPU 遊俠是拿著 Kernel 的指令大全去開採資料的,根本沒有 Kernel 這個人,是 CPU 編造出來的,Kernel 就是一堆可以直接開採資源的咒語而已,但偏偏只有 CPU 遊俠進得了天界,所以只有他能使用。


上一篇
01 零拷貝 zero copy
下一篇
03 DMA 直接記憶體存取 Direct Memory Access
系列文
軟體工程師的湖濱散記 共 15 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言