Memory management method, device, computer equipment and storage medium

By generating the setting options in the settings interface, users can automatically manage server memory, solve the problem of time and effort of manual insertion internal deposits, and improve the efficiency of memory management.

CN118860671BActive Publication Date: 2025-01-24INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411340328.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-25
Publication Date
2025-01-24
Estimated Expiration
2044-09-25

AI Technical Summary

Technical Problem

In the prior art, when managing server memory, it is necessary to manually plug and unplug the memory, which leads to time-consuming and labor-intensive operation and low efficiency.

Method used

By obtaining the attribute information of the memory components in the server, the setting options in the setting interface are generated. Users can modify these options to turn on or off the memory to achieve automated management.

Benefits of technology

This method greatly simplifies the memory management process, improves operating efficiency, reduces manual plugging and unplugging steps, and is suitable for various memory stability testing requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118860671B_ABST
    Figure CN118860671B_ABST
Patent Text Reader

Abstract

The present invention relates to the technical field of servers, and discloses a memory management method, device, computer equipment and storage medium, the method comprising: obtaining attribute information of a memory component in a server; generating setting options of the memory component in a first setting interface according to the attribute information; determining the memory to be closed when a memory stability test is required for the server; modifying the setting options of the memory to be closed to a first preset value, and closing the memory to be closed. The present invention solves the problem that when managing the server memory, the memory needs to be opened / closed by manually plugging and unplugging the memory, which is time-consuming, labor-intensive and inefficient.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of servers, and in particular to a memory management method, device, computer equipment and storage medium. Background Art

[0002] Memory has a great impact on the server. The larger the memory capacity, the better the server performance. Therefore, in multi-way server products, up to 64 or 128 memory sticks will be set up when the server is fully configured to expand the server's memory capacity. Memory plays an immeasurable role in server redundancy and fault recovery. In terms of server stability, memory plays a vital role.

[0003] If a memory in a server fails, in order not to affect the normal operation of the server, other memory needs to be used to replace the failed memory. In addition, when testing the server, some memory needs to be turned off / on. In order to meet the above requirements, the memory needs to be reasonably configured and managed to improve the server performance. When performing RMT (rank margin tool, memory stability test) testing on the server's memory, it is necessary to test the stability of the memory and the performance of the server when the memory is fully configured. Similarly, it is necessary to test the stability of the memory and the performance of the server when the memory is turned on 1 / 2, 1 / 4, 1 / 8, etc. At present, the amount of memory turned on in the server is adjusted by manually plugging and unplugging the memory. However, repeatedly plugging and unplugging the configuration memory is time-consuming, labor-intensive, and inefficient for customers and testers.

[0004] Therefore, the related art has the problem that when managing the server memory, the memory needs to be turned on / off by manually plugging and unplugging the memory, which is time-consuming, labor-intensive and inefficient. Summary of the invention

[0005] In view of this, the present invention provides a memory management method, apparatus, computer equipment and storage medium to solve the problem that when managing server memory, the memory needs to be turned on / off by manually plugging and unplugging the memory, which is time-consuming, labor-intensive and inefficient.

[0006] In a first aspect, the present invention provides a memory management method, comprising:

[0007] Get the attribute information of the memory components in the server;

[0008] Generating setting options of the memory component on the first setting interface according to the attribute information;

[0009] In case of needing to test the memory stability of the server, determine the memory to be shut down;

[0010] The setting option of the memory to be closed is modified to the first preset value, and the memory to be closed is closed.

[0011] The memory management method provided in this embodiment generates setting options for memory components in the first setting interface according to the attribute information of the memory components in the server. Only by modifying the option value of the setting option can the memory component be turned on or off. This operation method saves time and effort for customers. In the case where it is necessary to perform a memory stability test on the server, the setting option of the memory to be turned off is modified to the first preset value, and the specified memory is turned off, which provides customers with a large amount of operating space and provides a more convenient and fast mechanism for managing memory. It solves the problem of manually plugging and unplugging the memory to turn on / off the memory when managing the server memory, which is time-consuming, labor-intensive and inefficient.

[0012] In some optional implementations, after closing the memory to be closed, the method further includes:

[0013] Get the total memory capacity of the server;

[0014] The memory other than the memory to be shut down in the memory component is regarded as the started memory, and whether the total memory capacity is the sum of the memory capacity of the started memory is determined;

[0015] Obtain the available memory capacity corresponding to the memory to be closed in the second setting interface;

[0016] Determine whether the available memory capacity of the memory to be closed is zero;

[0017] If the total memory capacity is the sum of the memory capacity of the started memory and the available memory capacity of the memory to be closed is zero, it is determined that the memory to be closed is closed successfully.

[0018] In this embodiment, it is determined whether the total memory capacity is the sum of the memory capacity of the started memory, and whether the available memory capacity of the memory to be closed is zero, to determine whether the memory to be closed is successfully closed. The method is simple, effective and easy to implement. In addition, by setting the available memory capacity of the memory to be closed to zero, it is ensured that the memory to be closed will not affect the test of the server.

[0019] In some optional implementations, generating setting options for the memory component on the first setting interface according to the attribute information includes:

[0020] Determine parameter information and topology information of the memory component according to the attribute information;

[0021] Parameter setting options corresponding to the parameter information and topology setting options corresponding to the topology information are generated on the first setting interface, wherein the parameter setting options and the topology setting options are included in the setting options.

[0022] In this embodiment, parameter setting options corresponding to parameter information and topology setting options corresponding to topology information are generated in the first setting interface, and users can modify the parameter information of memory components through parameter setting options and turn on or off memory components through topology setting options, which provides customers with a large operating space and a more convenient and fast mechanism for managing memory.

[0023] In some optional implementations, modifying the setting option of the memory to be closed to a first preset value, and closing the memory to be closed, includes:

[0024] Modify the topology setting option of the memory to be closed to the first preset value;

[0025] The server is configured to, when the topology setting option is the first preset value, subtract the memory capacity of the memory to be closed from the total memory capacity of the server, and modify the available memory capacity of the memory to be closed in the second setting interface to zero.

[0026] In this implementation, by setting the available memory capacity of the memory to be closed to zero, the memory capacity of the memory to be closed is subtracted from the total memory capacity of the server, thereby ensuring that the memory to be closed does not affect the test of the server.

[0027] In some optional implementations, after generating setting options for the memory component on the first setting interface according to the attribute information, the method further includes:

[0028] After the server is turned on, enter the first setting interface;

[0029] Determine whether there is a topology setting option for the memory component in the first setting interface;

[0030] If so, determining whether the topology setting option can be set to the second preset value and the first preset value;

[0031] If yes, it is determined that the setting options are generated successfully.

[0032] In some optional implementations, obtaining attribute information of a memory component in a server includes:

[0033] Performing a preset test on the memory component to obtain a test result;

[0034] Obtain attribute information of the memory component from the detection result.

[0035] In this implementation, the attribute information of the memory component in the server is obtained to facilitate the subsequent generation of setting options of the memory component according to the attribute information.

[0036] In some optional implementations, after generating setting options for the memory component on the first setting interface according to the attribute information, the method further includes:

[0037] During the server's power-on self-test phase, determine whether faulty memory is detected;

[0038] If a faulty memory is detected, modifying the topology setting option of the faulty memory in the first setting interface to a third preset value, and marking the topology setting option of the faulty memory with a preset word, wherein the preset word is used to determine that the memory component corresponding to the topology setting option is a faulty memory;

[0039] The available memory capacity of the faulty memory in the second setting interface is modified to zero, and the available memory capacity of the faulty memory is marked with a preset word.

[0040] In this embodiment, if a faulty memory is detected, the faulty memory is marked in the first setting interface and the second setting interface respectively, providing a function of dynamically identifying and marking the faulty memory, so as to facilitate the user to identify the faulty memory and repair it.

[0041] In some optional implementations, after modifying the available memory capacity of the fault memory in the second setting interface to zero and marking the available memory capacity of the fault memory with a preset word, the method further includes:

[0042] If a memory crash occurs during the server power-on self-test, enter the second setup interface;

[0043] Determine whether there is a memory component with zero available memory capacity and marked with a preset word in the second setting interface;

[0044] If it exists, the memory component with the available memory capacity of zero and marked with the word "preset" is regarded as the memory to be processed;

[0045] Determine location information of the memory to be processed, and generate an alarm message including the location information.

[0046] In this embodiment, by determining whether there is a memory component with zero available memory capacity and marked with preset words in the second setting interface, the failed memory to be processed in the server is determined, and an alarm message containing the location information of the memory to be processed is generated, which is convenient for users or server operation and maintenance personnel to quickly identify the faulty memory and repair it.

[0047] In some optional embodiments, the method further comprises:

[0048] Get the memory location silkscreen information of the memory component;

[0049] Generate a string containing silkscreen information of a memory location, and store the string in a silkscreen table, wherein the silkscreen table is used to locate the memory component.

[0050] In this embodiment, a character string containing the memory location silk screen information is stored in a silk screen table. The memory location silk screen information of the memory component can be queried in the silk screen table to determine the physical location of the memory component in the server chassis, allowing users to quickly locate the memory component in the server.

[0051] In some optional implementations, determining the location information of the memory to be processed includes:

[0052] Query the silk screen information of the memory location to be processed in the silk screen table;

[0053] The memory location silkscreen information of the memory to be processed is used as the location information.

[0054] In some optional implementations, after generating the warning information including the location information, the method further includes:

[0055] Restart the server and re-determine the memory component to be detected corresponding to the location information in the alarm information;

[0056] Re-test the memory component to be tested. If the memory component to be tested does not have a fault, modify the topology setting option of the memory component to be tested in the first setting interface to a second preset value, and delete the word preset;

[0057] The available memory capacity of the memory component to be detected in the second setting interface is modified to a fourth preset value, and the word preset is deleted.

[0058] In this embodiment, the memory component to be detected corresponding to the position information in the alarm information is re-detected to determine whether the faulty memory is repaired. If the memory component to be detected is not faulty, it means that the faulty memory is successfully repaired. The fault mark of the memory to be detected in the first setting interface and the second setting interface is deleted, and the memory to be detected is re-enabled, providing a mechanism for locating the faulty memory and repairing the faulty memory.

[0059] In some optional implementations, after closing the memory to be closed, the method further includes:

[0060] Obtaining the available memory capacity of the memory component from the second setting interface;

[0061] The memory components whose available memory capacity is not zero are used as components to be trained;

[0062] During the memory training process for the memory components, only the components to be trained are subjected to memory training.

[0063] In this embodiment, during the memory training process for memory components, memory training is only performed on components to be trained whose available memory capacity is not zero, which simplifies the memory training process, saves memory training time, and avoids wasting server resources.

[0064] In a second aspect, the present invention provides a memory management device, comprising:

[0065] An acquisition module, used to acquire attribute information of a memory component in a server;

[0066] A generating module, used for generating setting options of the memory component in the first setting interface according to the attribute information;

[0067] A determination module, used to determine the memory to be shut down when a memory stability test is required for the server;

[0068] The closing module is used to modify the setting option of the memory to be closed to the first preset value and close the memory to be closed.

[0069] In a third aspect, the present invention provides a computer device, comprising: a memory and a processor, the memory and the processor being communicatively connected to each other, the memory storing computer instructions, and the processor executing the memory management method of the first aspect or any corresponding embodiment thereof by executing the computer instructions.

[0070] In a fourth aspect, the present invention provides a computer-readable storage medium having computer instructions stored thereon, the computer instructions being used to enable a computer to execute the memory management method of the first aspect or any corresponding embodiment thereof.

[0071] In a fifth aspect, the present invention provides a computer program product, comprising computer instructions for causing a computer to execute the memory management method of the first aspect or any corresponding embodiment thereof. BRIEF DESCRIPTION OF THE DRAWINGS

[0072] In order to more clearly illustrate the specific embodiments of the present invention or the technical solutions in the related technologies, the drawings required for use in the specific embodiments or the related technical descriptions will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0073] Figure 1 is a flowchart of a memory management method according to an embodiment of the present invention;

[0074] Figure 2 is a system architecture diagram of a server basic input and output system and a server operating system according to an embodiment of the present invention;

[0075] Figure 3 is a flow chart of a method for dynamically setting memory and locating faulty memory according to an embodiment of the present invention;

[0076] Figure 4 is a flowchart of dynamic setting of RMT test memory according to an embodiment of the present invention;

[0077] Figure 5 is a flowchart of locating a memory crash instance according to an embodiment of the present invention;

[0078] Figure 6 is a structural block diagram of a memory management device according to an embodiment of the present invention;

[0079] Figure 7 It is a schematic diagram of the hardware structure of a computer device according to an embodiment of the present invention. DETAILED DESCRIPTION

[0080] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.

[0081] Memory plays an inestimable role in server redundancy and fault recovery. In terms of server stability, memory plays an important role. When a memory fails, other storage modules need to be used to replace the failed memory. Therefore, reasonable configuration and management of memory can improve server performance. How to conveniently manage memory and allow customers to more conveniently operate and control memory is the key to improving server memory performance, especially when performing RMT testing on four-way and eight-way servers. The original method is to rely on manual plugging and unplugging of memory to turn on or off memory. Since the server has 64, 128 or more memory sticks when the memory is fully configured, manual plugging and unplugging of memory is a huge task. After testing the memory stability of the server when the memory is fully configured, unplug half of the memory, and then test the memory stability of the server when the memory is half configured. Then test the memory combination of 1 / 4 and 1 / 8 DIMM (Dual-Inline-Memory-Modules) later, because the server is generally packaged as a whole machine, especially for four-way or eight-way fully configured servers, repeatedly plugging and unplugging configuration memory is particularly time-consuming and labor-intensive for customers and testers. In addition, the data integrity and efficiency of the server are important indicators for evaluating the performance of the server. The BIOS (basic input output system) interface of the servers on the market does not yet involve the function of flexibly setting the memory capacity and dynamically identifying and marking faulty memory.

[0082] Based on the above content, an embodiment of the present invention provides a memory management method, which adds options including single memory capacity, memory location, memory speed, topology setting, etc. in the BIOS Setup interface, and dynamically turns on or off the memory by setting the topology setting option to Enable and Disable. When this option is turned on, it means that the memory at the corresponding position is in place. When it is turned off, the memory at the corresponding position is disabled, and the memory capacity is set to 0 accordingly. The total memory capacity of the server also needs to be changed to the total capacity minus the memory capacity turned off. The memory at the corresponding position in the corresponding BMC Web (Baseboard Management Controller World Wide Web, baseboard management controller system webpage) interface should also be displayed as 0 memory capacity to determine that the memory at this position is not in place. Adding this switch in the BIOS, if half-allocation or 1 / 4 memory is set, then only the memory switch at a specific position needs to be set to Disable. This operation mode saves time and effort for customers. By adding the option of a single memory attribute switch, a large amount of operating space is provided to customers for reasonable configuration of memory, so as to achieve the effect of providing a more convenient and fast mechanism for managing memory and locating faulty memory.

[0083] According to an embodiment of the present invention, a memory management embodiment is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer device with data processing capabilities, such as a computer, a server, etc., and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0084] In this embodiment, a memory management method is provided, which can be used in the above-mentioned computer device. Figure 1 is a flowchart of a memory management method according to an embodiment of the present invention. Figure 1 As shown, the process includes the following steps:

[0085] Step S101, obtaining attribute information of a memory component in a server.

[0086] Specifically, the attribute information includes: memory capacity, memory location, memory speed, topology, etc. The server BIOS system obtains memory attributes such as the speed of the memory component and the memory capacity from the SPD (Serial Presence Detect) result of the memory component, where SPD is a standardized way to access information about the memory component.

[0087] It should be noted that the BIOS system is responsible for initializing the hardware and loading the operating system (OS) during the server startup process. During this process, the BIOS system communicates with the SPD component through the SMBus (System Management Bus) interface to read the information stored in the SPD component, including the capacity, speed, type, etc. of the memory. The SPD component is an EEPROM (Electrically Erasable Programmable Read-Only Memory) located on the memory component, which is used to store the configuration information of the memory component in the above SPD results, including but not limited to the memory capacity, memory location, memory speed, topological relationship, memory type (such as DDR3, DDR4, etc.), manufacturer, serial number, etc. of the memory component.

[0088] The server BIOS system is responsible for hardware self-test, initialization, and loading the boot program when the server starts. Figure 2 As shown in the figure, the hardware architecture of the server BIOS system mainly involves the BIOS chip, CMOS (Complementary Metal Oxide Semiconductor) memory, system bus, and input / output (I / O) devices. The BIOS chip is used to store the program of the server BIOS system. The BIOS chip is located on the motherboard and is usually a read-only programmable memory (ROM) chip. The CMOS memory is used to save system configuration information, such as date, time, hardware configuration, etc. The server BIOS system communicates with other components of the server through the system bus, such as data transmission and control between the CPU (Central Processing Unit), memory, disk / storage devices, I / O devices, SPD components, etc. The server BIOS system ensures that these devices are in an available state at startup and loads the necessary drivers or configuration information. The system bus is, for example, the SMBus bus.

[0089] Step S102: Generate setting options for the memory component on a first setting interface according to the attribute information.

[0090] Specifically, the first setting interface is, for example, a BIOS Setup interface. The server BIOS system sets a start flag and an end flag in the BIOS Setup interface, and updates the attribute information of the memory component to a specified location in the BIOS Setup interface in the form of a BIOS option. The specified location is set according to actual needs. Figure 3As shown, memory properties such as memory speed and memory capacity are obtained from the SPD of the memory; by setting the start flag and the end flag, the memory property information is updated to the specified position of the Setup interface in the form of a BIOS option.

[0091] Step S103, when it is necessary to perform a memory stability test on the server, determine the memory to be closed.

[0092] Specifically, when it is necessary to perform an RMT test (memory stability test) on the server, it is necessary to test the memory stability and server performance when the server is fully configured with memory. Similarly, it is necessary to test the memory stability and server performance when the server is enabled with 1 / 2, 1 / 4, 1 / 8, etc. RMT testing is usually performed by the server OS system (operating system) or a dedicated RMT testing tool. The server OS system or RMT testing tool can start the RMT test to check the reliability, stability and performance of the memory. After the test is completed, a test report will be generated to provide information on the health status of the memory.

[0093] When testing the memory stability and performance of the server when the memory is fully configured, all memory components need to be turned on, and there is no need to turn off memory components. When testing the memory stability and performance of the server when 1 / 2 of the memory is turned on, half of the memory components in the server need to be turned off. The half of the memory components that need to be turned off are the memory to be turned off. The memory to be turned off can be set according to actual needs or randomly selected. In addition, when testing the memory stability and performance of the server when 1 / 4, 1 / 8 of the memory is turned on, 3 / 4, 7 / 8 of the memory components need to be turned off accordingly. The memory to be turned off can be set according to actual needs or randomly selected. Therefore, before performing a memory stability test on the server, the server OS system will determine the memory components that need to be turned off, namely the memory to be turned off.

[0094] Step S104, modifying the setting option of the memory to be closed to a first preset value, and closing the memory to be closed.

[0095] Specifically, the first preset value is, for example, Disable. After the server OS system determines the memory to be closed, it instructs the BIOS system to change the option value of the setting option of the memory to be closed in the BIOS Setup interface to Disable, closes the memory to be closed, saves the changes and restarts the server. The server OS system and the server BIOS system are system components at two different levels and cannot directly transmit data. Therefore, the server OS system can first control the server BMC to write the information of the memory to be closed into the SPD component. After the BIOS system starts, it will read the memory to be closed from the SPD component and then close it.

[0096] The server operating system (OS system) is the core software for managing computer hardware and software resources. Its hardware architecture is relatively complex, such as Figure 2 As shown, the server OS system runs on the CPU, memory, and disk / storage devices to manage all hardware resources. The CPU is the core component of the server, responsible for executing program instructions and processing data. The server OS system manages the computer's resources through the CPU. The memory is a storage device used in the server to temporarily store data and programs. The server OS system needs memory to load and execute programs. The disk / storage device is used to permanently store data and programs. The server OS system manages the data on these storage devices through the file system. The server OS system can also interact with I / O devices through corresponding drivers and is responsible for managing the input and output operations of these devices, including keyboards, mice, monitors, printers, etc. The server OS system can send control instructions to the server BMC to control the server BMC to write the information of the memory to be closed to the SPD component. After the BIOS system is started, it will read the memory to be closed from the SPD component and then close it.

[0097] The above process is as follows Figure 4 As shown, perform RMT test, perform half-configuration memory configuration, boot into the Setup interface, and set the option value of the half-configuration memory to be closed to Disable; after the setting is completed, save and restart.

[0098] The memory management method provided in this embodiment generates setting options for memory components in the first setting interface according to the attribute information of the memory components in the server. Only by modifying the option value of the setting option can the memory component be turned on or off. This operation method saves time and effort for customers. In the case where it is necessary to perform a memory stability test on the server, the setting option of the memory to be turned off is modified to the first preset value, and the specified memory is turned off, which provides customers with a large amount of operating space and provides a more convenient and fast mechanism for managing memory. It solves the problem of manually plugging and unplugging the memory to turn on / off the memory when managing the server memory, which is time-consuming, labor-intensive and inefficient.

[0099] In some optional implementations, after closing the memory to be closed, the method further includes:

[0100] Get the total memory capacity of the server;

[0101] The memory other than the memory to be shut down in the memory component is regarded as the started memory, and whether the total memory capacity is the sum of the memory capacity of the started memory is determined;

[0102] Obtain the available memory capacity corresponding to the memory to be closed in the second setting interface;

[0103] Determine whether the available memory capacity of the memory to be closed is zero;

[0104] If the total memory capacity is the sum of the memory capacity of the started memory and the available memory capacity of the memory to be closed is zero, it is determined that the memory to be closed is closed successfully.

[0105] Specifically, the setting option of the memory to be closed is modified to the first preset value, and the memory to be closed is closed. The total memory capacity of the server also needs to be changed to the total capacity minus the closed memory capacity.

[0106] The memory other than the memory to be shut down in the memory component is taken as the started memory. The server OS system obtains the total memory capacity of the current server and determines whether the total memory capacity is the sum of the memory capacity of the started memory. If the total memory capacity is greater than the sum of the memory capacity of the started memory, it means that the memory to be shut down is not completely shut down. If the total memory capacity is less than the sum of the memory capacity of the started memory, it means that the server is faulty. If the total memory capacity is less than the sum of the memory capacity of the started memory, it means that the memory to be shut down has been completely shut down.

[0107] The second setting interface is, for example, the BMC Web interface. The second setting interface will display the available memory of each memory component in the server. If the memory component is turned off, the available memory of the memory component in the second setting interface is zero. If the memory component is turned on, the available memory of the memory component in the second setting interface can be set according to actual needs, which is 0 to 100% of the memory capacity of the memory component.

[0108] The server OS system accesses the second setting interface, obtains the available memory capacity corresponding to the memory to be closed in the second setting interface, and determines whether the available memory capacity of the memory to be closed is zero. If not zero, it means that the memory to be closed is not completely closed.

[0109] If the total memory capacity is the sum of the memory capacity of the started memory and the available memory capacity of the memory to be closed is zero, it is determined that the memory to be closed is closed successfully.

[0110] In this embodiment, it is determined whether the total memory capacity is the sum of the memory capacity of the started memory, and whether the available memory capacity of the memory to be closed is zero, to determine whether the memory to be closed is successfully closed. The method is simple, effective and easy to implement. In addition, by setting the available memory capacity of the memory to be closed to zero, it is ensured that the memory to be closed will not affect the test of the server.

[0111] In some optional implementations, generating setting options for the memory component on the first setting interface according to the attribute information includes:

[0112] Determine parameter information and topology information of the memory component according to the attribute information;

[0113] Parameter setting options corresponding to the parameter information and topology setting options corresponding to the topology information are generated on the first setting interface, wherein the parameter setting options and the topology setting options are included in the setting options.

[0114] Specifically, the server BIOS system determines the parameter information and topology information of the memory component based on the attribute information, and the parameter information is, for example, attribute information such as memory capacity, memory location, memory speed, etc. The topology information is whether the memory component is connected to the server and whether the memory component is in place. The server BIOS system sets the start flag and end flag of each parameter information respectively, and generates parameter setting options corresponding to the parameter information in the first setting interface, such as memory capacity option, memory speed option, etc. The parameter information of the memory component can be set through the parameter setting options.

[0115] The server BIOS system generates a topology setting option corresponding to the topology information on the first setting interface. The topology setting option can be set to two values, namely: a first preset value and a second preset value. The first preset value is, for example, Disable, and the second preset value is, for example, Enable. When the topology setting option is the first preset value, the corresponding memory component is turned off. When the topology setting option is the second preset value, the corresponding memory component is turned on.

[0116] The above process is as follows Figure 3 As shown, the memory topology information is displayed in the specified interface in the form of options and its option value can be modified to Disable or Enable.

[0117] In this embodiment, parameter setting options corresponding to parameter information and topology setting options corresponding to topology information are generated in the first setting interface, and users can modify the parameter information of memory components through parameter setting options and turn on or off memory components through topology setting options, which provides customers with a large operating space and a more convenient and fast mechanism for managing memory.

[0118] In some optional implementations, modifying the setting option of the memory to be closed to a first preset value, and closing the memory to be closed, includes:

[0119] Modify the topology setting option of the memory to be closed to the first preset value;

[0120] The server is configured to, when the topology setting option is the first preset value, subtract the memory capacity of the memory to be closed from the total memory capacity of the server, and modify the available memory capacity of the memory to be closed in the second setting interface to zero.

[0121] Specifically, the first preset value is, for example, Disable. The server BIOS system modifies the topology setting option of the memory to be disabled to the first preset value, and disables the memory to be disabled. The server BIOS system writes the above operation into the BIOS log.

[0122] When the server OS system reads the BIOS log and determines that the topology setting option is modified to the first preset value, the server OS system disables the memory to be disabled and changes the available memory capacity of the memory to be disabled in the second setting interface to zero. In addition, the total memory capacity of the server also needs to be converted to the total capacity minus the memory capacity of the memory to be disabled. Figure 3 As shown, turn off the specified memory, set the option value to Disable, save the changes and restart the server.

[0123] like Figure 2 As shown, the BIOS log is a collection of a series of events and error information recorded by the server BIOS system during the startup process, including: hardware device status change information, self-test (POST) information, event information during the startup process, system error information, server BIOS system operation information, etc. The server BIOS system can save the BIOS log in a non-volatile memory, a flash memory chip, and a specific storage area. The server OS system can use the tools provided by the operating system or third-party software to obtain the BIOS log, for example: use the Event Viewer to view and export BIOS-related event logs, which usually contain important information recorded by the BIOS during the startup process, such as hardware failures, startup events, etc. Use the dmesg command to view the kernel log, which sometimes contains BIOS alarm information. By running the dmesg | grep -i "bios" command, you can filter out log entries related to the BIOS. The server OS system reads the BIOS log to determine whether the topology setting option is modified to the first preset value.

[0124] In this implementation, by setting the available memory capacity of the memory to be closed to zero, the memory capacity of the memory to be closed is subtracted from the total memory capacity of the server, thereby ensuring that the memory to be closed does not affect the test of the server.

[0125] In some optional implementations, after generating setting options for the memory component on the first setting interface according to the attribute information, the method further includes:

[0126] After the server is turned on, enter the first setting interface;

[0127] Determine whether there is a topology setting option for the memory component in the first setting interface;

[0128] If so, determining whether the topology setting option can be set to the second preset value and the first preset value;

[0129] If yes, it is determined that the setting options are generated successfully.

[0130] Specifically, the first setting interface is, for example, a BIOS Setup interface. After the server is powered on, the BIOS Setup interface is entered, and the server BIOS system determines whether the memory topology information is displayed in the form of an option at a specified location, that is, whether there is a topology setting option for the memory component in the first setting interface.

[0131] The first preset value is, for example, Disable, and the second preset value is, for example, Enable. If there is a topology setting option, the server BIOS system further determines whether the topology setting option can be set to the second preset value and the first preset value, and if so, determines that the setting option is generated successfully. The topology setting option can be set to the first preset value to turn off the corresponding memory component, or the topology setting option can be set to the second preset value to turn on the corresponding memory component.

[0132] In some optional implementations, obtaining attribute information of a memory component in a server includes:

[0133] Performing a preset test on the memory component to obtain a test result;

[0134] Obtain attribute information of the memory component from the detection result.

[0135] Specifically, the preset detection is, for example, SPD detection. SPD is a standardized way to access information about memory components. Performing SPD detection on memory components is a key step in the server BIOS system to perform the POST phase on the server. Performing SPD detection on memory components to obtain SPD detection results of memory components, and obtaining attribute information such as memory speed and memory capacity from the SPD of the memory. Attribute information includes, for example, memory capacity, memory location, memory speed, topological relationship, etc.

[0136] The process of the server BIOS system obtaining attribute information from the SPD of the memory component may include: the server BIOS system initializes the server hardware, such as: CPU, memory controller, etc.; configures the SMBus to ensure that the server BIOS system can correctly read the information in the SPD component; the SPD component on each memory component has a fixed address, and the server BIOS system addresses the SPD chip through the SMBus and reads the SPD data. The reading operation generally adopts a byte-by-byte reading or batch reading method; the server BIOS system parses the read SPD data and extracts the attribute information of the memory component.

[0137] In this implementation, the attribute information of the memory component in the server is obtained to facilitate the subsequent generation of setting options of the memory component according to the attribute information.

[0138] In some optional implementations, after generating setting options for the memory component on the first setting interface according to the attribute information, the method further includes:

[0139] During the server's power-on self-test phase, determine whether faulty memory is detected;

[0140] If a faulty memory is detected, modifying the topology setting option of the faulty memory in the first setting interface to a third preset value, and marking the topology setting option of the faulty memory with a preset word, wherein the preset word is used to determine that the memory component corresponding to the topology setting option is a faulty memory;

[0141] The available memory capacity of the faulty memory in the second setting interface is modified to zero, and the available memory capacity of the faulty memory is marked with a preset word.

[0142] Specifically, during the Power On Self Test (Post) phase of the server, the server BIOS system determines whether a faulty memory is detected. The faulty memory may include a memory with dirty gold fingers or a memory that has problems when leaving the factory.

[0143] The preset word is, for example, fault, and the third preset value is, for example, 0G or other values. If a faulty memory is detected, the server BIOS system modifies the topology setting option of the faulty memory in the first setting interface to the third preset value, and marks the topology setting option of the faulty memory with the preset word. In addition, the topology setting option of the faulty memory can also be adjusted to a grayed-out option, and the option value cannot be modified. The server BIOS system records the above operations in the BIOS log.

[0144] The server cannot use the faulty memory, therefore, the server OS system reads the BIOS log, identifies the faulty memory, and disables the faulty memory in the server. The server OS system modifies the available memory capacity of the faulty memory in the second setting interface to zero, and marks the available memory capacity of the faulty memory with a preset word.

[0145] The above process is as follows Figure 3 As shown, it is determined whether a faulty memory is detected during the Post process; the faulty memory is automatically displayed as 0G on the corresponding page and the memory option with the word fault is grayed out.

[0146] In this embodiment, if a faulty memory is detected, the faulty memory is marked in the first setting interface and the second setting interface respectively, providing a function of dynamically identifying and marking the faulty memory, so as to facilitate the user to identify the faulty memory and repair it.

[0147] In some optional implementations, when a memory crash occurs on a server, a process of detecting whether there is a faulty memory includes steps A1 to A3.

[0148] Step A1, during the server restart process, obtain the remote serial port log;

[0149] Specifically, the remote serial port log, i.e., the SOL log, is obtained through the SOL (Serial Over Lan) remote serial port. It should be noted that SOL is a technology for accessing the serial port of a remote computer through a network. Through the SOL technology, a user can access serial port devices located on a remote computer through a network connection, such as a console, a debugger, and other serial port devices. The SOL remote serial port log in the present embodiment is also referred to as a serial port remote management log. Serial port remote management is to allow users to remotely access and manage the serial port of a device through a network connection to facilitate monitoring and configuration. During the remote serial port management process, the serial port remote manager will convert the serial port information of the device into a network stream and transmit it to the user's computer. The information includes some important parameters, such as device status information, port parameters, control commands, and debugging information, etc. These information will be recorded in the remote serial port log during the serial port communication process.

[0150] Step A2: detect the remote serial port log, and if it is determined that there is at least one faulty memory address in the remote serial port log, determine that the faulty memory causes the server to crash, and determine the faulty memory according to the faulty memory address.

[0151] Specifically, remote serial port logs can help users quickly locate and solve problems with devices. Users can view remote serial port logs to obtain information about device status, error information, error codes, and other debugging information to further troubleshoot the cause of the fault. In addition, remote serial port logs can also be used to monitor the performance and status of devices to promptly discover and solve possible problems.

[0152] In this embodiment, a remote serial port log is obtained, and it is determined through the remote serial port log that the server downtime is caused by a server memory failure, and the faulty memory address can be determined and the faulty memory can be determined according to the faulty memory address.

[0153] In some optional implementations, after modifying the available memory capacity of the fault memory in the second setting interface to zero and marking the available memory capacity of the fault memory with a preset word, the method further includes:

[0154] If a memory crash occurs during the server power-on self-test, enter the second setup interface;

[0155] Determine whether there is a memory component with zero available memory capacity and marked with a preset word in the second setting interface;

[0156] If it exists, the memory component with the available memory capacity of zero and marked with the word "preset" is regarded as the memory to be processed;

[0157] Determine location information of the memory to be processed, and generate an alarm message including the location information.

[0158] Specifically, the second setting interface is, for example, a BMC Web interface. When the server BIOS system performs a power-on self-test (Post phase) on the server, if a memory crash occurs, the server BIOS system records it in the BIOS log. The server OS system reads the BIOS log, determines that a memory crash occurs during the server BIOS system performs a power-on self-test on the server, and enters the BMC Web interface, i.e., the second setting interface. The available memory capacity of each memory component of the server can be obtained from the BMC Web interface.

[0159] The server OS system determines whether there is a memory with zero available memory capacity and marked with a preset word in the BMC Web interface. If so, according to the above content, the memory is a faulty memory. Therefore, the memory component with zero available memory capacity and marked with a preset word is used as a memory to be processed.

[0160] The server OS system determines the location information of the memory to be processed, and generates an alarm message including the location information, and notifies the user or server operation and maintenance personnel to repair the memory to be processed through the alarm message, for example, cleaning the dirty surface of the gold finger of the memory to be processed or replacing the memory to be processed.

[0161] The above process is as follows Figure 5 As shown, the memory crashes during the server post process. Check the memory status on the Bmc web interface to determine whether there is a memory with a memory capacity of 0 and the word "fault" on the Bmc web. If not, power on the machine again. If yes, identify it as a faulty memory. Clean the dirt on the surface of the memory gold finger or replace the memory located at the position.

[0162] In this embodiment, by determining whether there is a memory component with zero available memory capacity and marked with preset words in the second setting interface, the failed memory to be processed in the server is determined, and an alarm message containing the location information of the memory to be processed is generated, which is convenient for users or server operation and maintenance personnel to quickly identify the faulty memory and repair it.

[0163] In some optional embodiments, the method further comprises:

[0164] Get the memory location silkscreen information of the memory component;

[0165] Generate a string containing silkscreen information of a memory location, and store the string in a silkscreen table, wherein the silkscreen table is used to locate the memory component.

[0166] Specifically, the server OS system obtains the memory location silk screen information of the memory components specified in each project. The memory location silk screen information is stored in the established silk screen table in the form of a string. The memory location silk screen information of the memory component can be queried in the silk screen table later to determine the physical location of the memory component in the server chassis.

[0167] In this embodiment, a character string containing the memory location silk screen information is stored in a silk screen table. The memory location silk screen information of the memory component can be queried in the silk screen table to determine the physical location of the memory component in the server chassis, allowing users to quickly locate the memory component in the server.

[0168] In some optional implementations, determining the location information of the memory to be processed includes:

[0169] Query the silk screen information of the memory location to be processed in the silk screen table;

[0170] The memory location silkscreen information of the memory to be processed is used as the location information.

[0171] Specifically, the server OS system queries the silk-screen information of the memory location of the memory to be processed in the silk-screen table. For example, the silk-screen table records the correspondence between the number of the memory component and the silk-screen information of the memory location. The number is, for example, the BDF (Bus / Device / Function) number. According to the BDF number of the memory to be processed, the silk-screen information of the memory location of the memory to be processed is queried in the silk-screen table.

[0172] In some optional implementations, in addition to using a silk screen table to determine the silk screen information of the memory to be processed, the silk screen information of the memory to be processed can also be determined using the association between the memory location information and the chassis silk screen information corresponding to the location information. The specific process includes steps B1 to B3.

[0173] Step B1, obtaining memory information of the memory to be processed in the server;

[0174] Step B2, determining the association relationship corresponding to the memory information from the virtual topology map based on the memory information, the virtual topology map is determined based on the memory information of each memory in the server and the association relationship corresponding to the memory information, and the association relationship is determined after associating the location information of the memory with the chassis silk-screen information corresponding to the location information;

[0175] Specifically, the location information of the memory can be the slot number information of the memory on the memory backplane. Associating the location information of the memory with the chassis silk-screen information corresponding to the location information actually associates the memory slot with the corresponding chassis silk-screen information. The silk-screen information of the server records the specific location information corresponding to the slots of multiple disk arrays in the server. After obtaining the slot information with the located memory in the server chassis, the specific position of the slot in the server chassis can be viewed in the chassis silk-screen information, thereby realizing the rapid location of the memory.

[0176] Step B3, determining the silk screen information of the memory to be processed based on the association relationship.

[0177] Specifically, the silk-screen information of the server records the slot sequence information of the disk array in the server and the physical location information in the chassis corresponding to each slot information, which is usually recorded in the form of a card and placed in the server so that the operation and maintenance personnel can obtain and view it. After determining the association relationship and the silk-screen information of the chassis of the server, the slot number of the to-be-processed memory in the silk-screen information of the chassis in the server can be determined. Based on the slot numbers recorded in the silk-screen information of the chassis and the specific location information in the chassis corresponding to the slot numbers, the specific location of the to-be-processed memory in the chassis of the server can be determined.

[0178] In this embodiment, based on the pre-built virtual topology map, the memory to be processed can be quickly located, which is convenient for maintenance personnel to replace the memory and perform other maintenance operations, thereby improving the efficiency of locating the memory to be processed.

[0179] In some optional implementations, after generating the warning information including the location information, the method further includes:

[0180] Restart the server and re-determine the memory component to be detected corresponding to the location information in the alarm information;

[0181] Re-test the memory component to be tested. If the memory component to be tested does not have a fault, modify the topology setting option of the memory component to be tested in the first setting interface to a second preset value, and delete the word preset;

[0182] The available memory capacity of the memory component to be detected in the second setting interface is modified to a fourth preset value, and the word preset is deleted.

[0183] Specifically, after the server OS system generates an alarm message including the location information, the user or the server operation and maintenance personnel will repair the faulty memory, for example, by clearing dirt from the gold finger surface of the memory to be processed or replacing the memory to be processed.

[0184] After repairing the faulty memory, restart the server and determine the slot corresponding to the location information in the alarm information. The memory component inserted in the slot is called the memory component to be detected. The server BIOS system re-detects the memory component to be detected. If the memory component to be detected is not faulty, it means that the faulty memory has been repaired successfully.

[0185] The first setting interface is, for example, a BIOS Setup interface. The second setting interface is, for example, a BMC Web interface, the second preset value is, for example, Enable, and the preset word is, for example, the word fault. The memory component to be detected does not have a fault, and the memory component to be detected can be enabled in the server. Therefore, the server BIOS system modifies the topology setting option of the memory component to be detected in the BIOS Setup interface to Enable, and deletes the word fault. The server BIOS system records the above operation in the BIOS log.

[0186] The server OS system reads the BIOS log, and after confirming that the faulty memory is repaired successfully, modifies the available memory capacity of the memory component to be detected in the BMC Web interface to a fourth preset value, and deletes the word "fault". The fourth preset value is, for example, 0 to 100% of the memory capacity of the memory component to be detected, and the specific value is set according to actual needs.

[0187] In this embodiment, the memory component to be detected corresponding to the position information in the alarm information is re-detected to determine whether the faulty memory is repaired. If the memory component to be detected is not faulty, it means that the faulty memory is successfully repaired. The fault mark of the memory to be detected in the first setting interface and the second setting interface is deleted, and the memory to be detected is re-enabled, providing a mechanism for locating the faulty memory and repairing the faulty memory.

[0188] In some optional implementations, after closing the memory to be closed, the method further includes:

[0189] Obtaining the available memory capacity of the memory component from the second setting interface;

[0190] The memory components whose available memory capacity is not zero are used as components to be trained;

[0191] During the memory training process for the memory components, only the components to be trained are subjected to memory training.

[0192] Specifically, when performing memory training in the server Post phase, if it is detected that some memory is closed, memory training and adjustment optimization will not be performed on it, thereby avoiding waste of resources.

[0193] The second setting interface is, for example, the BMC Web interface. The server OS system can obtain the available memory capacity of each memory component of the server from the BMC Web interface. The memory components with an available memory capacity of zero in the second setting interface are closed memory components and do not need to be memory trained. The server OS system regards the memory components with available memory capacity that is not zero as components to be trained. The server OS system controls the BMC to write the information of the components to be trained into the SPD component. After the server BIOS system is started, it will determine the components to be trained when reading the SPD component. During the memory training process of the memory components, the server BIOS system only performs memory training on the components to be trained.

[0194] The above process is as follows Figure 3 As shown, the memory is trained during the boot and post process to determine whether the memory is set to 0G; if not, after entering the SETUP interface, the closed memory capacity is detected as 0 and the option value is disabled; if yes, the closed memory is not adjusted and optimized, and after entering the SETUP interface, the closed memory capacity is detected as 0 and the option value is disabled. Figure 4 As shown, during the post process, the memory is trained to determine whether the detected memory is 0; if so, the memory is not tuned and is skipped directly to save resources. After the self-check is completed, the setup interface is entered to check whether the memory is successfully closed; if not, the memory is adjusted and optimized. After the self-check is completed, the setup interface is entered to check whether the memory is successfully closed.

[0195] In this embodiment, during the memory training process for memory components, memory training is only performed on components to be trained whose available memory capacity is not zero, which simplifies the memory training process, saves memory training time, and avoids wasting server resources.

[0196] In this embodiment, a memory management device is also provided, which is used to implement the above-mentioned embodiments and preferred implementation modes, and the descriptions that have been made will not be repeated. As used below, the term "module" can be a combination of software and / or hardware that implements a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.

[0197] This embodiment provides a memory management device, such as Figure 6 As shown, including:

[0198] The acquisition module 601 is used to acquire the attribute information of the memory component in the server;

[0199] A generating module 602, configured to generate setting options of the memory component on the first setting interface according to the attribute information;

[0200] A determination module 603 is used to determine the memory to be closed when a memory stability test needs to be performed on the server;

[0201] The closing module 604 is used to modify the setting option of the memory to be closed to a first preset value, and close the memory to be closed.

[0202] In some optional implementations, after closing the memory to be closed, the device is used to:

[0203] Get the total memory capacity of the server;

[0204] The memory other than the memory to be shut down in the memory component is regarded as the started memory, and whether the total memory capacity is the sum of the memory capacity of the started memory is determined;

[0205] Obtain the available memory capacity corresponding to the memory to be closed in the second setting interface;

[0206] Determine whether the available memory capacity of the memory to be closed is zero;

[0207] If the total memory capacity is the sum of the memory capacity of the started memory and the available memory capacity of the memory to be closed is zero, it is determined that the memory to be closed is closed successfully.

[0208] In some optional implementations, the generating module 602 generates setting options for the memory component on the first setting interface according to the attribute information, including:

[0209] Determine parameter information and topology information of the memory component according to the attribute information;

[0210] Parameter setting options corresponding to the parameter information and topology setting options corresponding to the topology information are generated on the first setting interface, wherein the parameter setting options and the topology setting options are included in the setting options.

[0211] In some optional implementations, the closing module 604 modifies the setting option of the memory to be closed to a first preset value, and closes the memory to be closed, including:

[0212] Modify the topology setting option of the memory to be closed to the first preset value;

[0213] The server is configured to, when the topology setting option is the first preset value, subtract the memory capacity of the memory to be closed from the total memory capacity of the server, and modify the available memory capacity of the memory to be closed in the second setting interface to zero.

[0214] In some optional implementations, after generating the setting options of the memory component on the first setting interface according to the attribute information, the device is further configured to:

[0215] After the server is turned on, enter the first setting interface;

[0216] Determine whether there is a topology setting option for the memory component in the first setting interface;

[0217] If so, determining whether the topology setting option can be set to the second preset value and the first preset value;

[0218] If yes, it is determined that the setting options are generated successfully.

[0219] In some optional implementations, the acquisition module 601 acquires the attribute information of the memory component in the server, including:

[0220] Performing a preset test on the memory component to obtain a test result;

[0221] Obtain attribute information of the memory component from the detection result.

[0222] In some optional implementations, after generating the setting options of the memory component on the first setting interface according to the attribute information, the device is further configured to:

[0223] During the server's power-on self-test phase, determine whether faulty memory is detected;

[0224] If a faulty memory is detected, modifying the topology setting option of the faulty memory in the first setting interface to a third preset value, and marking the topology setting option of the faulty memory with a preset word, wherein the preset word is used to determine that the memory component corresponding to the topology setting option is a faulty memory;

[0225] The available memory capacity of the faulty memory in the second setting interface is modified to zero, and the available memory capacity of the faulty memory is marked with a preset word.

[0226] In some optional implementations, after modifying the available memory capacity of the faulty memory to zero and marking the available memory capacity of the faulty memory with a preset word, the device is further configured to:

[0227] If a memory crash occurs during the server power-on self-test, enter the second setup interface;

[0228] Determine whether there is a memory component with zero available memory capacity and marked with a preset word in the second setting interface;

[0229] If it exists, the memory component with the available memory capacity of zero and marked with the word "preset" is regarded as the memory to be processed;

[0230] Determine location information of the memory to be processed, and generate an alarm message including the location information.

[0231] In some optional embodiments, the device is also used for:

[0232] Get the memory location silkscreen information of the memory component;

[0233] Generate a string containing silkscreen information of a memory location, and store the string in a silkscreen table, wherein the silkscreen table is used to locate the memory component.

[0234] In some optional implementations, the device determines the location information of the memory to be processed, including:

[0235] Query the silk screen information of the memory location to be processed in the silk screen table;

[0236] The memory location silkscreen information of the memory to be processed is used as the location information.

[0237] In some optional implementations, after generating the warning information including the location information, the apparatus is further configured to:

[0238] Restart the server and re-determine the memory component to be detected corresponding to the location information in the alarm information;

[0239] Re-test the memory component to be tested. If the memory component to be tested does not have a fault, modify the topology setting option of the memory component to be tested in the first setting interface to a second preset value, and delete the word preset;

[0240] The available memory capacity of the memory component to be detected in the second setting interface is modified to a fourth preset value, and the word preset is deleted.

[0241] In some optional implementations, after closing the memory to be closed, the device is further used to:

[0242] Obtaining the available memory capacity of the memory component from the second setting interface;

[0243] The memory components whose available memory capacity is not zero are used as components to be trained;

[0244] During the memory training process for the memory components, only the components to be trained are subjected to memory training.

[0245] The further functional description of each of the above modules and units is the same as that of the above corresponding embodiments and will not be repeated here.

[0246] The memory management device in this embodiment is presented in the form of a functional unit, where the unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and memory that executes one or more software or fixed programs, and / or other devices that can provide the above functions.

[0247] The embodiment of the present invention also provides a computer device having the above Figure 6 The memory management device shown.

[0248] See also Figure 7 , Figure 7 is a schematic diagram of the structure of a computer device provided by an optional embodiment of the present invention, such as Figure 7 As shown, the computer device includes: one or more processors 10, a memory 20, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. Various components are connected to each other using different buses for communication, and can be installed on a common mainboard or installed in other ways as needed. The processor can process the instructions executed in the computer device, including instructions stored in or on the memory to display the graphical information of the GUI on an external input / output device (such as, a display device coupled to the interface). In some optional embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple computer devices can be connected, and each device provides some necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Figure 7 A processor 10 is taken as an example.

[0249] The processor 10 may be a central processing unit, a network processor or a combination thereof. The processor 10 may further include a dedicated integrated circuit, a programmable logic device or a combination thereof. The programmable logic device may be a complex programmable logic device, a field programmable gate array, a general purpose array logic or any combination thereof.

[0250] The memory 20 stores instructions executable by at least one processor 10, so that at least one processor 10 executes the method shown in the above embodiment.

[0251] The memory 20 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created according to the use of the computer device, etc. In addition, the memory 20 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some optional embodiments, the memory 20 may optionally include a memory remotely arranged relative to the processor 10, and these remote memories may be connected to the computer device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0252] The memory 20 may include a volatile memory, such as a random access memory; the memory may also include a non-volatile memory, such as a flash memory, a hard disk or a solid state drive; the memory 20 may also include a combination of the above types of memory.

[0253] The computer device further comprises a communication interface 30 for the computer device to communicate with other devices or a communication network.

[0254] The embodiment of the present invention also provides a computer-readable storage medium. The method according to the embodiment of the present invention can be implemented in hardware, firmware, or can be implemented as a computer code that can be recorded in a storage medium, or can be implemented as a computer code that is originally stored in a remote storage medium or a non-temporary machine-readable storage medium and will be stored in a local storage medium through a network download, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only storage memory, a random access memory, a flash memory, a hard disk or a solid-state hard disk, etc.; further, the storage medium can also include a combination of the above types of memories. It can be understood that a computer, a processor, a microprocessor controller, or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor, or hardware, the method shown in the above embodiment is implemented.

[0255] A part of the present invention may be applied as a computer program product, such as a computer program instruction, which, when executed by a computer, can call or provide the method and / or technical solution according to the present invention through the operation of the computer. Those skilled in the art should understand that the existence of the computer program instruction in a computer-readable medium includes, but is not limited to, a source file, an executable file, an installation package file, etc., and accordingly, the way in which the computer program instruction is executed by the computer includes, but is not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Here, the computer-readable medium may be any available computer-readable storage medium or communication medium accessible to the computer.

[0256] Although the embodiments of the present invention have been described in conjunction with the accompanying drawings, those skilled in the art may make various modifications and variations without departing from the spirit and scope of the present invention, and such modifications and variations are all within the scope defined in this application.

Claims

1. A memory management method, characterized in that: The method comprises: Get the attribute information of the memory components in the server; Generating setting options for the memory component on a first setting interface according to the attribute information; In case that a memory stability test needs to be performed on the server, determining a memory to be shut down; Modify the setting option of the memory to be closed to a first preset value, and close the memory to be closed; Obtain the total memory capacity of the server; use the memory other than the memory to be closed in the memory component as the started memory, and determine whether the total memory capacity is the sum of the memory capacities of the started memory; obtain the available memory capacity corresponding to the memory to be closed in the second setting interface; determine whether the available memory capacity of the memory to be closed is zero; if the total memory capacity is the sum of the memory capacities of the started memory and the available memory capacity of the memory to be closed is zero, determine that the memory to be closed is successfully closed; The step of modifying the setting option of the memory to be closed to a first preset value and closing the memory to be closed includes: modifying the topology setting option of the memory to be closed to a first preset value, wherein the topology setting option is included in the setting option; and the server is configured to, when the topology setting option is the first preset value, subtract the memory capacity of the memory to be closed from the total memory capacity of the server, and modify the available memory capacity of the memory to be closed in the second setting interface to zero.

2. The method according to claim 1, characterized in that Generating setting options for the memory component on a first setting interface according to the attribute information includes: Determining parameter information and topology information of the memory component according to the attribute information; The parameter setting options corresponding to the parameter information and the topology setting options corresponding to the topology information are generated on the first setting interface, wherein the parameter setting options are included in the setting options.

3. The method according to claim 2, characterized in that After generating the setting options of the memory component on the first setting interface according to the attribute information, the method further includes: After the server is powered on, entering the first setting interface; Determining whether there is a topology setting option for the memory component in the first setting interface; If so, determining whether the topology setting option can be set to a second preset value and the first preset value; If yes, it is determined that the setting options are generated successfully.

4. The method according to claim 1, characterized in that: The obtaining of attribute information of a memory component in the server includes: Performing a preset test on the memory component to obtain a test result; The attribute information of the memory component is obtained from the detection result.

5. The method according to claim 2, characterized in that: After generating the setting options of the memory component on the first setting interface according to the attribute information, the method further includes: During the power-on self-test phase of the server, determining whether a faulty memory is detected; If the faulty memory is detected, modifying the topology setting option of the faulty memory in the first setting interface to a third preset value, and marking the topology setting option of the faulty memory with a preset word, wherein the preset word is used to determine that the memory component corresponding to the topology setting option is a faulty memory; The available memory capacity of the fault memory in the second setting interface is modified to zero, and the available memory capacity of the fault memory is marked with the preset words.

6. The method according to claim 5, characterized in that After modifying the available memory capacity of the fault memory in the second setting interface to zero and marking the available memory capacity of the fault memory with the preset words, the method further includes: If a memory crash occurs during the power-on self-test of the server, entering the second setting interface; Determine whether there is a memory component in the second setting interface whose available memory capacity is zero and is marked with the preset word; If it exists, the memory component with zero available memory capacity and marked with the preset word is used as the memory to be processed; Determine the location information of the memory to be processed, and generate warning information including the location information.

7. The method according to claim 6, characterized in that The method further comprises: Obtaining the memory location silk screen information of the memory component; Generate a character string containing the silk-screen information of the memory location, and store the character string in a silk-screen table, wherein the silk-screen table is used to locate the memory component.

8. The method according to claim 7, characterized in that The determining the location information of the memory to be processed includes: Querying the silk-screen information of the memory location of the memory to be processed in the silk-screen table; The memory position silk screen information of the memory to be processed is used as the position information.

9. The method according to claim 6, characterized in that After generating the warning information including the location information, the method further includes: Restarting the server, and re-determining the memory component to be detected corresponding to the location information in the alarm information; Re-detecting the memory component to be detected, if the memory component to be detected is not faulty, modifying the topology setting option of the memory component to be detected in the first setting interface to a second preset value, and deleting the preset word; The available memory capacity of the memory component to be detected in the second setting interface is modified to a fourth preset value, and the preset word is deleted.

10. The method according to claim 1, characterized in that After closing the memory to be closed, the method further includes: Acquire the available memory capacity of the memory component from the second setting interface; The memory components whose available memory capacity is not zero are used as components to be trained; During the memory training process for the memory component, memory training is only performed on the component to be trained.

11. A memory management device, characterized in that: The device comprises: An acquisition module, used to acquire attribute information of a memory component in a server; A generating module, configured to generate setting options for the memory component on a first setting interface according to the attribute information; A determination module, used for determining the memory to be shut down when a memory stability test needs to be performed on the server; A closing module is used to modify the setting option of the memory to be closed to a first preset value, and close the memory to be closed; after closing the memory to be closed, it also includes: obtaining the total memory capacity of the server; taking the memory other than the memory to be closed in the memory component as the started memory, and judging whether the total memory capacity is the sum of the memory capacity of the started memory; obtaining the available memory capacity corresponding to the memory to be closed in the second setting interface; judging whether the available memory capacity of the memory to be closed is zero; if the total memory capacity is the sum of the memory capacity of the started memory and the available memory capacity of the memory to be closed is zero, it is determined that the memory to be closed is successfully closed; The shutdown module modifies the setting option of the memory to be closed to a first preset value, and closes the memory to be closed, including: modifying the topology setting option of the memory to be closed to a first preset value, wherein the topology setting option is included in the setting option; the server is configured to, when the topology setting option is the first preset value, subtract the memory capacity of the memory to be closed from the total memory capacity of the server, and modify the available memory capacity of the memory to be closed in the second setting interface to zero.

12. A computer device, characterized in that: include: A memory and a processor, wherein the memory and the processor are communicatively connected to each other, the memory stores computer instructions, and the processor executes the memory management method according to any one of claims 1 to 10 by executing the computer instructions.

13. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a computer to execute the memory management method according to any one of claims 1 to 10.

Citation Information

Patent Citations

  • Multi-scheme memory plugging test method and system, terminal and storage medium

    CN111858198A

  • Method and device for realizing RMT automatic test based on OSES

    CN112463623A