TWI610167B - 改善平台管理的計算裝置建置方法、保持電腦可執行指令之非暫存媒體及配置為提供強化管理資訊之計算裝置 - Google Patents

改善平台管理的計算裝置建置方法、保持電腦可執行指令之非暫存媒體及配置為提供強化管理資訊之計算裝置 Download PDF

Info

Publication number
TWI610167B
TWI610167B TW103110905A TW103110905A TWI610167B TW I610167 B TWI610167 B TW I610167B TW 103110905 A TW103110905 A TW 103110905A TW 103110905 A TW103110905 A TW 103110905A TW I610167 B TWI610167 B TW I610167B
Authority
TW
Taiwan
Prior art keywords
management
computing device
management controller
virtual substrate
virtual
Prior art date
Application number
TW103110905A
Other languages
English (en)
Other versions
TW201502772A (zh
Inventor
堤摩太 路易士
Original Assignee
系微股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 系微股份有限公司 filed Critical 系微股份有限公司
Publication of TW201502772A publication Critical patent/TW201502772A/zh
Application granted granted Critical
Publication of TWI610167B publication Critical patent/TWI610167B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0058Bus-related hardware virtualisation

Abstract

在此討論一系統韌體代理在系統管理模式內提供一實體基板管理控制器的功能。一個虛擬的基板管理控制器對系統韌體、平台中其他的基板管理控制器以及遠端管理代理者提供專用通訊通道。所述之虛擬基板管理控制器可監視系統狀態、記錄系統事件並控制系統的狀態,以允許對一計算裝置的遠端管理。

Description

改善平台管理的計算裝置建置方法、保持電腦可執行指令之非暫存媒體及配置為提供強化管理資訊之計算裝置
本申請案主張美國臨時專利申請案號61/804,556,標題為“Virtual Baseboard Management Controller Using SMM,SMBus and a Network Controller”,申請日為2013年3月22日的專利申請案之效益,其全文內容在此引入。
本發明關於虛擬基板管理控制器。
計算裝置被包括在裝置中的韌體初始化,且這個韌體提供一系列的軟體服務以利作業系統(OS)的啟動,以及在作業系統(OS)啟動後繼續提供這些服務的一個小的子集。韌體是已經寫入唯讀記憶體(Read-Only Memory,ROM)模組的軟體,其包括但不限於ROM、PROM、EPROM、EEPROM和快閃記憶體(以下統稱為“ROM”)。在其他服務中,韌體是負責所述計算裝置的運作,直到一個對計算裝置載入一作業系統到記憶體中的啟 動程序可以運行。一經載入,作業系統負責計算裝置的正常運作,雖然載入作業系統之後,為了安全性和其它原因,提供某些服務可能需要將控制權從作業系統轉回韌體。
一計算裝置可以包含被稱為中央處理單元(Central Processing Units,CPU)的一個或多個元素。這些CPU可具有正常作業模式和稱為系統管理模式(System Management Mode,SMM)的第二作業模式。當CPU處於正常作業模式下,它可以存取電腦中除了專用於SMM的特定記憶體區域以外的所有元素。反之,當CPU在SMM中運作,它能夠存取所述計算裝置的所有元件,包括分配給SMM記憶體位置。CPU可通過多個被稱為系統管理中斷(System Management Interrupt,SMI)事件的觸發而被引導從正常作業模式過渡到SMM。對不同系統設計所提供的精確的觸發亦有所不同,但一個SMI被觸發的結果是,在主記憶體中的執行程式被立即中止,並在系統管理記憶體的特定位置(System Management memory,SMRAM)開始執行。
除了CPU,計算裝置還包括多個其他硬體組件。這些其它硬體組件可以包括一個平台匯流排,如系統管理匯流排(System Management Bus,SMBus)和一個或多個網路介面控制器(network interface controller,NIC)。SMBus是一個雙線匯流排,其提供一個主機板上低頻寬裝置的輕型通訊。該裝置可在SMBus上提供包括識別資 訊、對暫停事件的保存狀態和不同類型的錯誤的資訊,並且還可以接受控制參數以及轉回裝置的狀態。可通過一個SMBus進行通訊的示例性裝置包括電源相關的晶片、溫度感測器、風扇或電壓感測器和時鐘晶片等。NIC是被計算裝置用於網路通訊。NIC可以內置在主機板上或由插入計算裝置上的匯流排的擴充卡所提供。NIC使用特定的實體層和資料鏈結層標準實施通訊所需的電子電路,並經由如網際網路協定(Internet Protocol,IP)等路由協定促成網路通訊。作業系統載入後,透過一NIC接收到的傳入封包可被提供給一作業系統驅動器來處理。在其他屬性中,出現於一計算裝置的一個NIC還可以促使所述計算裝置和一個位於遠端的用戶或依賴遠端管理計算裝置的程序之間的通訊。
另一種可能出現在計算裝置中的硬體組件為基板管理控制器。基板管理控制器(Baseboard Management Controller,BMC)是多種專門針對平台管理所設計的微控制器的一個通用名稱。BMC控制器通常以專屬標準實施智慧型平台管理介面(Intelligent Platform Management Interface,IPMI)、系統硬體之桌上型和行動架構(Desktop and Mobile Architecture for System Hardware,DASH)及/或警示標準格式(Alert Standard Format,ASF)平台管理規範。BMC通常保持供電,即使系統其他部分是處於未供電狀態。BMC可以充當遠端管理者(使用一網路介面)、系統韌體、平台感測器以及某些情況下的作業系統之間的中 介。在某些情況下,BMC本身具有NIC積體。在其他情況下,它透過SMBus或一專屬介面使用與一個特殊NIC(例如Intel ® 82571)的鏈接。BMC不依賴於系統韌體或作業系統。為了遠端管理的目的,BMC需要專用的網路介面控制器(NIC)或一些方法來共享一個NIC。
本發明之實施例使得一系統韌體代理能在SMM內提供一實體BMC的功能。所述之系統韌體代理作為一個虛擬的BMC(virtual BMC,vBMC),並對系統韌體、平台中其他的BMC以及遠端管理代理者提供專用通訊通道。所述之vBMC可監視系統狀態、記錄系統事件並控制系統的狀態,以允許對一計算裝置的遠端管理。
在一實施例中,一種改善平台管理的計算裝置建置方法,包括產生一系統管理中斷。所述之系統管理中斷由所述計算裝置中的一個中央處理單元啟動過渡為系統管理模式。所述方法亦以一在系統管理模式中執行的韌體vBMC接收一管理命令,並基於所述之管理命令,對具有所述vBMC的計算裝置執行一管理功能。以及當該vBMC在系統管理模式中執行時,傳送實施該管理功能所產生的管理資料。
在另一實施例中,一計算裝置係配置為提供強化管理資訊。所述之計算裝置包括一支援系統管理模式的中央處理單元以及一用來在一網路上接收及傳輸網路封 包之網路介面控制器。所述之計算裝置並包括一平台匯流排以及一系統韌體,所述系統韌體係包括一個在中央處理單元運作於系統管理模式中時執行的vBMC,所述之vBMC接收一管理命令,並基於該管理命令對所述計算裝置執行一管理功能。所述之vBMC並傳送實施所述之管理功能所產生的管理資料。
100‧‧‧計算裝置
110‧‧‧NIC
111‧‧‧PCI匯流排
112‧‧‧SMBus
114‧‧‧乙太網路埠0
115‧‧‧乙太網路埠1
120‧‧‧晶片組平台控制器集線器
122‧‧‧SMBus主機控制器
130‧‧‧NIC電子式可清除程式化唯讀記憶體
150‧‧‧CPU
152‧‧‧熱感測器
180‧‧‧唯讀記憶體
190‧‧‧系統韌體
200‧‧‧SMI分配器
210‧‧‧網路客戶端
220‧‧‧SMBus處置器
230‧‧‧虛擬BMC
240‧‧‧感測器資料庫
250‧‧‧事件日誌
310‧‧‧SMM客戶端介面
320‧‧‧SMBus客戶端介面
330‧‧‧網路客戶端介面
340‧‧‧OS/DXE驅動器客戶端介面
350‧‧‧SMM驅動器
370‧‧‧遠端使用者或管理程序
380‧‧‧OS/DXE驅動器
402、404、406、408、410、502、504、506、508、510‧‧‧步驟
包含於本說明書中並構成本說明書的一部分的附圖顯示了本發明之一或多個實施例,配合說明書內文,能增進對本發明的理解。在附圖中:第1圖描繪適合實施本發明一實施例的一個示例性的計算裝置。
第2圖描繪本發明一實施例所使用的示例性軟體堆疊。
第3圖描繪本發明一實施例所使用的虛擬BMC介面。
第4圖描繪根據本發明一實施例的一個示例性的步驟序列,以一韌體虛擬BMC處理一個管理命令。
第5圖描繪根據本發明一實施例的一個示例性的步驟序列,以使用一預定記憶體緩衝區增加一韌體虛擬BMC對一個管理命令的處理速度。
無論從成本還是資源的角度來看,網路遠端平台管理是昂貴的。先前處理網路遠端平台管理的方法包含使用遠端啟動應用程式或內建管理程式、使用基板管理控制器或管理引擎及/或作業系統和韌體混合的嘗試方法。如以下面進一步所討論的,這些先前嘗試方法中的每一個都有一種或多種缺點,無論是需要額外的硬體、缺乏所需的性能或需要對平台性能有不利影響的專用系統資源。
在遠端啟動應用程式或內建管理程式的案例中,一應用程式係從系統韌體、硬碟或遠端伺服器(例如先啟動執行環境(Pre-boot Execution Environment,PXE)),並且該應用程式可以與遠端管理代理進行必要的通訊,以報告一些系統狀態(開機、感測器),執行一些診斷以及提供存取遠端提供的硬碟內容。這方面的一個例子為Paragon的iSCSI Target軟體。這種方法提供了對平台的先啟動存取,並可在每次啟動時被執行。然而,這種方法在載入作業系統後並不會提供平台和一個管理應用程式之間的持續連接,並且在某些情況下,因為感測器不會被平台上的應用程式發現或識別,可能不會提供對感測器資訊的存取。
此外,某些系統依賴作業系統和系統韌體的BIOS性能來提供增強的管理功能。開機前,韌體可以與管理員遠端通信以提供日誌資訊,並通過如PXE、網際網路協定安全(Internet Protocol Security,IPsec)和統一可延 伸韌體界面(Unified Extensible Firmware Interface,UEFI)網路連結等功能接收任何更新的資訊。開機後,作業系統可以通過作業系統驅動程式和服務提供這種功能。然而這種混合方法是有問題的,因為它需要韌體和作業系統間的交替,而許多作業系統可能並不支援這樣的交替。因此,電路板供應商不能確定他們是否完全啟用平台管理。
由於這些問題,許多系統係依賴BMC來執行平台管理。然而,當一個BMC提供遠端管理功能,此BMC往往是一個平台的昂貴附加物,無論是在元件成本還是軟體開發成本方面(因為它通常是一個具有不同開發工具鏈的不同微控制器)。BMC亦不能存取所有的系統資訊,因為它通常不能存取能使BMC追蹤系統真正的健康狀態的硬體暫存器、記憶體內容或CPU暫存器。進一步從基板管理控制器獲取或給予資訊可能會很緩慢,因為系統管理匯流排(SMBus)或類似的平台匯流排係用於通訊。
遠端管理系統的一個其他的方法係採用一個管理引擎(Management Engine,ME)。一個ME是設在許多實施類BMC功能的Intel晶片組中的系統控制器。因為它是內建於晶片組中,其還可對系統暫存器具有額外的存取。然而,只有在ME為提供用於計算裝置的特定晶片組的一部分時,ME才是可用的。
相對於這些早期的平台管理的方法,本發明實施例僅使用現今大多數電腦及計算裝置中所具有的標準硬體來提供一獨立的BMC相當級別的平台管理功能。本 發明能降低成本、複雜性和驗證的成本。實施例可在任何運行中的作業系統執行,且無論該作業系統是否處於死鎖狀態,使得系統狀態能被持續監視、平台的錯誤情況能被記錄、且遠端管理的要求能被回應。雖然一個實施例可從一個專用網路連接(例如一個共享的NIC或專用及/或隱藏的NIC)中受益,對於達到本發明的記錄和監視的優點卻不是必要的。本發明的虛擬BMC比實體BMC能獲取更多的狀態資訊,並能透過允許使用一個記憶體內建的信箱架構,以和在SMBus或其他平台匯流排傳送訊息相同的格式傳導交易,來加速訊息的傳遞。此外,一個實體BMC只能存取SMBus、其他智慧型平台管理匯流排/橋接器(IPMB)或NIC所提供資源,而本發明的虛擬BMC能直接存取硬體資源及能從所述平台韌體獲得的其他資訊來源,包括出現在其他匯流排的資訊來源。
第1圖描繪了適合實施本發明一實施例的一個示例性計算裝置。計算裝置100可以包括NIC 110、晶片組平台控制器集線器120以及CPU 150。計算裝置100還可包括PCI匯流排111和與NIC 110連接的SMBus112及晶片組平台控制器集線器120。另外,計算裝置100還可包括對NIC 110保持一預設組態的NIC電子式可清除程式化唯讀記憶體(EEPROM)130及保持系統韌體190的唯讀記憶體(ROM)180。應當理解的是,計算裝置100可以包括多個CPU,而為了便於說明在此只描繪單一一個CPU 150,CPU 150可包括熱感測器152。
一示例性的NIC 110為Intel®82571網路控制器。NIC 110可包括多個網路介面和多個不同的SMBus主/從或從屬終點。NIC 110還可包括多個乙太網路埠,例如乙太網路埠0(114)和乙太網路埠1(115)。在一實施例中,NIC 110在系統初始化期間被韌體分配資源,然後被一個平台特定的裝置隱藏,使得它的配置空間對作業系統是不可見的。此一“隱藏”可避免作業系統加載一個驅動器及嘗試配置或控制該裝置,使其可為系統韌體所使用。此外,在本實施例中,通常被路由到所述平台上的一個中斷控制器的“中斷”,可改為被路由到被配置為對CPU產生一個SMI訊號的平台控制器集線器120上的一個通用輸入口。
晶片組平台控制器集線器120是設計來與CPU 150和記憶體控制器協同工作。一示例性的晶片組平台控制器集線器120為英特爾®216 PCH。晶片組平台控制器集線器120對各種周邊設備提供輸入/出支援,包括通用輸入/出訊號(GPIO)和一個SMBus主機控制器122。SMBus主機控制器122可以作為一主機或從屬機。當交易完成時或檢測到SMBALERT #過渡時,SMBus主機控制器122可以被配置為產生一正常PCIe中斷(按照PCI規範)或一SMI。
當檢測一個SMI,在一系統中所有的CPU在下一個指令的邊界中斷執行,並開始在SMM中執行。通常情況下,此執行在SMM中的位置是在系統記憶體中為 此目的所劃出處,稱為系統管理RAM(或SMRAM)。SMRAM的內容由系統韌體在初始化期間進行初始化。在過渡到SMM中時,CPU開始在SMRAM內部由系統韌體初始化的一個預先定義的位址執行。一示例性的CPU 150為能夠在SMM執行的英特爾®5系列的CPU。
儘管在上文和本文通篇含有對各種英特爾組件的參考,但應當理解的是,本發明的實施例不限於具體描述的組件,其它提供類似功能的配置都在本發明的範圍之內。例如,一個實施例可以採用不位於晶片組平台控制器集線器120內的SMBus主機控制器。同樣地,計算裝置可以使用來自一個SMBus的不同類型的平台匯流排,例如控制器區域網路(Controller Area Network,CAN)匯流排和I2C匯流排或甚至主機板USB。在另一個實施例中,可以使用具有來自82571家族GbE乙太網路控制器的英特爾NIC以外類似功能的NIC。
第2圖描繪本發明一實施例所使用的示例性軟體堆疊。該軟體堆疊在SMM下提供虛擬BMC功能。所述之軟體堆疊包括SMI調度器200、網路客戶端210和一如SMBus處置器220的平台總匯流排客戶端。
SMI分配器200為大部份x86系統韌體實作中的一個標準組件。SMI分配器200接收來自SMM入口點的控制、檢測使用硬體特定機制的SMI的來源並呼叫所有暫存的處置器。所述處置器係採用SMM子分配協定(或其他某些類似的方法,請參閱UEFI平台初始化規範)中的 一種來註冊。平台控制器集線器120具有幾個顯示為SMI來源的暫存區塊。平台控制器集線器的SMI分配驅動器產生數個SMM子分配協定,包括GPI分配協定2(GPI Dispatch2)、SW分配協定2(SW Dispatch2)、週期性定時器分配協定(Periodic Timer Dispatch)和ICHN分配協定(ICHN Dispatch)。前三個在UEFI平台初始化規範中有更詳細的描述。最後一個是英特爾®專屬協定,它是用來為未在PI規範中描述的其他SMI來源暫存處置器。SMI分配器200可以產生ICHN分配協定,以允許一個回呼函數的暫存,使其在一個SMBus交易完成後被呼叫。該協定是專門針對英特爾®晶片組。SMI分配器200還可以產生週期性定時器分配協定,其允許暫存一個回呼函數,以在至少一個預定時間量之後被回叫。SMI分配器200還可以產生出用於暫存一個回呼函數的SW分配協定,其係在一個特定的值寫入到軟體SMI命令埠時被呼叫。所述軟體SMI命令埠是一個8位元輸入/出埠,當其由非SMM代碼寫入時,會產生一個SMI。進一步SMI分配器200可以產生出用於暫存一個與特定通用輸入的轉換相關聯的回呼函數的GPI分配協定。
網客戶端210是負責管理通過SMBus(或其他平台匯流排)傳輸的網路封包。由於網路封包可以長達1536個位元組(對於Intel NIC),但在許多平台上的SMBus上的SMBus封包的長度不能超過32或240個位元組,網路封包被分解成可在SMBus上重新傳輸的SMBus 封包的片段。接收到一封包時,將網路客戶端210以匯流排處置器220暫存以作為通知。網路客戶端210也可以管理下一個網路封包(或一個網路封包片段)的發送以及處理各種傳輸錯誤。網路客戶端210還可以處理多種標準的網路封包,如探索封包(discovery packets)。由於配置NIC和處理網路封包片段的方法可以是專屬的,網路客戶端210可針對特定的網路控制器或控制器家族被特性化。例如,英特爾®NIC使用一智慧型平台管理介面(Intelligent Platform Management Interface,IPMI)遠端控制管理協定(Remote Control Management Protocol,RCMP+)SMBus封包格式的延伸。
匯流排處置器220可為一個SMBus處置器,其係以ICHN分配協定和GPI分配協定暫存一回呼函式。當SMBus的交易完成後,ICHN分配協定回叫暫存的函式。所述交易可以是整個SMBus封包在從屬地址的接收,也可以是從SMBus主機發送一個SMBus封包的完整傳輸。GPI分配協定用於暫存一個回呼函式,用於在SMBus規範中描述的SMBALERT #訊號的過渡。此訊號是由一個SMBus從屬裝置所使用,用於指示已有可供讀取的資料。
虛擬BMC(vBMC)230係負責平台的管理,其係獨立於正在執行中的作業系統。儘管缺乏實際的BMC,許多vBMC 230的特徵可以行使類似於如IPMI、DASH和ASF規範的一部分所描述的功能。vBMC 230的 一個特徵是感測器的監視。vBMC 230作為遠端和本地管理員及位於電路板的實際感測器之間的抽象化層。虛擬BMC 230維持關於在所述平台上各感測器的資訊,包括其類型、目前狀態、閾值和警報要求。虛擬BMC 230與這些感測器係透過SMBus、其他平台匯流排或其他對晶片組平台控制器集線器120的連接來通訊。該感測器資訊可以使用在IPMI、DASH或ASF規範所述的命令來存取。
虛擬BMC 230的另一個特點是一個監視計時器。vBMC 230提供了一個監視計時器,以在系統停機的情況下重設系統。監視計時器可使用SMM的定期計時器(從UEFI PI規範)或通過各種平台晶片組所提供的TCO監視計時器來實現。如果使用SMM定期計時器,計時器需要一個作業系統顯示或DXE顯示驅動器通過OS/DXE驅動器介面發送一心跳命令。通常這些計時器需要一個每隔幾秒重設一次的位元,否則系統將被重設和/或警報將被發送至遠端管理員。vBMC 230可以使用系統韌體提供的值或通過外部IPMI或ASF命令來配置監視計時器。虛擬BMC 230的另一個特徵是一個事件日誌250。vBMC 230可以實施一個系統事件日誌(system event log,SEL)250。這可以通過IPMI SEL的定義或一專屬定義來實施。
虛擬BMC 230還可以報告目前的系統資訊,例如出現在平台上的組件類型。這些可以通過在IPMI規範中描述的平台資料儲存庫形式的SMBIOS表或欄位可更換單元(Field Replaceable Units,FRU)被發現。ASF、 DASH和IPMI規範則提供命令來存取這些資料。此外,除了電源被切斷時,虛擬BMC 230可以報告機器的目前狀態。vBMC 230可以報告機器電源為開啟、先啟動、已經開始啟動(載入一啟動扇區或啟動載入區)、以及啟動已經完成(ExitBootServices呼叫或ACPI賦能或USB手動切換完成)。虛擬BMC還可以報告系統停機。此外,vBMC 230可以強制系統斷電或重設。
虛擬BMC 230的另一個特點是設置選項。vBMC 230可以透過ASF、IPMI或DASH命令來處理遠端請求以變更啟動順序。這些命令強制下次開機時,選擇一個特定的裝置或裝置類別。vBMC 230可以處理的請求來變更使用DASH規範公佈的具體設置選項。在一個實施例中,虛擬BMC也可以提供偵錯功能。所述vBMC可以處理遠端請求以傾印目前CPU暫存器的內容、記憶體內容和硬體暫存器的內容。
第3圖描繪本發明一實施例所使用的虛擬BMC介面。虛擬BMC 230透過記錄、在感測器資料庫記錄或發出警報來回應平台的事件。vBMC 230回應遠端管理員、本地管理員甚至其他BMC的請求。所有這些請求和回應都可透過下列四個介面之一進行處理:SMM客戶端介面310、SMBus客戶端介面320、網路客戶端介面330或OS/DXE驅動器客戶端介面340。
SMM客戶端介面310可包括一個事件日誌的協定,其允許其它SMM驅動器350來記錄平台事件到 vBMC事件日誌250。這些平台事件包括,例如,機器檢查異常、ECC記憶體錯誤或感測器閾值問題。在一個實施例中,vBMC 230透過各種介面(包括此協定)提供命令來讀取或清除錯誤日誌250中的內容。
SMBus客戶端介面320允許一外部客戶端將請求發送到vBMC 230。例如,一個符合DASH規範的NIC可以藉由管理組件傳輸協定(DSP0237)來使用SMBus發送狀態或控制訊息至vBMC 230。此外,vBMC 230可以維持記錄平台上所有感測器資訊的感測器資料庫240。許多這些感測器可以使用SMBus或其他平台匯流排進行通訊。某些感測器可能需要輪詢,而其他的可能在達到特定閾值時產生通知。在一個實施例中,當感測器達到預先定義的閾值,vBMC 230即讀取其現行狀態,並在可適用時生成一個日誌事件和/或透過SMBus客戶端介面320或網路客戶端界面330發送一個警報,使遠端管理員發覺此情況。
網客戶端介面330允許遠端管理員將請求發送到vBMC 230。例如,與DASH規範一致的一個NIC可以使用網路客戶端介面330發送狀態或控制訊息到vBMC 230。虛擬BMC 230將回應這些請求。此外,vBMC 230可以使用網路客戶端介面330發送通知訊息或警報至遠端管理員或管理程序370。
相較於一個單一的介面,OS/DXE驅動器介面340係為允許一本地OS驅動器或DXE驅動器380與 vBMC 230通訊(DXE驅動器在系統初始化時使用)的一個代替介面的集合。此介面的集合中的一個介面可用於SMBus 112。OS/DXE驅動器380可以使用SMBus主機控制器122以發出命令來通訊。所述命令可以由vBMC的SMBus介面320來處理。介面的集合中的另一個介面可以是一個模擬的IPMI系統介面。vBMC 230可以模擬一個標準的EC樣式界面,如鍵盤控制器樣式(Keyboard Controller Style,KCS)、伺服務器管理介面晶片(Server Management Interface Chip,SMIC)或在IPMI規範中描述的塊傳輸(Block Transfer,BT)系統介面。也就是說,當OS/DXE驅動器380從這些系統介面所使用的110埠口之一寫入或讀取,將產生一SMI。在一讀取中,在SMM CPU儲存狀態的AL暫存器中的內容可以讀取的值更新。在寫入中,在SMM CPU儲存狀態的AL暫存器中的內容可以為所述命令所使用。使用這種技術允許在不修改的情況下支援許多現有的作業系統驅動器,因為IPMI和DASH規範提供標準的方法來發現這些系統的介面。OS/DXE介面集合中另一個間接的界面可以透過虛擬BMC 230使用一利用軟體SMI的信箱架構來提供。對於這種技術,OS/DXE驅動器380將管理命令寫入位址為以vBMC 230預先安排的系統記憶體緩衝區。然後OS/DXE驅動器380將一個預定值寫入軟體SMI 110的埠口。然後vBMC 230從記憶體緩衝區中讀取命令、執行運算並將任何結果放入系統記憶體緩衝區以及回復正常運行。這種類 型的介面比使用SMBus或其他平台匯流排顯著更快,因為它可以支援更大尺寸的命令而無需如在平台匯流排上所要求的將其加以片段化,並且只須包括少於110個週期。
第4圖描繪根據本發明一實施例的一個示例性的步驟序列,以一韌體虛擬BMC處理一個管理命令。此序列可任選地開始,當資源在系統初始化時被提供給一NIC以及一種用於隱藏所述NIC以便它從作業系統中隱藏的平台特定的技術(步驟402)。作為一個例子,許多Intel晶片組提供了一種方法來隱藏內部NIC裝置,以使其不會出現在PCI匯流排上,或避免一特定的PCI插槽以“顯示”響應作業系統。這確保了NIC可由vBMC專用。然而應當理解的是,使用一未從作業系統隱藏的專屬NIC或一共享的NIC的其他技術也在本發明的範圍之內。例如,一個作業系統不能檢測到的非PCI裝置,因為它並不駐留在一作業系統可枚舉的匯流排上。在一個實施例中,本地或遠端對vBMC介面的管理請求觸發一個SMI,導致計算裝置中的一個CPU過渡為SMM(步驟404)。可理解的是,SMI也可以用其他方式產生,例如將一值寫入軟體SMI輸入/出埠口。可替代地,在一個NIC收到一個用於計算設備的遠端管理命令後,透過將一NIC產生的中斷訊號重導至一個被配置為對CPU產成一SMI訊號的晶片組平台控制器集線器的通用輸入端,則SMI可以被產生。虛擬BMC在CPU過渡到SMM後接收到遠端管理命令(步驟406),並基於所述命令執行一管理功能(步驟408)。例 如,vBMC可以檢索感測器資料或錯誤的日誌資訊,或者可以改變一個設置的選項,例如計算裝置響應管理命令的啟動順序。所述vBMC傳遞執行管理功能所產生的管理資料透過其支援介面之一者到發出請求的實體(步驟410)。例如,vBMC可以經由諸如SMBus的一個平台匯流排傳遞資訊到一OS或DXE驅動器,或透過一個PCI匯流排傳遞到一位於遠端的管理代理。
如上所述,另一種在SMM中執行vBMC可對一請求用戶或程序進行管理資料通訊的技術,是通過使用一個預先指定的記憶體緩衝區。第5圖描繪根據本發明一實施例的一個示例性的步驟序列,以使用一預定記憶體緩衝區增加一韌體虛擬BMC對一個管理命令的處理速度。接續從計算裝置的CPU(步驟502)到SMM的過渡,vBMC從一個預先指定的記憶體緩衝區(步驟504)讀取一個管理命令。管理命令被一個先前執行的程序或應用放置在預先指定的緩衝區,而CPU則是在需要提供給系統韌體而非應用或程序管理資訊的正常作業模式下。例如,在它們觸發導致過渡到SMM的一個SMI之前,所述管理命令最初可由一OS或DXE驅動器儲存在預先指定的記憶體緩衝區。所述vBMC基於檢索的命令執行一管理功能(步驟506),並將執行管理功能所產生的資料儲存於預先指定的檢索該管理命令的記憶體緩衝區(步驟508)。管理資料可以是實際的資料,如感測器資料,或完成一任務的確認訊息,如為響應於一個命令而改變計算裝置的一個設置配 置,然後所述管理資料可以由請求實體例如OS或DXE驅動器從預先指定的記憶體緩衝區中檢索(步驟510)。將理解的是,使用一個以上的記憶體緩衝區也在本發明的範圍之內。例如,一第一指定記憶體緩衝區可以用於命令的儲存和檢索,而一第二指定記憶體緩衝區可以用於儲存執行命令的結果。
在另一個實施方案中,可使用本文所描述以外的一個替換的NIC。雖然使用千兆乙太網路控制器82571家族的一個Intel NIC的一個實施例已在此描述,其他具有類似功能的NIC也可以在本發明的範圍內使用。類似地,儘管對vBMC通訊使用一個分離的NIC的實施例中已在此描述,共享的NIC也可使用於本發明的一個實施例。單一一個NIC可透過以NIC過濾掉送往vBMC網路封包並使用另一種方法(如本文中所述的SMM信箱機制)將他們移交給vBMC而得以在OS和vBMC韌體之間共享。這樣的共享NIC並提供vBMC方法,在不干擾正常運行的情況下傳送網路封包。
在利用一個共享的NIC的另一實施例中,虛擬BMC透過以一信箱機制與OS NIC驅動器通訊來發送和接收網路封包。例如,當封包是由對虛擬BMC網路客戶端指定的OS NIC驅動器所接收,它們可以被放置在記憶體緩衝區(所述信箱),並能產生一個軟體SMI。虛擬BMC網路客戶端組裝來自信箱緩衝區的封包。當虛擬BMC網路客戶端想要傳送一個網路封包時,它會將封包 的內容放置在信箱記憶體緩衝區並設置一個旗標。作業系統NIC驅動器會定期輪詢(或透過一中斷通知)所述信箱緩衝區和送出封包,並清除旗標。
在另一個實施例中,在運行時未由虛擬BMC使用的一個預作業系統NIC可以被使用。在這種情況下,所述NIC僅在作業系統啟動之前提供給虛擬BMC。虛擬BMC仍將監控平台、具有監視計時器並可以與現行作業系統遠端管理軟體通訊。擱置的事件會被快取,直到下一次重新啟動,並伴隨著一個檢查以了解是否遠端管理員要採取機器的預作業系統控制。使用另一種控制路徑,則遠端管理員可以重新啟動機器,並在預作業系統階段取得系統的控制權。
在另一個實施例中,可使用一個備用處理器。在ARM家族是沒有SMM的。然而,一等值的特徵為,其具有TrustZone。因此,寫入上述軟體SMI的I/O埠口可以SMIC的指令替換。在本實施例中,一次只有一個單一的CPU進入TrustZone,並且沒有專門的SMI #訊號。
而使用SMBus作為平台的傳輸的實施例已如上面所描述,可以使用任何數量的其它平台匯流排來代替。在其他實施例中,替代的平台匯流排如快速管理鏈結匯流排(Fast Management Link bus,FML)、IPMB、CAN和I2C皆可用於本發明之實施例。FML是快速管理鏈結匯流排,其為一SMBus修改後的版本。IPMI描述用於與BMC 通訊的IPMB。主要的要求是,此平台匯流排是為NIC所支援,並且有能夠發送和接收該匯流排上的封包的平台匯流排主控制器,且該平台匯流排主控制器可以在交易過程中適當的點產生一個SMI #,使虛擬BMC SMM客戶端可以增益控制。
部分或所有本發明之實施例可提供為一或多個儲存於一或多個非暫存媒體中的電腦可讀程序或程式碼。該媒體可為但不限於一硬碟、光碟、數位多功光碟、ROM、PROM、EPROM、EEPROM、快閃記憶體、一隨機存取記憶體(RAM)、或一磁帶。在一般情況下,所述電腦可讀程序或程式碼可以任何電腦語言實施。
因為可以做出某些變化而不脫離本發明的範圍,這意味著包含於上述內文中或顯示於附圖中的所有內容皆被解釋為說明性質,而非其字面意義。本領域的從業人員將認識到,步驟順序及圖式中所描繪的架構在不脫離本發明的範圍內可以進行變換,且本文所包含的圖式僅是本發明眾多可能的描繪中的一個例子。
以上關於本發明實施例之示例的內容提供了說明和描述,但並非意在是窮舉或將本發明限制於所揭示的精確形式。根據以上所教示的或從本發明的實踐中可進行可能的修改和變化。例如,當一系列的動作被陳述,在其它實現方式中,動作的順序可進行與本發明原理一致的修改。此外,非依賴性的動作也可以平行地執行。
110‧‧‧NIC
122‧‧‧SMBus主機控制器
230‧‧‧虛擬BMC
240‧‧‧感測器資料庫
250‧‧‧事件日誌
310‧‧‧SMM客戶端介面
320‧‧‧SMBus客戶端介面
330‧‧‧網路客戶端介面
340‧‧‧OS/DXE驅動器客戶端介面
350‧‧‧SMM驅動器
370‧‧‧遠端使用者或管理程序
380‧‧‧OS/DXE驅動器

Claims (30)

  1. 一種改善平台管理的計算裝置建置方法,包括:在與韌體虛擬的基板管理控制器相關聯的介面接收一管理命令;基於該接收的管理命令產生一系統管理中斷,該系統管理中斷由該計算裝置中的一個中央處理單元啟動過渡成為系統管理模式;以該韌體虛擬的基板管理控制器接收該管理命令,該韌體虛擬的基板管理控制器在系統管理模式中執行;基於該管理命令,對具有該虛擬基板管理控制器的該計算裝置執行一管理功能;以及當該虛擬基板管理控制器在系統管理模式中執行時,傳送實施該管理功能所產生的管理資料。
  2. 如申請專利範圍第1項所述之方法,其中,該管理資料係為該計算裝置中監視感測器的資料、影響該計算裝置登錄事件的資訊、該計算裝置組件的系統資訊以及該計算裝置的狀態資訊中的至少一者。
  3. 如申請專利範圍第1項所述之方法,其中,為響應該管理命令,該虛擬基板管理控制器實施一用於該計算裝置的設置選項的變更或一偵錯運算兩者中的至少一者。
  4. 如申請專利範圍第1項所述之方法,其中,在系統停機時,該虛擬基板管理控制器提供一允許該計算裝置重設的監視計時器。
  5. 如申請專利範圍第1項所述之方法,其中,該虛 擬基板管理控制器包括一平台匯流排的一界面,並接收該平台匯流排上的該管理命令。
  6. 如申請專利範圍第5項所述之方法,其中,該計算裝置包括感測器,且該虛擬基板管理控制器在該平台匯流排上與該感測器通訊。
  7. 如申請專利範圍第1項所述之方法,其中,該虛擬基板管理控制器包括允許與一網路介面控制器通訊的一個網路介面,且該虛擬基板管理控制器從一遠端管理程序或用戶透過該網路介面接收一管理命令。
  8. 如申請專利範圍第1項所述之方法,其中,該虛擬基板管理控制器包括一作業系統/驅動器執行環境介面,其允許至少一作業系統驅動器及驅動執行環境驅動器與該虛擬基板管理控制器通訊。
  9. 如申請專利範圍第1項所述之方法,其中,該虛擬基板管理控制器包括一系統管理模式介面,其允許一系統管理模式驅動器與該虛擬基板管理控制器通訊。
  10. 如申請專利範圍第1項所述之方法,更包括:以來自一預設記憶緩衝區之該虛擬基板管理控制器讀取該管理命令,該管理命令在過渡為系統管理模式之前被一作業系統驅動器或驅動執行環境驅動器寫入該記憶緩衝區;當中央處理單元在系統管理模式下執行時,以該虛擬基板管理控制器儲存在該記憶緩衝區執行該管理功能所產生之該管理資料;以及 觸發該中央處理單元回到一正常作業模式,隨著該中央處理單元回到正常作業模式,以該作業系統或驅動執行環境驅動器自該記憶緩衝區檢索所儲存的該管理資料。
  11. 一種保持電腦可執行指令之非暫存媒體,用於改進平台管理,執行該指令時,將使一計算裝置:在與韌體虛擬的基板管理控制器相關聯的介面接收一管理命令;基於該接收的管理命令產生一系統管理中斷,該系統管理中斷由該計算裝置中的一個中央處理單元啟動過渡為系統管理模式;以該韌體虛擬的基板管理控制器接收該管理命令,該韌體虛擬的基板管理控制器在系統管理模式中執行;基於該管理命令,對具有該虛擬基板管理控制器的該計算裝置執行一管理功能;以及當該虛擬基板管理控制器在系統管理模式中執行時,傳送實施該管理功能所產生的管理資料。
  12. 如申請專利範圍第11項所述之媒體,其中,該管理資料係為該計算裝置中監視感測器的資料、影響該計算裝置登錄事件的資訊、該計算裝置組件的系統資訊以及該計算裝置的狀態資訊中的至少一者。
  13. 如申請專利範圍第11項所述之媒體,其中,為響應該管理命令,該虛擬基板管理控制器實施一用於該計算裝置的設置選項的變更或一偵錯運算兩者中的至少一者。
  14. 如申請專利範圍第11項所述之媒體,其中,在系統停機時,該虛擬基板管理控制器提供一允許該計算裝置重設的監視計時器。
  15. 如申請專利範圍第11項所述之媒體,其中該虛擬基板管理控制器包括一平台匯流排的一界面,並接收該平台匯流排上的該管理命令。
  16. 如申請專利範圍第15項所述之媒體,其中,該計算裝置包括感測器,且該虛擬基板管理控制器在該平台匯流排上與該感測器通訊。
  17. 如申請專利範圍第11項所述之媒體,其中,該虛擬基板管理控制器包括允許與一網路介面控制器通訊的一個網路介面,且該虛擬基板管理控制器從一遠端管理程序或用戶透過該網路介面接收一管理命令。
  18. 如申請專利範圍第11項所述之媒體,其中,該虛擬基板管理控制器包括一作業系統/驅動器執行環境介面,其允許至少一作業系統驅動器及驅動執行環境驅動器與該虛擬基板管理控制器通訊。
  19. 如申請專利範圍第11項所述之媒體,其中,該虛擬基板管理控制器包括一系統管理模式介面,其允許一系統管理模式驅動器與該虛擬基板管理控制器通訊。
  20. 如申請專利範圍第11項所述之媒體,其中,執行該指令時,將進一步使一計算裝置:以來自一預設記憶緩衝區之該虛擬基板管理控制器讀取該管理命令,該管理命令在過渡為系統管理模式之前被 一作業系統驅動器或驅動執行環境驅動器寫入該記憶緩衝區;當中央處理單元在系統管理模式下執行時,以該虛擬基板管理控制器儲存在該記憶緩衝區執行該管理功能所產生之該管理資料;以及觸發該中央處理單元回到一正常作業模式,隨著該中央處理單元回到正常作業模式,自該記憶緩衝區檢索所儲存的該管理資料。
  21. 一種配置為提供強化管理資訊之計算裝置,包括:一支援系統管理中斷的中央處理單元;一用來在一網路上接收及傳輸網路封包之網路介面控制器;一平台匯流排;至少一與韌體虛擬的基板管理控制器相關聯的介面,該至少一介面配置為接收一管理命令以及觸發系統管理中斷;以及一系統韌體,包括,其係在該中央處理單元運作於系統管理模式中時執行,該虛擬基板管理控制器配置為:接收一管理命令,基於該管理命令,對該計算裝置執行一管理功能,以及當該韌體虛擬的基板管理控制器在系統管理模式中執行時,傳送實施該管理功能所產生的管理資料。
  22. 如申請專利範圍第21項所述之計算裝置,更包括:一預設記憶緩衝區;以該虛擬基板管理控制器讀取之來自該記憶緩衝區之該管理命令;在過渡為系統管理模式之前,被一作業系統驅動器或驅動執行環境驅動器寫入該記憶緩衝區之該管理命令;當中央處理單元在系統管理模式下執行時,以該虛擬基板管理控制器儲存在該記憶緩衝區執行該管理功能所產生之該管理資料;以及隨著該中央處理單元回到正常作業模式,以該作業系統或驅動執行環境驅動器自該記憶緩衝區所檢索的該管理資料。
  23. 如申請專利範圍第21項所述之計算裝置,其中,該管理資料係為該計算裝置中監視感測器的資料、影響該計算裝置登錄事件的資訊、該計算裝置組件的系統資訊以及該計算裝置的狀態資訊中的至少一者。
  24. 如申請專利範圍第21項所述之計算裝置,其中為響應該管理命令,該虛擬基板管理控制器實施一用於該計算裝置的設置選項的變更或一偵錯運算兩者中的至少一者。
  25. 如申請專利範圍第21項所述之計算裝置,其中,在系統停機時,該虛擬基板管理控制器提供一允許該計算裝置重設的監視計時器。
  26. 如申請專利範圍第21項所述之計算裝置,其中,該虛擬基板管理控制器包括一平台匯流排的一界面, 並接收該平台匯流排上的該管理命令。
  27. 如申請專利範圍第26項所述之計算裝置,其中,該計算裝置包括感測器,且該虛擬基板管理控制器在該平台匯流排上與該感測器通訊。
  28. 如申請專利範圍第21項所述之計算裝置,其中,該虛擬基板管理控制器包括允許與一網路介面控制器通訊的一個網路介面,且該虛擬基板管理控制器從一遠端管理程序或用戶透過該網路介面接收一管理命令。
  29. 如申請專利範圍第21項所述之計算裝置,其中,該虛擬基板管理控制器包括一作業系統/驅動器執行環境介面,其允許至少一作業系統驅動器及驅動執行環境驅動器與該虛擬基板管理控制器通訊。
  30. 如申請專利範圍第21項所述之計算裝置,其中,該虛擬基板管理控制器包括一系統管理模式介面,其允許一系統管理模式驅動器與該虛擬基板管理控制器通訊。
TW103110905A 2013-03-22 2014-03-24 改善平台管理的計算裝置建置方法、保持電腦可執行指令之非暫存媒體及配置為提供強化管理資訊之計算裝置 TWI610167B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201361804556P 2013-03-22 2013-03-22
US61/804,556 2013-03-22

Publications (2)

Publication Number Publication Date
TW201502772A TW201502772A (zh) 2015-01-16
TWI610167B true TWI610167B (zh) 2018-01-01

Family

ID=51570059

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103110905A TWI610167B (zh) 2013-03-22 2014-03-24 改善平台管理的計算裝置建置方法、保持電腦可執行指令之非暫存媒體及配置為提供強化管理資訊之計算裝置

Country Status (3)

Country Link
US (1) US9298524B2 (zh)
TW (1) TWI610167B (zh)
WO (1) WO2014153555A1 (zh)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201405303A (zh) * 2012-07-30 2014-02-01 Hon Hai Prec Ind Co Ltd 底板管理控制器監控系統及方法
US20140280469A1 (en) * 2013-03-14 2014-09-18 American Megatrends, Inc. Method and apparatus for remote management of computer system using handheld device
US20140344431A1 (en) * 2013-05-16 2014-11-20 Aspeed Technology Inc. Baseboard management system architecture
US9529750B2 (en) * 2014-07-14 2016-12-27 American Megatrends, Inc. Service processor (SP) initiated data transaction with bios utilizing interrupt
US9529410B2 (en) * 2014-07-14 2016-12-27 American Megatrends, Inc. Service processor (SP) initiated data transaction with BIOS utilizing power off commands
TWI614613B (zh) * 2014-09-11 2018-02-11 廣達電腦股份有限公司 伺服器系統與其相關的控制方法
US9525608B2 (en) * 2015-02-25 2016-12-20 Quanta Computer, Inc. Out-of band network port status detection
US9954727B2 (en) * 2015-03-06 2018-04-24 Quanta Computer Inc. Automatic debug information collection
US9916270B2 (en) * 2015-03-27 2018-03-13 Intel Corporation Virtual intelligent platform management interface (IPMI) satellite controller and method
US9794120B2 (en) * 2015-04-14 2017-10-17 Quanta Computer, Inc. Managing network configurations in a server system
CN106341295B (zh) * 2015-07-07 2020-12-22 中兴通讯股份有限公司 智能平台管理接口设备的通讯方法及装置、通讯设备
US9928206B2 (en) * 2015-07-21 2018-03-27 American Megatrends Inc. Dedicated LAN interface per IPMI instance on a multiple baseboard management controller (BMC) system with single physical network interface
US9678682B2 (en) 2015-10-13 2017-06-13 International Business Machines Corporation Backup storage of vital debug information
US10796035B1 (en) * 2016-03-21 2020-10-06 EMC IP Holding Company LLC Computing system with simulated hardware infrastructure to support development and testing of management and orchestration software
WO2017214931A1 (en) * 2016-06-16 2017-12-21 Honeywell International Inc. Hardware assist mechanisms for alive detection of redundant devices
US10120702B2 (en) * 2016-07-12 2018-11-06 American Megatrends, Inc. Platform simulation for management controller development projects
US10782764B2 (en) * 2017-02-13 2020-09-22 American Megatrends International, Llc Techniques of emulating an ACPI controller on a service processor
CN107145455B (zh) * 2017-04-19 2020-02-14 深圳市国鑫恒宇科技有限公司 一种整机系统更新smbios静态信息的方法
US10824437B1 (en) * 2017-04-27 2020-11-03 American Megatrends International, Llc Platform management for computing systems without baseboard management controllers
CN109257955B (zh) * 2017-05-15 2021-08-20 华为技术有限公司 操作硬盘的方法和硬盘管理器
US10924350B1 (en) * 2017-06-21 2021-02-16 Amazon Technologies, Inc. Software sensor for reporting controller metrics
US10839080B2 (en) * 2017-09-01 2020-11-17 Microsoft Technology Licensing, Llc Hardware-enforced firmware security
US10901821B2 (en) 2017-10-31 2021-01-26 Insyde Software Corp. System and method for sending restful commands to UEFI firmware using UEFI variable services
US10416988B1 (en) * 2018-02-09 2019-09-17 American Megatrends International, Llc Peripheral device firmware update using rest over IPMI interface firmware shell utility
US10409584B1 (en) * 2018-02-09 2019-09-10 American Megatrends International, Llc Peripheral device firmware update using rest over IPMI interface firmware update module
TWI685792B (zh) * 2018-03-14 2020-02-21 神雲科技股份有限公司 電腦裝置、伺服器裝置及其混合記憶體單元的控制方法
CN109032978A (zh) * 2018-05-31 2018-12-18 郑州云海信息技术有限公司 一种基于bmc的文件传输方法、装置、设备及介质
US11005726B2 (en) * 2018-07-16 2021-05-11 Dell Products L.P. Systems and methods for configuring network interface affinity to system management features supported by a management controller
US11188640B1 (en) * 2018-08-23 2021-11-30 Advanced Micro Devices, Inc. Platform firmware isolation
US11012306B2 (en) 2018-09-21 2021-05-18 Cisco Technology, Inc. Autonomous datacenter management plane
US10782754B2 (en) * 2018-09-21 2020-09-22 Quanta Computer Inc. Thermal management via virtual BMC manager
JP6996748B2 (ja) * 2018-11-22 2022-01-17 Necプラットフォームズ株式会社 デバッグシステム、bios、情報処理装置及びデバッグ方法
TWI736842B (zh) * 2019-02-18 2021-08-21 緯創資通股份有限公司 設定組態控制方法及其相關電腦系統
CN110008071B (zh) * 2019-03-25 2021-04-13 联想(北京)有限公司 一种远程调试装置及方法
CN111581043A (zh) * 2019-07-29 2020-08-25 新华三信息技术有限公司 服务器功耗的监控方法、装置和服务器
TWI703450B (zh) * 2019-08-19 2020-09-01 技嘉科技股份有限公司 支援不同種類記憶體的主機板
US11853771B1 (en) 2019-09-24 2023-12-26 Amazon Technologies, Inc. Offload card based virtualization of a pre-assembled computer system integrated into a server for a virtualization service
US11113046B1 (en) * 2019-09-24 2021-09-07 Amazon Technologies, Inc. Integration and remote control of a pre-assembled computer system into a server for a virtualization service
US11520648B2 (en) * 2020-09-25 2022-12-06 Microsoft Technology Licensing, Llc Firmware emulated watchdog timer controlled using native CPU operations
US11816220B2 (en) * 2020-09-25 2023-11-14 Intel Corporation Phased boot process to dynamically initialize devices in a verified environment
US11740973B2 (en) * 2020-11-23 2023-08-29 Cadence Design Systems, Inc. Instruction error handling
CN112800429A (zh) * 2021-01-28 2021-05-14 北京工业大学 一种基于基础性的uefi bios固件系统中驱动程序保护的方法
CN112905377B (zh) * 2021-02-10 2022-09-20 山东英信计算机技术有限公司 一种避免bmc崩溃的方法、系统及介质
US11822505B2 (en) * 2021-10-28 2023-11-21 Quanta Computer Inc. Systems and methods for remote management of a network device
US11803445B2 (en) * 2022-01-18 2023-10-31 Vmware, Inc. Boot failure protection on smartNICs and other computing devices
CN114840456A (zh) * 2022-06-02 2022-08-02 三星(中国)半导体有限公司 存储设备的带外管理方法、基板管理控制器和存储设备
CN116225812B (zh) * 2023-05-08 2023-08-04 山东云海国创云计算装备产业创新中心有限公司 基板管理控制器系统运行方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040268140A1 (en) * 2003-06-26 2004-12-30 Zimmer Vincent J. Method and system to support network port authentication from out-of-band firmware
US20060184349A1 (en) * 2004-12-10 2006-08-17 Goud Gundrala D Method and apparatus for providing virtual server blades
US20070011507A1 (en) * 2005-06-03 2007-01-11 Intel Corporation System and method for remote system support

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6321289B1 (en) * 1999-04-08 2001-11-20 Micron Technology, Inc. Apparatus for automatically notifying operating system level applications of the occurrence of system management events
US7546487B2 (en) * 2005-09-15 2009-06-09 Intel Corporation OS and firmware coordinated error handling using transparent firmware intercept and firmware services
US7568091B2 (en) * 2006-03-28 2009-07-28 Inventec Corporation Computer platform system control unit data programming control method and system
US7840398B2 (en) * 2006-03-28 2010-11-23 Intel Corporation Techniques for unified management communication for virtualization systems
US7945841B2 (en) 2006-12-06 2011-05-17 Intel Corporation System and method for continuous logging of correctable errors without rebooting
US20090249319A1 (en) * 2008-03-27 2009-10-01 Inventec Corporation Testing method of baseboard management controller
US8230245B2 (en) * 2009-01-23 2012-07-24 Dell Products, L.P. Method and system for operating-system-independent power management using performance verifications
US8122176B2 (en) 2009-01-29 2012-02-21 Dell Products L.P. System and method for logging system management interrupts
US9021472B2 (en) * 2010-12-10 2015-04-28 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Virtualizing baseboard management controller operation
US9158564B2 (en) * 2012-04-30 2015-10-13 American Megatrends, Inc. Virtual service processor stack
US9331899B2 (en) * 2013-03-13 2016-05-03 American Megatrends, Inc. Scalable BMC management stacks using virtual networks on single physical network device
US9118584B2 (en) * 2013-03-15 2015-08-25 American Megatrends, Inc. Dynamic scalable baseboard management controller stacks on single hardware structure
US9734100B2 (en) * 2013-03-21 2017-08-15 Insyde Software Corp. Network controller sharing between SMM firmware and OS drivers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040268140A1 (en) * 2003-06-26 2004-12-30 Zimmer Vincent J. Method and system to support network port authentication from out-of-band firmware
US20060184349A1 (en) * 2004-12-10 2006-08-17 Goud Gundrala D Method and apparatus for providing virtual server blades
US20070011507A1 (en) * 2005-06-03 2007-01-11 Intel Corporation System and method for remote system support

Also Published As

Publication number Publication date
US9298524B2 (en) 2016-03-29
WO2014153555A1 (en) 2014-09-25
US20140289570A1 (en) 2014-09-25
TW201502772A (zh) 2015-01-16

Similar Documents

Publication Publication Date Title
TWI610167B (zh) 改善平台管理的計算裝置建置方法、保持電腦可執行指令之非暫存媒體及配置為提供強化管理資訊之計算裝置
EP3255527B1 (en) Remote keyboard-video-mouse technologies
US9442876B2 (en) System and method for providing network access for a processing node
US9734100B2 (en) Network controller sharing between SMM firmware and OS drivers
US11194588B2 (en) Information handling systems and method to provide secure shared memory access at OS runtime
US20170031694A1 (en) System and method for remote system configuration managment
JP6067771B2 (ja) ネットワークインターフェースコントローラ情報の帯域外取得
US9021472B2 (en) Virtualizing baseboard management controller operation
EP3319283B1 (en) Server data port learning at data switch
US10924350B1 (en) Software sensor for reporting controller metrics
TWI739127B (zh) 提供系統資料之方法、系統及伺服器
US11157628B2 (en) Method to transfer firmware level security indicators to OS level threat protection tools at runtime
US11010249B2 (en) Kernel reset to recover from operating system errors
TWI553490B (zh) 遠端系統配置管理方法、遠端系統配置管理系統及非暫態電腦可讀式儲存多媒體
US10649832B2 (en) Technologies for headless server manageability and autonomous logging
US11593121B1 (en) Remotely disabling execution of firmware components
US20230350756A1 (en) Out of band method to change boot firmware configuration