Method and apparatus for controlling display of server interface
By disabling the operating system's access to the video memory space in the server's memory space and enabling the control system's access to the second memory address, the problem of poor display stability was solved, and stable display of control data was achieved.
Patent Information
- Application Number
- CN202511771527.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-28
- Publication Date
- 2026-02-24
- Estimated Expiration
- 2045-11-28
AI Technical Summary
The server's display interface is easily affected by the operating system's running data when displaying control data, resulting in poor stability.
By detecting the status of the display interface, when the interface switches to the control interface, the operating system's access permission to the first memory address of the video memory space is disabled, and the access permission of the control system to the second memory address is enabled, ensuring that the operating system cannot operate on the video memory space, thereby avoiding interference between running data and control data.
It improves the stability of the server display interface when displaying control data, prevents the operating system from affecting the control data, and ensures the normal display of control data.
Smart Images

Figure CN121210342B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of server technology, and in particular to a control method and apparatus for a server display interface. Background Technology
[0002] In some related technologies, the server's display interface, in addition to showing operating system data, is also configured to allow the display of other data to server maintenance personnel under certain circumstances, such as controller control data required by the maintenance personnel. However, it is worth noting that because the display interface is configured for multiple data display purposes, it is easily affected by the display needs of other data when displaying control data, resulting in poor stability of the server's display interface for displaying control data. Summary of the Invention
[0003] This application provides a control method and apparatus for a server display interface, so as to at least solve the problem of poor stability of the display control data of the server display interface in the related art.
[0004] This application provides a control method for a server display interface, comprising: detecting the display state of the server's display interface; when the display state indicates that the display interface is about to switch from the running interface to the control interface, disabling a first memory address corresponding to the video memory space of the display interface in the server's memory space, and enabling a second memory address corresponding to the video memory space in the memory space, wherein the running interface is used to display the running data of the server's operating system, the control interface is used to display the control data of the server's controller, the first memory address is set to allow access by the operating system, the second memory address is set to disallow access by the operating system, and the second memory address is set to allow access by the server's control system, and the control system is used to transmit control data to the control interface.
[0005] This application also provides a control device for a server display interface, comprising: a detection module for detecting the display state of the server's display interface; and a processing module for disabling a first memory address corresponding to the display interface's video memory space in the server's memory space and enabling a second memory address corresponding to the video memory space in the memory space when the display state indicates that the display interface is about to switch from the running interface to the control interface. The running interface is used to display the server's operating system's running data, and the control interface is used to display the server's controller's control data. The first memory address is set to allow access by the operating system, the second memory address is set to disallow access by the operating system, and the second memory address is set to allow access by the server's control system. The control system is used to transmit control data to the control interface.
[0006] This application also provides an electronic device, including: a memory for storing a computer program; and a processor for executing the computer program to implement the steps of any of the above-described server display interface control methods.
[0007] This application also provides a computer-readable storage medium storing a computer program, wherein when the computer program is executed by a processor, it implements the steps of any of the above-described server display interface control methods.
[0008] This application also provides a computer program product, including a computer program, which, when executed by a processor, implements the steps of any of the above-described server display interface control methods.
[0009] This application detects the display status of the server's display interface. When the display status indicates that the display interface is about to switch from the running interface to the control interface, the first memory address corresponding to the display interface's video memory space is disabled in the server's memory space, and the second memory address corresponding to the video memory space is enabled in the memory space. The first memory address is set to allow access by the operating system, while the second memory space is set to disallow access by the operating system but also allows access by the server's control system. After disabling the first memory address and enabling the second memory address, the operating system can no longer operate on the video memory space, and the control system can transmit control data to the control interface through the second memory address. This ensures that the display of control data is no longer affected by the running data transmitted by the operating system. Therefore, it can solve the technical problem of poor stability of the server's display interface display control data in related technologies, and achieve the technical effect of improving the stability of the server's display interface display control data. Attached Figure Description
[0010] To more clearly illustrate the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0011] Figure 1 This is a hardware structure block diagram of the server display interface control according to an embodiment of this application;
[0012] Figure 2 This is a flowchart of a control method for a server display interface according to an embodiment of this application;
[0013] Figure 3 This is a schematic diagram of a data structure maintained by a controller according to an embodiment of this application;
[0014] Figure 4This is a schematic diagram of a data structure initially generated in response to a user request according to an embodiment of this application;
[0015] Figure 5 This is a schematic diagram illustrating the division of a display interface according to an embodiment of this application;
[0016] Figure 6 This is a schematic diagram of a data structure finally generated in response to a user request according to an embodiment of this application;
[0017] Figure 7 This is a flowchart of a split-screen display method for control data related to the display source register of the display interface, according to an embodiment of this application;
[0018] Figure 8 This is a schematic diagram illustrating the display effect of a split-screen display according to an embodiment of this application;
[0019] Figure 9 This is a structural block diagram of a control device for a server display interface according to an embodiment of this application. Detailed Implementation
[0020] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of this application.
[0021] It should be noted that, in the description of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.
[0022] To enable those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0023] The specific application environment architecture or specific hardware architecture on which the execution of the control method of the server display interface depends is described here.
[0024] The methods and embodiments provided in this application can be executed on a server device or a similar computing device. Taking running on a server device as an example, Figure 1 This is a hardware structure block diagram of the server display interface control according to an embodiment of this application. For example... Figure 1 As shown, the server device may include one or more ( Figure 1 Only one is shown in the image. A processor 102 (which may include, but is not limited to, a central processing unit (CPU), microprocessor (MCU), or programmable logic device (FPGA), etc.) and a memory 104 for storing data are also shown. The server device may further include a transmission device 106 for communication functions and an input / output device 108. Those skilled in the art will understand that... Figure 1 The structure shown is for illustrative purposes only and does not limit the structure of the server equipment described above. For example, the server equipment may also include components that are more... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown.
[0025] The memory 104 can be used to store computer programs, such as application software programs and modules, like the computer program corresponding to the server display interface control method in this embodiment. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, thus implementing the above-described method. The memory 104 may include high-speed random access memory and non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include memory remotely located relative to the processor 102, and these remote memories can be connected to the server device via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0026] The transmission device 106 is used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider for the server device. In one example, the transmission device 106 includes a Network Interface Controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the transmission device 106 may be a Radio Frequency (RF) module used for wireless communication with the Internet.
[0027] The embodiments of this application provide a method for controlling a server display interface. The method is described in detail below in conjunction with the execution flow of the method for controlling a server display interface.
[0028] This embodiment provides a method for controlling the server display interface. Figure 2This is a flowchart of a control method for a server display interface according to an embodiment of this application, such as... Figure 2 As shown, the method includes the following steps:
[0029] Step S202: Detect the display status of the server's display interface;
[0030] Step S204: When the display status is detected to indicate that the display interface is about to switch from the running interface to the control interface, the first memory address corresponding to the video memory space of the display interface is disabled in the server's memory space, and the second memory address corresponding to the video memory space is enabled in the memory space. The running interface is used to display the running data of the server's operating system, and the control interface is used to display the control data of the server's controller. The first memory address is set to allow the operating system to access it, the second memory address is set to disallow the operating system to access it, and the second memory address is set to allow the server's control system to access it. The control system is used to transmit control data to the control interface.
[0031] Through the above steps, the display status of the server's display interface is detected. When the display status indicates that the display interface is about to switch from the running interface to the control interface, the first memory address corresponding to the display interface's video memory space is disabled in the server's memory space, and the second memory address corresponding to the video memory space is enabled in the memory space. The first memory address is set to allow access by the operating system, while the second memory space is set to disallow access by the operating system but also allows access by the server's control system. After disabling the first memory address and enabling the second memory address, the operating system can no longer operate on the video memory space, and the control system can transmit control data to the control interface through the second memory address. This ensures that the display of control data is no longer affected by the running data transmitted by the operating system. Therefore, the technical problem of poor stability of the server's display interface display control data in related technologies can be solved, achieving the technical effect of improving the stability of the server's display interface display control data.
[0032] Optionally, in this embodiment, the server's display interface may refer to, but is not limited to, the visual information interface that the server displays to the user through a display device. Optionally, the display device here may be, but is not limited to, an HDMI (High-Definition Multimedia Interface) monitor, a VGA (Video Graphics Array) external to the server, etc.
[0033] In the embodiment provided in step S202, the display state can be, but is not limited to, indicating changes in the content displayed on the server's display interface. For example, one display state can be, but is not limited to, indicating that the data displayed on the display interface is about to change from running data to control data, and another display state can be, but is not limited to, indicating that the data displayed on the display interface is about to change from control data to running data.
[0034] Optionally, in this embodiment, the control data may be, but is not limited to, data collected by the controller for managing the server. For example, the control data may include, but is not limited to, server asset data, temperature data of various components of the server, power consumption data of various components of the server, alarm log data of various components of the server, etc.
[0035] Optionally, in this embodiment, the controller may refer to, but is not limited to, a component within the server used to manage and coordinate hardware functions. The controller may be responsible for receiving instructions, processing information, and controlling the hardware's response. The controller may be, but is not limited to, a standalone hardware unit, or it may be, but is not limited to, part of a microprocessor integrated into the device. Optionally, the controller may include, but is not limited to, a BMC (Baseboard Management Controller), an FPGA (Field-Programmable Gate Array), etc.
[0036] Optionally, in this embodiment, the runtime data may be, but is not limited to, data collected / generated by the server's operating system to indicate the operating system's running process.
[0037] Optionally, in this embodiment, detecting the display status of the server's display interface may include, but is not limited to, receiving a target display request, wherein the target display request is used to request the display of data to be displayed on the display interface; detecting the data type of the data to be displayed, and detecting whether the data types of the data to be displayed and the data already displayed are the same, wherein the data already displayed is the data currently displayed on the display interface, and the data types include control data and running data; if the data types of the data to be displayed and the data already displayed are different, and the data type of the data to be displayed is control data, detecting the display status is used to indicate that the display interface is about to switch from the running interface to the control interface.
[0038] Optionally, in this embodiment, in addition to detecting the display status in the manner described above, the display status of the server's display interface can also be detected by detecting whether a shortcut key is pressed.
[0039] As an optional implementation, the display status of the server's display interface can be detected, but is not limited to, by detecting a target signal, wherein the target signal is triggered by a target combination key on the server's keyboard; and if the target signal is detected, determining that a display status has been detected to indicate that the display interface is about to switch from the running interface to the control interface.
[0040] Optionally, in this embodiment, the target key combination may be, but is not limited to, the key combination formed by the "V+G+A" keys on the keyboard. The target signal may be triggered when the target key combination on the keyboard is pressed, but is not limited to...
[0041] Optionally, in this embodiment, besides using a target key combination on the keyboard to determine whether the display status is used to indicate that the display interface is about to switch from the running interface to the control interface, it is also possible, but not limited to, using a target shortcut key on the keyboard to determine whether the display status is used to indicate that the display interface is about to switch from the control interface to the running interface. Optionally, the display status of the server's display interface can be detected in the following ways, but not limited to: detecting a shortcut signal, wherein the shortcut signal is triggered by a target shortcut key on the server's keyboard; if a shortcut signal is detected, it is determined that the display status is used to indicate that the display interface is about to switch from the control interface to the running interface. Optionally, the target shortcut key can be, but is not limited to, the "ESC (exit)" key on the keyboard.
[0042] Optionally, in this embodiment, when a target signal is detected, it may be possible, but is not limited to, detecting whether the display interface is currently a running interface; if the display interface is currently a running interface, it is determined that a detected display state is used to indicate that the display interface is about to switch from the running interface to the control interface; if the display interface is currently a control interface, it is determined that no switching of the display interface is currently involved. Similarly, when a shortcut signal is detected, it may be possible, but is not limited to, detecting whether the display interface is currently a control interface; if the display interface is currently a control interface, it is determined that a detected display state is used to indicate that the display interface is about to switch from the control interface to the running interface; if the display interface is currently a running interface, it is determined that no switching of the display interface is currently involved.
[0043] In the embodiment provided in step S204, the video memory space may refer to, but is not limited to, the storage space of the server's display device, and may be displayed on the display interface by storing the data in the storage space of the display device.
[0044] Optionally, in this embodiment, the first memory address and the second memory address may, but are not limited to, both be memory addresses, and the memory address may, but is not limited to, refer to a virtual address.
[0045] Optionally, in this embodiment, the operating system may, but is not limited to, transmit running data to the running interface through the first memory address. When the first memory address is disabled and the second memory address is enabled, since the second memory address is set to be unaccessible by the operating system, the operating system can be prevented from continuing to store data in the video memory space after switching the interface to the control interface.
[0046] Optionally, in this embodiment, the control system may, but is not limited to, transmit control data to the control interface through the second memory address. When the second memory address is enabled, since the second memory address is set to allow the server's control system to access it, the control system can store data in the video memory space when switching interfaces to enter the control interface.
[0047] Optionally, in this embodiment, the control system may be, but is not limited to, another system on the server's processor besides the operating system, such as, but not limited to, BIOS (Basic Input Output System).
[0048] Optionally, in this embodiment, when a display state is detected indicating that the display interface is about to switch from the running interface to the control interface, the first memory address may be disabled and the second memory address enabled in the following ways, but not limited to: when a data access request is received in the memory space, it is detected whether the memory address carried by the data access request is the first memory address, wherein the data access request is used to request that the data carried by the data access request be stored in the storage location indicated by the memory address carried by the data access request; if the memory address carried by the data access request is detected to be the first memory address, the data access request is intercepted; if the memory address carried by the data access request is detected to be not the first memory address, the data access request continues to be executed. Further, when a display state is detected indicating that the display interface is about to switch from the control interface to the running interface, the second memory address corresponding to the video memory space of the display interface may be disabled in the server's memory space, but not limited to, and the first memory address corresponding to the video memory space is enabled in the memory space. Disabling a second memory address and enabling a first memory address in memory space can include, but is not limited to, detecting whether the memory address carried by a data access request is a second memory address, wherein the data access request requests that the data carried by the data access request be stored in the storage location indicated by the memory address carried by the data access request; if the memory address carried by the data access request is detected to be a second memory address, the data access request is intercepted; if the memory address carried by the data access request is detected to be not a second memory address, the data access request continues to be executed. Optionally, continuing to execute the data access request can include, but is not limited to, forwarding the data access request to the memory controller, wherein the memory controller responds to the data access request by writing data to the storage location carried by the data access request. Through the above steps, by implementing a data access request interception and forwarding mechanism, a fast, secure, and flexible switching between the server's running interface and control interface can be achieved. This method not only optimizes the server management process and reduces the complexity of user operations, but also enhances stability and security through precise memory access permission control.
[0049] As an optional implementation, disabling the first memory address corresponding to the video memory space of the display interface in the server's memory space can also be achieved by, but is not limited to, the following method: searching for the first address mapping corresponding to the video memory space from the memory space, wherein the first address mapping is used to indicate the mapping relationship between the first memory address and the video memory address, and the video memory address is the physical address of the video memory space; disabling the first address mapping in the server's memory space.
[0050] Optionally, in this embodiment, disabling the first memory address may also include, but is not limited to, disabling the first address mapping used to indicate the mapping relationship between the first memory address and the video memory address. By disabling the first address mapping, the server cannot find the video memory space based on the first memory address carried in the data write request when processing the data write request.
[0051] Optionally, in this embodiment, disabling the first address mapping can be, but is not limited to, deleting the first address mapping from the memory space and storing the deletion record in the display log, indicating in the display log that the reason for deleting the first address mapping was the switching of the display interface. This allows the first address mapping to be restored to be found through the display log when the display interface switches again.
[0052] By following the steps above and disabling the first address mapping, the operating system's access to the video memory space is disabled. This method ensures that the operating system will not interfere with video memory updates when switching from the display interface to the control interface, avoiding data conflicts and providing the prerequisite for control data to take over display output.
[0053] As an optional implementation, disabling the first address mapping in the server's memory space can be achieved, but is not limited to, by: searching for a first validity identifier of the first address mapping in the memory space, wherein the validity identifier of the address mapping is used to indicate whether the address mapping is valid in the memory space, and a valid address mapping in the memory space is allowed to be used, while an invalid address mapping in the memory space is not allowed to be used; configuring the first validity identifier as a target identifier, wherein the target identifier is used to indicate that the address mapping is invalid in the memory space.
[0054] Optionally, in this embodiment, the first validity identifier may be used, but is not limited to, to indicate whether the first address mapping is valid in the memory space.
[0055] Optionally, in this embodiment, the target identifier may, but is not limited to, be used to indicate that the address mapping is invalid in the memory space; that is, the target identifier may, but is not limited to, be used to indicate that the address mapping is not allowed to be used in the memory space. Optionally, configuring the first validity identifier so that the target identifier can, but is not limited to, represent setting the first address mapping to invalid in the memory space.
[0056] Optionally, in this embodiment, in addition to the target identifier, the validity identifier may also include, but is not limited to, a reference identifier. The reference identifier may be used to indicate that the address mapping is valid in the memory space, that is, the reference identifier may be used to indicate that the address mapping is allowed to be used in the memory space.
[0057] Optionally, in this embodiment, the target identifier may be set to 1, and the reference identifier may be set to 0, etc.
[0058] The above steps further illustrate how to disable specific address mappings in the system by configuring identifiers. They provide a concrete and feasible hardware control procedure, making the disabling and enabling of address mappings more direct and efficient.
[0059] As an optional implementation, the first address mapping corresponding to the video memory space can be found from the memory space in the following way, but is not limited to: finding the mapping relationship including the video memory address from the address mapping table of the memory space to obtain the first address mapping, wherein the address mapping table records the memory address and physical address with the mapping relationship.
[0060] Optionally, in this embodiment, the first address mapping can be found by searching the address mapping table for mapping relationships that include video memory addresses, but not limited to this method.
[0061] As an optional implementation, the first validity identifier of the first address mapping can be found from the memory space by means of, but not limited to, the following: finding the first register location corresponding to the first address mapping from the target register of the memory space, wherein the target register includes one or more register locations, each register location stores the validity identifier of the corresponding address mapping, and the first register location is used to store the first validity identifier.
[0062] Optionally, in this embodiment, the target register may include, but is not limited to, one or more register locations. Each register location may be used to store the validity identifier of the corresponding address mapping. By setting the register locations, the management of the address mapping relationship in the address mapping table is efficiently realized, avoiding data access failures caused by duplicate memory addresses.
[0063] As an optional implementation, the first validity identifier can be configured as the target identifier by writing the target identifier to the first register location, but not limited to this method.
[0064] Optionally, in this embodiment, writing the target identifier to the first register location may, but is not limited to, using an overwrite method to write the target identifier to the first register location without retaining the original data in the first register location. For example, the target identifier may, but is not limited to, be set to 1, and the reference identifier may, but is not limited to, be set to 0. If the first register location has already stored the reference identifier 0 before writing the target identifier, then after performing the target identifier write operation, the first register location will only store the target identifier 1.
[0065] As an optional implementation, enabling the second memory address corresponding to the video memory space in the memory space can be achieved, but is not limited to, by the following methods: finding the second address mapping corresponding to the first storage space in the memory space and obtaining the third address mapping corresponding to the video memory space, wherein the second address mapping is used to indicate the mapping relationship between the second memory address and the first storage address, the first storage address is the physical address of the first storage space, the first storage space is a storage space that is not allowed to be accessed by the operating system but is allowed to be accessed by the control system, and the third address mapping is used to indicate the mapping relationship between the second memory address and the video memory address; disabling the second address mapping in the server's memory space and enabling the third address mapping in the server's memory space.
[0066] Optionally, in this embodiment, enabling the second memory address may include, but is not limited to, enabling a third mapping address to indicate the mapping relationship between the second memory address and the video memory address, and disabling the second mapping relationship to indicate the mapping relationship between the second memory address and the first storage location. By enabling the third mapping relationship while disabling the second mapping relationship, it can be ensured that the control system can normally operate on the video memory space when attempting to operate on the video memory space through the second memory address, avoiding erroneous operations on the first storage space and missed operations on the video memory space, and ensuring that the control data can be successfully displayed.
[0067] Optionally, in this embodiment, the method for obtaining the third address mapping corresponding to the video memory space may include, but is not limited to, searching for the third address mapping in the memory space, and creating the third address mapping in the memory space if the third address mapping is not found. Alternatively, the third address mapping may be created directly in the memory space, but is not limited to.
[0068] Optionally, in this embodiment, the first storage space may be, but is not limited to, a storage space that is not accessible to the operating system but is accessible to the control system. The first storage space may include, but is not limited to, SMRAM (System Management Random Access Memory), dedicated EEPROM (Electrically Erasable Programmable Read-Only Memory), etc.
[0069] As an optional implementation, the process of finding the second address mapping corresponding to the first storage space in the memory space and obtaining the third address mapping corresponding to the video memory space can be achieved, but is not limited to, through the following methods: obtaining the first storage address and the video memory address; searching for a mapping relationship including the first storage address in the address mapping table of the memory space to obtain the second address mapping, wherein the address mapping table records memory addresses and physical addresses with mapping relationships; obtaining the second memory address from the second address mapping; and creating a mapping relationship between the second memory address and the video memory address in the address mapping table to obtain the third address mapping.
[0070] Optionally, in this embodiment, the first storage address of the first storage space and the video memory address of the video memory space may be recorded when the server initializes and traverses the server's storage space.
[0071] By taking the above steps, obtaining and creating specific address mappings ensures that the video memory space can be switched to a second memory address dedicated to the control system.
[0072] As an optional implementation, disabling the second address mapping and enabling the third address mapping in the server's memory space can be achieved, but is not limited to, by the following methods: finding the second validity identifier of the second address mapping in the memory space and obtaining the third validity identifier of the third address mapping, wherein the validity identifier of the address mapping is used to indicate whether the address mapping is valid in the memory space, and the address mapping that is valid in the memory space is allowed to be used, while the address mapping that is invalid in the memory space is not allowed to be used; configuring the second validity identifier as a target identifier and configuring the third validity identifier as a reference identifier, wherein the target identifier is used to indicate that the address mapping is invalid in the memory space, and the reference identifier is used to indicate that the address mapping is valid in the memory space.
[0073] Optionally, in this embodiment, as can be seen from the foregoing description of the target identifier, configuring the second validity identifier as the target identifier can, but is not limited to, represent setting the second address mapping to invalid in the memory space. As can be seen from the foregoing description of the reference identifier, configuring the third validity identifier as the reference identifier can, but is not limited to, represent setting the third address mapping to valid in the memory space.
[0074] By configuring the second validity identifier as the target identifier and the third validity identifier as the reference identifier through the above steps, the second address mapping is invalid in the memory space while the third address mapping is valid in the memory space. This ensures that the second memory address will only operate on the video memory space, thus avoiding erroneous operations on the first storage space and missed operations on the video memory space.
[0075] As an optional implementation, the second validity identifier of the second address mapping and the third validity identifier of the third address mapping can be obtained by means of, but not limited to, the following: searching for the second register location corresponding to the second address mapping in the target register of the memory space and searching for the third register location in the target register, wherein the target register includes one or more register locations, each register location storing the validity identifier of the corresponding address mapping, the second register location is used to store the second validity identifier, and the third register location is a register location in one or more register locations that does not store data.
[0076] Optionally, in this embodiment, the third register location may be, but is not limited to, a register location where no data is stored. Optionally, the third register location may be, but is not limited to, a storage location that is not used to store a validity identifier used to indicate the validity of a certain address mapping.
[0077] As an optional implementation, the second validity identifier can be configured as the target identifier and the third validity identifier can be configured as the reference identifier in the following ways, but not limited to: writing the target identifier into the second register location; establishing a correspondence between the third register location and the third address mapping, and writing the reference identifier into the third register location.
[0078] Optionally, in this embodiment, it should be noted that, similar to the previous one, the write operation referred to by writing the target identifier to the second register location here refers to an overwrite write, and similarly, the write operation referred to by writing the reference identifier to the third register location here also refers to an overwrite write.
[0079] As an optional implementation, after disabling the first memory address corresponding to the video memory space of the display interface in the server's memory space and enabling the second memory address corresponding to the video memory space in the memory space, the control interface can be switched back to the running interface in the following ways, but not limited to: detecting the display progress of the control interface; when the display progress is used to indicate that the control interface has ended displaying, enabling the first memory address corresponding to the video memory space in the memory space and disabling the second memory address corresponding to the video memory space in the memory space.
[0080] Optionally, in this embodiment, the display progress can be determined to indicate that the control interface has ended displaying, but is not limited to, when the user presses the target shortcut key on the keyboard, or when the target duration of the control interface is maintained.
[0081] As an optional implementation, the process of finding the second address mapping corresponding to the first storage space from the memory space and obtaining the third address mapping corresponding to the video memory space can be achieved, but is not limited to, through the following methods: obtaining the physical address of the server's system-managed memory to obtain the first storage address, and obtaining the video memory address, wherein the system-managed memory is a storage space that is not accessible to the operating system but is accessible to the control system in the server's system-managed operation mode; finding the mapping relationship including the first storage address from the address mapping table of the memory space to obtain the second address mapping, wherein the address mapping table records memory addresses and physical addresses with mapping relationships; obtaining the second memory address from the second address mapping; and creating a mapping relationship between the second memory address and the video memory address in the address mapping table to obtain the third address mapping.
[0082] Optionally, in this embodiment, SMRAM (System Management Memory) can be, but is not limited to, a memory space that is not accessible to the operating system but is accessible to the control system in System Management Mode. By establishing a mapping relationship between the second memory address of System Management Memory and the video memory address, a third address mapping is obtained. This ensures that in SMM (System Management Mode) (i.e., System Management Operation Mode), only the control system can operate on the video memory space, avoiding interference from the operating system.
[0083] As an optional implementation, disabling the second address mapping in the server's memory space and enabling the third address mapping in the server's memory space can be achieved, but is not limited to, by switching the server's operating mode to system management operating mode; in system management operating mode, disabling the second address mapping in the memory space and enabling the third address mapping in the memory space.
[0084] Optionally, in this embodiment, an SMI (System Management Interrupt) signal can be generated by the control system or controller to switch the server's operating mode to the system management operating mode.
[0085] Optionally, in this embodiment, the method of disabling the second address mapping and enabling the third address mapping can be, but is not limited to, similar to the previous one, that is, by configuring a target identifier and a reference identifier for the corresponding register location to achieve the disabling and enabling of address mapping.
[0086] Optionally, in this embodiment, by disabling the second address mapping and enabling the third address mapping, it can be ensured that the control system's write operation through the second memory address can be mapped to the video memory space, thereby achieving successful display of control data.
[0087] As an optional implementation, after disabling the second address mapping in the memory space and enabling the third address mapping in the memory space, the control interface can be switched back to the running interface in the following ways, but not limited to: ending the system management running mode and obtaining the current running mode of the server; in the current running mode, enabling the second address mapping in the memory space and disabling the third address mapping in the memory space.
[0088] Optionally, in this embodiment, after disabling the second address mapping and enabling the third address mapping in the memory space, i.e., after successfully displaying the control interface, the system management operation mode can be terminated, and a current operation mode different from the system management operation mode can be entered. In the current operation mode, the second address mapping is enabled in the memory space, and the third address mapping is disabled. This ensures that the operating system displays the running data on the display interface again and that the first storage space can be accessed normally.
[0089] As an optional implementation, when a display state is detected indicating that the display interface is about to switch from the running interface to the control interface, the control data can be displayed in the following ways, but not limited to: the control system extracts each target control data from the controller's storage space, wherein the target control data is the control data to be displayed on the control interface; the control system matches a corresponding memory sub-address for each target control data according to the control sub-interface to be displayed on the control interface, wherein the control interface is divided into multiple control sub-interfaces corresponding one-to-one with each target control data to be displayed, and the second memory address is divided into multiple memory sub-addresses corresponding one-to-one with each control sub-interface; the control system stores each target control data into each video memory sub-space of the video memory space through the memory sub-address corresponding to each target control data, wherein the video memory sub-space is used to display the data stored in the video memory sub-space on the control sub-interface corresponding to the video memory sub-space.
[0090] Optionally, in this embodiment, the control system or controller may maintain a data structure, which may include, but is not limited to, data identifiers of various control data and corresponding control data. The controller may periodically collect and store control data in this data structure.
[0091] Optionally, in this embodiment, Figure 3 This is a schematic diagram of a data structure maintained by a controller according to an embodiment of this application. For example... Figure 3As shown, control data can be categorized into multiple types, with different types identified by different data identifiers, and the control data of different types stored in their corresponding storage locations. The form of the data structure maintained by the control system can be, but is not limited to, similar to the form of the data structure maintained by the controller. The forms of generating the preliminary and final data structures using these two data structures are also similar. In this and subsequent descriptions, the data structure maintained by the controller will be used as the representative, and the data structure maintained by the control system will not be described in detail.
[0092] As an optional implementation, the control system may, but is not limited to, extract various target control data from the controller's storage space by: detecting a reference signal, wherein the reference signal is triggered by a target identifier key among a plurality of identifier keys, the control data is divided into a plurality of control types, and the plurality of control types correspond one-to-one with the plurality of identifier keys; when the reference signal is detected, the control system extracts reference control data of the target control type corresponding to the target identifier key from the controller's storage space, wherein the target control data includes target identifier keys and reference control data with a corresponding relationship.
[0093] Optionally, in this embodiment, the identifier key may be, but is not limited to, a number key or a letter key on a keyboard, and may, but is not limited to, triggering a corresponding reference signal when the identifier key is pressed.
[0094] Optionally, in this embodiment, a reference signal may be detected, but is not limited to, when a target signal is detected; if no reference signal is detected within a reference duration after the target signal is detected, the running interface is switched to a prompt interface and the reference signal is detected again. The prompt interface is used to indicate the correspondence between the identification key and the control type.
[0095] Optionally, in this embodiment, the controller's storage space may be, but is not limited to, the storage space used by the controller to store control data. It may be the aforementioned data structure or any other form of storage space for storing control data.
[0096] By following the steps above, the user's requirements for the types of control data to be displayed are determined by monitoring reference signals. This avoids the inflexibility of only being able to display fixed control data on the control interface and improves the flexibility of control data display.
[0097] As an optional implementation, the control system may, but is not limited to, match the corresponding memory sub-address for each target control data according to the control sub-interfaces displayed on the control interface based on each target control data in the following manner: the control system divides the display interface into a target number of control sub-interfaces, where the target number is the number of target identifier keys; the control system allocates corresponding control sub-interfaces to the reference control data corresponding to each target identifier key according to the triggering order of the target identifier keys, thereby obtaining reference control data and reference control sub-interfaces with a corresponding relationship; the control system matches the memory sub-address of the corresponding reference control sub-interface for each reference control data, thereby obtaining reference control data and reference memory sub-addresses with a corresponding relationship.
[0098] Optionally, in this embodiment, the control system may, but is not limited to, divide the display interface according to the number of types of control data to be displayed. The division may, but is not limited to, evenly dividing the target number, or it may, but is not limited to, dividing each type of control data into different display levels, allocating larger control sub-interfaces for control data with higher display levels, and allocating control sub-interfaces of equal area for control data with the same display level. When dividing the display interface, the display effect of the resulting control sub-interfaces on the control data may also be considered, avoiding control sub-interfaces with excessively large differences in the horizontal and vertical display ratios. Further methods of dividing the display interface are not limited here.
[0099] Optionally, in this embodiment, the control system assigns corresponding control sub-interfaces to the reference control data corresponding to the target identifier keys according to the triggering order of the target identifier keys. This may include, but is not limited to, assigning the divided control sub-interfaces to each reference control data in a left-to-right and top-to-bottom order. For example, when the display interface is divided into four control sub-interfaces, the upper left control sub-interface may be assigned to the reference control data corresponding to the first triggered target identifier key, the upper right control sub-interface may be assigned to the reference control data corresponding to the second triggered target identifier key, the lower left control sub-interface may be assigned to the reference control data corresponding to the third triggered target identifier key, and the lower right control sub-interface may be assigned to the reference control data corresponding to the fourth triggered target identifier key.
[0100] By following the steps above, and assigning control sub-interfaces to the reference control data according to the order in which the target identifier keys are pressed, we can ensure that the control interface displays the control data in a way that meets the user's display needs and improves the user experience.
[0101] Optionally, in this embodiment, the system may, but is not limited to, receive control data display requests initiated by the user. For example, if the system detects that the user has pressed V+G+A+2+1+3+4 on the keyboard, triggering the target signal and reference signal, it may detect that the user has initiated a display request for control data with data identifiers 2, 1, 3, and 4. Figure 4 This is a schematic diagram of a data structure initially generated in response to a user request according to an embodiment of this application. It may include, but is not limited to, such... Figure 4 As shown, data structure entries including data identifier 1, data identifier 2, data identifier 3, and data identifier 4 are extracted from the original data structure to obtain a preliminary data structure. Simultaneously, the number of identifier keys pressed by the user can be considered, and the display interface and display space can be divided according to the type and number of identifier keys pressed by the user. Furthermore, the second memory address can be divided according to the method of dividing the display space, resulting in multiple memory sub-addresses corresponding one-to-one with the multiple data identifiers corresponding to the divided display space. Figure 5 This is a schematic diagram illustrating the division of a display interface according to an embodiment of this application. For example... Figure 5 As shown, the display interface can be divided into four parts, but is not limited to. Assuming the horizontal axis of the display interface has pixels numbered x and the vertical axis has pixels numbered y, the coordinates of the four points in each block will be determined. Screen area numbers can be defined according to a logic from left to right and from top to bottom, but is not limited to. Then, a correspondence between each pixel area range and each memory sub-address is established, enabling the control system to operate on the pixels within the corresponding pixel range according to display requirements, laying the foundation for block-based display. Afterwards, the order of multiple pressed target identifier keys can be considered, and the display positions in the initially generated data structure can be written according to the order. Figure 6 This is a schematic diagram of a data structure ultimately generated in response to a user request according to an embodiment of this application. For example... Figure 6 As shown, in response to the sequence of "2134", the display positions of each part can be rewritten to the corresponding display areas (i.e., the aforementioned control sub-interface). Optionally, the display areas here can, but are not limited to, directly store the memory sub-addresses corresponding to each display area. After obtaining the final generated data structure, each target control data (such as...) can be extracted according to the instructions of the final generated data structure. Figure 6 (Asset information display data, etc.), and then match the corresponding memory sub-address for each target control data (such as...). Figure 6 The memory sub-address of the second area corresponding to the asset information display data is used to store the target control data in the respective video memory sub-spaces, thereby enabling the display of the corresponding control data in each display area.
[0102] Through the above steps and the intervention of the control system, efficient and precise switching between the server's operating interface and the control interface is achieved. Furthermore, the control interface is divided into multiple sub-interfaces, each corresponding to different target control data, thus improving the display efficiency of the target control data. Compared to display methods that can only show a fixed amount of information, the solution presented in this application provides users with a better user experience.
[0103] As an optional implementation, this application also provides a method for split-screen display of control data, the specific steps of which include:
[0104] Step S1: The BMC initializes a VGA split-screen display content area in the SRAM (Static Random Access Memory), and defines how many content blocks will be displayed after splitting the screen and the specific content of each block.
[0105] Step S2: Has the user pressed the combination key for split-screen display on the VGA monitor (i.e., the aforementioned target combination key)? If yes, proceed to step S3; otherwise, proceed to step S9.
[0106] Step S3: The BIOS responds to this key combination and enters the SMI interrupt handler for split-screen display. In the SMI interrupt, the BIOS first accesses the SRAM area of the BMC to obtain the data structure of the content to be displayed (i.e., the aforementioned preliminary data structure), and maps it to the location of the area to be displayed according to the numerical order of the key combination, updates it in the data structure, and obtains the final generated data structure.
[0107] Step S4: In the SMI interrupt, the BIOS maps the MMIO (Memory-Mapped Input / Output) area storing VGA display data to SMRAM memory, and the BIOS takes over the display control of VGA from the operating system.
[0108] Step S5: The BIOS operates the VGA device's video memory based on the position information in the final generated data structure, and displays the content to be displayed in a split screen.
[0109] Step S6: Monitor whether the user presses the combination key to exit VGA split-screen display (i.e., the aforementioned target shortcut key). If yes, proceed to step S7; otherwise, proceed to step S8.
[0110] Step S7: The BIOS maps the MMIO area storing VGA display data to ordinary memory instead of SMRAM. The BIOS then hands over the display control of VGA to the operating system and exits the SMI interrupt routine (i.e., the aforementioned system management running mode).
[0111] Step S8: The BIOS maintains the SMI interrupt's control over the VGA display and will not exit the SMI interrupt routine.
[0112] Step S9: The operating system maintains control over the VGA display, and the BIOS will not enter the SMI interrupt handler for split-screen display.
[0113] In addition to the BIOS taking over the display rights of the VGA, which originally belonged to the operating system, as one of the multiple systems running on the central processing unit to achieve the switching of the display interface, the display rights of the VGA can also be managed directly at the hardware level to achieve the switching of the display interface.
[0114] As an optional implementation, a display source register can be set, but is not limited to, a display interface display source register. This register is configured to control the display interface to display data written to the video memory by the central processing unit (CPU) or data written to the video memory by other hardware devices (such as a controller). For example, but not limited to, when displaying runtime data, writing to the display source register can switch the display source from the controller to the CPU.
[0115] Optionally, in this embodiment, the way the display source register controls the display source may include, but is not limited to, allowing the display memory space of the display interface to only allow the hardware device indicated by the display source register of the display interface to write data.
[0116] Optionally, in this embodiment, Figure 7 This is a flowchart illustrating a method for split-screen display of control data related to the display source register of a display interface, according to an embodiment of this application. For example... Figure 7 As shown, a method for split-screen display of control data related to the display source register of the display interface may include, but is not limited to, the following steps:
[0117] Step SS1: BMC initializes a VGA split-screen display content area in SRAM, defining how many content blocks will be displayed after splitting the screen and the specific content of each block.
[0118] Step SS2: Monitor whether the user presses a key combination for split-screen display on the VGA monitor, such as the combination V+G+A+number (i.e., the aforementioned number identifier). If yes, proceed to step SS3; otherwise, proceed to step SS10. Assume the key combination pressed here is "V+G+A+1+2+3+4".
[0119] Optionally, if the user presses the VGA key combination but without a number (i.e., no identifier key is pressed), the BIOS may, but is not limited to, enter an SMI interrupt and notify the BMC to display the correspondence between the number and the information on the screen; if the user presses the VGA + number combination key, the BIOS enters an SMI interrupt and notifies the BMC to display the corresponding information for each number on the screen.
[0120] Step SS3: The BIOS responds to this key combination and enters the SMI interrupt handler for split-screen display. In the SMI interrupt, the BIOS first rewrites the display area location information stored in the BMC SRAM according to the number of the target identifier key, indicating that the content needs to be displayed.
[0121] In step SS4, the BIOS continues to write to the BMC's VGA display source register (i.e., the aforementioned display interface display source register) within the SMI interrupt, switching the display source to the BMC. At this point, the operating system's output no longer appears on the VGA monitor.
[0122] Step SS5: In the SMI interrupt, the BIOS sends an IPMI (Intelligent Platform Management Interface) command to the BMC to notify the BMC to perform split-screen display.
[0123] Step SS6: After receiving the IPMI command from the BIOS, the BMC operates the VGA device's video memory to split the content to be displayed into multiple screens, based on the corresponding control data indicated by the display area location information in the SRAM, which determines whether the content should be displayed and in which interface area. Figure 8 This is a schematic diagram illustrating the display effect of a split-screen display according to an embodiment of this application. For example... Figure 8 As shown, the system ultimately responds to the user's press of the "V+G+A+1+2+3+4" key combination, displaying asset information, component temperature, component power consumption, and alarm logs from the control data on the display interface.
[0124] Step SS7: Monitor whether the user presses the shortcut key to exit VGA split-screen display (i.e., the aforementioned target shortcut key). If yes, proceed to step SS8; otherwise, proceed to step SS9.
[0125] Step SS8: The BIOS responds to the target shortcut key to exit VGA split-screen display and enters the SMI interrupt handler for exiting split-screen display. In the SMI interrupt, the BIOS first sends an IPMI command to notify the BMC to stop split-screen display. After receiving the IPMI command from the BIOS, the BMC clears the video memory of the VGA device. Then, the BIOS writes to the BMC's VGA display source control register, switching the display source to the central processing unit. At this time, the operating system output continues to appear on the VGA monitor.
[0126] The above methods meet the user's need to immediately and simultaneously view various control data such as server asset information, temperature, and alarm logs in front of a VGA monitor. It eliminates the need to connect to the server via network cable to log in to the BMC web (network) interface to view control data, greatly improving the efficiency of server operation and maintenance and saving manpower and time costs.
[0127] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method.
[0128] Embodiments of this application also provide a control device for a server display interface. Figure 9 This is a structural block diagram of a control device for a server display interface according to an embodiment of this application, such as... Figure 9 As shown, the device includes:
[0129] The detection module 902 is used to detect the display status of the server's display interface;
[0130] The processing module 904 is used to disable the first memory address corresponding to the video memory space of the display interface in the server's memory space and enable the second memory address corresponding to the video memory space when the display status indicates that the display interface is about to switch from the running interface to the control interface. The running interface is used to display the running data of the server's operating system, and the control interface is used to display the control data of the server's controller. The first memory address is set to allow the operating system to access it, the second memory address is set to disallow the operating system to access it, and the second memory address is set to allow the server's control system to access it. The control system is used to transmit control data to the control interface.
[0131] The above device detects the display status of the server's display interface. When the display status indicates that the display interface is about to switch from the running interface to the control interface, the first memory address corresponding to the display interface's video memory space is disabled in the server's memory space, and the second memory address corresponding to the video memory space is enabled in the memory space. The first memory address is set to allow access by the operating system, while the second memory space is set to disallow access by the operating system but also allows access by the server's control system. After disabling the first memory address and enabling the second memory address, the operating system can no longer operate on the video memory space, and the control system can transmit control data to the control interface through the second memory address. This ensures that the display of control data is no longer affected by the running data transmitted by the operating system. Therefore, it can solve the technical problem of poor stability of the server's display interface display control data in related technologies, and achieve the technical effect of improving the stability of the server's display interface display control data.
[0132] In some embodiments, the processing module includes: a first lookup unit, configured to look up a second address mapping corresponding to a first storage space in memory space and obtain a third address mapping corresponding to a video memory space, wherein the second address mapping is used to indicate the mapping relationship between a second memory address and a first storage address, the first storage address is the physical address of the first storage space, the first storage space is a storage space that is not allowed to be accessed by the operating system but is allowed to be accessed by the control system, and the third address mapping is used to indicate the mapping relationship between the second memory address and the video memory address; and a control unit, configured to disable the second address mapping in the server's memory space and enable the third address mapping in the server's memory space.
[0133] In some embodiments, the first lookup unit is further configured to: obtain a first memory address and a video memory address; search for a mapping relationship including the first memory address in an address mapping table of the memory space to obtain a second address mapping, wherein the address mapping table records memory addresses and physical addresses with mapping relationships; obtain a second memory address from the second address mapping; and create a mapping relationship between the second memory address and the video memory address in the address mapping table to obtain a third address mapping.
[0134] In some embodiments, the control unit is further configured to: locate a second validity identifier of the second address mapping in the memory space and obtain a third validity identifier of the third address mapping, wherein the validity identifier of the address mapping is used to indicate whether the address mapping is valid in the memory space, and a valid address mapping in the memory space is allowed to be used, while an invalid address mapping in the memory space is not allowed to be used; configure the second validity identifier as a target identifier and configure the third validity identifier as a reference identifier, wherein the target identifier is used to indicate that the address mapping is invalid in the memory space, and the reference identifier is used to indicate that the address mapping is valid in the memory space.
[0135] In some embodiments, the control unit is further configured to: search for a second register location corresponding to the second address mapping in a target register of the memory space, and search for a third register location in the target register, wherein the target register includes one or more register locations, each register location stores a validity identifier of the corresponding address mapping, the second register location is used to store the second validity identifier, and the third register location is a register location in one or more register locations that does not store data.
[0136] In some embodiments, the control unit is further configured to: write the target identifier into the second register location; establish a correspondence between the third register location and the third address mapping, and write the reference identifier into the third register location.
[0137] In some embodiments, the first lookup unit is further configured to: obtain the physical address of the server's system management memory to obtain a first storage address, and obtain the video memory address, wherein the system management memory is a storage space that is not accessible to the operating system but is accessible to the control system in the server's system management operation mode; look up a mapping relationship including the first storage address from the address mapping table of the memory space to obtain a second address mapping, wherein the address mapping table records memory addresses and physical addresses with mapping relationships; obtain a second memory address from the second address mapping; and create a mapping relationship between the second memory address and the video memory address in the address mapping table to obtain a third address mapping.
[0138] In some embodiments, the control unit is further configured to: switch the server's operating mode to a system management operating mode; in the system management operating mode, disable the second address mapping in the memory space and enable the third address mapping in the memory space.
[0139] In some embodiments, the processing module further includes: a termination unit, configured to terminate the system management operation mode and obtain the current operation mode of the server after disabling the second address mapping in the memory space and enabling the third address mapping in the memory space; and an activation unit, configured to enable the second address mapping in the memory space and disable the third address mapping in the memory space in the current operation mode.
[0140] In some embodiments, the processing module further includes: a second lookup unit, configured to look up a first address mapping corresponding to the video memory space from the memory space, wherein the first address mapping is used to indicate the mapping relationship between a first memory address and a video memory address, and the video memory address is the physical address of the video memory space; and a disable unit, configured to disable the first address mapping in the server's memory space.
[0141] In some embodiments, the disable unit is further configured to: find a first validity identifier of the first address mapping from the memory space, wherein the validity identifier of the address mapping is used to indicate whether the address mapping is valid in the memory space, and a valid address mapping in the memory space is allowed to be used, while an invalid address mapping in the memory space is not allowed to be used; configure the first validity identifier as a target identifier, wherein the target identifier is used to indicate that the address mapping is invalid in the memory space.
[0142] In some embodiments, the second lookup unit is further configured to: look up a mapping relationship including a video memory address from an address mapping table of the memory space to obtain a first address mapping, wherein the address mapping table records memory addresses and physical addresses with mapping relationships;
[0143] In some embodiments, the disable unit is further configured to: search for the first register location corresponding to the first address mapping from the target register of the memory space, wherein the target register includes one or more register locations, each register location stores a validity identifier of the corresponding address mapping, and the first register location is used to store the first validity identifier;
[0144] In some embodiments, the disable unit is further configured to: write the target identifier to the first register location.
[0145] In some embodiments, the detection module includes: a first detection unit for detecting a target signal, wherein the target signal is triggered by a target combination key on the server's keyboard; and a determination unit for determining, upon detecting the target signal, that a display state is detected to indicate that the display interface is about to switch from the running interface to the control interface.
[0146] In some embodiments, the aforementioned control device for the server display interface further includes: an extraction module, configured to, when a display state is detected indicating that the display interface is to switch from the running interface to the control interface, extract various target control data from the storage space of the controller, wherein the target control data is control data to be displayed on the control interface; a matching module, configured to, by the control system, match corresponding memory sub-addresses for each target control data according to the control sub-interface to be displayed on the control interface, wherein the control interface is divided into multiple control sub-interfaces corresponding one-to-one with each target control data to be displayed, and the second memory address is divided into multiple memory sub-addresses corresponding one-to-one with each control sub-interface; and a storage module, configured to, by the control system, store each target control data into various video memory sub-spaces of the video memory space through the memory sub-addresses corresponding to each target control data, wherein the video memory sub-spaces are used to display the data stored in the video memory sub-spaces on the control sub-interfaces corresponding to the video memory sub-spaces.
[0147] In some embodiments, the extraction module includes: a second detection unit for detecting a reference signal, wherein the reference signal is triggered by a target identifier key among a plurality of identifier keys, and the control data is divided into a plurality of control types, the plurality of control types corresponding one-to-one with the plurality of identifier keys; and an extraction unit for extracting reference control data of the target control type corresponding to the target identifier key from the controller's storage space when the reference signal is detected, wherein the target control data includes a target identifier key and reference control data having a corresponding relationship.
[0148] In some embodiments, the matching module includes: a partitioning unit, used by the control system to partition the display interface into a target number of control sub-interfaces, wherein the target number is the number of target identifier keys; an allocation unit, used by the control system to allocate corresponding control sub-interfaces to the reference control data corresponding to each target identifier key according to the triggering order of the target identifier keys, thereby obtaining reference control data and reference control sub-interfaces with a corresponding relationship; and a matching unit, used by the control system to match the memory sub-address of the corresponding reference control sub-interface for each reference control data, thereby obtaining reference control data and reference memory sub-addresses with a corresponding relationship.
[0149] For a description of the features in the embodiment corresponding to the control device of the server display interface, please refer to the relevant description of the embodiment corresponding to the control method of the server display interface, which will not be repeated here.
[0150] Embodiments of this application also provide an electronic device, including a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to perform the steps in any of the above-described server display interface control method embodiments.
[0151] Embodiments of this application also provide a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps in any of the above-described server display interface control method embodiments when running.
[0152] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.
[0153] The embodiments of this application also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the above-described server display interface control method embodiments.
[0154] Embodiments of this application also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps in any of the above-described server display interface control method embodiments.
[0155] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0156] The control method and apparatus for a server display interface provided in this application have been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are only intended to help understand the method and core ideas of this application. It should be noted that those skilled in the art can make several improvements and modifications to this application without departing from the principles of this application, and these improvements and modifications also fall within the protection scope of the claims of this application.
Claims
1. A method for controlling a server display interface, characterized in that, include: Detect the display status of the server's interface; When the display state is detected as indicating that the display interface is about to switch from the running interface to the control interface, the first memory address corresponding to the video memory space of the display interface is disabled in the server's memory space, and the second memory address corresponding to the video memory space is enabled in the memory space. The running interface is used to display the running data of the server's operating system, and the control interface is used to display the control data of the server's controller. The first memory address is set to allow the operating system to access it, the second memory address is set to disallow the operating system to access it, and the second memory address is set to allow the server's control system to access it. The control system is used to transmit the control data to the control interface.
2. The control method for the server display interface according to claim 1, characterized in that, Enabling the second memory address corresponding to the video memory space in the memory space includes: The second address mapping corresponding to the first storage space is found from the memory space, and the third address mapping corresponding to the video memory space is obtained. The second address mapping is used to indicate the mapping relationship between the second memory address and the first storage address. The first storage address is the physical address of the first storage space. The first storage space is a storage space that is not allowed to be accessed by the operating system but is allowed to be accessed by the control system. The third address mapping is used to indicate the mapping relationship between the second memory address and the video memory address. Disable the second address mapping in the server's memory space, and enable the third address mapping in the server's memory space.
3. The control method for the server display interface according to claim 2, characterized in that, The step of searching for the second address mapping corresponding to the first storage space from the memory space and obtaining the third address mapping corresponding to the video memory space includes: Obtain the first storage address and the video memory address; The second address mapping is obtained by searching the address mapping table of the memory space for the mapping relationship including the first storage address, wherein the address mapping table records the memory address and physical address with the mapping relationship; Obtain the second memory address from the second address mapping; A mapping relationship between the second memory address and the video memory address is created in the address mapping table to obtain the third address mapping.
4. The control method for the server display interface according to claim 2, characterized in that, Disabling the second address mapping in the server's memory space and enabling the third address mapping in the server's memory space includes: The second validity identifier of the second address mapping is found in the memory space, and the third validity identifier of the third address mapping is obtained. The validity identifier of the address mapping is used to indicate whether the address mapping is valid in the memory space. A valid address mapping in the memory space is allowed to be used, and an invalid address mapping in the memory space is not allowed to be used. The second validity identifier is configured as the target identifier, and the third validity identifier is configured as the reference identifier, wherein the target identifier is used to indicate that the address mapping is invalid in the memory space, and the reference identifier is used to indicate that the address mapping is valid in the memory space.
5. The control method for the server display interface according to claim 4, characterized in that, The step of searching for the second validity identifier of the second address mapping in the memory space and obtaining the third validity identifier of the third address mapping includes: The second register corresponding to the second address mapping is located in the target register of the memory space, and the third register is located in the target register. The target register includes one or more registers, each register storing a validity identifier of the corresponding address mapping. The second register is used to store the second validity identifier, and the third register is a register that does not store data in the one or more registers.
6. The control method for the server display interface according to claim 5, characterized in that, The step of configuring the second validity identifier as the target identifier and the third validity identifier as the reference identifier includes: Write the target identifier into the second register location; Establish the correspondence between the third register location and the third address mapping, and write the reference identifier into the third register location.
7. The control method for the server display interface according to claim 2, characterized in that, The step of searching for the second address mapping corresponding to the first storage space from the memory space and obtaining the third address mapping corresponding to the video memory space includes: The physical address of the system management memory of the server is obtained to obtain the first storage address, and the video memory address is obtained, wherein the system management memory is a storage space that is not allowed to be accessed by the operating system but is allowed to be accessed by the control system in the system management operation mode of the server; The second address mapping is obtained by searching the address mapping table of the memory space for the mapping relationship including the first storage address, wherein the address mapping table records the memory address and physical address with the mapping relationship; Obtain the second memory address from the second address mapping; A mapping relationship between the second memory address and the video memory address is created in the address mapping table to obtain the third address mapping.
8. The control method for the server display interface according to claim 7, characterized in that, Disabling the second address mapping in the server's memory space and enabling the third address mapping in the server's memory space includes: Switch the server's operating mode to the system management operating mode; In the system management operation mode, the second address mapping is disabled in the memory space, and the third address mapping is enabled in the memory space.
9. The control method for the server display interface according to claim 8, characterized in that, After disabling the second address mapping in the memory space and enabling the third address mapping in the memory space, the method further includes: End the system management operation mode to obtain the current operation mode of the server; In the current operating mode, the second address mapping is enabled in the memory space, and the third address mapping is disabled in the memory space.
10. The control method for the server display interface according to claim 1, characterized in that, Disabling the first memory address corresponding to the display interface's video memory space in the server's memory space includes: The first address mapping corresponding to the video memory space is found from the memory space, wherein the first address mapping is used to indicate the mapping relationship between the first memory address and the video memory address, and the video memory address is the physical address of the video memory space; Disable the first address mapping in the server's memory space.
11. The control method for the server display interface according to claim 10, characterized in that, Disabling the first address mapping in the server's memory space includes: The first validity identifier of the first address mapping is found from the memory space, wherein the validity identifier of the address mapping is used to indicate whether the address mapping is valid in the memory space. A valid address mapping in the memory space is allowed to be used, and an invalid address mapping in the memory space is not allowed to be used. Configure the first validity identifier as a target identifier, wherein the target identifier is used to indicate that the address mapping is invalid in the memory space.
12. The control method for the server display interface according to claim 11, characterized in that, The step of finding the first address mapping corresponding to the video memory space from the memory space includes: finding the mapping relationship including the video memory address from the address mapping table of the memory space to obtain the first address mapping, wherein the address mapping table records the memory address and physical address with mapping relationship; The step of searching for the first validity identifier of the first address mapping from the memory space includes: searching for the first register location corresponding to the first address mapping from the target register of the memory space, wherein the target register includes one or more register locations, each register location stores the validity identifier of the corresponding address mapping, and the first register location is used to store the first validity identifier; Configuring the first validity identifier as the target identifier includes: writing the target identifier into the first register location.
13. The control method for the server display interface according to claim 1, characterized in that, The display status of the detection server's display interface includes: Detecting a target signal, wherein the target signal is triggered by a target key combination on the server's keyboard; If the target signal is detected, it is determined that the detected display state is used to indicate that the display interface is about to switch from the running interface to the control interface.
14. The control method for the server display interface according to claim 1, characterized in that, When the display state is detected as indicating that the display interface is about to switch from the running interface to the control interface, the method further includes: The control system extracts various target control data from the storage space of the controller, wherein the target control data is the control data to be displayed on the control interface; The control system matches a corresponding memory sub-address for each target control data to be displayed on the control interface according to the control sub-interface of each target control data. The control interface is divided into multiple control sub-interfaces that correspond one-to-one with each target control data to be displayed, and the second memory address is divided into multiple memory sub-addresses that correspond one-to-one with each control sub-interface. The control system stores the target control data into the respective video memory subspaces of the video memory space through the memory sub-addresses corresponding to the target control data. The video memory subspaces are used to display the data stored in the video memory subspaces on the control sub-interfaces corresponding to the video memory subspaces.
15. The control method for the server display interface according to claim 14, characterized in that, The extraction of various target control data from the controller's storage space by the control system includes: A reference signal is detected, wherein the reference signal is triggered by a target identifier key among a plurality of identifier keys, and the control data is divided into a plurality of control types, each of which corresponds one-to-one with the plurality of identifier keys; Upon detecting the reference signal, the control system extracts reference control data of the target control type corresponding to the target identification key from the storage space of the controller, wherein the target control data includes the target identification key and the reference control data that have a corresponding relationship.
16. The control method for the server display interface according to claim 15, characterized in that, The process of the control system matching corresponding memory sub-addresses for each target control data based on the control sub-interface to be displayed on the control interface includes: The control system divides the display interface into a target number of control sub-interfaces, wherein the target number is the number of target identification keys; The control system assigns a corresponding control sub-interface to the reference control data corresponding to each target identifier key according to the triggering order of the target identifier key, thereby obtaining the reference control data and reference control sub-interface with a corresponding relationship; The control system matches the memory sub-address of the corresponding reference control sub-interface for each reference control data to obtain the reference control data and reference memory sub-address with a corresponding relationship.
17. A control device for a server display interface, characterized in that, include: The detection module is used to detect the display status of the server's display interface; The processing module is configured to, upon detecting that the display state indicates the display interface is about to switch from the running interface to the control interface, disable a first memory address corresponding to the video memory space of the display interface in the server's memory space, and enable a second memory address corresponding to the video memory space in the memory space. The running interface is used to display the operating system's running data, and the control interface is used to display the server's controller's control data. The first memory address is set to allow access by the operating system, the second memory address is set to disallow access by the operating system, and the second memory address is set to allow access by the server's control system. The control system is used to transmit the control data to the control interface.
18. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor, configured to implement the steps of the control method for a server display interface as described in any one of claims 1 to 16 when executing the computer program.
19. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein when the computer program is executed by a processor, it implements the steps of the control method for the server display interface as described in any one of claims 1 to 16.
20. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the control method for the server display interface as described in any one of claims 1 to 16.
Citation Information
Patent Citations
CXL module, controller, task processing method, medium and system
CN118760635A
Method and apparatus for extending BIOS control of screen display beyond operating system boot process
US6477642B1