IP Library Granted Patent US 10,642,646
Granted Patent B1
US 10,642,646 · App. 16/169,256 · Granted May 5, 2020

Techniques of securely performing logic as service in BMC

Inventors: Chandrasekar Rathineswaran (Cumming, GA); Viswanathan Swaminathan (Suwanee, GA); Joseprabu Inbaraj (Suwanee, GA)
Assignee: AMERICAN MEGATRENDS INTERNATIONAL, LLC
G06F9/4812G06F9/44521G06F9/4552G06F9/4843G06F9/542G06F8/60
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,642,646
App. No.
16/169,256
Granted
May 5, 2020
Kind
B1
Abstract

In an aspect of the disclosure, a method, a computer-readable medium, and a computer system are provided. The computer system includes an initialization component of a host. The initialization component obtains a process file for dynamically creating a processing component on a management platform on a BMC of the host, the process file defining a logic to be implemented by the processing component, the initialization component operating to load an operating system of the host. The initialization component sends the process file to the BMC. The initialization component further sends a message to the BMC, the message including data to be processed by the processing component.

Claims (66)

1. A method of operating a computer system, the computer system including a host, comprising:

obtaining, at an initialization component of the host, a process file for dynamically creating a processing component on a management platform on a baseboard management controller (BMC) of the host, the process file defining a logic to be implemented by the processing component, the initialization component operating to load an operating system of the host;

sending the process file to the BMC;

receiving an interrupt when the host is operating under control of the operating system;

invoking a routine of the initialization component in response to receiving the interrupt, the routine generating the message, wherein the message is sent to the BMC in the routine; and

sending a message to the BMC, the message including data to be processed by the processing component.

2. The method of claim 1 , the computer system further including the BMC, the method further comprising:

receiving, at the BMC, the process file from the initialization component;

generating, on the management platform, the processing component that implements the logic; and

executing the processing component on the management platform in a secure environment of the BMC.

3. The method of claim 2 , wherein the processing component is executed in a just-in-time manner.

4. The method of claim 2 , further comprising:

receiving, at the management platform, the message sent from the initialization component; and

processing, at the processing component, the data contained in the message.

5. The method of claim 4 , further comprising:

registering the processing component to receive one or more platform events of the management platform;

generating, at the management platform, the one or more platform events based on the data contained in the message;

sending, at the management platform, the one or more platform events to the processing component; and

obtaining, at the processing component, the data contained in the message from the one or more platform events.

6. The method of claim 2 , further comprising:

sending, at the processing component, the data to a database of the BMC for storage.

7. A computer system, comprising:

a host, including

a first memory; and

a first processor of at least one processor coupled to the first memory and configured to:

obtain, at an initialization component of the host, a process file for dynamically creating a processing component on a management platform on a baseboard management controller (BMC) of the host, the process file defining a logic to be implemented by the processing component, the initialization component operating to load an operating system of the host;

send the process file to the BMC;

receive an interrupt when the host is operating under control of the operating system;

invoke a routine of the initialization component in response to receiving the interrupt, the routine generating the message, wherein the message is sent to the BMC in the routine; and

send a message to the BMC, the message including data to be processed by the processing component.

8. The computer system of claim 7 , wherein the computer system further includes the BMC, wherein the BMC includes

a second memory; and

a second processor of the at least one processor coupled to the second memory and configured to:

receive, at the BMC, the process file from the initialization component;

generate, on the management platform, the processing component that implements the logic; and

execute the processing component on the management platform in a secure environment of the BMC.

9. The computer system of claim 8 , wherein the processing component is executed in a just-in-time manner.

10. The computer system of claim 8 , wherein the second processor of the at least one processor is further configured to:

receive, at the management platform, the message sent from the initialization component; and

process, at the processing component, the data contained in the message.

11. The computer system of claim 10 , wherein the second processor of the at least one processor is further configured to:

register the processing component to receive one or more platform events of the management platform;

generate, at the management platform, the one or more platform events based on the data contained in the message;

send, at the management platform, the one or more platform events to the processing component; and

obtain, at the processing component, the data contained in the message from the one or more platform events.

12. The computer system of claim 8 , wherein the second processor of the at least one processor is further configured to:

send, at the processing component, the data to a database of the BMC for storage.

13. A non-transitory computer-readable medium storing computer executable code for operating a computer system, the computer system including a host, comprising code to:

obtain, at an initialization component of the host, a process file for dynamically creating a processing component on a management platform on a baseboard management controller (BMC) of the host, the process file defining a logic to be implemented by the processing component, the initialization component operating to load an operating system of the host;

send the process file to the BMC;

receive an interrupt when the host is operating under control of the operating system;

invoke a routine of the initialization component in response to receiving the interrupt, the routine generating the message, wherein the message is sent to the BMC in the routine; and

send a message to the BMC, the message including data to be processed by the processing component.

14. The non-transitory computer-readable medium of claim 13 , wherein the computer system further includes the BMC, wherein the code is further configured to:

receive, at the BMC, the process file from the initialization component;

generate, on the management platform, the processing component that implements the logic; and

execute the processing component on the management platform in a secure environment of the BMC.

15. The non-transitory computer-readable medium of claim 14 , wherein the processing component is executed in a just-in-time manner.

16. The non-transitory computer-readable medium of claim 14 , wherein the code is further configured to:

receive, at the management platform, the message sent from the initialization component; and

process, at the processing component, the data contained in the message.

17. The non-transitory computer-readable medium of claim 16 , wherein the code is further configured to:

register the processing component to receive one or more platform events of the management platform;

generate, at the management platform, the one or more platform events based on the data contained in the message;

send, at the management platform, the one or more platform events to the processing component; and

obtain, at the processing component, the data contained in the message from the one or more platform events.

Assignments (5)
PATENT SECURITY AGREEMENT Recorded Oct 23, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: BAIN CAPITAL CREDIT, LP, AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 069229/0834 →
RELEASE OF SECURITY INTEREST Recorded Oct 17, 2024
From: MIDCAP FINANCIAL TRUST
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 069205/0948 →
SECURITY INTEREST Recorded Apr 30, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: MIDCAP FINANCIAL TRUST, AS COLLATERAL AGENT
Reel/Frame 067274/0834 →
ENTITY CONVERSION Recorded Mar 4, 2020
From: AMERICAN MEGATRENDS, INC.
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 052081/0959 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 24, 2018
From: RATHINESWARAN, CHANDRASEKAR; SWAMINATHAN, VISWANATHAN; INBARAJ, JOSEPRABU
To: AMERICAN MEGATRENDS, INC.
Reel/Frame 047294/0949 →