[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

TWI709045B - Method of checking the boot status of a server from remote node and server - Google Patents

Method of checking the boot status of a server from remote node and server Download PDF

Info

Publication number
TWI709045B
TWI709045B TW108128489A TW108128489A TWI709045B TW I709045 B TWI709045 B TW I709045B TW 108128489 A TW108128489 A TW 108128489A TW 108128489 A TW108128489 A TW 108128489A TW I709045 B TWI709045 B TW I709045B
Authority
TW
Taiwan
Prior art keywords
processing unit
central processing
server
controller
operating system
Prior art date
Application number
TW108128489A
Other languages
Chinese (zh)
Other versions
TW202107298A (en
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 神雲科技股份有限公司
Priority to TW108128489A priority Critical patent/TWI709045B/en
Application granted granted Critical
Publication of TWI709045B publication Critical patent/TWI709045B/en
Publication of TW202107298A publication Critical patent/TW202107298A/en

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

A method of checking the boot status of a server from remote node is performed by a server for reading data from a remote host, the server comprising a central processing unit and a baseboard management controller, the central processing unit executes a plurality of basic input/output system sub-programs, the baseboard management controller is communicate with a remote host, and the method is when the central processor unit executes one of the basic input-output system sub-programs, the central processor compares whether the current power-on self-test program corresponding to the executed basic input-output system sub-program meets one of the plurality of preset power-on self-test programs, if yes, the central processor unit generates a corresponding preset power-on self-test code, and converts it into a readable string and stored by the baseboard management controller for the remote host to read.

Description

遠端查看伺服器開機狀態的方法與伺服器Method and server for remotely viewing server startup status

本發明是有關於一種借助於韌體於進行加電自檢程序的過程提供錯誤檢測、錯誤校正或監控的方法與系統。The present invention relates to a method and system for providing error detection, error correction or monitoring in the process of power-on self-checking program by means of firmware.

現有的伺服器從上電後執行基本輸入輸出系統程式以於開機過程中進行加電自檢程序到進入作業系統的所有相關系統事件以及狀態,都是由中央處理器陸續傳送至基板管理控制器以供基板管理控制器以系統事件日誌的方式記錄,當遠端電腦要查看伺服器的最新狀態時,就須從遠端以中斷指令的方式通信連接基板管理控制器並請求基板管理控制器回傳已被記錄的所有系統事件日誌,所以基板管理控制器就會暫停當下正在執行的工作,一直到完成將所有中斷前已儲存的系統事件日誌傳送至遠端電腦後,才會接續執行中斷前正在執行的工作,因此,基板管理控制器會延遲執行中斷前正在執行的工作,若所有系統事件日誌的資料過多就會耗費較長的時間進行所有系統事件日誌的傳送,不但造成基板管理控制器的傳輸負擔,也不易於遠端電腦的使用者快速的取得並查看伺服器現狀,且相當耗費時間。The existing server executes the basic input output system program after power-on to perform the power-on self-check program during the boot process to all related system events and statuses entering the operating system, which are successively transmitted by the central processing unit to the baseboard management controller For the baseboard management controller to record in the system event log, when the remote computer wants to view the latest status of the server, it must communicate with the baseboard management controller by means of interrupt commands from the remote end and request the baseboard management controller to return All the system event logs that have been recorded are transmitted, so the baseboard management controller will suspend the work currently being executed, and will not continue to execute the pre-interruption until all the system event logs stored before the interruption are transferred to the remote computer. The work being executed, therefore, the baseboard management controller will delay the execution of the work being executed before the interruption. If all system event logs have too much data, it will take a long time to transfer all system event logs, which will not only cause the baseboard management controller It is not easy for users of remote computers to quickly obtain and check the status of the server, and it is time-consuming.

因此,本發明的一目的,即在提供一種可直接查看系統狀態的遠端查看伺服器開機狀態的方法。Therefore, an object of the present invention is to provide a method for remotely viewing the server startup status that can directly view the system status.

於是,本發明遠端查看伺服器開機狀態的方法,由一伺服器執行,該伺服器包含一中央處理器,及一耦接該中央處理器的基板管理控制器,該中央處理器於該伺服器上電後,執行包含多個基本輸入輸出系統子程式的一基本輸入輸出系統程式以依序進行多個目前加電自檢程序,該基板管理控制器包括一主要控制器及獨立運作於該主要控制器的一次要控制器,且通信連接一遠端主機。Therefore, the method for remotely checking the boot status of a server of the present invention is executed by a server. The server includes a central processing unit and a baseboard management controller coupled to the central processing unit. The central processing unit is connected to the server. After the controller is powered on, it executes a basic input output system program including a plurality of basic input output system subprograms to sequentially perform a plurality of current power-on self-check procedures. The baseboard management controller includes a main controller and operates independently of the The primary controller of the main controller, and the communication is connected to a remote host.

該遠端查看伺服器開機狀態的方法包含如下:The method for remotely checking the server boot status includes the following:

當該中央處理器執行該等基本輸入輸出系統子程式的其中之一時,該中央處理器比對對應於該基本輸入輸出系統子程式的該目前加電自檢程序是否符合多個預設加電自檢程序的其中一個。When the central processing unit executes one of the basic input output system sub-programs, the central processing unit compares whether the current power-on self-check procedure corresponding to the basic input output system sub-program conforms to multiple preset power-ups One of the self-check procedures.

若比對結果為是,該中央處理器產生對應該被執行的該基本輸入輸出系統子程式的該預設加電自檢程序所對應的一預設加電自檢代號,且將所產生的該目前加電自檢代號轉成一相關於伺服器的運作狀態的可讀字串。If the result of the comparison is yes, the central processing unit generates a preset power-on self-check code corresponding to the preset power-on self-check procedure of the basic input output system subprogram to be executed, and the generated The current power-on self-check code is converted into a readable string related to the operation status of the server.

該中央處理器將該可讀字串傳送到該次要控制器以供該次要控制器儲存該可讀字串。The central processing unit transmits the readable character string to the secondary controller for the secondary controller to store the readable character string.

該遠端主機經由該基板管理控制器讀取該可讀字串。The remote host reads the readable string through the baseboard management controller.

又,本發明的另一目的,即在提供一種可直接查看系統狀態伺服器。Moreover, another object of the present invention is to provide a server that can directly view the system status.

於是,本發明伺服器透過網路連接一遠端主機,該伺服器包含一中央處理器及一基板管理控制器。Therefore, the server of the present invention is connected to a remote host through the network, and the server includes a central processing unit and a baseboard management controller.

該中央處理器於該伺服器上電後執行包含多個基本輸入輸出系統子程式的一基本輸入輸出系統程式,以依序進行多個目前加電自檢程序。After the server is powered on, the central processing unit executes a basic input output system program including a plurality of basic input output system subprograms to sequentially perform a plurality of current power-on self-check procedures.

該基板管理控制器耦接該中央處理器,且包括一主要控制器及一獨立運作於該主要控制器的次要控制器,且通信連接一遠端主機。The baseboard management controller is coupled to the central processing unit, and includes a primary controller and a secondary controller independently operating on the primary controller, and is communicatively connected to a remote host.

當該中央處理器執行該基本輸入輸出系統程式所包括的該等基本輸入輸出系統子程式的其中之一時,該中央處理器比對對應被執行的該基本輸入輸出系統子程式的該目前加電自檢程序是否符合多個預設加電自檢程序的其中一個,若比對結果為是,該中央處理器產生對應該被執行的該基本輸入輸出系統子程式的該預設加電自檢程序所對應的一預設加電自檢代號,且將所產生的該目前加電自檢代號轉成一相關於伺服器的運作狀態的可讀字串,該中央處理器將該可讀字串傳送到該次要控制器以供該次要控制器儲存該可讀字串,該遠端主機經由該基板管理控制器讀取該可讀字串。When the central processing unit executes one of the basic input output system subprograms included in the basic input output system program, the central processing unit compares the current power-on corresponding to the executed basic input output system subprogram Whether the self-check program conforms to one of multiple preset power-on self-check procedures, if the comparison result is yes, the central processing unit generates the preset power-on self-check corresponding to the basic input output system subprogram to be executed A preset power-on self-check code corresponding to the program, and the generated current power-on self-check code is converted into a readable string related to the operating state of the server, and the CPU uses the readable word The string is transmitted to the secondary controller for the secondary controller to store the readable string, and the remote host reads the readable string through the baseboard management controller.

本發明的功效在於:藉由該中央處理器比對出對應於所執行的基本輸入輸出系統子程式的目前加電自檢程序相符於多個預設加電自檢程序的其中之一時,進一步產生對應的運作狀態資料並轉成對應的可讀字串,且傳送至次要控制器以供其暫存器儲存,以供遠端主機無須透過該基板管理控制器中斷該中央處理器正在執行的目前加電自檢程序以執行查詢程序即可從基板管理控制器讀取。The effect of the present invention is that when the current power-on self-test procedure corresponding to the executed basic input output system sub-program is matched with one of a plurality of preset power-on self-test procedures by the central processing unit, further Generate the corresponding operating status data and convert it into a corresponding readable string, and send it to the secondary controller for storage in its register, so that the remote host does not need to interrupt the CPU's execution through the baseboard management controller The current power-on self-check program can be read from the baseboard management controller to execute the query program.

在本實施例中,是藉由基板管理控制器(BMC: Baseboard Management Controller)內部獨立運作的次要控制器例如為郵箱控制器(mailbox controller)來接收中央處理器執行基本輸入輸出系統程式,以將符合該預設加電自檢代號(POST code)的目前加電自檢代號轉換成的可讀字串例如為狀態字串,當其接收該目前加電自檢代號對應的狀態字串,即將該狀態字串覆蓋儲存至對應的暫存器。In this embodiment, a secondary controller that operates independently within the baseboard management controller (BMC: Baseboard Management Controller), such as a mailbox controller, receives the CPU to execute the basic input output system program. The current power-on self-test code that matches the preset power-on self-test code (POST code) is converted into a readable string, for example, a status string. When it receives the status string corresponding to the current power-on self-test code, That is, the status string is overwritten and stored to the corresponding register.

而目前加電自檢代號會被傳送到該基板管理控制器的主要控制器以供其以系統事件日誌的形式儲存,其中只會有少數重要的也就是與該預設加電自檢代號相符的目前加電自檢代號會被另外轉換成狀態字串並傳送到該郵箱控制器以供該郵箱控制器覆蓋儲存於其所對應的該暫存器,並非每個目前加電自檢代號都會被傳到郵箱控制器。由於基板管理控制器的主要控制器儲存的系統事件日誌是長期累積,且並非只儲存關於中央處理器執行基本輸入輸出系統程式產生的相關資訊的系統事件日誌,中央處理器執行作業系統程式(OS: Operation System)或是基板管理控制器執行韌體產生的相關資訊也會被以系統事件日誌的形式記錄,因此系統事件日誌的資料量可能極為龐大,本案主要是提供遠端主機查看伺服器的中央處理器執行基本輸入輸出系統的現況,因此看到的資料就只有最後狀態,不需要保存之前的資料,且本案在由中央處理器執行基本輸入輸出系統程式時傳送目前加電自檢代號至基板管理控制器的郵箱控制器之前,就先將目前加電自檢代號轉換成對應的可讀字串再傳送給基板管理控制器的郵箱控制器,無須中斷基板管理控制器的主要控制器的運作,以下詳細說明本發明伺服器的實施例的具體做法。The current power-on self-test code will be sent to the main controller of the baseboard management controller for storage in the form of system event logs, of which only a few important ones are consistent with the preset power-on self-test code The current power-on self-test code will be converted into a status string and sent to the mailbox controller for the mailbox controller to overwrite and store in its corresponding register. Not every current power-on self-test code will be Is passed to the mailbox controller. Because the system event log stored by the main controller of the baseboard management controller is accumulated for a long time, and not only the system event log that stores the relevant information generated by the CPU executing the basic input output system program, the CPU executes the operating system program (OS : Operation System) or the relevant information generated by the baseboard management controller executing the firmware will also be recorded in the form of system event log. Therefore, the amount of data in the system event log may be extremely large. This case mainly provides remote host to view the server The CPU executes the current status of the basic input output system, so the data seen is only the final state, and there is no need to save the previous data. In this case, the current power-on self-check code is sent to when the CPU executes the basic input output system program. Before the mailbox controller of the baseboard management controller, first convert the current power-on self-test code into a corresponding readable string and then send it to the mailbox controller of the baseboard management controller without interrupting the main controller of the baseboard management controller. Operation, the specific method of the embodiment of the server of the present invention will be described in detail below.

參閱圖1,本發明伺服器包含一系統單晶片21、一記憶體單元22(例如為快閃記憶體、硬碟(圖未示) 、網路磁碟、外接於該伺服器的隨身碟或是外接於該伺服器的硬碟等非揮發性記憶體,本實施例中,該記憶體單元22以快閃記憶體為例說明),及一基板管理控制器23。Referring to Figure 1, the server of the present invention includes a system-on-a-chip 21, a memory unit 22 (for example, flash memory, hard disk (not shown), network disk, or a flash drive external to the server). It is a non-volatile memory such as a hard disk externally connected to the server. In this embodiment, the memory unit 22 is illustrated by using a flash memory as an example), and a baseboard management controller 23.

該系統單晶片21包括一中央處理器(CPU:Central Processing Unit)211、一電連接該中央處理器211的揮發性記憶體例如為雙線記憶體模組(DIMM: Dual In-line Memory Module)212,及一電連接該中央處理器211的平台路徑控制器(PCH:Platform Controller Hub)213。The system-on-a-chip 21 includes a central processing unit (CPU: Central Processing Unit) 211, and a volatile memory electrically connected to the central processing unit 211 is, for example, a dual-line memory module (DIMM: Dual In-line Memory Module). 212, and a platform path controller (PCH: Platform Controller Hub) 213 electrically connected to the central processing unit 211.

該雙線記憶體模組212供該中央處理器211暫存所執行的程式。The two-wire memory module 212 is used for the central processing unit 211 to temporarily store the executed programs.

該平台路徑控制器213取代原本南橋及北橋的一些功能集並連接其他資料匯流輸入/輸出,例如:音效裝置、串列高階技術附接匯流排、通用序列匯流排(USB: Universal Serial Bus)及區域網路。The platform path controller 213 replaces some function sets of the original South Bridge and North Bridge and connects to other data bus input/output, such as audio equipment, serial high-end technology attachment bus, universal serial bus (USB: Universal Serial Bus) and Local area network.

該快閃記憶體(Flash)22電連接該平台路徑控制器213,並儲存一包含多個基本輸入輸出系統子程式的基本輸入輸出系統程式,該中央處理器211於系統上電後而進行開機過程執行該基本輸入輸出系統程式的多個多個基本輸入輸出系統子程式,以進行對應的多個目前加電自檢(POST: Power-on self-test)程序,需再說明的是,每一目前加電自檢程序各自對應一目前加電自檢階段,每一目前加電自檢階段各自對應一目前加電自檢代號(POST Code),該快閃記憶體214並預先儲存一對照表,該對照表包括分別對應於多個預設加電自檢程序的預設加電自檢代號,且該等預設加電自檢程序分別對應於該等基本輸入輸出系統子程式所對應的目前加電自檢程序中的數個,即,從該等目前加電自檢程序中的數個標記為監控點以分別作為該等預設加電自檢程序,而該等被標記的目前加電自檢程序所對應的目前加電自檢程序代碼即分別作為對應的該等預設加電自檢程序代碼,當該中央處理器211執行到該等被標記的目前加電自檢程序的其中之一時,就把對應被執行的該目前加電自檢程序的相關資料例如為預設加電自檢程序代號轉成可讀字串,並經由該平台路徑控制器213傳送到該基板管理控制器23以供儲存,需再說明的是,該等相關資料可例如為:前置可延伸韌體介面階段(PEI phase: Pre-Extensible Firmware Interface phase)的基本輸入輸出系統子程式對應的目前加電自檢代號、或驅動執行環境階段(DXE phase: Driver Execution Environment phase)的基本輸入輸出系統子程式對應的目前加電自檢代號、或目前加電自檢程序的最後階段(End of POST)、或執行過該等基本輸入輸出系統子程式後,到進入作業系統(Boot to OS)前的階段的相關資料。The flash memory (Flash) 22 is electrically connected to the platform path controller 213, and stores a basic input output system program including a plurality of basic input output system subprograms. The CPU 211 starts up after the system is powered on The process executes multiple multiple basic input output system subroutines of the basic input output system program to perform corresponding multiple current power-on self-test (POST: Power-on self-test) procedures. A current power-on self-test program corresponds to a current power-on self-test phase, and each current power-on self-test phase corresponds to a current power-on self-test code (POST Code). The flash memory 214 has a control stored in advance The comparison table includes preset power-on self-check codes corresponding to a plurality of preset power-on self-check procedures, and the preset power-on self-check procedures respectively correspond to the subprograms of the basic input output system Several of the current power-on self-test procedures, that is, from the current power-on self-test procedures that are marked as monitoring points to be used as the preset power-on self-test procedures, and the marked ones The current power-on self-check program codes corresponding to the current power-on self-check program are respectively the corresponding preset power-on self-check program codes. When the CPU 211 executes the marked current power-on self-check When one of the procedures is one of the procedures, the relevant data corresponding to the currently executed power-on self-check program, for example, the preset power-on self-check program code, is converted into a readable string, and transmitted to the platform path controller 213 The baseboard management controller 23 is for storage. It should be noted that the relevant data can be, for example, the basic input output system subprogram corresponding to the pre-extensible firmware interface phase (PEI phase: Pre-Extensible Firmware Interface phase) The current power-on self-test code, or the current power-on self-test code corresponding to the basic input output system subprogram of the DXE phase: Driver Execution Environment phase (DXE phase: Driver Execution Environment phase), or the last phase of the current power-on self-test program (End of POST), or the relevant data of the stage before entering the operating system (Boot to OS) after executing these basic input output system subprograms.

此外,當該中央處理器211執行該等基本輸入輸出系統子程式完成後,接著該中央處理器211經由該平台路徑控制器213執行儲存在一與該平台路徑控制器對應的存儲單元(例如為硬碟(圖未示)、網路磁碟、外接於該伺服器的隨身碟或是外接於該伺服器的硬碟等非揮發性記憶體,以下以硬碟為例說明)的作業系統(OS: Operating System)程式,同樣的,該作業系統進一步地細分為多個作業系統子程式,該等作業系統子程式,分別對應於多個目前作業系統監控程序,每一目前作業系統監控程序對應於一目前作業系統監控程序代碼,該硬碟並預先儲存一對照表,該對照表寫入對應於多個預設作業系統監控程序的預設作業系統監控程序代碼,該等預設作業系統監控程序代碼對應於該等目前作業系統監控程序的目前作業系統監控程序代碼中的數個,亦即將該等目前作業系統監控程序中的數個標記為監控點以分別作為該等預設作業系統監控程序,而該等被標記的目前作業系統監控程序所對應的目前作業系統監控程序代碼即分別作為對應的該等預設作業系統監控程序代碼,當該中央處理器211執行到該等被標記為監控點的目前作業系統監控程序的其中之一時,就把對應執行的目前作業系統監控程序的相關資料例如為預設作業系統監控程序代碼轉成可讀字串,並經由該平台路徑控制器213傳送到該基板管理控制器23以供儲存,以提供該遠端主機3藉由該基板管理控制器23讀取,以下接著詳細說明該基板管理控制器23儲存可讀字串的機制。In addition, after the CPU 211 executes the basic input output system sub-programs, the CPU 211 then executes storage via the platform path controller 213 in a storage unit corresponding to the platform path controller (for example, Non-volatile memory such as hard disk (not shown in the figure), network disk, flash drive connected to the server, or hard disk connected to the server. The following takes the hard disk as an example.) OS: Operating System) program. Similarly, the operating system is further subdivided into multiple operating system subroutines. These operating system subroutines correspond to multiple current operating system monitoring programs, and each current operating system monitoring program corresponds to In a current operating system monitoring program code, a comparison table is pre-stored in the hard disk, and the comparison table is written into preset operating system monitoring program codes corresponding to a plurality of preset operating system monitoring programs, and the preset operating system monitoring The program code corresponds to several of the current operating system monitoring program codes of the current operating system monitoring programs, that is, several of the current operating system monitoring programs are marked as monitoring points to be used as the preset operating system monitoring Programs, and the current operating system monitoring program codes corresponding to the marked current operating system monitoring programs are respectively the corresponding preset operating system monitoring program codes. When the central processing unit 211 executes those marked as When one of the current operating system monitoring programs of the monitoring point is one of the current operating system monitoring programs, the corresponding data of the current operating system monitoring program being executed, for example, the preset operating system monitoring program code is converted into a readable string, and the platform path controller 213 It is sent to the baseboard management controller 23 for storage, so that the remote host 3 can be read by the baseboard management controller 23. The mechanism of the baseboard management controller 23 for storing readable strings will be described in detail below.

該基板管理控制器23電連接該平台路徑控制器,包括一主要控制器(main controller)231,及一電連接該主要控制器231,且獨立於該主要控制器231而運作的的次要控制器232,在本實施例中,該次要控制器232是採用該基板管理控制器23中的一郵箱控制器(mailbox controller),當該中央處理器211執行到標記為監控點的目前加電自檢程序,則對應轉出可讀字串,該次要控制器232用以接收該可讀字串,並將該可讀字串儲存於該基本管理控制器23內部一可供讀寫資料的暫存器,而非透過控制該基板管理控制器23整體運作的該主要控制器231來做接收轉換以及儲存,避免中斷該主要控制器231的運作而影響該基板管理控制器23的整體運作,以下接著具體說明本實施例執行遠端查看伺服器狀態的方法時的流程。The baseboard management controller 23 is electrically connected to the platform path controller, including a main controller 231, and a secondary control that is electrically connected to the main controller 231 and operates independently of the main controller 231 232. In this embodiment, the secondary controller 232 uses a mailbox controller in the baseboard management controller 23. When the central processing unit 211 executes the current power-on marked as a monitoring point The self-checking program correspondingly transfers a readable character string, and the secondary controller 232 is used to receive the readable character string and store the readable character string in the basic management controller 23. A data that can be read and written The main controller 231, which controls the overall operation of the baseboard management controller 23, is used for receiving, converting and storing, so as to avoid interrupting the operation of the main controller 231 and affecting the overall operation of the baseboard management controller 23 , The following specifically describes the flow of the method for remotely checking the server status in this embodiment.

配合參閱圖2,該實施例執行一遠端查看伺服器開機狀態的方法的具體流程,包含一初始化步驟411、一開機步驟412、一比對步驟413、一轉換步驟414、一傳送步驟415、一讀取步驟416、一開啟作業系統步驟417、一比對步驟418、一轉換步驟419、一傳送步驟420,及一讀取步驟421。With reference to FIG. 2, this embodiment executes the specific process of a method for remotely checking the server startup status, including an initialization step 411, a startup step 412, a comparison step 413, a conversion step 414, and a transmission step 415, A reading step 416, a starting operating system step 417, a comparison step 418, a conversion step 419, a transmission step 420, and a reading step 421.

該初始化步驟411為該中央處理器211在伺服器上電後,且系統因收到開機訊號而將進行開機啟動時,該中央處理器先觸發該基板管理控制器23的該次要控制器232執行初始化。In the initialization step 411, after the central processing unit 211 is powered on and the system will start up due to receiving the power-on signal, the central processing unit first triggers the secondary controller 232 of the baseboard management controller 23 Perform initialization.

該開機步驟412為該中央處理器211依據該快閃記憶體22儲存的基本輸入輸出系統程式執行相關的開機程序,即,逐一執行該等基本輸入輸出系統子程式。In the booting step 412, the CPU 211 executes related booting procedures according to the basic input output system program stored in the flash memory 22, that is, executes the basic input output system subprograms one by one.

該比對步驟413為該中央處理器211逐一比對執行的該等基本輸入輸出系統子程式分別所對應的目前加電自檢程序是否符合多個預設加電自檢程序(監控點)的其中一個,進一步詳細說明比對方式:該中央處理器211將對應於當下所執行的該基本輸入輸出系統子程式對應的目前加電自檢程序所對應的目前加電自檢代號是否與多個預設加電自檢程序對應的預設加電自檢程序代號相符,若比對結果為否,則繼續執行次一基本輸入輸出系統子程式。The comparison step 413 is to compare whether the current power-on self-check procedures corresponding to the basic input output system subprograms executed by the central processing unit 211 one by one are in compliance with multiple preset power-on self-check procedures (monitoring points). One of them is to further describe the comparison method: the central processing unit 211 will correspond to whether the current power-on self-test code corresponding to the current power-on self-test program corresponding to the basic input output system subroutine being executed currently corresponds to multiple The code of the preset power-on self-check program corresponding to the preset power-on self-check program matches. If the comparison result is no, the next basic input output system subroutine will continue to be executed.

該轉換步驟414為若該比對步驟413的比對結果為是,則該中央處理器211將所執行對應於該目前加電自檢程序的基本輸入輸出系統子程式相關的資料例如為目前加電自檢程序代號轉成可讀字串,並傳送到該基板管理控制器23的該次要控制器232。The conversion step 414 is that if the comparison result of the comparison step 413 is yes, the central processing unit 211 executes the basic input output system sub-program corresponding to the current power-on self-check procedure. The code of the electrical self-checking program is converted into a readable string and transmitted to the secondary controller 232 of the baseboard management controller 23.

該傳送步驟415為該中央處理器211將轉出的可讀字串傳送到該基板管理控制器23的該次要控制器232,以供該次要制器232將接收到的可讀字串儲存於其可讀寫之暫存器。The transmission step 415 is for the central processing unit 211 to transmit the transferred readable character string to the secondary controller 232 of the baseboard management controller 23 for the secondary controller 232 to receive the readable character string Stored in its readable and writable register.

該讀取步驟416為該遠端主機3經由該基板管理控制器23讀取放在該次要控制器232可讀寫的暫存器且相關於目前加電自檢代號的狀態字串,亦即讀取該可讀字串。In the reading step 416, the remote host 3 reads, through the baseboard management controller 23, the status string stored in the readable and writable register of the secondary controller 232 and related to the current power-on self-check code. That is, read the readable string.

該開啟作業系統步驟417為該中央處理器211接著切換執行儲存在硬碟的作業系統程式,亦即執行該作業系統程式包含的多個作業系統子程式,以進行多個分別對應於該等作業系統子程式的目前作業系統監控程序。In step 417 of opening the operating system, the CPU 211 then switches to execute the operating system program stored in the hard disk, that is, executes multiple operating system subroutines included in the operating system program to perform multiple operations corresponding to the operations. The current operating system monitoring program of the system subroutine.

該比對步驟418為該中央處理器211在執行該等作業系統子程式時,逐一比對執行的作業系統子程式對應的目前作業系統監控程序是否為多個預設作業系統監控程序(監控點)的其中之一,若比對結果為否,則繼續執行次一作業系統子程式。In the comparison step 418, when the central processing unit 211 executes the operating system sub-programs, it compares whether the current operating system monitoring program corresponding to the executed operating system sub-program is multiple preset operating system monitoring programs (monitoring points). ), if the comparison result is no, continue to execute the next operating system subroutine.

該轉換步驟419為若該比對步驟418的比對結果為是,則該中央處理器211產生對應於其執行該作業系統子程式時的相關運作狀態的資料並轉換成可讀字串。In the conversion step 419, if the comparison result of the comparison step 418 is yes, the CPU 211 generates data corresponding to the relevant operating state when the operating system subprogram is executed and converts it into a readable string.

該傳送步驟420為該中央處理器211接著將轉出的可讀字串經由該平台路徑控制器213傳送到該次要控制器232,該次要控制器232並將接收到的可讀字串儲存於與其對應的暫存器。In the transmission step 420, the central processing unit 211 then transmits the transferred readable character string to the secondary controller 232 via the platform path controller 213, and the secondary controller 232 transfers the received readable character string Stored in its corresponding register.

該讀取步驟421為該遠端主機3經由該基板管理控制器23讀取對應於該次要控制器232的暫存器所儲存的可讀字串,更詳細的說明,該遠端主機3經由網路登入該基板管理控制器23的該主要控制器231,並藉由該主要控制器231讀取與該次要控制器232對應的該暫存器。In the reading step 421, the remote host 3 reads the readable string stored in the register corresponding to the secondary controller 232 through the baseboard management controller 23. In more detail, the remote host 3 Log in to the main controller 231 of the baseboard management controller 23 via the network, and use the main controller 231 to read the register corresponding to the secondary controller 232.

綜上所述,在上述實施例中,藉由該中央處理器在執行該等基本輸入輸出子程式,且比對出是對應於預先寫入於該快閃記憶體的對照表的預設基本輸入輸出監控程序時,該中央處理器將執行該基本輸入輸出子程式時對應產生的資料轉成可讀字串,並傳送到該次要控制器,以供該次要控制器將該可讀字串儲存於與其對應的暫存器,並供該遠端主機經由該基板管理控制器讀取,同樣的,當該中央處理器執行該等作業系統子程式,且比對出是符合預先寫入在硬碟的對照表或是被標記的目前作業系統監控程序所對應的預設作業系統監控程序時,該中央處理器將執行該作業系統子程式時對應產生的資料例如為目前作業系統監控程序代號轉成可讀字串,並同樣傳送到該次要控制器,以供其儲存於其所對應的暫存器,並供該遠端主機3經由該基板管理控制器讀取,因而使該遠端主機3的管理者可直接查看伺服器當下的運作狀態也就是被儲存於該次要控制器所對應的暫存器的可讀字串所指示出的運作狀態,故確實能達成本發明的目的。To sum up, in the above-mentioned embodiment, the basic input and output subprograms are executed by the central processing unit, and the comparison results are corresponding to the preset basic input and output subprograms written in the flash memory in advance. During the input and output monitoring program, the central processing unit converts the corresponding data generated during the execution of the basic input and output subroutine into a readable string, and transmits it to the secondary controller for the secondary controller to read it. The string is stored in its corresponding register and is read by the remote host via the baseboard management controller. Similarly, when the central processing unit executes the operating system sub-programs, it is compared with the pre-written When entering the comparison table on the hard disk or the default operating system monitoring program corresponding to the marked current operating system monitoring program, the central processing unit will execute the operating system subroutine when the corresponding data is generated, for example, the current operating system monitoring The program code is converted into a readable string, and is also transmitted to the secondary controller for storage in its corresponding register, and for the remote host 3 to read through the baseboard management controller, so that The administrator of the remote host 3 can directly view the current operating status of the server, that is, the operating status indicated by the readable string stored in the register corresponding to the secondary controller, so it can indeed achieve the cost The purpose of the invention.

惟以上所述者,僅為本發明的實施例而已,當不能以此限定本發明實施的範圍,凡是依本發明申請專利範圍及專利說明書內容所作的簡單的等效變化與修飾,皆仍屬本發明專利涵蓋的範圍內。However, the above are only examples of the present invention. When the scope of implementation of the present invention cannot be limited by this, all simple equivalent changes and modifications made in accordance with the scope of the patent application of the present invention and the content of the patent specification still belong to Within the scope of the patent for the present invention.

21:系統單晶片 211:中央處理器 212:雙線記憶體模組 213:平台路徑控制器 22:快閃記憶體 23:基板管理控制器 231:主要控制器 232:次要控制器 3:遠端主機 411:初始化步驟 412:開機步驟 413:比對步驟 414:轉換步驟 415:傳送步驟 416:讀取步驟 417:開啟作業系統步驟 418:比對步驟 419:轉換步驟 420:傳送步驟 421:讀取步驟21: System-on-a-chip 211: Central Processing Unit 212: Two-wire memory module 213: Platform Path Controller 22: Flash memory 23: baseboard management controller 231: main controller 232: secondary controller 3: remote host 411: Initialization step 412: boot steps 413: comparison steps 414: Conversion steps 415: Transmission Step 416: Read step 417: Open the operating system steps 418: comparison step 419: conversion steps 420: Transmission Step 421: Reading step

本發明的其他的特徵及功效,將於參照圖式的實施方式中清楚地呈現,其中: 圖1是一方塊圖,說明本發明伺服器的一實施例;及 圖2是一流程圖,輔助說明該實施例執行的一遠端查看伺服器開機狀態的方法。 Other features and effects of the present invention will be clearly presented in the embodiments with reference to the drawings, in which: Figure 1 is a block diagram illustrating an embodiment of the server of the present invention; and FIG. 2 is a flowchart to assist in explaining a method for remotely checking the server startup status executed in this embodiment.

21:系統單晶片 21: System-on-a-chip

211:中央處理器 211: Central Processing Unit

212:雙線記憶體模組 212: Two-wire memory module

213:平台路徑控制器 213: Platform Path Controller

22:快閃記憶體 22: Flash memory

23:基板管理控制器 23: baseboard management controller

231:主要控制器 231: main controller

232:次要控制器 232: secondary controller

3:遠端主機 3: remote host

Claims (10)

一種遠端查看伺服器開機狀態的方法,由一伺服器執行,該伺服器包含一中央處理器,及一耦接該中央處理器的基板管理控制器,該中央處理器於該伺服器上電後執行包含多個基本輸入輸出系統子程式的一基本輸入輸出系統程式以依序進行多個目前加電自檢程序,該基板管理控制器包括一主要控制器及獨立運作於該主要控制器的一次要控制器,且通信連接一遠端主機,該遠端查看伺服器開機狀態的方法包含: 當該中央處理器執行該等基本輸入輸出系統子程式的其中之一,該中央處理器比對對應於被執行的該基本輸入輸出系統子程式的該目前加電自檢程序是否符合多個預設加電自檢程序的其中一個; 若比對結果為是,該中央處理器產生對應被執行的該基本輸入輸出系統子程式的該預設加電自檢程序所對應的一預設加電自檢代號,且將所產生的該目前加電自檢代號轉成一相關於伺服器的運作狀態的可讀字串; 該中央處理器將該可讀字串傳送到該次要控制器以供該次要控制器儲存該可讀字串;及 該遠端主機經由該基板管理控制器讀取該可讀字串。 A method for remotely viewing the boot status of a server, executed by a server, the server includes a central processing unit, and a baseboard management controller coupled to the central processing unit, and the central processing unit is powered on the server Then execute a basic input output system program including a plurality of basic input output system subprograms to sequentially perform a plurality of current power-on self-check procedures. The baseboard management controller includes a main controller and an independent operation of the main controller Once the controller is required, and a remote host is connected in communication, the method for remotely viewing the server's boot status includes: When the central processing unit executes one of the basic input output system subprograms, the central processing unit compares whether the current power-on self-check procedure corresponding to the executed basic input output system subprogram meets multiple pre-programs. Set one of the power-on self-check procedures; If the result of the comparison is yes, the central processing unit generates a preset power-on self-check code corresponding to the preset power-on self-check procedure of the executed basic input output system subprogram, and replaces the generated The current power-on self-check code is converted into a readable string related to the operating status of the server; The central processing unit transmits the readable character string to the secondary controller for the secondary controller to store the readable character string; and The remote host reads the readable string through the baseboard management controller. 如請求項1所述的遠端查看伺服器開機狀態的方法,還包含:該中央處理器觸發該次要控制器執行初始化。The method for remotely checking the power-on status of a server as described in claim 1, further includes: the central processing unit triggers the secondary controller to perform initialization. 如請求項1所述的遠端查看伺服器開機狀態的方法,該中央處理器還切換執行包括多個作業系統子程式的一作業系統程式以進行多個目前作業系統監控程序,其中,當該中央處理器執行該等作業系統子程式的其中之一時,該中央處理器比對對應被執行的該作業系統子程式的該目前作業系統監控程序是否符合該等預設作業系統監控程序的其中一個,若比對結果為是,該中央處理器產生對應被執行的該目前作業系統子程式的運作狀態資料並轉成相關於該伺服器的運作狀態的該可讀字串。According to the method for remotely checking the boot status of a server as described in claim 1, the central processing unit also switches to execute an operating system program including multiple operating system subroutines to perform multiple current operating system monitoring procedures, wherein, when the When the central processing unit executes one of the operating system subprograms, the central processing unit compares whether the current operating system monitoring program corresponding to the operating system subprogram being executed conforms to one of the preset operating system monitoring programs If the comparison result is yes, the central processing unit generates the operating status data corresponding to the currently executed operating system subprogram and converts it into the readable string related to the operating status of the server. 如請求項3所述的遠端查看伺服器開機狀態的方法,該中央處理器將對應被執行的該目前作業系統子程式的運作狀態資料轉出的該可讀字串傳送到該基板管理控制器的該次要控制器。According to the method for remotely checking the boot status of a server as described in claim 3, the central processing unit transmits the readable string corresponding to the operating status data of the currently executed operating system subprogram to the baseboard management control The secondary controller of the device. 如請求項4所述的遠端查看伺服器開機狀態的方法,該遠端主機經由該基板管理控制器的該主要控制器讀取被儲存的該可讀字串。According to the method for remotely checking the power-on status of a server as described in claim 4, the remote host reads the stored readable string through the main controller of the baseboard management controller. 一種伺服器,透過網路連接一遠端主機,該伺服器包含: 一中央處理器,於該伺服器上電後執行包含多個基本輸入輸出系統子程式的一基本輸入輸出系統程式,以依序進行多個目前加電自檢程序;及 一基板管理控制器,耦接該中央處理器且包括一主要控制器及一獨立運作於該主要控制器的次要控制器,且通信連接該遠端主機, 當該中央處理器執行該基本輸入輸出系統程式所包括的該等基本輸入輸出系統子程式的其中之一時,該中央處理器比對對應被執行的該基本輸入輸出系統子程式的該目前加電自檢程序是否符合多個預設加電自檢程序的其中一個,若比對結果為是,該中央處理器產生對應被執行的該基本輸入輸出系統子程式的一運作狀態資料並轉成相關於伺服器的運作狀態的一可讀字串,該中央處理器將該可讀字串傳送到該次要控制器,以供該次要控制器將該可讀字串儲存,且供該遠端主機經由該基板管理控制器讀取。 A server that connects to a remote host through a network. The server includes: A central processing unit, after the server is powered on, executes a basic input output system program including a plurality of basic input output system subprograms to sequentially perform a plurality of current power-on self-check procedures; and A baseboard management controller, coupled to the central processing unit and including a primary controller and a secondary controller independently operating on the primary controller, and communicatively connected to the remote host, When the central processing unit executes one of the basic input output system subprograms included in the basic input output system program, the central processing unit compares the current power-on corresponding to the executed basic input output system subprogram Whether the self-checking procedure complies with one of the preset power-on self-checking procedures, if the comparison result is yes, the central processing unit generates an operating status data corresponding to the executed basic input output system sub-program and converts it into relevant A readable character string in the operating state of the server, the CPU transmits the readable character string to the secondary controller for the secondary controller to store the readable character string and for the remote The end host is read via the baseboard management controller. 如請求項6所述的伺服器,其中,該中央處理器觸發該次要控制器執行初始化。The server according to claim 6, wherein the central processing unit triggers the secondary controller to perform initialization. 如請求項6所述的伺服器,其中,該中央處理器還切換執行包括多個作業系統子程式的一作業系統程式以進行多個目前作業系統監控程序,當該中央處理器執行該等作業系統子程序的其中之一時,該中央處理器比對對應被執行的該作業系統子程式的該目前作業系統監控程序是否符合多個預設作業系統監控程序的其中一個,若比對結果為是,該中央處理器產生對應被執行的該作業系統子程序的該目前作業系統監控程序所對應的該運作狀態資料並轉成相關於該伺服器的運作狀態的該可讀字串。The server according to claim 6, wherein the central processing unit also switches to execute an operating system program including multiple operating system subroutines to perform multiple current operating system monitoring procedures, and when the central processing unit executes the operations When one of the system subroutines, the central processing unit compares whether the current operating system monitoring program corresponding to the executed operating system subroutine matches one of the preset operating system monitoring programs, and if the comparison result is yes The central processing unit generates the operating status data corresponding to the current operating system monitoring program corresponding to the executed operating system subroutine and converts it into the readable string related to the operating status of the server. 如請求項8所述的伺服器,其中,該中央處理器將自對應被執行的該作業系統子程序的運作狀態資料轉出的該可讀字串傳送到該基板管理控制器的該次要控制器。The server according to claim 8, wherein the central processing unit transmits the readable character string transferred from the operation status data of the subprogram corresponding to the executed operating system to the secondary of the baseboard management controller Controller. 如請求項9所述的伺服器,其中,該次要控制器儲存該可讀字串,用以提供該遠端主機藉由該基板管理控制器的該主要控制器讀取被儲存的該可讀字串。The server according to claim 9, wherein the secondary controller stores the readable string for providing the remote host to read the stored data through the primary controller of the baseboard management controller Read the string.
TW108128489A 2019-08-12 2019-08-12 Method of checking the boot status of a server from remote node and server TWI709045B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW108128489A TWI709045B (en) 2019-08-12 2019-08-12 Method of checking the boot status of a server from remote node and server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108128489A TWI709045B (en) 2019-08-12 2019-08-12 Method of checking the boot status of a server from remote node and server

Publications (2)

Publication Number Publication Date
TWI709045B true TWI709045B (en) 2020-11-01
TW202107298A TW202107298A (en) 2021-02-16

Family

ID=74202241

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108128489A TWI709045B (en) 2019-08-12 2019-08-12 Method of checking the boot status of a server from remote node and server

Country Status (1)

Country Link
TW (1) TWI709045B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201042448A (en) * 2009-05-27 2010-12-01 Aten Int Co Ltd Server, computer system, and method for monitoring computer system
US20160072761A1 (en) * 2014-09-08 2016-03-10 Quanta Computer Inc. Automatic generation of server network topology
US20160182484A1 (en) * 2014-12-17 2016-06-23 Quanta Computer Inc. Authentication-free configuration for service controllers
TW201643718A (en) * 2015-06-09 2016-12-16 廣達電腦股份有限公司 Debug method and apparatus thereof
TW201729123A (en) * 2016-02-05 2017-08-16 廣達電腦股份有限公司 Method and server for remote launching deployment utility
TW201931117A (en) * 2018-01-12 2019-08-01 廣達電腦股份有限公司 Method for remote system recovery

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201042448A (en) * 2009-05-27 2010-12-01 Aten Int Co Ltd Server, computer system, and method for monitoring computer system
US20160072761A1 (en) * 2014-09-08 2016-03-10 Quanta Computer Inc. Automatic generation of server network topology
US20160182484A1 (en) * 2014-12-17 2016-06-23 Quanta Computer Inc. Authentication-free configuration for service controllers
TW201643718A (en) * 2015-06-09 2016-12-16 廣達電腦股份有限公司 Debug method and apparatus thereof
TW201729123A (en) * 2016-02-05 2017-08-16 廣達電腦股份有限公司 Method and server for remote launching deployment utility
TW201931117A (en) * 2018-01-12 2019-08-01 廣達電腦股份有限公司 Method for remote system recovery

Also Published As

Publication number Publication date
TW202107298A (en) 2021-02-16

Similar Documents

Publication Publication Date Title
TWI578233B (en) Unified firmware managment system, non-transitory computer-readable storage medium and method for unified firmware managment
US6357021B1 (en) Method and apparatus for updating firmware
US7487343B1 (en) Method and apparatus for boot image selection and recovery via a remote management module
TWI306193B (en) Self-monitoring and updating of firmware over a network
CN107045448A (en) Remotely start the method and server of deployment program
TW201706836A (en) Updating method, server system and non-transitory computer readable medium
CN108509215B (en) System software replacing method and device, terminal equipment and storage medium
CN114868117B (en) Peer-to-peer storage device messaging over control bus
JP2009295146A (en) Recovery server, recovery processing program, and computer system
US10514972B2 (en) Embedding forensic and triage data in memory dumps
US9749189B2 (en) Generating graphical diagram of physical layout of computer platforms
TWI553490B (en) Method and system for remote system configuration management and non-transitory computer-readable storage medium
TWI650646B (en) Cable data machine and its operation method
US11586504B2 (en) Electronic apparatus and boot method thereof
TWI709045B (en) Method of checking the boot status of a server from remote node and server
JP5846016B2 (en) Information processing apparatus, information processing method, and information processing program
CN112486742B (en) Method for remotely checking starting state of server and server
US20220374223A1 (en) Server and updating method for mac address
CN116755749A (en) On-board MCU upgrading method, on-board MCU, board card and information processing system
TWI777664B (en) Booting method of embedded system
CN116627472A (en) Firmware program upgrading method and server of high-speed peripheral component equipment
US10216525B1 (en) Virtual disk carousel
US11222120B2 (en) Storage device firmware bootloader recovery system and method therefor
CN109254800B (en) Equipment information processing method, electronic equipment and server
TWI858939B (en) Management platform system and bootloader repariring method thereof

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees