[go: up one dir, main page]

CN120596045A - Server management and control method, device, storage medium and program product - Google Patents

Server management and control method, device, storage medium and program product

Info

Publication number
CN120596045A
CN120596045A CN202410252316.3A CN202410252316A CN120596045A CN 120596045 A CN120596045 A CN 120596045A CN 202410252316 A CN202410252316 A CN 202410252316A CN 120596045 A CN120596045 A CN 120596045A
Authority
CN
China
Prior art keywords
video data
server
management
control chip
chip
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202410252316.3A
Other languages
Chinese (zh)
Inventor
王魁英
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou AliCloud Feitian Information Technology Co Ltd
Original Assignee
Hangzhou AliCloud Feitian Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou AliCloud Feitian Information Technology Co Ltd filed Critical Hangzhou AliCloud Feitian Information Technology Co Ltd
Priority to CN202410252316.3A priority Critical patent/CN120596045A/en
Priority to PCT/IB2025/050627 priority patent/WO2025186631A1/en
Publication of CN120596045A publication Critical patent/CN120596045A/en
Pending legal-status Critical Current

Links

Landscapes

  • Digital Computer Display Output (AREA)

Abstract

The embodiment of the application provides a server management and control method, equipment, a storage medium and a program product. In the embodiment of the application, aiming at the server, the management and control chip is interconnected with the main chip through the PCIe bus, PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, video data generated in the starting and/or running process of the server are transmitted to the management and control chip through the video transmission channel, and then the management and control chip displays the video data on display equipment interconnected with the video data, so that the display control of the server is realized, a VGA module with high price is not relied, the realization cost is reduced, and the wide application of the KVM technology is facilitated.

Description

Server control method, device, storage medium and program product
Technical Field
The present application relates to the field of chip technologies, and in particular, to a server management and control method, device, storage medium, and program product.
Background
KVM is an abbreviation of Keyboard Video Mouse, which is a technology for controlling a plurality of devices by using a set of Keyboard, display or Mouse, and plays an important role in remote scheduling and monitoring. In a multi-server deployment environment such as a machine room, KVM is introduced to remotely manage a plurality of servers, so that the management complexity of the servers is reduced.
In the conventional scheme, the server uses a BMC (Baseboard Management Controller ) with a VGA (Video GRAPHICS ARRAY, video graphics array) module for KVM management. The VGA module of the BMC can be mounted on a CPU (Central Processing Unit ) of the server, so that the VGA module can serve as a display card function of the server to display an interface of the server.
But the BMC with VGA module has a high cost, which limits the wide application of KVM technology.
Disclosure of Invention
Aspects of the present application provide a server management and control method, apparatus, storage medium, and program product for implementing display control of a server without depending on a BMC with a VGA module, reducing implementation cost, and promoting wide application of KVM technology.
The embodiment of the application provides a server, which comprises a main chip and a management and control chip which are interconnected through a PCIe bus, wherein PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, the main chip is used for acquiring video data generated by the server in the starting and/or running process and transmitting the video data to the PCIe endpoint equipment through the PCIe root equipment, and the management and control chip is used for reading the video data from the PCIe endpoint equipment and displaying the video data on display equipment which is interconnected with the management and control chip so as to realize display control of the server.
The embodiment of the application also provides a server which comprises a main chip and a management and control chip, wherein a bus controller and bus equipment are respectively realized on the main chip and the management and control chip, the bus controller and the bus equipment are mutually connected through a target bus to form a video transmission channel between the main chip and the management and control chip, the main chip is used for acquiring video data generated in the starting and/or running process of the server and transmitting the video data to the bus equipment through the bus controller, and the management and control chip is used for reading the video data from the bus equipment and displaying the video data on display equipment mutually connected with the management and control chip to realize display control of the server.
The embodiment of the application also provides a management and control chip which is applied to a server and is connected with a main chip of the server through a PCIe bus, PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, the management and control chip is used for reading video data from the PCIe endpoint equipment and displaying the video data on display equipment connected with the management and control chip to realize display control of the server, and the video data is generated in the starting and/or running process of the server and is transmitted to the PCIe endpoint equipment through the PCIe root equipment by the main chip.
The embodiment of the application also provides a main chip which is applied to the server, wherein the main chip is interconnected with the management and control chip of the server through a PCIe bus, PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, the main chip is used for acquiring video data generated by the server in the starting and/or running process, and transmitting the video data to the PCIe endpoint equipment through the PCIe root equipment so that the management and control chip can read the video data from the PCIe endpoint equipment and display the video data on display equipment interconnected with the management and control chip, thereby realizing the display control of the server.
The embodiment of the application further provides a server board card, wherein a main chip and a management and control chip are integrated on the server board card, the main chip and the management and control chip are interconnected through a PCIe bus, PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, the main chip is used for acquiring video data generated by the server in the starting and/or running process and transmitting the video data to the PCIe endpoint equipment through the PCIe root equipment, and the management and control chip is used for reading the video data from the PCIe endpoint equipment and displaying the video data on display equipment interconnected with the management and control chip so as to realize display control of the server.
The embodiment of the application also provides a server management and control method which is applied to the main chip in the server, wherein the main chip is used for respectively realizing PCIe root equipment and PCIe endpoint equipment on the main chip and the management and control chip through a PCIe bus and the management and control chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, the method comprises the steps of obtaining video data generated by the server in the starting and/or running process, and transmitting the video data to the PCIe endpoint equipment through the PCIe root equipment so that the management and control chip can read the video data from the PCIe endpoint equipment and display the video data on display equipment interconnected with the management and control chip, thereby realizing the display control of the server.
The embodiment of the application also provides a server management and control method which is applied to the management and control chip in the server, wherein the management and control chip is used for respectively realizing PCIe root equipment and PCIe endpoint equipment on the main chip and the management and control chip through a PCIe bus and a PCIe, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, the method comprises the steps of reading video data from the PCIe endpoint equipment, wherein the video data is generated in the starting and/or running process of the server and is transmitted to the PCIe endpoint equipment through the PCIe root equipment by the main chip, and the video data is displayed on display equipment interconnected with the management and control chip to realize the display control of the server.
The embodiments of the present application also provide a computer readable storage medium storing a computer program which, when executed by a processor, causes the processor to carry out the steps of the above-described method.
Embodiments of the present application also provide a computer program product comprising computer programs/instructions which, when executed by a processor, cause the processor to carry out the steps of the above-described method embodiments.
In the embodiment of the application, aiming at the server, the management and control chip is interconnected with the main chip through the PCIe bus, PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, video data generated in the starting and/or running process of the server are transmitted to the management and control chip through the video transmission channel, and then the management and control chip displays the video data on display equipment interconnected with the video data, so that the display control of the server is realized, a VGA module with high price is not relied, the realization cost is reduced, and the wide application of the KVM technology is facilitated.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this specification, illustrate embodiments of the application and together with the description serve to explain the application and do not constitute a limitation on the application. In the drawings:
Fig. 1 is a schematic structural diagram of a server according to an exemplary embodiment of the present application;
FIG. 2 is a schematic diagram of a topology of a PCIe bus system according to an exemplary embodiment of the present application;
fig. 3 is a schematic structural diagram of a server according to another exemplary embodiment of the present application;
fig. 4 is a schematic structural diagram of a server according to another exemplary embodiment of the present application;
FIG. 5 is a schematic diagram of an internal implementation framework of a graphics card driver according to another exemplary embodiment of the present application;
FIG. 6 is a schematic diagram showing the relationship between various DRM elements according to yet another exemplary embodiment of the present application;
FIG. 7 is a schematic diagram of a graphics driver loading process according to yet another exemplary embodiment of the present application;
fig. 8 is a schematic structural diagram of a server according to another exemplary embodiment of the present application;
FIG. 9 is a flowchart of a server management and control method according to another exemplary embodiment of the present application;
fig. 10 is a flowchart of another server management and control method according to another exemplary embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the technical solutions of the present application will be clearly and completely described below with reference to specific embodiments of the present application and corresponding drawings. It will be apparent that the described embodiments are only some, but not all, embodiments of the application. All other embodiments, which can be made by those skilled in the art based on the embodiments of the application without making any inventive effort, are intended to be within the scope of the application.
It should be noted that, the user information (including but not limited to user equipment information, user personal information, etc.) and the data (including but not limited to data for analysis, stored data, presented data, etc.) related to the present application are information and data authorized by the user or fully authorized by each party, and the collection, use and processing of the related data need to comply with the related laws and regulations and standards of the related country and region, and provide corresponding operation entries for the user to select authorization or rejection. In addition, the various models (including but not limited to language models or large models) to which the present application relates are compliant with relevant legal and standard regulations.
Aiming at the technical problems that the existing BMC with VGA module has higher cost and limits the wide application of KVM technology, the embodiment of the application provides a solution, and the basic idea is that aiming at a server, a management and control chip is interconnected with a main chip through a PCIe bus, PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, video data generated by the server in the starting and/or running process is transmitted to the management and control chip through the video transmission channel, and then the management and control chip displays the video data on display equipment interconnected with the video data, so that the display control of the server is realized without relying on expensive VGA module, the realization cost is reduced, and the wide application of the KVM technology is facilitated.
The following describes in detail the technical solutions provided by the embodiments of the present application with reference to the accompanying drawings.
Fig. 1 is a schematic structural diagram of a server according to an exemplary embodiment of the present application. As shown in fig. 1, the server 100 includes a main chip 101 and a management chip 102 interconnected by a PCIe (PERIPHERAL COMPONENT INTERCONNECT EXPRESS, peripheral component interconnect express (pci) bus standard) bus. The main Chip 101 is a main Chip of the server, and is also a basic Chip of the server, and is a Chip on which the main function is dependent for the server to implement, and the embodiment of the application is not limited to the implementation form of the main Chip 101, and may be, for example, a CPU Chip, a GPU (Graphics Processing Unit, a graphics processor) Chip, a DPU (Data Processing Unit, a data processor) Chip, etc. according to the application scenario and the function to be implemented of the server, and the management Chip 102 is a hardware unit independent of the main Chip 101, and may assist the main Chip 101 in providing some control and management functions, such as power management, temperature monitoring, and management of peripheral devices, etc. in the embodiment of the application, the implementation mode of the management Chip 102 is not limited, and may be various chips with auxiliary management functions, such as a SoC (System on Chip) Chip, a BMC, etc. preferably, the management Chip 102 may be a Chip without a module in order to reduce the Chip cost.
In the embodiment of the present application, PCIe root device 1011 and PCIe endpoint device 1021 are respectively implemented on main chip 101 and management chip 102, where PCIe root device 1011 and PCIe endpoint device 1021 form a video transmission channel between main chip 101 and management chip 102, and based on the video transmission channel, management chip 102 is at least used to assist main chip 101 in performing display control on a server. The main chip 101 is configured to obtain video data generated by the server in a startup and/or operation process, and transmit the video data to the PCIe endpoint device 1021 through the PCIe root device 1011, and the management and control chip 102 is configured to read the video data from the PCIe endpoint device 1021, and display the video data on the display device 103 interconnected with the management and control chip 102, so as to realize display control of the server 100.
In the present embodiment, the PCIe Root device 1011 is embodied as an RC (Root Complex), and the PCIe Endpoint device 1021 is embodied as an EP (Endpoint). The specific descriptions of RC and EP are as follows:
The server architecture of the present application using PCIe bus mainly includes RC, EP, bridge (bridge) and Switch (Switch). As shown in FIG. 2, a topology of a PCIe bus system is shown in which the RC is at the root node of the topology and is the interface between CPI and the PCIe bus through which the processor on the host chip 101 is connected to the PCIe bus, the EP is at the end of the PCIe bus system topology for initiating or receiving PCIe requests and messages, including PCIe EP and Legacy EP, wherein Legacy EP is not the PCIe interface native design but is an old device adapted to the PCIe interface for compatibility, bridge provides an old interface access to other buses, such as PCI (PERIPHERAL COMPONENT INTERCONNECT, peripheral component interconnect standard) or PCI-X (an upgraded version of the Legacy PCI bus), wherein Bridge provides expansion capability corresponding to "PCIe Bridge to PCIOr PCI-X" in FIG. 2, switch provides expansion capability allowing more devices to connect to one PCIe port. Here, a plurality of PCIe endpoint devices may be interconnected by Bridge and Switch, but not limited thereto, and thus, bridge and Switch are optional components, and PCIe root device 1011 and PCIe endpoint device 1021 may be directly interconnected.
In this embodiment, PCIe root devices are implemented on a main chip, PCIe endpoint devices are implemented on a management and control chip, and the main chip and the management and control chip are interconnected through a PCIe bus, so that the PCIe root devices and the PCIe endpoint devices form a transmission channel between the main chip and the management and control chip, and the transmission channel is used as a video transmission channel. By means of the video transmission channel, the main chip acquires video data generated in the starting and/or running process of the server, the video data are transmitted to PCIe endpoint equipment through PCIe root equipment, and the control chip reads the video data from the PCIe endpoint equipment and displays the video data on display equipment interconnected with the control chip, so that display control of the server is realized.
In an alternative embodiment, a Base address register (Base ADDRESS REGISTER, BAR) of the PCIe endpoint device is mapped into a memory space of the PCIe root device as a video transmission channel between a master chip and a management chip, where the master chip is specifically configured to write video data into the memory space of the PCIe root device and control the PCIe root device to transmit the video data in the memory space to a cache of the PCIe endpoint device through a PCIe bus.
In the embodiment of the application, aiming at the server, the management and control chip is interconnected with the main chip through the PCIe bus, PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, video data generated in the starting and/or running process of the server are transmitted to the management and control chip through the video transmission channel, and then the management and control chip displays the video data on display equipment interconnected with the video data, so that the display control of the server is realized, a VGA module with high price is not relied, the realization cost is reduced, and the wide application of the KVM technology is facilitated. In addition, the existing BMC technology with VGA module is locked in foreign factories, and the technical scheme of the application can expand the display control of the server to a common chip, can solve the neck problem faced in the chip technology to a certain extent, and has great significance to the whole chip industry.
Because the server is not provided with the display card, a driving program for driving the display card is not arranged in the operating system of the server, and therefore, in order to assist the main control chip to complete the acquisition, processing and transmission of video data, compared with the traditional operating system of the server, the driving program for acquiring, processing and transmitting the video data is required to be additionally arranged for the server. Embodiments regarding the addition of drivers for the server for video data acquisition, processing and transmission may be based on display control requirements for the server.
In the embodiment of the application, the whole life cycle of the server can be divided into a starting process and a running process after starting, wherein the starting process of the server comprises a process of guiding the starting of the operating system based on a bootstrap program of the server and a starting process of the operating system of the server, and the running process after starting of the server mainly refers to a process of normally running the server based on the operating system after starting. In the foregoing processes, video data, for example, a boot startup screen may be displayed during the running process of a boot program, a startup screen of an operating system may be displayed during the starting process of the operating system, interfaces of various application programs and a main interface of a server may be displayed during the running process of the operating system, and so on.
Specifically, if the display control requirement on the server only relates to the display control in the starting process of the operating system and/or the normal running process after the operating system is started, the display card driver can be newly added in the operating system of the server, if the display control requirement on the server only relates to the display control in the starting process of the bootstrap program, the graphics driver can be newly added in the bootstrap program of the server, and if the display control requirement on the server simultaneously relates to the whole life cycle of the server, namely the starting process of the bootstrap program, the starting process of the operating system and the display control in the normal running process after the operating system is started, the display card driver can be newly added in the operating system of the server and the graphics driver can be newly added in the bootstrap program of the server. As shown in fig. 3, the main chip 101 includes a first processor 1012 and a first memory (not shown), where the first memory stores program codes of an operating system and/or a boot program, and of course, the first memory may also store program codes of other data and other application programs running on a server, the first processor 1012 runs a graphics card driver for acquiring video data generated by the operating system during a startup process and a running process, and transmits the video data to the PCIe endpoint device 1021 via the PCIe root device 1011, and/or the first processor 1012 runs a graphics driver for acquiring video data generated by the boot program during a running process, and transmits the video data to the PCIe endpoint device 1021 via the PCIe root device 1011.
In this embodiment, the operating system runs on the main chip, it manages the hardware resources of the server and executes the application program, and common operating systems include Windows (microsoft operating system based on the graphical user interface), linux (a UNIX-like operating system with open source code), and the like, which is not limited in this application. The boot strap is responsible for booting the operating system, is hardware initialized at server start-up, and provides some control before running the operating system, alternatively, the boot strap may be a BIOS (Basic Input Output System ) or UEFI (Unified Extensible FIRMWARE INTERFACE, unified extensible firmware interface), etc., which the present application is not limited to.
Further alternatively, a data migration service is deployed on the management and control chip, as shown in fig. 3, the management and control chip 102 includes a second processor 1022 and a second memory (not shown in the figure), where the second memory is at least used for storing program codes of the data migration service, and of course, the second memory is also used for storing other data or program codes related to the management and control chip 102, and the second processor 1022 runs the data migration service and is used for reading video data from the PCIe endpoint device 1021 and displaying the video data on the display device 301, so as to implement display control on the server.
It should be noted that the data migration service is a software program developed for the management and control chip according to the present application, and is used for assisting the management and control chip to complete migration and display control of video data.
In the embodiment of the application, the implementation manner of the display device is not limited, and the display device can comprise a local display device, a remote display device or both the local display device and the remote display device. The video data of the server can be displayed locally based on the local display device, and the video data of the server can be displayed remotely based on the remote display device. In an alternative embodiment, the display device comprises a local display device, the management and control chip comprises a video interconnection interface which is interconnected with the local display device and a first frame buffer area which provides storage service for the local display device, and the second processor runs a data migration service which is used for reading video data from a buffer of the PCIe endpoint device, writing the video data into the first frame buffer area (Framebuffer) and sending the video data in the first frame buffer area to the local display device for display through the video interconnection interface.
The Video interconnection interface is responsible for sending the Video data in the first frame buffer area to the local display device for display, and the Video interconnection interface can be HDMI (High Definition Multimedia Interface ) or VGA (Video GRAPHICS ARRAY, video graphics array) and the like, which is not limited by the application.
Optionally, the display device comprises a remote display device relative to the local display device; in order to realize remote display control, a virtual network console VNC (Virtual Network Computing) server is further deployed on the management and control chip, wherein program codes of the VNC server are stored in a second memory, a second processor executes the program codes to realize functions of the VNC server, a VNC client is deployed and executed on the remote display device, remote transmission and display control of video data are realized by means of the VNC server and the VNC client, based on the remote display device, the second processor executes a data migration service and is further used for reading the video data from a cache of a PCIe endpoint device, writing the video data into a second frame cache area of the VNC server, and controlling the VNC server to transmit the video data to the remote display device for display through a video data network, and the remote display device executes the VNC client to display the video data on a screen.
In this embodiment, the second frame buffer area is a memory area of the VNC server for storing video data to be displayed, in an alternative embodiment, the second frame buffer area may be a virtual memory area, which is not mapped to any physical display device, but is a storage area of video data, which is then transmitted to the VNC client through the network, and in an alternative embodiment, the second frame buffer area may also be an actual memory area, where the video data of the memory area is directly sent to a connected display device, so that the video data is displayed by using the display device.
That is, the second frame buffer area may be a software-level area for video data display (such as a remote display device), or a hardware-level area, which is an actual memory area for physical output of video data.
The above-described embodiment realizes Video, i.e., video functions in "KVM", and the following embodiment will explain two functions of a Keyboard (Keyboard) and a Mouse (Mouse) in detail:
In an alternative embodiment, as shown in fig. 4, the control chip 102 includes a serial interface interconnected with an external interaction device, where the external interaction device includes a keyboard and/or a mouse, the control chip 102 is further interconnected with the main chip through a serial bus, the serial interface and the serial bus belong to the same serial bus protocol, the control chip 102 is further configured to obtain an interaction event generated by the external interaction device and transmit the interaction event to the main chip through the serial bus, and the main chip 101 is further configured to receive the interaction event and respond to the interaction event to implement interaction control on the server.
In this embodiment, the serial interface and the serial bus are not limited, and any serial interface and serial bus belonging to the same serial bus protocol are applicable to this embodiment as long as corresponding drivers are deployed on the management and control chip and the main chip.
In an alternative embodiment, the serial interface is a universal serial bus USB (Universal Serial Bus) interface, the serial bus is a USB bus, a USB device controller (USB Device Controller, UDC) is disposed on the management and control chip, and is configured to obtain an interactivity event generated by the external interactivity device and transmit the interactivity event to the main chip through the serial bus, and a USB host controller (USB Host Controller, UHC) is disposed on the main chip, and is configured to receive the interactivity event and respond to the interactivity event.
Specifically, the USB device driver is classified into a USB device host side driver (master mode) or a USB device slave side driver (slave mode) according to an operation mode (master mode or slave mode) of the USB controller associated with the device side. Meanwhile, a USB controller operating in the master mode is referred to as a USB host controller, and a USB controller operating in the slave mode is referred to as a USB device controller.
In an example, the Linux system drives a USB device from the side, referred to as a USB Gadget drive. The management and control chip is configured into a USB Gadget device through a built-in USB device controller and a USB Gadget driver, and is used for simulating HID (Human INTERFACE DEVICES, human interface device) devices such as a keyboard and a mouse, when the USB Gadget device is connected to a USB host controller through a USB bus, the USB host controller detects new device access, and then an enumeration process is started to identify and configure the device. When the management and control chip captures interaction events (such as keyboard knocking or mouse moving) from external interaction equipment, the interaction events are packaged into data packets according to an HID protocol through a USB (high intensity discharge) bus, the data packets are transmitted to the main chip through the USB serial bus, a USB host controller of the main chip receives the data packets from the management and control chip, the data packets are analyzed to extract corresponding interaction events, and an operating system executes corresponding operations such as updating cursor positions, inputting characters and the like according to the analyzed interaction events.
It should be noted that, based on the USB Gadget driver, various USB device types (such as sound card, serial port, etc.) can be simulated, but not limited to simulating HID devices, which is not limited by the present application.
In an embodiment of the present application, it is not limited whether the main chip and the management and control chip are integrated on the same board, and in an alternative embodiment, the main chip and the management and control chip are integrated on the same board.
In the above embodiments of the present application, the main chip and the management chip are described by way of PCIe bus interconnection, but the present application is not limited to PCIe bus, and other buses like PCIe bus, such as PCI bus, may be used, which is not limited thereto. Based on the above, the embodiment of the application also provides a server, which comprises a main chip and a management and control chip, wherein a bus controller and a bus device are respectively realized on the main chip and the management and control chip, the bus controller and the bus device form a video transmission channel between the main chip and the management and control chip after being interconnected through a target bus, the main chip is used for acquiring video data generated by the server in the starting and/or running process and transmitting the video data to the bus device through the bus controller, and the management and control chip is used for reading the video data from the bus device and displaying the video data on a display device interconnected with the management and control chip so as to realize the display control of the server. Compared with the server in the foregoing embodiment, the server provided in this embodiment is only different in that the interconnection bus between the master chip and the management and control chip is specifically a target bus, and the bus controller and the bus device are implemented on the master chip and the management and control chip respectively, where the target bus may be a summary of PCIe, PCI, and the like, and when the target bus is implemented as a PCIe bus, the bus controller and the bus device are respectively a PCIe root device and a PCIe endpoint device, and therefore, the relevant description of the server provided in this embodiment may be referred to the foregoing embodiment and will not be repeated herein.
Furthermore, the embodiment of the application is not limited to the implementation modes of the display card driver and the graphics driver, different chip manufacturers can have respective implementation modes, can adopt the existing display card driver or the display card driver which is self-developed by the chip manufacturers, and all the driving modes capable of realizing the corresponding functions of the display card driver and the graphics driver in the embodiment are suitable for the embodiment of the application.
One implementation of the graphics card driver is illustrated below:
In an alternative embodiment, the operating system of the server is implemented as a Linux system, and accordingly, the graphics card driver added in the operating system may be implemented by using an existing graphics card driver in the Linux system. As shown in fig. 5, an internal implementation framework for a graphics card driver in a Linux system includes an X11 located at an application layer and DRM (DIRECT RENDERING MANAGER ) located at a kernel layer.
Specifically, as shown in fig. 5, X11 includes at least one X Client and X Server, and X11 is also called X Window System, which is a Client-Server System for graphic display, designed to manage and render a Graphic User Interface (GUI). X11 allows multiple X clients to share the same display device, each client displaying its graphical output in the form of a window on the screen.
Wherein, the X Server is a Server-side component of X11, and is responsible for managing graphics hardware and processing graphics display requests, interacting with display hardware (such as a display card and a display) through a device driver, such as an AMD (ultrawei semiconductor company) or NVIDIA (inflight) display card driver, and rendering graphics data on a screen. The X Server is specifically responsible for the following key tasks:
Initializing and starting, namely loading and initializing graphics hardware when the system is started, and establishing connection with hardware equipment such as a display card, a display and the like;
Device and display management, namely, communicating with graphics hardware through corresponding device drivers, identifying and configuring display devices.
Window management, namely, creating a processing window, distributing resources, drawing a title bar, a frame and the like of the window, and tracking the state of the window;
the graphic rendering and outputting, namely receiving a graphic request of the X Client, processing and outputting a rendering result to a screen;
capturing user input events and system events, and distributing the user input events and the system events to corresponding X clients;
multitasking supports allowing multiple X clients to run and display simultaneously, managing resource allocation and scheduling between them so that they can work in concert.
X Client is the Client component of X11, which presents a graphical interface to the user on behalf of the user program or application. XClient do not communicate directly with graphics hardware, but rather are displayed graphically through an X Server. It sends graphics requests and events to the XServer, which processes and displays graphics output on the screen. X Client may be a variety of graphics applications such as a window manager, a terminal emulator, a browser, a graphics editor, etc. Each X Client only manages own graphic areas and is independent of each other. Wherein, X Client is specifically responsible for the following key tasks:
The connection X Server, X Client will try to connect to X Server through the network socket when starting up, set up the communication channel;
after the connection is successful, the X Client sends a graphic request to the X Server by utilizing the X11 protocol, which comprises creating a window, drawing a graphic, setting a color, processing an event and the like;
The X Client is responsible for receiving events from the X Server. These events include user inputs (e.g., keyboard keys, mouse clicks) and system events (e.g., window changes). X Client responds to user operation or updates interface according to the events;
The X Client uses a graphic drawing function of an X11 protocol to carry out graphic rendering according to the received request, wherein the graphic rendering comprises drawing graphic objects, texts, images and the like, packaging rendering results into an X11 protocol format, and sending the X11 protocol format to an X Server for display;
Processing event response, wherein the X Client performs corresponding processing according to the event type and content received from the X Server, for example, for keyboard events, the X Client can process text input according to ASCII codes (AMERICAN STANDARD Code for Information Interchange ) of keys;
Window management, if X Client is a graphical interface application program, it is also responsible for managing the window created by itself, including controlling the position, size, display state, etc. of the window, and handling various operations (such as moving, resizing, maximizing and minimizing, etc.) of the window;
And (3) disconnecting, namely closing a connection channel when the X Client finishes running or needs to disconnect from the X Server, releasing resources, and informing the X Server so that the X Server can clear the resources corresponding to the X Client.
Among them, common X clients include a window manager (managing window layout and operation), a terminal emulator (providing a command line terminal interface), a graphic editor (editing images and vector graphics), and a browser (browsing web pages and displaying web page contents), etc.
Further optionally, X11 includes an X Window Manager, which is a special X Client responsible for managing multiple X clients for an X server, and acts as a Window Manager. Alternatively, the X Window Manager may be XFCE (X Forms Common Environment, a lightweight Unix-like desktop system), KDE (KDesktop Environment ), or the like, which the present application is not limited to.
In this embodiment, DRM is a subsystem in the Linux kernel, which is specially used for supporting acceleration and direct rendering of graphics hardware, and provides an interface for accessing graphics card hardware, so that a user space graphics application program can directly access the graphics card hardware, and efficient graphics rendering is realized. The DRM subsystem, which includes KMS (Kernel Mode Setting, kernel-level display mode setting) and GEM (Graphics Execution Manager ), are two important components for graphics hardware management and management of Framebuffer, respectively.
The KMS is used for graphics hardware management, allows an operating system kernel to directly control display hardware such as screen resolution and display modes of images, does not need programs (such as an X Server) relying on user space, transfers tasks to the kernel through the KMS, can automatically detect and set display equipment when the kernel is started, and also allows an application program to dynamically change display settings when the kernel is started.
The GEM is used for Framebuffer management, provides an interface for graphic memory management, is specially used for allocating and managing memory buffers of graphic hardware, and is mainly used for storing graphic data and rendering results, and the GEM also provides a memory management mechanism for graphic drivers and application programs, promotes writing among the graphics drivers and the application programs, and reduces conflict and competition of graphic memory resources. Wherein, with the GEM interface, the graphics application can request graphics buffers and perform graphics rendering operations at these buffers. In addition, the GEM also supports a memory mapping function, so that an application program can directly access the graphics buffer, thereby realizing more efficient graphics rendering.
The KMS includes Framebuffer, plane (hardware layer), CRTC (display controller), encoder (encoder), connector, etc., and the relationships between the elements are as shown in fig. 6, and the following details of the working contents of the elements are described below:
framebuffer for storing image data to be displayed;
plane, for realizing a multi-layer composite display;
The CRTC is used for reading the image data to be displayed from Framebuffer and outputting the image data to Encoder according to a corresponding format;
encoder for converting the output of the CRTC into a signal suitable for a particular type of display device (e.g., HDMI, VGA, etc.);
connector refers to a physical interface with a display device for connecting the display device and transmitting the generated signal to the display device.
In this embodiment, there are various ways in which the Connector transmits the generated signal to the display device, and in an alternative embodiment, the Connector specifically implements a PCIe root device, and accordingly, the PCIe root device and the PCIe endpoint device form a video transmission channel between the main chip and the management chip as PCIe, and the PCIe root device transmits video data to the PCIe endpoint device, so that the management chip reads the video data from the PCIe endpoint device and displays the video data on a display device interconnected with the management chip, so as to implement display control on the server. In another alternative embodiment, the Connector is interconnected with the PCIe root device through the internal bus, the video data is transmitted to the PCIe root device, and then the video data is transmitted to the PCIe endpoint device through the PCIe root device, so that the management and control chip reads the video data from the PCIe endpoint device and displays the video data on the display device interconnected with the management and control chip, and display control of the server is achieved.
Accordingly, one implementation of a graphics driver is illustrated below.
As shown in fig. 7, when the bootstrap program is UEFI, the graphics driver loading process includes UEFIDXE (Driver Execution Environment ) →uefi display protocol→gop (Graphics Output Protocol ) driver.
It should be noted that the stages included in the graphics driver are only schematic, and are not representative of the graphics driver including only the stages, and are not representative of the graphics driver including the stages. The various stages of the graphics driver are described below:
UEFIDXE, performing most of the initialization work of the system, and when entering this stage, the memory is initialized. In addition, during stage UEFIDXE, enumeration of PCIe devices is performed, which refers to identifying, initializing and all PCIe devices in the system, this process ensures that each device is correctly identified and allocates resources to each device for its normal operation, during this stage PCIe endpoint devices are enumerated into a display device, thus ensuring that video data is correctly transferred to PCIe endpoint devices during the UEFI startup process. In addition, after enumeration and resource allocation are completed, the memory space of each PCIe device is determined, and the corresponding data register may be confirmed through the base address register BAR;
The UEFI display protocol is a graph output protocol and defines which video data are stored in a display cache, wherein the video data comprise video data generated by interaction events with a mouse and a keyboard during and after starting;
GOP driving is a specific implementation of a UEFI display protocol, and according to the definition of the protocol, corresponding video data is grabbed from a memory space and output to PCIe endpoint equipment.
In combination with the embodiments of the display driver and the graphics driver, as shown in fig. 8, the application further provides a server, the server comprises a main chip and a management chip which are interconnected through a PCIe bus, the main chip and the management chip are integrated on the same board, PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management chip, the main chip comprises a first processor, the first processor operates the display card driver, a specific implementation manner of the display card driver refers to the embodiment shown in fig. 5, the video data generated by the operating system in a starting process and an operating process is transmitted to the PCIe endpoint equipment through the PCIe root equipment, and a specific implementation manner of the graphics driver refers to the embodiment shown in fig. 7, the first processor operates the graphics driver, and the specific implementation manner of the graphics driver is used for acquiring video data generated by the boot program in an operating process, and transmitting the video data to the PCIe endpoint equipment through the PCIe root equipment.
The base address register BAR of the PCIe endpoint device is mapped into a memory space of the PCIe root device and used as a video transmission channel between the main chip and the management and control chip, and the main chip is specifically used for writing video data into the memory space of the PCIe root device and controlling the PCIe root device to transmit the video data in the memory space into a cache of the PCIe endpoint device through a PCIe bus.
The management and control chip comprises a second processor, wherein the second processor runs the data migration service and is used for reading video data from PCIe endpoint equipment and displaying the video data on display equipment so as to realize display control of the server.
The display device comprises a local display device, a management and control chip, a second processor and a data migration service, wherein the management and control chip further comprises a video interconnection interface which is interconnected with the local display device and a first frame buffer area which provides storage service for the local display device, the second processor is used for reading video data from a buffer of a PCIe endpoint device, writing the video data into the first frame buffer area and sending the video data in the first frame buffer area to the local display device for display through the video interconnection interface. The display device further comprises a remote display device, a Virtual Network Console (VNC) server is further arranged on the management and control chip, a second processor runs a data migration service and is used for reading video data from a cache of the PCIe endpoint device, writing the video data into a second frame cache area of the VNC server, controlling the VNC server to transmit the video data to the remote display device for display through a video data network, and a VNC client is run on the remote display device.
The management and control chip is further provided with a USB interface which is connected with external interaction equipment, the external interaction equipment comprises a keyboard and/or a mouse, the management and control chip is also connected with the main chip through a USB bus, a USB equipment controller is deployed on the management and control chip and is used for acquiring interaction events generated by the external interaction equipment and transmitting the interaction events to the main chip through the USB bus, and a USB host controller is deployed on the main chip and is used for receiving the interaction events and responding to the interaction events.
The embodiment of the application also provides a management and control chip which is applied to the server and is interconnected with the main chip of the server through a PCIe bus, PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, the management and control chip is used for reading video data from the PCIe endpoint equipment and displaying the video data on display equipment interconnected with the management and control chip to realize display control of the server, wherein the video data is generated by the server in the starting and/or running process and is transmitted to the PCIe endpoint equipment through the PCIe root equipment by the main chip.
In an alternative embodiment, the management and control chip is provided with a data migration service, and the management and control chip comprises a processor, and the processor runs the data migration service and is used for reading video data from PCIe endpoint equipment and displaying the video data on display equipment so as to realize display control of the server.
In an alternative embodiment, the display device comprises a local display device, the management and control chip further comprises a video interconnection interface which is interconnected with the local display device and a first frame buffer area which provides storage service for the local display device, and the processor is particularly used for reading video data from a buffer of the PCIe endpoint device, writing the video data into the first frame buffer area and sending the video data in the first frame buffer area to the local display device for display through the video interconnection interface.
In an alternative embodiment, the control chip comprises a serial interface which is interconnected with external interaction equipment, the external interaction equipment comprises a keyboard and/or a mouse, the control chip is also interconnected with the main chip through a serial bus, the serial interface and the serial bus belong to the same serial bus protocol, and a processor in the control chip is also used for acquiring interaction events generated by the external interaction equipment and transmitting the interaction events to the main chip through the serial bus so as to enable the main chip to respond to the interaction events and realize interaction control of the server.
In an alternative embodiment, the serial interface is a universal serial bus USB interface and the serial bus is a USB bus.
The embodiment of the application also provides a main chip which is applied to the server, wherein the main chip is interconnected with the management and control chip of the server through a PCIe bus, PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, and the main chip is used for acquiring video data generated by the server in the starting and/or running process and transmitting the video data to the PCIe endpoint equipment through the PCIe root equipment so as to enable the management and control chip to read the video data from the PCIe endpoint equipment and display the video data on display equipment interconnected with the management and control chip, thereby realizing the display control of the server.
In an alternative embodiment, the operating system of the server comprises a display card driver, the main chip comprises a processor, the processor runs the display card driver and is used for acquiring video data generated by the operating system in a starting process and a running process, transmitting the video data to the PCIe endpoint device through the PCIe root device, and/or the boot program of the server comprises a graphic driver, and the processor runs the graphic driver and is used for acquiring the video data generated by the boot program in the running process and transmitting the video data to the PCIe endpoint device through the PCIe root device.
Correspondingly, the embodiment of the application provides a server board card, wherein a main chip and a management and control chip are integrated on the server board card, and the main chip and the management and control chip are interconnected through a PCIe bus;
The system comprises a main chip, a management and control chip and a control chip, wherein the main chip is used for acquiring video data generated by a server in the starting and/or running process, transmitting the video data to PCIe endpoint equipment through PCIe root equipment, and the control chip is used for reading the video data from the PCIe endpoint equipment and displaying the video data on display equipment interconnected with the control chip so as to realize display control of the server.
In an alternative embodiment, the control chip is provided with a serial interface for interconnecting external interaction equipment, wherein the external interaction equipment comprises a keyboard and/or a mouse, the control chip is also interconnected with the main chip through a serial bus, the serial interface and the serial bus belong to the same serial bus protocol, the control chip is also used for acquiring interaction events generated by the external interaction equipment and transmitting the interaction events to the main chip through the serial bus, and the main chip is also used for receiving the interaction events and responding to the interaction events so as to realize interaction control of the server.
As shown in fig. 9, the embodiment of the application further provides a server management and control method, which is applied to a main chip in the server, wherein the main chip is connected with a management and control chip through a PCIe bus, PCIe root equipment and PCIe endpoint equipment are respectively implemented on the main chip and the management and control chip, and form a video transmission channel between the main chip and the management and control chip, and the method comprises the following steps:
S901, acquiring video data generated by a server in the starting and/or running process;
And S902, transmitting the video data to PCIe endpoint equipment through PCIe root equipment so that the control chip can read the video data from the PCIe endpoint equipment and display the video data on display equipment interconnected with the control chip, thereby realizing display control of the server.
In an alternative embodiment, the base address register BAR of the PCIe endpoint device is mapped into the memory space of the PCIe root device and used as a video transmission channel between the main chip and the management chip, and video data is transmitted to the PCIe endpoint device through the PCIe root device, and the method comprises the steps of writing the video data into the memory space of the PCIe root device and controlling the PCIe root device to transmit the video data in the memory space into a cache of the PCIe endpoint device through a PCIe bus.
As shown in fig. 10, the embodiment of the application further provides a server management and control method, which is applied to a management and control chip in a server, wherein the management and control chip is connected with a main chip through a PCIe bus, PCIe root equipment and PCIe endpoint equipment are respectively implemented on the main chip and the management and control chip, and form a video transmission channel between the main chip and the management and control chip, and the method comprises the following steps:
S1001, video data are read from PCIe endpoint equipment, the video data are generated by a server in the starting and/or running process and transmitted to the PCIe endpoint equipment by a main chip through PCIe root equipment;
S1002, displaying the video data on display equipment interconnected with a control chip to realize display control of the server.
In an alternative embodiment, the display device comprises a local display device, and the video data is displayed on the display device interconnected with the management and control chip, and the method comprises the steps of reading the video data from a cache of the PCIe endpoint device, writing the video data into a first frame cache area corresponding to the local display device, and sending the video data in the first frame cache area to the local display device for display through a video interconnection interface.
In an alternative embodiment, the display device comprises a remote display device, the video data is displayed on the display device interconnected with the management and control chip, the method comprises the steps of reading the video data from a cache of the PCIe endpoint device, writing the video data into a second frame cache area corresponding to the VNC server, and controlling the VNC server to transmit the video data to the remote display device for display through a video data network, wherein a VNC client is operated on the remote display device.
In an alternative embodiment, the method further comprises the steps of obtaining interaction events generated by external interaction equipment interconnected with the control chip, and transmitting the interaction events to the main chip through a serial bus between the control chip and the main chip so that the main chip responds to the interaction events to realize interaction control of the server.
The detailed implementation and the beneficial effects of each step in the method of this embodiment have been described in the foregoing embodiments, and will not be described in detail herein.
It should be noted that, the execution subjects of each step of the method provided in the above embodiment may be the same device, or the method may also be executed by different devices. For example, the execution subject of step 901 to step 902 may be device a, and for example, the execution subject of step 901 may be device a, the execution subject of step 902 may be device B, and so on.
In addition, in some of the flows described in the above embodiments and the drawings, a plurality of operations appearing in a specific order are included, but it should be clearly understood that the operations may be performed out of the order in which they appear herein or performed in parallel, the sequence numbers of the operations such as 901, 902, etc. are merely used to distinguish between the various operations, and the sequence numbers themselves do not represent any order of execution. In addition, the flows may include more or fewer operations, and the operations may be performed sequentially or in parallel. It should be noted that, the descriptions of "first" and "second" herein are used to distinguish different messages, devices, modules, etc., and do not represent a sequence, and are not limited to the "first" and the "second" being different types.
Accordingly, embodiments of the present application also provide a computer-readable storage medium storing a computer program which, when executed by a processor, causes the processor to implement the steps of the method embodiments described above.
Accordingly, embodiments of the present application also provide a computer program product comprising a computer program/instructions which, when executed by a processor, cause the processor to carry out the steps of the above-described method embodiments.
The Memory may be implemented by any type or combination of volatile or non-volatile Memory devices, such as Static Random-Access Memory (SRAM), electrically erasable programmable Read-Only Memory (ELECTRICALLY ERASABLE PROGRAMMABLE READ ONLY MEMORY, EEPROM), erasable programmable Read-Only Memory (Erasable Programmable Read Only Memory, EPROM), programmable Read-Only Memory (Programmable Read-Only Memory, PROM), read-Only Memory (ROM), magnetic Memory, flash Memory, magnetic disk, or optical disk.
The communication component is configured to facilitate wired or wireless communication between the device in which the communication component is located and other devices. The device where the communication component is located can access a wireless network based on a communication standard, such as a mobile communication network of WiFi,2G, 3G, 4G/LTE, 5G, etc., or a combination thereof. In one exemplary embodiment, the communication component receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, the Communication component further includes a Near Field Communication (NFC) module to facilitate short range communications. For example, in the NFC module, it may be implemented based on radio frequency identification (Radio Frequency Identification, RFID) technology, infrared data Association (IrDA) technology, ultra Wide Band (UWB) technology, blueTooth (BT) technology, and other technologies.
The display includes a screen, which may include a Liquid crystal display (Liquid CRYSTAL DISPLAY, LCD) and a Touch Panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from a user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensor may sense not only the boundary of a touch or sliding action, but also the duration and pressure associated with the touch or sliding operation.
The power supply component provides power for various components of equipment where the power supply component is located. The power components may include a power management system, one or more power sources, and other components associated with generating, managing, and distributing power for the devices in which the power components are located.
The audio component described above may be configured to output and/or input an audio signal. For example, the audio component includes a Microphone (MIC) configured to receive external audio signals when the device in which the audio component is located is in an operational mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signal may be further stored in a memory or transmitted via a communication component. In some embodiments, the audio assembly further comprises a speaker for outputting audio signals.
It will be appreciated by those skilled in the art that embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-readable storage media (including, but not limited to, magnetic disk storage, CD-ROM (Compact Disc Read-Only Memory), optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In one typical configuration, a computing device includes one or more processors (Central Processing Unit, CPUs), input/output interfaces, network interfaces, and memory.
The memory may include volatile memory in a computer-readable medium, random access memory (Random Access Memory, RAM) and/or non-volatile memory, etc., such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
Computer readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of storage media for a computer include, but are not limited to, phase-change memory (Phase-change Random Access Memory, PRAM), static Random Access Memory (SRAM), dynamic random access memory (Dynamic Random Access Memory, DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital versatile disks (Digital Video Disc, DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices, or any other non-transmission medium, which can be used to store information that can be accessed by a computing device. Computer-readable media, as defined herein, does not include transitory computer-readable media (transmission media), such as modulated data signals and carrier waves.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises an element.
The foregoing is merely exemplary of the present application and is not intended to limit the present application. Various modifications and variations of the present application will be apparent to those skilled in the art. Any modification, equivalent replacement, improvement, etc. which come within the spirit and principles of the application are to be included in the scope of the claims of the present application.

Claims (19)

1. The server is characterized by comprising a main chip and a management and control chip which are interconnected through a PCIe bus, wherein PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, and the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip;
the main chip is used for acquiring video data generated by the server in the starting and/or running process and transmitting the video data to the PCIe endpoint device through the PCIe root device;
and the management and control chip is used for reading the video data from the PCIe endpoint device and displaying the video data on a display device which is interconnected with the management and control chip so as to realize the display control of the server.
2. The server of claim 1, wherein the operating system of the server comprises a graphics card driver, wherein the master chip comprises a first processor, wherein the first processor runs the graphics card driver and is used for acquiring video data generated by the operating system in a starting process and a running process and transmitting the video data to the PCIe endpoint device through the PCIe root device;
and/or
The first processor runs the graphic driver and is used for acquiring video data generated by the bootstrap program in the running process and transmitting the video data to the PCIe endpoint device through the PCIe root device.
3. The server of claim 1, wherein the management and control chip has a data migration service disposed thereon, the management and control chip including a second processor, the second processor running the data migration service for reading the video data from the PCIe endpoint device and displaying the video data on the display device to implement display control of the server.
4. The server of claim 3, wherein the display device comprises a local display device, wherein the management and control chip further comprises a video interconnect interface interconnected with the local display device, and a first frame buffer area providing storage services for the local display device;
The second processor runs the data migration service, and is configured to read the video data from the cache of the PCIe endpoint device, write the video data into the first frame cache area, and send the video data in the first frame cache area to the local display device through the video interconnection interface for display;
And/or the number of the groups of groups,
The display device comprises a remote display device, wherein a Virtual Network Console (VNC) server is also arranged on the control chip;
The second processor operates the data migration service, and is configured to read the video data from the cache of the PCIe endpoint device, write the video data into a second frame cache area of the VNC server, control the VNC server to transmit the video data to the remote display device through the network for display, and operate a VNC client on the remote display device.
5. The server of claim 1, wherein the control chip comprises a serial interface interconnected with an external interaction device, the external interaction device comprising a keyboard and/or a mouse, the control chip further being interconnected with the master chip via a serial bus, the serial interface and the serial bus belonging to a same serial bus protocol;
The management and control chip is also used for acquiring an interaction event generated by the external interaction device and transmitting the interaction event to the main chip through the serial bus;
The main chip is also used for receiving the interaction event and responding to the interaction event so as to realize interaction control on the server.
6. The server of claim 5, wherein the serial interface is a universal serial bus USB interface and the serial bus is a USB bus;
A USB device controller is deployed on the control chip and is used for acquiring an interaction event generated by the external interaction device and transmitting the interaction event to the main chip through the serial bus;
and the main chip is provided with a USB host controller which is used for receiving the interaction event and responding to the interaction event.
7. The server of any of claims 1-6, wherein a base address register BAR of the PCIe endpoint device is mapped into a memory space of the PCIe root device as a video transmission channel between the master chip and the management chip;
The main chip is specifically configured to write the video data into a memory space of the PCIe root device, and control the PCIe root device to transmit the video data in the memory space to a cache of the PCIe endpoint device through a PCIe bus.
8. The server is characterized by comprising a main chip and a management and control chip, wherein a bus controller and bus equipment are respectively realized on the main chip and the management and control chip, and the bus controller and the bus equipment are interconnected through a target bus to form a video transmission channel between the main chip and the management and control chip;
the main chip is used for acquiring video data generated by the server in the starting and/or running process and transmitting the video data to the bus equipment through the bus controller;
The control chip is used for reading the video data from the bus equipment and displaying the video data on display equipment which is interconnected with the control chip so as to realize display control of the server.
9. The management and control chip is applied to a server and is characterized in that the management and control chip is interconnected with a main chip of the server through a PCIe bus, PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, and the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip;
the control chip is used for reading video data from the PCIe endpoint device and displaying the video data on display equipment which is interconnected with the control chip so as to realize display control of the server;
Wherein the video data is generated by the server during startup and/or operation and transmitted by the host chip to the PCIe endpoint device via the PCIe root device.
10. The management and control chip of claim 9, wherein a data migration service is disposed on the management and control chip, and wherein the management and control chip comprises a processor, the processor running the data migration service for reading the video data from the PCIe endpoint device and displaying the video data on the display device to implement display control for the server.
11. The control chip of claim 10, wherein the display device comprises a local display device, the control chip further comprising a video interconnect interface interconnected with the local display device, and a first frame buffer area providing storage services for the local display device;
The processor is specifically configured to read the video data from the cache of the PCIe endpoint device, write the video data into the first frame cache area, and send the video data in the first frame cache area to the local display device through the video interconnection interface for display;
And/or the number of the groups of groups,
The display device comprises a remote display device, wherein a Virtual Network Console (VNC) server is also arranged on the control chip;
The processor is specifically configured to read the video data from the cache of the PCIe endpoint device, write the video data into a second frame cache area of the VNC server, and control the VNC server to transmit the video data to the remote display device for display through the network, where a VNC client is running on the remote display device.
12. The control chip according to any one of claims 9-11, wherein the control chip comprises a serial interface interconnected with an external interaction device, the external interaction device comprising a keyboard and/or a mouse, the control chip further being interconnected with the master chip by a serial bus, the serial interface and the serial bus belonging to the same serial bus protocol;
The processor in the control chip is further used for acquiring an interaction event generated by the external interaction device, transmitting the interaction event to the main chip through the serial bus, and enabling the main chip to respond to the interaction event so as to realize interaction control on the server.
13. The main chip is applied to a server and is characterized in that the main chip is interconnected with a management and control chip of the server through a PCIe bus, PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, and the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip;
The main chip is used for acquiring video data generated in the starting and/or running process of the server, transmitting the video data to the PCIe endpoint device through the PCIe root device, so that the control chip reads the video data from the PCIe endpoint device and displays the video data on a display device interconnected with the control chip, and display control of the server is realized.
14. The server board card is characterized in that a main chip and a management and control chip are integrated on the server board card, and the main chip and the management and control chip are interconnected through a PCIe bus; PCIe root equipment and PCIe endpoint equipment are respectively implemented on the main chip and the management and control chip, where the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip;
the main chip is used for acquiring video data generated by the server in the starting and/or running process and transmitting the video data to the PCIe endpoint device through the PCIe root device;
and the management and control chip is used for reading the video data from the PCIe endpoint device and displaying the video data on a display device which is interconnected with the management and control chip so as to realize the display control of the server.
15. A server management and control method is characterized by being applied to a main chip in a server, wherein the main chip passes through a PCIe bus and a management and control chip, PCIe root equipment and PCIe endpoint equipment are respectively realized on the main chip and the management and control chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, and the method comprises the following steps:
acquiring video data generated by the server in the starting and/or running process;
And transmitting the video data to the PCIe endpoint device through the PCIe root device, so that the management and control chip reads the video data from the PCIe endpoint device and displays the video data on a display device interconnected with the management and control chip, thereby realizing the display control of the server.
16. A server management and control method is characterized by being applied to a management and control chip in a server, wherein the management and control chip is used for realizing PCIe root equipment and PCIe endpoint equipment on the main chip and the management and control chip respectively through a PCIe bus and a main chip, the PCIe root equipment and the PCIe endpoint equipment form a video transmission channel between the main chip and the management and control chip, and the method comprises the following steps:
Reading video data from the PCIe endpoint device, the video data generated by the server during startup and/or operation and transmitted by the master chip to the PCIe endpoint device via the PCIe root device;
and displaying the video data on display equipment interconnected with the control chip to realize display control of the server.
17. The method of claim 16, wherein the display device comprises a local display device, and wherein displaying the video data on a display device interconnected with the management and control chip comprises:
reading the video data from the cache of the PCIe endpoint device, and writing the video data into a first frame cache area corresponding to the local display device; transmitting the video data in the first frame buffer area to the local display equipment through the video interconnection interface for display;
and/or the display device comprises a remote display device, and the video data is displayed on the display device which is interconnected with the control chip, and the method comprises the following steps:
Reading the video data from the cache of the PCIe endpoint device, and writing the video data into a second frame cache area corresponding to the VNC server; and controlling the VNC server to transmit the video data network to the remote display equipment for display, wherein a VNC client is operated on the remote display equipment.
18. A computer readable storage medium storing a computer program/instructions which, when executed by a processor, cause the processor to carry out the steps of the method of any one of claims 15 to 17.
19. A computer program product comprising computer programs/instructions which, when executed by a processor, cause the processor to carry out the steps of the method of any of claims 15-17.
CN202410252316.3A 2024-03-05 2024-03-05 Server management and control method, device, storage medium and program product Pending CN120596045A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202410252316.3A CN120596045A (en) 2024-03-05 2024-03-05 Server management and control method, device, storage medium and program product
PCT/IB2025/050627 WO2025186631A1 (en) 2024-03-05 2025-01-22 Server management and control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410252316.3A CN120596045A (en) 2024-03-05 2024-03-05 Server management and control method, device, storage medium and program product

Publications (1)

Publication Number Publication Date
CN120596045A true CN120596045A (en) 2025-09-05

Family

ID=96882658

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410252316.3A Pending CN120596045A (en) 2024-03-05 2024-03-05 Server management and control method, device, storage medium and program product

Country Status (2)

Country Link
CN (1) CN120596045A (en)
WO (1) WO2025186631A1 (en)

Also Published As

Publication number Publication date
WO2025186631A1 (en) 2025-09-12

Similar Documents

Publication Publication Date Title
US11307823B2 (en) Multi-display based device
CN103329094B (en) cross-context redirection
JP7346606B2 (en) Screen sharing processing method, device, equipment and storage medium
US9678810B2 (en) Multi-operating system
CN112764872B (en) Computer device, virtualization acceleration device, remote control method, and storage medium
CN103339600B (en) Immediate telepresence
KR102631745B1 (en) Method for controlling the execution of different operating systems, electronic device and storage medium therefor
CN103106109B (en) Mobile device and method for running two platform systems or application programs on mobile device
CN103226454B (en) A kind of method and system realizing multihead display
CN107783818A (en) Deep learning task processing method, device, equipment and storage medium
CN116257320B (en) DPU-based virtualization configuration management method, device, equipment and medium
CN107479957A (en) Multi-system application switching method, device, equipment and storage medium
US11055154B2 (en) Screen-shooting method and device for guest operating system in computer apparatus
US20050021870A1 (en) Modular presentation device with network connection for use with PDA's and Smartphones
CN109936716B (en) Display driving realization method and system
US20140351833A1 (en) Multi-computing environment operating on a single native operating system
US20040230668A1 (en) Modular presentation device for use with PDA's and Smartphones
CN111026463B (en) Page loading method, device, equipment and storage medium
CN107181981A (en) Method, device, television and system for upgrading television through external equipment
CN120596045A (en) Server management and control method, device, storage medium and program product
KR102678121B1 (en) Electronic device and method for container screen mirroring
CN116185905A (en) Video memory access method, device, system, storage medium and program product
CN114489544A (en) Display method, intelligent interaction all-in-one machine, computer equipment and storage medium
CN113835816A (en) Virtual machine desktop display method, device, equipment and readable storage medium
WO2019127475A1 (en) Method and apparatus for implementing virtual sim card, storage medium, and electronic device

Legal Events

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