CN113687944B - Task execution method, device, equipment and medium of baseboard management control chip - Google Patents

Task execution method, device, equipment and medium of baseboard management control chip Download PDF

Info

Publication number
CN113687944B
CN113687944B CN202110866027.9A CN202110866027A CN113687944B CN 113687944 B CN113687944 B CN 113687944B CN 202110866027 A CN202110866027 A CN 202110866027A CN 113687944 B CN113687944 B CN 113687944B
Authority
CN
China
Prior art keywords
video
emac
control chip
management control
cpu
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN202110866027.9A
Other languages
Chinese (zh)
Other versions
CN113687944A (en
Inventor
张贞雷
李拓
满宏涛
刘同强
周玉龙
邹晓峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Original Assignee
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
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 Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd filed Critical Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Priority to CN202110866027.9A priority Critical patent/CN113687944B/en
Publication of CN113687944A publication Critical patent/CN113687944A/en
Application granted granted Critical
Publication of CN113687944B publication Critical patent/CN113687944B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

The application discloses a task execution method and device of a substrate management control chip, electronic equipment and a readable storage medium. The method comprises the steps that if a task request instruction containing first identification information is received, a drive of a target peripheral required by executing the task request instruction is set to be a polling mode, a CPU of a baseboard management control chip communicates with the target peripheral in the polling mode, and meanwhile, an interface opening instruction and a task execution instruction are sent. If a task request instruction containing second identification information is received, setting the drive of the target peripheral as an interrupt mode, and communicating the CPU of the baseboard management control chip with the target peripheral in the interrupt mode and simultaneously sending an interface closing and task executing instruction. The application can effectively improve the working efficiency of the CPU of the substrate management control chip.

Description

Task execution method, device, equipment and medium of baseboard management control chip
Technical Field
The present application relates to the field of computer technologies, and in particular, to a method and apparatus for executing tasks of a baseboard management control chip, an electronic device, and a readable storage medium.
Background
The baseboard management control chip is used for monitoring the states of the server such as temperature, fans and the running condition of a main CPU (central processing unit, a central processing unit), and can transmit video information of the local server to a far end through a network for remote display and monitoring.
In the related art, the communication mode between EMAC (ETHERNET MEDIA ACCESS Control, network card) and CPU in the baseboard management Control chip is: first, the CPU of the baseboard management control chip writes Data to be transmitted through EMAC to a specified location of a memory DDR (Double Data Rate), and then transmits the constructed transmission descriptor to the specified location of the DDR. The EMAC parses the acquired transmit descriptor to obtain the target address of the transmit data in the DDR and the number of Bytes to be transmitted. Based on the target address, corresponding sending data is read, the data packet is encapsulated and the like through the EMAC, converted into the packet format of the Ethernet protocol, and sent to the network through the physical layer PHY. In the whole process, the EMAC frequently communicates with the CPU in an interrupt manner, such as the completion of the current packet transmission, the current packet verification error, the current packet transmission error, and the like. Also on the receiving side, the EMAC and the CPU may communicate frequently by interrupt, for example, the current packet is received in error, the check bit of the current packet is in error, and the types of errors are various.
As can be seen from the above, the EMAC in the related art communicates with the CPU of the baseboard management control chip too frequently, and the CPU is frequently in an interrupted state to process the interrupt subroutine, so that the normal operation task of the system cannot be executed normally and efficiently, resulting in low task execution efficiency of the baseboard management control chip of the CPU.
In view of this, how to improve the working efficiency of the CPU of the baseboard management control chip is a technical problem that needs to be solved by those skilled in the art.
Disclosure of Invention
The application provides a task execution method and device of a baseboard management control chip, electronic equipment and a readable storage medium, which can effectively improve the working efficiency of a CPU of the baseboard management control chip.
In order to solve the technical problems, the embodiment of the invention provides the following technical scheme:
An aspect of the present invention provides a task execution method of a baseboard management control chip, including:
if a task request instruction containing first identification information is received, setting a drive of a target peripheral required for executing the task request instruction as a polling mode, and simultaneously sending an interface starting and task executing instruction;
and if a task request instruction containing second identification information is received, setting the driving of the target peripheral equipment as an interrupt mode, and simultaneously sending an instruction for closing an interface and stopping task execution.
Optionally, the task request instruction is a video monitoring instruction sent by a remote client, and if the task request instruction including the first identification information is received, a driver of a target peripheral required for executing the task request instruction is set to be in a polling mode, and a process of sending an interface opening and task executing instruction includes:
When the video monitoring instruction is analyzed to contain a first network data packet, the network card driver is set to be in a polling mode, and simultaneously, an instruction for starting a video data receiving interface and executing a video data compression task is sent to the compressed video controller.
Optionally, if a task request instruction containing second identification information is received, setting the driving of the target peripheral device to be in an interrupt mode, and simultaneously sending a process of closing an interface and stopping task execution instructions, including:
When the video monitoring instruction sent by the remote client is analyzed to contain a second network data packet, the network card driver is set to be in an interrupt mode, and meanwhile, an instruction for closing the video data receiving interface and stopping the video data compression task is sent to the compressed video controller.
Optionally, after sending the instruction for starting the video data receiving interface and executing the video data compression task to the compressed video controller, the method further includes:
And packaging the running state information of the host and the compressed video information layer by layer into a data format of a network layer, and writing the data format into a memory.
Optionally, after the compressed video information and the running state information of the host are packed layer by layer into the data format of the network layer based on the TCP/IP protocol and written into the memory, the method further includes:
And actively inquiring and processing instructions sent by the network card in the process of reading the data packet to be sent from the memory and sending the packaged data packet to the remote client according to the preset inquiry frequency.
Optionally, after setting the driving of the target peripheral device required for executing the task request instruction to a polling mode, the method further includes:
Acquiring associated peripheral equipment of the target peripheral;
Setting the driving of the associated peripheral equipment as a polling mode, so that the CPU of the baseboard management control chip communicates with the associated peripheral equipment in the polling mode.
Optionally, after the setting the driving of the target peripheral device to an interrupt mode, the method further includes:
Setting the driving of the associated peripheral equipment as an interrupt mode, so that the CPU of the baseboard management control chip communicates with the associated peripheral equipment by adopting the interrupt mode.
Another aspect of the embodiments of the present invention provides a task execution device of a baseboard management control chip, including:
The polling communication mode setting module is used for setting the drive of the target peripheral required by executing the task request instruction as a polling mode and simultaneously sending an interface opening and task execution instruction if a task request instruction containing first identification information is received;
And the interrupt communication mode setting module is used for setting the drive of the target peripheral device as an interrupt mode if a task request instruction containing second identification information is received, and simultaneously sending an instruction for closing an interface and stopping task execution.
The embodiment of the invention also provides electronic equipment, which comprises a processor, wherein the processor is used for realizing the steps of the task execution method of the baseboard management control chip according to any one of the previous claims when executing the computer program stored in the memory.
The embodiment of the invention finally provides a readable storage medium, wherein the readable storage medium stores a computer program, and the computer program realizes the steps of the task execution method of the baseboard management control chip according to any one of the previous claims when being executed by a processor.
The technical scheme provided by the application has the advantages that the communication mode between the CPU of the baseboard management control chip and the peripheral is determined according to whether the task is to be executed, namely whether the peripheral is in an active state or a relaxed state, the data packet is long and frequent when the task is processed, the CPU of the baseboard management control chip actively adopts a polling mode to interact with the peripheral, the data packet is short and sparse when the task is not required to be executed, the CPU of the baseboard management control chip actively adopts an interrupt mode to communicate with the peripheral, the working efficiency of the CPU of the baseboard management control chip can be effectively improved, the problem that the CPU is frequently interrupted is solved, and the defect that the performance of the CPU for executing system tasks and receiving other state information of a host side is reduced in the prior art is solved, and the normal operation of the system tasks running on the CPU can be ensured.
In addition, the embodiment of the invention also provides a corresponding implementation device, electronic equipment and a readable storage medium for the task execution method of the baseboard management control chip, so that the method has more practicability, and the device, the electronic equipment and the readable storage medium have corresponding advantages.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions of the related art, the drawings that are required to be used in the embodiments or the description of the related art will be briefly described below, and it is apparent that the drawings in the following description are only some embodiments of the present invention, and other drawings may be obtained according to these drawings without inventive effort to those of ordinary skill in the art.
Fig. 1 is a schematic flow chart of a task execution method of a baseboard management control chip according to an embodiment of the present invention;
Fig. 2 is a schematic process flow diagram of an exemplary application scenario according to the related art provided in the embodiment of the present invention;
fig. 3 is a schematic process flow diagram of an exemplary application scenario according to the present application provided in an embodiment of the present application;
FIG. 4 is a block diagram of a task execution device of a baseboard management control chip according to an embodiment of the present invention;
Fig. 5 is a block diagram of an embodiment of an electronic device according to an embodiment of the present invention.
Detailed Description
In order to better understand the aspects of the present invention, the present invention will be described in further detail with reference to the accompanying drawings and detailed description. It will be apparent that the described embodiments are only some, but not all, embodiments of the invention. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
The terms "first," "second," "third," "fourth," and the like in the description and in the claims and drawings are used for distinguishing between different objects and not necessarily for describing a particular sequential or chronological order. Furthermore, the terms "comprise" and "have," as well as any variations thereof, are intended to cover a non-exclusive inclusion. For example, a process, method, system, article, or apparatus that comprises a list of steps or elements is not limited to only those steps or elements but may include other steps or elements not expressly listed.
Having described the technical solutions of embodiments of the present application, various non-limiting embodiments of the present application are described in detail below.
Referring first to fig. 1, fig. 1 is a flow chart of a task execution method of a baseboard management control chip provided by an embodiment of the present invention, which is applied to a CPU of the baseboard management control chip, and the embodiment of the present invention may include the following:
s101: if a task request instruction containing first identification information is received, setting a drive of a target peripheral required for executing the task request instruction as a polling mode, and simultaneously sending an interface starting and task executing instruction.
S102: if a task request instruction containing second identification information is received, setting the driving of the target peripheral equipment to be in an interrupt mode, and simultaneously sending an instruction for closing the interface and stopping task execution.
In this embodiment, the first identification information and the second identification information are different identification information, where the first identification information is used to identify that the target peripheral is in an active state, that is, because the target peripheral that depends on executing the task may communicate with the CPU of the baseboard management controller frequently, for example, feedback to the CPU that the current data packet is sent completely, the current data packet checks for errors, the current data packet transmits for errors, and so on. The second identification information is used to identify that the target peripheral is in a relaxed state, i.e. that there is less communication between the target peripheral and the CPU of the baseboard management controller due to stopping the task being performed. The task request instruction of the present embodiment may be an instruction for executing any task, and is a generic term, not a specific term. That is, the task request instruction of S101 and the task request instruction of S102 are not the same task to be executed, for example, the task request instruction of S101 is to execute a data compression task, and the task request instruction of S102 is to stop a data compression task. The interface in this embodiment is an interface that needs to perform data transmission when executing a task corresponding to a task request instruction, where a task execution instruction and a task stopping instruction are issued to a functional module that executes a task, and similarly, an opening instruction and a closing instruction of the interface may also be issued to the functional module that executes a task.
It will be appreciated that the interrupt mode is one of the ways that the CPU passively processes, that is, the CPU does not know when an interrupt is made, and the CPU is notified whenever there is an interrupt, and the CPU must stop the executing task at this time to process the interrupt. Polling is the process that the CPU actively queries and processes, and the CPU queries whether the peripheral has tasks to execute according to a fixed frequency or period. Interrupts miss some data, the mechanism to avoid the miss is realized by hardware or upper software, while polling is not efficient, and a temporary storage mechanism must be introduced, that is, since the CPU cannot just need to process tasks when querying the hardware each time, in order not to miss a request, the request coming at any time must be temporarily stored in a private area, so long as all the requests are done, and polling does not cause the request to miss. Since there is only one CPU, only one request can be processed at the same time point, and the interrupt can cause a large number of omission and competition when many interrupts are triggered at high frequency. The polling is not missed because it is a CPU batch packing processing request. However, since the CPU must handle interrupts, interrupts too often may cause the CPU to have no time to perform other tasks of the host, which is preferable. If the peripheral activity is very gentle, polling is not appropriate and the scenario is applicable to interrupts. Based on the method, the peripheral is identified to be in an active state or a relaxed state through the first identification information and the second identification information, so that whether the communication between the CPU and the peripheral adopts a polling mode or an interrupt mode is determined, and the working efficiency of the CPU is improved.
In the technical scheme provided by the embodiment of the invention, the communication mode between the CPU of the baseboard management control chip and the peripheral is determined according to whether the task is to be executed, namely, whether the peripheral is in an active state or a relaxed state, the data packet is long and frequent when the task is executed, the CPU of the baseboard management control chip actively adopts a polling mode to interact with the peripheral, the data packet is short and sparse when the task is not required to be executed, the CPU of the baseboard management control chip actively adopts an interrupt mode to communicate with the peripheral, the working efficiency of the CPU of the baseboard management control chip can be effectively improved, the problem that the CPU is frequently interrupted is solved, and the defect that the performance of the CPU for executing system tasks and receiving other state information of a host side is reduced in the prior art is solved, and the normal operation of the system tasks running on the CPU can be ensured.
It will be appreciated that there may be mainly 1 external device on which a task is performed during the whole process of performing a certain type of task, but the associated device may be used occasionally, for example, when performing a data access task, this is mainly done based on a mouse, but in some cases a keyboard is used, so that the keyboard and the mouse belong to the associated device. In order to further improve the working efficiency of the CPU of the baseboard management control chip, based on the above embodiment, the method may further include:
acquiring associated peripheral equipment of a target peripheral;
After the drive of the target peripheral required for executing the task request instruction is set to the polling mode, the drive of the associated peripheral may also be set to the polling mode, so that the CPU of the baseboard management control chip communicates with the target peripheral and the associated peripheral in the polling mode.
After the driving of the target peripheral is set to the interrupt mode, the driving of the associated peripheral device may also be set to the interrupt mode, so that the CPU of the baseboard management control chip communicates with the target peripheral and the associated peripheral device in the interrupt mode.
In this embodiment, the associated peripheral device is an external device that needs to be or possibly needs to be used in the task process corresponding to the task request instruction, and the person skilled in the art can determine the associated peripheral device of the target peripheral device according to the actual application scenario. In order to further improve the setting efficiency of the associated peripheral device, a file for storing the associated peripheral device may be preset, and the system may obtain the associated peripheral device associated with the current target peripheral device by querying the file.
In order to make the technical solution of the present application more clear for those skilled in the art, the present application is further described with reference to fig. 2 and 3 to perform video monitoring tasks as an illustrative example, and may include the following:
In the related art, as shown in fig. 2, a scheme for transmitting compressed video in a baseboard management controller is shown in fig. 2, HOST is a HOST, CMP (compression) is a device for controlling video compression in the baseboard management controller, which may be called a compressed video controller, EMAC is a network card, DDR is an off-chip memory, and a specific compressed video flow is as follows:
1: the video information of HOST is transferred to CMP of the baseboard management control chip.
2: The operation state information of the HOST HOST, such as temperature information of the HOST CPU, fan rotation speed information, power supply voltage information, etc., is transmitted to the baseboard management control chip.
3: The compressed video information is written to the off-chip DDR.
4: And the EMAC driver running on the CPU packs the compressed video information and the running state information thereof at the HOST end layer by layer into a data format of a network layer according to the requirements of a TCP/IP protocol and writes the data format into the DDR.
5: The EMAC reads the data packet to be sent back to the interior of the EMAC for packaging and packaging. The data packet to be transmitted is in the network layer data format.
6: The EMAC frequently communicates with the baseboard management control chip in an interrupt manner during the process of receiving and transmitting the data packet.
7: The data in the data link layer format after the EMAC package is completed is firstly transmitted through the physical layer PHY and the network, and meanwhile, the receiving opposite end receives the network data packet through the PHY and then the network, and the receiving process is also frequently communicated with the baseboard management control chip in an interrupt mode.
The video data of the HOST video card is continuously generated, when the video information with huge data volume is sent through a network, the interrupt resource of the baseboard management control chip is frequently occupied, the CPU can turn to execute an interrupt service subroutine, so that the efficiency of the processing system task of the CPU is low, the real-time state of the local HOST end is not timely transmitted to the remote end, meanwhile, the remote monitoring management end needs to perform state management on the local HOST, namely the server end, such as changing the rotating speed of a fan, or updating the firmware of the baseboard management control chip, and the management instruction of the HOST end cannot be rapidly executed. In the face of some emergency situations of HOST end, when the remote end is required to process, serious influence can be caused, and stable and reliable operation of the HOST is not facilitated.
In order to solve the drawbacks of the prior art, the communication mode of the EMAC and the baseboard management control chip of the present application includes two modes of interrupt and polling. When the network data packet is long and frequent, the CPU of the baseboard management control chip actively adopts a polling mode to interact with the EMAC, and when the network data packet is short and sparse, the CPU actively adopts an interrupt mode.
The task request instruction is a video monitoring instruction sent by the remote client, and when the video monitoring instruction is analyzed to contain a first network data packet, the network card drive is set to be in a polling mode, and meanwhile, an instruction for starting a video data receiving interface and executing a video data compression task is sent to the compressed video controller. When the video monitoring instruction sent by the remote client is analyzed to contain a second network data packet, the network card driver is set to be in an interrupt mode, and meanwhile, an instruction for closing the video data receiving interface and stopping the video data compression task is sent to the compressed video controller.
Based on the above prior art, in order to implement the technical solution of the present application, the present application modifies the monitoring management software running at the remote end and the monitoring management software running locally at the host end, as shown in fig. 3, step 8 is control information sent by the local monitoring management software to the CMP after the local monitoring management software turns on/off the network data packet of the video function according to the received remote. Specific:
When a monitor needs to perform video monitoring on the local HOST end, the monitoring management software running on the remote end needs to send a specific network data packet to the baseboard management control chip. When detecting the network data packet agreed in the above steps, the setting made by the monitoring management software local to the host side includes: firstly, a network card drive running by a CPU, namely an EMAC drive is set to be in a polling mode, so that a large amount of video data is transmitted at the moment, if a traditional interrupt mode is used, the CPU is frequently interrupted, and further, the performance of the CPU for executing system tasks and receiving other state information of a host end is reduced. The CMP starts the interface for receiving HOST original video data and starts video compression. When the remote end turns off the video monitoring function, a specific network format packet is also sent, and the packet is different from the data packet in the step 1. When detecting the network data packet agreed in the above steps, the setting made by the monitoring management software local to the host side includes: firstly, the network card driver operated by the CPU is set as an interrupt mode, and the interrupt mode can be used for executing faster network transmission of HOST end state information through the EMAC. The CMP closes the interface receiving HOST original video data and stops video compression. No network packets of video data are sent over the EMAC and an interrupt is generated.
In this embodiment, when the remote end starts the video monitoring function, because the video data is continuously generated, the remote monitoring end actively informs the local CPU and the driver through the specific network data packet, and the driver analyzes the received specific data packet to obtain that the remote end needs to perform video monitoring, and at this time, the CPU needs to communicate with the EMAC in a polling manner. Of course, other peripherals with which the CPU interacts very infrequently remain an interrupt. And further, the CPU can be prevented from being in an interrupted state for a long time or at a high frequency to delay the normal system task execution, the CPU is not interrupted by the EMAC for a long time, and the real-time state information collection of the local HOST end is facilitated. And when the remote end does not start the video monitoring function, the baseboard management control chip stops receiving video data, and the EMAC adopts a mode of taking interruption to wait for interruption information of the EMAC and other peripheral equipment. Based on the above embodiments, the transmission process of the compressed video according to the present embodiment may include:
A1: after detecting that the video monitoring function of the remote terminal is started, video information of the HOST HOST is transmitted to the CMP of the baseboard management control chip.
A2: the operation state information of the HOST HOST, such as temperature information of the HOST CPU, fan rotation speed information, power supply voltage information, etc., is transmitted to the baseboard management control chip.
A3: the compressed video information is written to the off-chip DDR.
A4: and the EMAC driver running on the CPU packs the compressed video information and the running state information thereof at the HOST end layer by layer into a data format of a network layer according to the requirements of a TCP/IP protocol and writes the data format into a memory DDR.
A5: the EMAC reads the data packet to be sent back to the inside of the EMAC from the DDR for packaging and packaging. The data packet to be transmitted is in the network layer data format.
A6: the EMAC frequently communicates with the baseboard management control chip by polling during the process of receiving and transmitting data packets.
A7: the data in the data link layer format after the EMAC packaging is finished is firstly transmitted through a physical layer PHY and a network, and meanwhile, a network data packet of an opposite terminal through the PHY and then through the network is received.
In this embodiment, for A6 and A7, according to a preset query frequency, the instructions sent by the network card in the process of reading the data packet to be sent from the memory and sending the packaged data packet to the remote client are actively queried and processed. In the whole process, the CPU also sends an instruction for starting a video data receiving interface and executing a video data compression task to the CMP after detecting that the video monitoring function is started.
As can be seen from the above, the communication mode between the EMAC and the CPU of the baseboard management control chip is optimized from the conventional interrupt-only mode to the combined mode of interrupt and polling. According to whether video transmission is required, the communication mode between the CPU and the EMAC is determined, so that accurate and efficient selection between interruption and polling can be ensured. The normal execution of system tasks and the normal transmission of other states of HOST in the process of transmitting video data are ensured.
It should be noted that, in the present application, the steps are not strictly executed sequentially, so long as they conform to the logic sequence, the steps may be executed simultaneously, or may be executed according to a certain preset sequence, and fig. 1-3 are only schematic, and do not represent only such an execution sequence.
The embodiment of the invention also provides a corresponding device for the task execution method of the baseboard management control chip, so that the method has more practicability. Wherein the device may be described separately from the functional module and the hardware. The task execution device of the baseboard management control chip provided by the embodiment of the invention is described below, and the task execution device of the baseboard management control chip described below and the task execution method of the baseboard management control chip described above can be referred to correspondingly.
Based on the angle of the functional modules, referring to fig. 4, fig. 4 is a block diagram of a task execution device of a baseboard management control chip according to an embodiment of the present invention, where the task execution device may include:
the polling communication mode setting module 401 is configured to set, if a task request instruction containing first identification information is received, a driver of a target peripheral device required for executing the task request instruction as a polling mode, and send an interface opening instruction and a task execution instruction at the same time.
And the interrupt communication mode setting module 402 is configured to set the driver of the target peripheral device to an interrupt mode if a task request instruction containing the second identification information is received, and send an interface closing and task execution stopping instruction at the same time.
Optionally, in some implementations of this embodiment, the polling communication manner setting module 401 may further be configured to: the task request instruction is a video monitoring instruction sent by the remote client, and when the video monitoring instruction is analyzed to contain a first network data packet, the network card drive is set to be in a polling mode, and meanwhile, an instruction for starting a video data receiving interface and executing a video data compression task is sent to the compressed video controller.
In other implementations of this embodiment, the interrupt communication mode setting module 402 may be further configured to: the task request instruction is a video monitoring instruction sent by the remote client, and when the video monitoring instruction sent by the remote client is analyzed to contain a second network data packet, the network card driver is set to be in an interrupt mode, and meanwhile, an instruction for closing a video data receiving interface and stopping a video data compression task is sent to the compressed video controller.
As some optional implementations of this embodiment, the apparatus may further include a data storage module, configured to package the running state information of the host and the compressed video information layer by layer into a data format of the network layer, and write the data format into the memory.
As another optional implementation manner of this embodiment, the apparatus may further include a polling module, for example, configured to actively query and process, according to a preset query frequency, an instruction sent by the network card in a process of reading a data packet to be sent from the memory and sending the packaged data packet to the remote client.
Optionally, in some other implementations of this embodiment, the apparatus may further include an associated device setting module, configured to obtain an associated peripheral device of the target peripheral device; and if a task request instruction containing the first identification information is received, setting the drive of the associated peripheral equipment as a polling mode, so that the CPU of the baseboard management control chip communicates with the associated peripheral equipment in the polling mode. And if a task request instruction containing the second identification information is received, setting the drive of the associated peripheral equipment as an interrupt mode, so that the CPU of the substrate management control chip communicates with the associated peripheral equipment in the interrupt mode.
The functions of each functional module of the task execution device of the baseboard management control chip according to the embodiment of the present invention may be specifically implemented according to the method in the embodiment of the method, and the specific implementation process may refer to the related description of the embodiment of the method, which is not repeated herein.
Therefore, the embodiment of the invention can effectively improve the working efficiency of the CPU of the baseboard management control chip.
The task execution device of the baseboard management control chip is described from the perspective of a functional module, and further, the application also provides an electronic device, which is described from the perspective of hardware. Fig. 5 is a schematic structural diagram of an electronic device according to an embodiment of the present application. As shown in fig. 5, the electronic device comprises a memory 50 for storing a computer program; the processor 51 is configured to implement the steps of the task execution method of the baseboard management control chip according to any one of the embodiments described above when executing the computer program.
The processor 51 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and the processor 51 may be a task execution chip of a controller, a microcontroller, a microprocessor, or other baseboard management control chip. The processor 51 may be implemented in at least one hardware form of DSP (DIGITAL SIGNAL Processing), FPGA (Field-Programmable gate array), PLA (Programmable Logic Array ). The processor 51 may also include a main processor and a coprocessor, the main processor being a processor for processing data in an awake state, also referred to as a CPU (Central Processing Unit ); a coprocessor is a low-power processor for processing data in a standby state. In some embodiments, the processor 51 may be integrated with a GPU (Graphics Processing Unit, image processor) for rendering and drawing of content required to be displayed by the display screen. In some embodiments, the processor 51 may also include an AI (ARTIFICIAL INTELLIGENCE ) processor for processing computing operations related to machine learning.
Memory 50 may include one or more computer-readable storage media, which may be non-transitory. Memory 50 may also include high-speed random access memory as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. The memory 50 may in some embodiments be an internal storage unit of the electronic device, such as a hard disk of a server. The memory 50 may also be an external storage device of the electronic device, such as a plug-in hard disk provided on a server, a smart memory card (SMART MEDIA CARD, SMC), a Secure Digital (SD) card, a flash memory card (FLASH CARD), etc. in other embodiments. Further, the memory 50 may also include both internal storage units and external storage devices of the electronic device. The memory 50 may be used to store not only application software installed in an electronic device, but also various types of data, such as: code of a program that executes the vulnerability processing method, or the like, may also be used to temporarily store data that has been output or is to be output. In this embodiment, the memory 50 is at least used for storing a computer program 501, where the computer program, when loaded and executed by the processor 51, can implement the relevant steps of the task execution method of the baseboard management control chip disclosed in any one of the foregoing embodiments. In addition, the resources stored in the memory 50 may also include an operating system 502, data 503, and the like, where the storage mode may be transient storage or permanent storage. Operating system 502 may include Windows, unix, linux, among other things. The data 503 may include, but is not limited to, data corresponding to the task execution result of the baseboard management control chip, and the like.
In some embodiments, the electronic device may further include a display 52, an input/output interface 53, a communication interface 54, or network interface, a power supply 55, and a communication bus 56. Among other things, the display 52, input output interface 53 such as a Keyboard (Keyboard) pertain to a user interface, which may optionally also include standard wired interfaces, wireless interfaces, etc. Alternatively, in some embodiments, the display may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, an OLED (Organic Light-Emitting Diode) touch, or the like. The display may also be referred to as a display screen or display unit, as appropriate, for displaying information processed in the electronic device and for displaying a visual user interface. Communication interface 54 may optionally include a wired interface and/or a wireless interface, such as a WI-FI interface, a bluetooth interface, etc., typically used to establish a communication connection between an electronic device and other electronic devices. The communication bus 56 may be a peripheral component interconnect standard (PERIPHERAL COMPONENT INTERCONNECT, PCI) bus, or an extended industry standard architecture (extended industry standard architecture, EISA) bus, or the like. The bus may be classified as an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown in fig. 5, but not only one bus or one type of bus.
Those skilled in the art will appreciate that the configuration shown in fig. 5 is not limiting of the electronic device and may include more or fewer components than shown, for example, may also include sensors 57 to perform various functions.
The functions of each functional module of the electronic device according to the embodiment of the present invention may be specifically implemented according to the method in the embodiment of the method, and the specific implementation process may refer to the related description of the embodiment of the method, which is not repeated herein.
Therefore, the embodiment of the invention can effectively improve the working efficiency of the CPU of the baseboard management control chip.
It will be appreciated that if the task execution method of the baseboard management control chip in the above embodiment is implemented in the form of a software functional unit and sold or used as a separate product, it may be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application may be embodied essentially or in part or in whole or in part in the form of a software product stored in a storage medium for performing all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: a U disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), an electrically erasable programmable ROM, registers, a hard disk, a multimedia card, a card-type Memory (e.g., SD or DX Memory, etc.), a magnetic Memory, a removable disk, a CD-ROM, a magnetic disk, or an optical disk, etc., that can store program code.
Based on this, an embodiment of the present invention further provides a readable storage medium storing a computer program, where the computer program when executed by a processor performs the steps of the task execution method of the baseboard management control chip according to any one of the embodiments above.
In this specification, each embodiment is described in a progressive manner, and each embodiment is mainly described in a different point from other embodiments, so that the same or similar parts between the embodiments are referred to each other. For the hardware including the device and the electronic equipment disclosed in the embodiments, the description is relatively simple because the hardware includes the device and the electronic equipment corresponding to the method disclosed in the embodiments, and relevant places refer to the description of the method.
Those of skill would further appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both, and that the various illustrative elements and steps are described above generally in terms of functionality in order to clearly illustrate the interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
The task execution method, the device, the electronic equipment and the readable storage medium of the baseboard management control chip provided by the application are described in detail. The principles and embodiments of the present application have been described herein with reference to specific examples, the description of which is intended only to facilitate an understanding of the method of the present application and its core ideas. It should be noted that it will be apparent to those skilled in the art that various modifications and adaptations of the application can be made without departing from the principles of the application and these modifications and adaptations are intended to be within the scope of the application as defined in the following claims.

Claims (4)

1. A task execution method of a baseboard management control chip, comprising:
When a monitor needs to perform video monitoring on a local HOST end, monitoring management software running on a remote end sends a specific network data packet to a baseboard management control chip, if the monitoring management software on the local side of a HOST receives a video monitoring instruction sent by a remote client containing first identification information, driving an EMAC (electronic mail carrier) required by executing the video monitoring instruction sent by the remote client is set to be in a polling mode, and a compressed video controller in the baseboard management controller starts an interface for receiving original video data of the HOST to start video compression;
acquiring associated peripheral equipment of the EMAC; setting the driving of the associated peripheral equipment as a polling mode, so that a CPU of the baseboard management control chip communicates with the associated peripheral equipment in the polling mode;
Packing the running state information of the host and the compressed video information layer by layer into a data format of a network layer and writing the data format into a memory;
Actively inquiring and processing instructions sent by a network card in the process of reading a data packet to be sent from the memory and sending the packed data packet to the remote client according to preset inquiry frequency;
When the remote terminal closes the video monitoring function, a specific network format packet is sent, if monitoring management software local to the HOST terminal receives a video monitoring instruction sent by the remote client terminal containing second identification information, the drive of the EMAC is set to be in an interrupt mode, a compressed video controller in a baseboard management controller closes an interface for receiving HOST original video data, and video compression is stopped; setting the driving of the associated peripheral equipment as an interrupt mode, so that the CPU of the baseboard management control chip communicates with the associated peripheral equipment by adopting the interrupt mode; the first identification information is used for identifying that the EMAC is in an active state, and communication between the EMAC on which a task is executed and a CPU of the baseboard management controller is frequent; the second identification information is used for identifying that the EMAC is in a relaxed state, and after stopping the executing task, the EMAC has less communication with the CPU of the baseboard management controller;
If a video monitoring instruction sent by a remote client containing first identification information is received, a process of setting a drive of an EMAC required for executing the video monitoring instruction sent by the remote client as a polling mode includes:
when the video monitoring instruction is analyzed to contain a first network data packet, setting a network card drive as a polling mode, and simultaneously sending an instruction for starting a video data receiving interface and executing a video data compression task to a compressed video controller; the process of setting the EMAC drive as an interrupt mode if the video monitoring instruction sent by the remote client including the second identification information is received includes:
When the video monitoring instruction sent by the remote client is analyzed to contain a second network data packet, setting a network card drive as an interrupt mode, and simultaneously sending an instruction for closing a video data receiving interface and stopping a video data compression task to the compressed video controller;
The transmission process of the compressed video comprises the following steps:
After detecting that the video monitoring function of the remote end is started, video information of the host is transmitted to a compressed video controller of the baseboard management control chip;
the running state information of the host computer comprises temperature information of the CPU and fan rotating speed information, and power supply voltage information is transmitted to the substrate management control chip;
writing the compressed video information into a memory;
The EMAC driver running on the CPU packs the compressed video information and running state information of the host end into a data format of a network layer by layer according to the requirements of the TCP/IP protocol and writes the data format into a memory;
the EMAC reads the data packet to be sent back to the interior of the EMAC from the memory for packaging and encapsulation; the data packet to be sent is in a network layer data format;
the EMAC frequently communicates with the baseboard management control chip in the process of receiving and transmitting the data packet in a polling mode;
The data in the data link layer format after the EMAC packaging is completed is transmitted through a physical layer and a network, and meanwhile, a network data packet of an opposite terminal through the physical layer and then through the network is received;
in the whole transmission process of the compressed video, the CPU also sends an instruction for starting a video data receiving interface and executing a video data compression task to the compressed video controller after detecting that the video monitoring function is started.
2. A task execution device of a baseboard management control chip, comprising:
The system comprises a polling communication mode setting module, a base plate management control chip, a monitoring management software and a compressed video controller, wherein the polling communication mode setting module is used for sending a specific network data packet to the base plate management control chip by monitoring management software operated by a remote end when a monitor needs to carry out video monitoring on a local HOST end; the first identification information is used for identifying that the EMAC is in an active state, and communication between the EMAC on which a task is executed and a CPU of the baseboard management controller is frequent;
the communication interruption mode setting module is used for sending a specific network format packet when the remote terminal closes the video monitoring function, and if the monitoring management software at the HOST terminal receives a video monitoring instruction sent by the remote client terminal containing second identification information, setting the drive of the EMAC as an interruption mode, and closing an interface for receiving HOST original video data by a compressed video controller in the substrate management controller to stop video compression; the second identification information is used for identifying that the EMAC is in a relaxed state, and after stopping the executing task, the EMAC has less communication with the CPU of the baseboard management controller;
The data storage module is used for packaging the running state information of the host and the compressed video information layer by layer into a data format of a network layer and writing the data format into the memory;
The polling module is used for actively inquiring and processing instructions sent by the network card in the process of reading the data packet to be sent from the memory and sending the packed data packet to the remote client according to the preset inquiry frequency;
the associated equipment setting module is used for acquiring associated peripheral equipment of the EMAC; if a task request instruction containing first identification information is received, setting a drive of the associated peripheral equipment as a polling mode, so that a CPU of the substrate management control chip communicates with the associated peripheral equipment in the polling mode; if a task request instruction containing second identification information is received, setting the drive of the associated peripheral equipment as an interrupt mode, so that the CPU of the substrate management control chip communicates with the associated peripheral equipment in the interrupt mode;
The polling communication mode setting module is further configured to: when the video monitoring instruction is analyzed to contain a first network data packet, setting a network card drive as a polling mode, and simultaneously sending an instruction for starting a video data receiving interface and executing a video data compression task to a compressed video controller;
The interrupt communication mode setting module is further configured to: when the video monitoring instruction sent by the remote client is analyzed to contain a second network data packet, setting a network card drive as an interrupt mode, and simultaneously sending an instruction for closing a video data receiving interface and stopping a video data compression task to the compressed video controller;
The transmission process of the compressed video comprises the following steps:
After detecting that the video monitoring function of the remote end is started, video information of the host is transmitted to a compressed video controller of the baseboard management control chip;
the running state information of the host computer comprises temperature information of the CPU and fan rotating speed information, and power supply voltage information is transmitted to the substrate management control chip;
writing the compressed video information into a memory;
The EMAC driver running on the CPU packs the compressed video information and running state information of the host end into a data format of a network layer by layer according to the requirements of the TCP/IP protocol and writes the data format into a memory;
the EMAC reads the data packet to be sent back to the interior of the EMAC from the memory for packaging and encapsulation; the data packet to be sent is in a network layer data format;
the EMAC frequently communicates with the baseboard management control chip in the process of receiving and transmitting the data packet in a polling mode;
The data in the data link layer format after the EMAC packaging is completed is transmitted through a physical layer and a network, and meanwhile, a network data packet of an opposite terminal through the physical layer and then through the network is received;
in the whole transmission process of the compressed video, the CPU also sends an instruction for starting a video data receiving interface and executing a video data compression task to the compressed video controller after detecting that the video monitoring function is started.
3. An electronic device comprising a processor and a memory, the processor being configured to implement the steps of the task execution method of the baseboard management control chip of claim 1 when executing a computer program stored in the memory.
4. A readable storage medium, wherein a computer program is stored on the readable storage medium, which when executed by a processor, implements the steps of the task execution method of the baseboard management control chip according to claim 1.
CN202110866027.9A 2021-07-29 2021-07-29 Task execution method, device, equipment and medium of baseboard management control chip Active CN113687944B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110866027.9A CN113687944B (en) 2021-07-29 2021-07-29 Task execution method, device, equipment and medium of baseboard management control chip

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110866027.9A CN113687944B (en) 2021-07-29 2021-07-29 Task execution method, device, equipment and medium of baseboard management control chip

Publications (2)

Publication Number Publication Date
CN113687944A CN113687944A (en) 2021-11-23
CN113687944B true CN113687944B (en) 2024-07-26

Family

ID=78578288

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110866027.9A Active CN113687944B (en) 2021-07-29 2021-07-29 Task execution method, device, equipment and medium of baseboard management control chip

Country Status (1)

Country Link
CN (1) CN113687944B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115168079B (en) * 2022-09-08 2022-12-02 深圳市恒运昌真空技术有限公司 Dual-processor device and control method thereof
CN115729778A (en) * 2022-11-02 2023-03-03 苏州浪潮智能科技有限公司 A method, system, electronic device and storage medium for event-driven BMC
CN116185678A (en) * 2022-12-09 2023-05-30 超聚变数字技术有限公司 Fault log recording method, system method and device
CN116185915B (en) * 2023-04-21 2023-08-04 山东云海国创云计算装备产业创新中心有限公司 Bus scheduling method, device and equipment, medium and baseboard management control chip

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110865868A (en) * 2019-10-21 2020-03-06 苏州元核云技术有限公司 Low-delay control method, device and equipment
CN110968402A (en) * 2018-09-28 2020-04-07 深信服科技股份有限公司 CPU work control method, device, equipment and storage medium
CN111836344A (en) * 2019-04-17 2020-10-27 高新兴科技集团股份有限公司 Data acquisition method, device, computer storage medium and electronic device
CN112839231A (en) * 2021-01-15 2021-05-25 苏州浪潮智能科技有限公司 A kind of video compression transmission method and system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050097226A1 (en) * 2003-10-31 2005-05-05 Sun Microsystems, Inc. Methods and apparatus for dynamically switching between polling and interrupt to handle network traffic
US10514951B2 (en) * 2017-05-04 2019-12-24 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing a stateless, deterministic scheduler and work discovery system with interruption recovery
CN110138553B (en) * 2019-05-10 2022-08-19 郑州信大捷安信息技术股份有限公司 IPSec VPN gateway data packet processing device and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110968402A (en) * 2018-09-28 2020-04-07 深信服科技股份有限公司 CPU work control method, device, equipment and storage medium
CN111836344A (en) * 2019-04-17 2020-10-27 高新兴科技集团股份有限公司 Data acquisition method, device, computer storage medium and electronic device
CN110865868A (en) * 2019-10-21 2020-03-06 苏州元核云技术有限公司 Low-delay control method, device and equipment
CN112839231A (en) * 2021-01-15 2021-05-25 苏州浪潮智能科技有限公司 A kind of video compression transmission method and system

Also Published As

Publication number Publication date
CN113687944A (en) 2021-11-23

Similar Documents

Publication Publication Date Title
CN113687944B (en) Task execution method, device, equipment and medium of baseboard management control chip
US8560686B2 (en) Communicating with an in-band management application through an out-of-band communications channel
US20130219090A1 (en) System and method for virtualizing the peripherals in a terminal device to enable remote management via removable portable media with processing capability
US9384106B2 (en) Real time terminal for debugging embedded computing systems
CN102129384A (en) Method and apparatus for virtualizing a host USB adapter
CN110109626B (en) NVMe SSD command processing method based on FPGA
CN114397999B (en) Communication method, device and equipment based on nonvolatile memory interface-remote processing message transmission
CN113849238B (en) Data communication method, device, electronic equipment and readable storage medium
US20170018052A1 (en) Method and Apparatus for Data Communication in Virtualized Environment, and Processor
CN115729880A (en) Data processing method, device, device and storage medium
CN111858457A (en) A data processing method, device, system and FPGA
US10664418B2 (en) Peripheral device controlling device, operation method thereof, and operation method of peripheral device controlling device driver
US20050165938A1 (en) Method, system, and program for managing shared resources
CN109800202B (en) PCIE (peripheral component interface express) -based data transmission system, method and device
CN118409712B (en) RAID card management system, method, equipment, product and medium
CN109582379A (en) Programmable logic controller system, control method based on Mach
US12541473B2 (en) Method and system for implementing vehicle bus virtual channel
CN109286689B (en) Information sending method, device and vehicle-mounted human-vehicle interaction terminal
GB2423165A (en) Host controller interface for packet-based timeshared bus
CN115756322A (en) Data storage method and device, electronic equipment and storage medium
CN104765710A (en) Working method of card reader including double processors
CN118801902B (en) Software radio communication method, device and system for SoC heterogeneous platform
CN112637370A (en) Data processing method, device, equipment and storage medium
CN114326526B (en) Vending machine, instruction parsing method, storage medium, and slave device thereof
US10684971B2 (en) Packet processing efficiency based interrupt rate determination

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant