官术网_书友最值得收藏!

2.2 CPU架構(gòu)

在討論內(nèi)核組件之前,讓我們先回顧一個(gè)基本概念—計(jì)算機(jī)架構(gòu)或CPU系列,這兩個(gè)術(shù)語我們可以互換使用。Linux可以在大量不同的CPU架構(gòu)上運(yùn)行,這可以說是它如此受歡迎的原因之一。

除了通用代碼和驅(qū)動(dòng)程序之外,Linux內(nèi)核還包含特定于架構(gòu)的代碼。這種分離允許它移植Linux,并使其可以快速地在新硬件上使用。

有許多方法可以確定Linux運(yùn)行的是哪個(gè)CPU。讓我們依次來看幾個(gè)。

BIOS和UEFI

傳統(tǒng)上,UNIX和Linux使用基本I/O系統(tǒng)(Basic I/O System,BIOS)進(jìn)行引導(dǎo)。當(dāng)你打開你的Linux筆記本計(jì)算機(jī)時(shí),它完全是由硬件控制的。首先,硬件被連接以運(yùn)行開機(jī)自檢(POST),這是BIOS的一部分。POST確保硬件(RAM等)按照指定的方式運(yùn)行。我們將在6.2節(jié)詳細(xì)介紹機(jī)制。

在現(xiàn)代環(huán)境中,BIOS功能已經(jīng)被統(tǒng)一可擴(kuò)展固件接口(UEFI,https://oreil.ly/JBwSm)有效地取代,這是一個(gè)公共規(guī)范,定義了操作系統(tǒng)和平臺(tái)固件之間的軟件接口。你仍然會(huì)在文檔和文章中遇到BIOS這個(gè)術(shù)語,所以我建議你在腦海中簡單地將其替換為UEFI,然后繼續(xù)前進(jìn)。

一種方法是使用一種名為dmidecode的專用工具與BIOS交互。如果這沒有產(chǎn)生結(jié)果,

那么你可以嘗試以下代碼(輸出被縮短):

?我們?cè)谶@里看到的架構(gòu)是x86_64。

?看起來有四個(gè)可用的CPU。

?CPU型號(hào)名稱為Intel Core Processor(Haswell)。

在前面的命令中,我們看到CPU架構(gòu)報(bào)告為x86_64,模型報(bào)告為“Intel Core Processor(Haswell)”。我們將在稍后學(xué)習(xí)更多關(guān)于如何解碼的內(nèi)容。

收集類似架構(gòu)信息的另一種方法是使用cat /proc/ cpuinfo,或者,如果你只對(duì)架構(gòu)感興趣,則只需調(diào)用uname -m。

現(xiàn)在我們已經(jīng)掌握了在Linux上查詢架構(gòu)信息的方法,讓我們看看如何解碼它。

主站蜘蛛池模板: 宁城县| 海口市| 康保县| 邓州市| 华宁县| 错那县| 安岳县| 乃东县| 湄潭县| 汤阴县| 昌邑市| 嘉鱼县| 夏津县| 五寨县| 五寨县| 渭南市| 曲阜市| 福州市| 阿荣旗| 米林县| 临邑县| 邻水| 石阡县| 景德镇市| 新和县| 贞丰县| 石台县| 介休市| 慈利县| 深泽县| 开封县| 建水县| 瓦房店市| 安国市| 广昌县| 措美县| 博湖县| 南宁市| 西贡区| 孝义市| 南安市|