作業系統如何增加對CPU架構的支援?

時間 2021-05-31 16:03:49

1樓:劉瑞祥

一般都是晶元廠家來做或者晶元廠家委託第三方來做,畢竟不同的晶元有可能指令集都不一樣,架構也不一樣,還有可能要提供專門的編譯器

2樓:陳明威

只見過linux核心。

問題1:硬編碼實現

問題2:linux是由社群/發行商開發,硬體廠商會提供一定幫助問題3:會聽user guide,類似微控制器問題4:可能有,但沒有必要

3樓:

做應用開發的不太懂這塊。大概說下我了解的,不同的cpu會提供不同的指令集,而作業系統要適配這些指令集,所以不同的指令集的系統的是不通用的,比如x86的windows系統只能執行在使用x86指令集的cpu(主要是Inter,AMD),而不能執行在使用arm指令的cpu上(有專門的windows RT系統)。蘋果電腦早期是使用IBM的POWER架構的cpu,所以macOS不能執行在普通電腦上。

後來改成使用inter cpu就可以執行在普通pc上了(黑蘋果)

4樓:Chow Anod

問題1:核心社群開發的,當然不排除開發者裡面也有CPU廠商的人員參與啦。貼個位址linux核心原始碼arch目錄,這個目錄就用來存放不同架構的外部介面實現。

彙編在每個架構目錄下的lib下面,用來做CPU指令層面的支援了。

剩下兩個問題屬於八卦範疇,我就沒法回答了。

程式釋放CPU,作業系統如何得知

悽臨雨 目前其他6個答案,除了旺旺的答案,其他均有錯漏。程式釋放cpu 程式執行完。當執行緒呼叫sleep系函式,或核心級同步物件函式 各種鎖 同步IO讀取暫時無法執行時 均屬於休眠 執行緒退出是退出 休眠和退出均會主動釋放cpu 搶占式時間片到了是被動釋放cpu 主動釋放最終會呼叫作業系統提供的函...

作業系統和 CPU 哪個研發更難?

不會開車的老司機 當然是cpu 作業系統你可能要熬很久但你總能做出來有優點就會有人用 Cpu 君不見Pc端兩位大佬其中一位能活著靠的是什麼?某A 我要破產啦!我不幹了!某牙膏 小老弟差啥你說!錢不是問題 變色龍 都可以簡單啊,啥也不做,也可叫作業系統,玩票性質的作業系統唄,只列印一行hellowor...

64位作業系統 CPU 如何相容32位程式 軟體 請看詳情。?

北極 要保證64位相容性,無非就是兩點 1.硬體相容 指令層面上 2.軟體相容 作業系統 因為以上兩點都能保證,所以自然32位程式能在相容32位程式的作業系統 CPU上跑。具體的形式 1.硬體相容 現有的x86架構的CPU,作業系統進入64位的工作模式都是相容32位的,即使在long mode模式下...