溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

linux中如何配置PCI和ACPI

發(fā)布時間:2021-10-25 14:31:12 來源:億速云 閱讀:1559 作者:小新 欄目:系統(tǒng)運(yùn)維

這篇文章將為大家詳細(xì)講解有關(guān)linux中如何配置PCI和ACPI,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

這里我們可以啟用由ACPI控制的擴(kuò)展塢和可移動驅(qū)動器槽的支持(Dock)。記住,ACPI(Advanced Configuration and Power Management Interface)是一個電源管理系統(tǒng)。擴(kuò)展塢是一種其他的設(shè)備通過額外的接口插入的設(shè)備。擴(kuò)展塢可以容納許多不同的端口和連接器。一個ACPI控制的擴(kuò)展塢是指其電源管理是通過ACPI進(jìn)行的。驅(qū)動器槽是一套可以增加硬盤的設(shè)備,這也可以由ACPI管理。

下面,我們允許ACPI用來管理空閑的CPU(Processor)。這會讓處理器在空閑時進(jìn)入ACPI C2或者C3狀態(tài)。這可以節(jié)省電源并降低CPU芯片的溫度。處理器只在100%沒有占用時才進(jìn)入空閑狀態(tài)。沒有程序必須請求一個特定時間的CPU資源。

CPU電源有四個狀態(tài) - C0、C1、C2和C3。C0是操作激活狀態(tài)。C1(Halt)是一個不執(zhí)行指令激活狀態(tài),但是可以立刻執(zhí)行指令。C2(Stop-Clock)是一種斷電狀態(tài)。C3(Sleep)是一種比C2更徹底的斷電狀態(tài)。在C3狀態(tài)中,現(xiàn)在緩存不再被同步或者管理,直到CPU離開這個狀態(tài)。第五個狀態(tài)稱作C1E(Enhanced Halt State),他擁有低功耗。

如果啟用了IPMI驅(qū)動,那么ACPI可以訪問BMC控制器(IPMI)。基板管理控制器(BMC)是一種管理軟件和硬件間連接的微控制器。智能平臺管理接口(IPMI)是一種框架,通過直接的硬件層面而不是登錄shell或者操作系統(tǒng)層面來管理計算機(jī)。

ACPI v4.0進(jìn)程聚合器允許內(nèi)核應(yīng)用一個CPU配置到所有系統(tǒng)中的處理器中(Processor Aggregator)。截止到ACPI v4.0,只有idle狀態(tài)可以用這個方式配置。

接下來,可以啟用ACPI熱區(qū)(Thermal Zone)。多數(shù)硬件支持這個特性。這允許風(fēng)扇的電源由ACPI管理。

如果啟用這個選項,自定義DSDT可以鏈接到內(nèi)核。在這個設(shè)置中,開發(fā)者必須在文件中包含完整的路徑名。系統(tǒng)差異表(DSDT)是一個包含了系統(tǒng)支持的電源事件信息的文件。它不需要輸入路徑名,這些表存在于固件中。內(nèi)核會幫你處理這些。這個主要的目的是用于如果開發(fā)者需要使用不同于設(shè)備內(nèi)置的表時用到。

任意ACPI表都可以通過initrd來覆蓋(ACPI tables override via initrd)。ACPI表是指示如何控制并與硬件交互的基礎(chǔ)規(guī)則和指令。

像內(nèi)核的其他部分一樣,ACPI系統(tǒng)也可以生成調(diào)試信息(Debug Statements)。像其他調(diào)試特性一樣,你或許希望禁用它并省下50KB。

啟用下面的特性會為系統(tǒng)檢測到的每個PCI插槽(PCI slot detection driver)創(chuàng)建文件(/sys/bus/pci/slots/)。一個PCI插槽是在PCI主板上的一個端口,它允許用戶接上其他的PC設(shè)備。PCI是主板的一種類型。PCI是指組件互相通信的方式。有些應(yīng)用程序可能需要這些文件。

電源管理定時器是另外一種電源管理系統(tǒng)(Power Management Timer Support)。這是許多系統(tǒng)追蹤時間的方式。這個只需要很少的能源。處理器的空閑、電壓/頻率調(diào)節(jié)和節(jié)流都不會影響這個定時器。大量的系統(tǒng)需要使用這個特性。

下面,可以啟用ACPI模塊和容器設(shè)備驅(qū)動(Container and Module Devices)。這會啟用處理器、內(nèi)存和節(jié)點的熱插拔支持。它需要NUMA系統(tǒng)。

下面的驅(qū)動提供對ACPI內(nèi)存的熱插拔支持(Memory Hotplug)。有些設(shè)備甚至啟用這個驅(qū)動也不支持熱插拔。如果驅(qū)動以模塊形式加入,那么模塊將會被acpi_memhotplug調(diào)用。

注意:對于內(nèi)核某個特定的功能,硬件、BIOS和固件在必須支持時會有問題。有些系統(tǒng)的BIOS是不控制硬件的。這種類型的BIOS通常不會限制特性。如果內(nèi)核確實有一個特定的功能,硬件必須有能力完成這樣的任務(wù)。

智能電源管理驅(qū)動提供訪問電池的狀態(tài)和信息(Smart Battery System)。

下面,我們有一個"Hardware Error Device"驅(qū)動。設(shè)備通過SCI報告硬件錯誤。通常上,大多數(shù)的錯誤會是已糾正的錯誤。

下面的是ACPI調(diào)試特性(Allow ACPI methods to be inserted/replaced at run time)。這允許ACPI AML方式不通過重啟系統(tǒng)管理。 AML代表的是ACPI機(jī)器語言(ACPI Machine Language)。AML代碼可以通過請求重啟來改變和測試。

APEI是ACPI的錯誤接口(ACPI Platform Error Interface (APEI))。APEI從芯片給操作系統(tǒng)報告錯誤。這個錯誤接口同樣提供錯誤注射的能力。

當(dāng)"SFI (Simple Firmware Interface) Support" 啟用后,硬件固件可以發(fā)送消息給操作系統(tǒng)。固件與操作系統(tǒng)間的通信通過內(nèi)存中的靜態(tài)表。SFI-only的計算機(jī)的內(nèi)核工作需要這個特性。

想要改變處理器的時鐘速度和運(yùn)行時,就啟用這個特性(CPU Frequency scaling)。CPU頻率調(diào)整意味著改變處理器的時鐘速度。這個驅(qū)動可以用于降低時鐘頻率以節(jié)能。

下面是另外一個電源管理子系統(tǒng)(CPU idle PM support)。當(dāng)處理器不在活躍狀態(tài)時,它***處在有效的空閑方式來減少電源消耗和減少CPU損耗。減少電源消耗同樣可以降低內(nèi)部元件的發(fā)熱。

Linux內(nèi)核提供了很多CPU空閑驅(qū)動。在多處理器系統(tǒng)上,一些用戶可能有一個理由在每個CPU上使用不同的驅(qū)動(Support multiple cpuidle drivers)。啟用這個驅(qū)動可以允許用戶給每個處理器設(shè)置不同的驅(qū)動。

對于Intel處理器,內(nèi)核有一個特別為管理這類CPU芯片空閑的驅(qū)動(Cpuidle Driver for Intel Processors)。

當(dāng)內(nèi)存芯片空閑時,這些同樣可以處于低功耗狀態(tài)(Intel chipset idle memory power saving driver)。這個驅(qū)動是特別支持IO AT的Intel設(shè)備的。

不同的計算機(jī)使用不同類型的主板(PCI support)。其中一種類型是PCI。這個驅(qū)動允許內(nèi)核運(yùn)行在PCI主板上。

下面,我們可以啟用/禁用 "Support mmconfig PCI config space access"。

接下來,我們有一個選擇啟用/禁用主橋窗口驅(qū)動(Support mmconfig PCI config space access)。警告:這個驅(qū)動還沒有完成(至少在3.9.4中是這樣)。

像上面提到的主板,還有另一種類型的主板。寫一個選項是提供"PCI Express (PCIe) support"的驅(qū)動。PCIe是一種改進(jìn)并且更快速的PCI。

在這之后,下面的驅(qū)動應(yīng)該被啟用以支持PCIe主板上的熱插拔(PCI Express Hotplug driver)。

接著,我們可以啟用/禁用PCIe主板報錯(Root Port Advanced Error Reporting)。這就是PCIe AER驅(qū)動。

下一個特性允許用戶使用PCIe EREC(PCI Express ECRC settings control)覆蓋BIOS和固件設(shè)置。下一個選項,這是對PCIe的錯誤注射(PCIe AER error injector support)。

下面的設(shè)置提供了操作系統(tǒng)控制PCI的活躍狀態(tài)和時鐘電源管理(PCI Express ASPM control)。通常上,固件會控制ASPM,但是這個特性允許操作系統(tǒng)采取控制。

如前面一樣,像內(nèi)核的許多組件一樣,這里提供了ASPM的調(diào)試支持(Debug PCI Express ASPM)。

下面,在這個菜單選擇"Default ASPM policy"。

在這選項之后,下一個是關(guān)于允許設(shè)備驅(qū)動啟消息信號中斷(Message Signaled Interrupts (MSI))。通常上***允許設(shè)備給CPU發(fā)送中斷。

為了在系統(tǒng)日志中加入大量的調(diào)試信息,啟用"PCI Debugging"。

下一個選項允許PCI核心檢測是否有必要啟用PCI資源重分配(Enable PCI resource re-allocation detection)。

當(dāng)在Linux上托管一個虛擬操作系統(tǒng)時,它有時可以用于為虛擬系統(tǒng)保留PCI設(shè)備(PCI Stub driver)。在系統(tǒng)虛擬化下,一個操作系統(tǒng)可能在另一個系統(tǒng)的內(nèi)部或者并行。有時它們會競爭資源??梢詾榭蛻魴C(jī)保留設(shè)備可以減小競爭和增加性能。

下面的驅(qū)動允許超傳輸設(shè)備(hypertransport devices)使用中斷(Interrupts on hypertransport devices)。HyperTransport是一種系統(tǒng)/協(xié)議總線用于處理器之間的高速通信。

下一個驅(qū)動用于PCI虛擬化,它允許虛擬設(shè)備間共享它們的物理資源(PCI IOV support)。

PCI頁面請求接口(PRI)使在IOMMU(輸入/輸出內(nèi)存管理單元)之后的PCI設(shè)備能夠從頁錯誤中恢復(fù)(PCI PRI support)。頁錯誤不是一種錯誤;它指的是軟件嘗試訪問不在物理內(nèi)存上的數(shù)據(jù)的事件。

關(guān)于“l(fā)inux中如何配置PCI和ACPI”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI