CN112269536A - Method and device for optimizing storage software system and computer readable storage medium - Google Patents

Method and device for optimizing storage software system and computer readable storage medium Download PDF

Info

Publication number
CN112269536A
CN112269536A CN202011110346.9A CN202011110346A CN112269536A CN 112269536 A CN112269536 A CN 112269536A CN 202011110346 A CN202011110346 A CN 202011110346A CN 112269536 A CN112269536 A CN 112269536A
Authority
CN
China
Prior art keywords
kernel
information
scheduling
tracking
switching
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
CN202011110346.9A
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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202011110346.9A priority Critical patent/CN112269536A/en
Publication of CN112269536A publication Critical patent/CN112269536A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system

Abstract

The application discloses a method and a device for optimizing a storage software system and a computer readable storage medium. The method comprises the steps of constructing a kernel tracking thread in advance; and the kernel tracking thread monitors the kernel process scheduling information in the form of an embedded system driving module. Calling a kernel tracking thread to capture preset type data information in each switching process of a system calling process, a current process and a process to be scheduled at a kernel scheduling node, and writing the preset type data information as scheduling tracking information into a tracking log of a kernel space; the preset type data information is an index reflecting the process scheduling task consumption and a numerical value thereof. When receiving the scheduling tracking information accessed by the memory mapping method realized by the user mode program through the embedded system drive, and sending the scheduling tracking information to the user space, the user mode can visually observe the key information of each system call and kernel process switching, thereby pertinently optimizing the high-consumption task.

Description

Method and device for optimizing storage software system and computer readable storage medium
Technical Field
The present application relates to the field of storage technologies, and in particular, to a method and an apparatus for tuning a storage software system, and a computer-readable storage medium.
Background
With the rapid development of computer technology, data is explosively increased, the data storage requirement is higher and higher, and a storage software system is optimized to be an indispensable operation for guaranteeing the performance of storage equipment.
Tuning of a storage software system is a complex project and relates to a plurality of elements such as hardware, software, configuration strategies and the like. Tuning means for the software layer are commonly included: log injection, key point monitoring, open source auxiliary tools and the like, but the user states cannot be observed visually by the adjusting and optimizing means, so that the high-consumption task cannot be optimized in a targeted manner.
Disclosure of Invention
The application provides a method and a device for tuning a storage software system and a computer readable storage medium, wherein a user mode can visually observe key information of each system call and kernel process switching, and a high-consumption task is optimized in a targeted manner.
In order to solve the above technical problems, embodiments of the present invention provide the following technical solutions:
one aspect of the embodiments of the present invention provides a method for tuning a storage software system, including:
pre-constructing a kernel tracking thread; the kernel tracking thread monitors kernel process scheduling information in a form of an embedded system driving module;
calling the kernel tracking thread to capture preset type data information in each switching process of the system calling process, the current process and the process to be scheduled at a kernel scheduling node so as to serve as scheduling tracking information to be written into a tracking log of a kernel space; the preset type data information is an index reflecting the consumption of a process scheduling task and a numerical value thereof;
and when receiving a memory mapping method realized by a user mode program through an embedded system drive to access the scheduling tracking information, sending the scheduling tracking information to a user space.
Optionally, the step of calling the kernel tracking thread to capture preset type data information in each switching process of the system calling process, the current process and the process to be scheduled at the kernel scheduling node is as follows:
calling the kernel tracking thread to capture the running time, idle time, virtual running time, CPU (central processing unit) kernel, process identification and weight of each system calling process at a kernel scheduling node;
and calling the kernel tracking thread to capture the running time, idle time, virtual running time, CPU (central processing unit) kernel, process identification, weight and process information before and after switching in the process of switching the current process and the process to be scheduled at the kernel scheduling node.
Optionally, the sending the scheduling tracking information to the user space includes:
displaying the calling time, the running time, the idle time, the CPU core, the process identification and the weight in each system calling process in a preset time period to the user space in a list form through a visual interface; and switching time, running time, idle time, virtual running time, CPU core, process identification, weight and process information before and after switching in the switching process of the current process and the process to be scheduled.
Optionally, after the kernel tracking thread is pre-constructed, the method further includes:
setting a virtual memory area exception handling method aiming at a memory mapping area in advance;
and when the linear address triggering the abnormity is detected to be in the virtual memory area of the user space and the corresponding physical page is not allocated, allocating the physical page for the current process to realize the autonomous control memory mapping.
Another aspect of the embodiments of the present invention provides a tuning apparatus for a storage software system, including:
the kernel tracking thread building module is used for building a kernel tracking thread in advance; the kernel tracking thread monitors kernel process scheduling information in a form of an embedded system driving module;
the key information capturing module is used for calling the kernel tracking thread to capture preset type data information in each switching process of the system calling process, the current process and the process to be scheduled at a kernel scheduling node so as to serve as scheduling tracking information to be written into a tracking log of a kernel space; the preset type data information is an index reflecting the consumption of a process scheduling task and a numerical value thereof;
and the kernel space monitoring information acquisition module is used for accessing the scheduling tracking information by a memory mapping method realized by a user mode program through an embedded system driver when receiving the scheduling tracking information and sending the scheduling tracking information to the user space.
Optionally, the key information capturing module includes:
the calling information capturing submodule is used for calling the kernel tracking thread to capture the running time, idle time, virtual running time, CPU (central processing unit) kernel, process identification and weight of each system calling process at a kernel scheduling node;
and the process switching information capturing submodule is used for calling the kernel tracking thread to capture the running time, the idle time, the virtual running time, the CPU core, the process identification, the weight and the process information before and after switching in the process of switching the current process and the process to be scheduled at the kernel scheduling node.
Optionally, the module for acquiring kernel space monitoring information by the user includes a visual display sub-module, configured to display, in a list form, a call time, a run time, an idle time, a CPU core, a process identifier, and a weight in each system call process in a preset time period to the user space through a visual interface; and switching time, running time, idle time, virtual running time, CPU core, process identification, weight and process information before and after switching in the switching process of the current process and the process to be scheduled.
Optionally, the method further includes:
the memory mapping active control module is used for setting a virtual memory area exception handling method aiming at the memory mapping area in advance; and when the linear address triggering the abnormity is detected to be in the virtual memory area of the user space and the corresponding physical page is not allocated, allocating the physical page for the current process to realize the autonomous control memory mapping.
The embodiment of the present invention further provides a device for tuning a storage software system, which includes a processor, where the processor is configured to implement the steps of the method for tuning a storage software system according to any one of the foregoing descriptions when executing the computer program stored in the memory.
Finally, an embodiment of the present invention provides a computer-readable storage medium, where a stored software system tuning program is stored on the computer-readable storage medium, and when the stored software system tuning program is executed by a processor, the steps of the stored software system tuning method are implemented as in any one of the foregoing.
The technical scheme provided by the application has the advantages that the information required to be captured can be flexibly defined by customizing the kernel tracking thread, each kernel process scheduling information used for feeding back task consumption is captured in real time, each index of process scheduling is visually quantized, the kernel scheduling details are monitored by a user mode program in real time, the key information of each system call and kernel process switching is visually observed by the user mode, the real-time condition of the system software running stage can be directly observed by the user mode driver, the consumption of each stage caused by the process scheduling is monitored and quantized, therefore, the software logic of the consumption time point can be judged, a quantitative and effective evaluation means is provided for system performance optimization, high-consumption tasks can be rapidly positioned, and targeted optimization is carried out. In addition, the interaction between the user mode and the kernel mode is realized through a low-consumption mode of memory mapping, and high-efficiency communication is realized.
In addition, the embodiment of the invention also provides a corresponding implementation device and a computer readable storage medium for the tuning method of the storage software system, so that the method has higher practicability, and the device and the computer readable storage medium have corresponding advantages.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions of the related art, the drawings required to be used in the description of the embodiments or the related art will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to these drawings without creative efforts.
Fig. 1 is a schematic flowchart of a tuning method for a storage software system according to an embodiment of the present invention;
FIG. 2 is a schematic diagram illustrating kernel tracking thread registration and mapping according to an embodiment of the present invention;
FIG. 3 is a schematic diagram illustrating the operating principle of kernel trace threads according to an embodiment of the present invention;
fig. 4 is a structural diagram of an embodiment of a tuning apparatus for a storage software system according to an embodiment of the present invention;
fig. 5 is a block diagram of another embodiment of a tuning apparatus for a storage software system according to an embodiment of the present invention.
Detailed Description
In order that those skilled in the art will better understand the disclosure, the invention will be described in further detail with reference to the accompanying drawings and specific embodiments. It is to be understood that the described embodiments are merely exemplary of the invention, and not restrictive of the full scope of the invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The terms "first," "second," "third," "fourth," and the like in the description and claims of this application and in the above-described drawings are used for distinguishing between different objects and not for describing a particular order. Furthermore, the terms "comprising" and "having," as well as any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, article, or apparatus that comprises a list of steps or elements is not limited to only those steps or elements but may include other steps or elements not expressly listed.
Having described the technical solutions of the embodiments of the present invention, various non-limiting embodiments of the present application are described in detail below.
Referring to fig. 1, fig. 1 is a schematic flow chart of a tuning method for a storage software system according to an embodiment of the present invention, where the embodiment of the present invention may include the following:
s101: a kernel tracking thread is pre-constructed.
In the present application, a kernel tracking thread is built in a kernel space, which monitors kernel process scheduling information in the form of an embedded system driver module. After the kernel tracking thread is constructed, the kernel tracking thread needs to register with an operating system in a kernel space, and correspondingly constructs a module for storing monitoring information thereof, such as the self-owned kernel module working in the kernel space shown in fig. 2, and the self-owned kernel module interacts with a user space in a memory mapping manner, so that scheduling tracking information captured by the kernel tracking thread is used by a user under the drive of a user state. In combination with fig. 2 and fig. 3, that is, the customized kernel trace thread is realized by a form of an embedded system driver module and a customized process scheduling trace interface, so that a hook key interface can be hooked at a time point when an operating system OS performs process scheduling, process switching information focused on can be captured, and the trace log can be finally presented to a user mode driver for use.
S102: and calling the kernel tracking thread to capture preset type data information in each switching process of the system calling process, the current process and the process to be scheduled at the kernel scheduling node so as to serve as scheduling tracking information to be written into a tracking log of a kernel space.
The preset type data information is an index reflecting the consumption of a process scheduling task and a numerical value thereof, and the working state of a task scheduling subsystem in the memory space operating system is monitored in real time through the kernel tracking thread to monitor in real time and capture key information in the switching process between the current process and the process to be scheduled, wherein the process is called each time, and the key information is captured by the kernel scheduling node. A person skilled in the art can select a required index according to actual conditions, namely the preset type data information is flexibly set, and the use experience of a user is improved. The preset type data information may include, but is not limited to, key information such as a process identifier pid, a running time, an idle time, a virtual running time vruntime, and the like, and in combination with the foregoing discussion, the user mode driver may directly observe a real-time status of the system software running stage, and finally provide important reference data for system performance tuning.
S103: and when receiving the scheduling tracking information accessed by the user mode program through a memory mapping method driven by the embedded system, sending the scheduling tracking information to the user space.
According to the method, data interaction is carried out between the user mode and the kernel mode, namely the user mode and the kernel mode, in a memory mapping mode, the memory mapping mode is low in consumption, efficient communication between the user mode and the kernel mode can be achieved, and the user mode can acquire scheduling tracking information more quickly and efficiently, so that effective reference is provided for performance tuning of a storage system.
In the technical scheme provided by the embodiment of the invention, the kernel tracking thread is defined by user, the information required to be captured can be flexibly defined, each kernel process scheduling information used for feeding back task consumption is captured in real time, each index of process scheduling is intuitively quantized, a user mode program monitors kernel scheduling details in real time, the user mode intuitively observes key information of each system call and kernel process switching, the user mode drive can directly observe the real-time condition of the system software operation stage, and the consumption of each stage caused by process scheduling is monitored and quantized, so that the software logic of the consumption time point can be judged, a quantized and effective evaluation means is provided for system performance optimization, high-consumption tasks can be rapidly positioned, and targeted optimization is carried out. In addition, the interaction between the user mode and the kernel mode is realized through a low-consumption mode of memory mapping, and high-efficiency communication is realized.
It should be noted that, in the present application, there is no strict sequential execution order among the steps, and as long as the logical order is met, the steps may be executed simultaneously or according to a certain preset order, and fig. 1 is only an exemplary manner, and does not represent that only the execution order is the order.
In the above embodiment, how to execute step S102 is not limited, and a key information capturing manner provided in this embodiment may include the following steps:
the preset type data information of the system calling process, the current process and the process to be scheduled in each switching process is captured by the kernel tracking thread at the kernel scheduling node:
calling a kernel tracking thread to capture the running time, idle time, virtual running time, a CPU (central processing unit) kernel, a process identifier and weight of each system calling process at a kernel scheduling node;
and calling a kernel tracking thread to capture the running time, idle time, virtual running time, a CPU (central processing unit) kernel, a process identifier, weight and process information before and after switching in the process of switching the current process and the process to be scheduled at a kernel scheduling node.
Of course, a person skilled in the art can also select data information of a required type according to actual conditions, further accurately feed back the real-time status of the current system software operation stage, and provide a more accurate reference basis for system tuning.
As an optional implementation manner, in order to monitor the process scheduling of the kernel space more intuitively, the method and the system can also realize the user-mode intuitive monitoring of the detailed view of kernel space process switching, and provide quantized reference data for system software tuning, including the following contents:
displaying the calling time, the running time, the idle time, the CPU core, the process identification and the weight in each system calling process within a preset time period such as 1h to a user space in a list form through a visual interface; and switching time, running time, idle time, virtual running time, CPU core, process identifier, weight, and process information before and after switching in the switching process between the current process and the process to be scheduled, as shown in fig. 3.
As another optional implementation, in order to control the memory mapping more autonomously and improve the interaction between the kernel mode and the user mode, a virtual memory area exception handling method may be set for the memory mapping area in advance; and when the linear address triggering the abnormity is detected to be in the virtual memory area of the user space and the corresponding physical page is not allocated, allocating the physical page for the current process to realize the autonomous control memory mapping.
The system driver of the embodiment self-defines the virtual memory abnormal vma fault method aiming at the memory mapping mmap area, realizes more autonomous mapping control and realizes efficient communication.
The embodiment of the invention also provides a corresponding device for the stored software system tuning method, so that the method has higher practicability. Wherein the means can be described separately from the functional module point of view and the hardware point of view. In the following, the tuning device for a storage software system according to the embodiments of the present invention is introduced, and the tuning device for a storage software system described below and the tuning method for a storage software system described above may be referred to correspondingly.
Based on the angle of the functional module, referring to fig. 4, fig. 4 is a structural diagram of a tuning apparatus for a stored software system according to an embodiment of the present invention, in a specific implementation manner, the tuning apparatus may include:
a kernel tracking thread constructing module 401, configured to construct a kernel tracking thread in advance; and the kernel tracking thread monitors the kernel process scheduling information in the form of an embedded system driving module.
A key information capturing module 402, configured to invoke a kernel tracking thread to capture, at a kernel scheduling node, preset type data information in each switching process of a system invocation process, a current process, and a process to be scheduled, so as to write the preset type data information as scheduling tracking information into a tracking log of a kernel space; the preset type data information is an index reflecting the process scheduling task consumption and a numerical value thereof.
The user kernel space monitoring information obtaining module 403 is configured to, when receiving a memory mapping method implemented by a user mode program through an embedded system driver, access scheduling tracking information, and send the scheduling tracking information to a user space.
Optionally, in some embodiments of this embodiment, the key information capturing module 402 may further include, for example:
the calling information capturing submodule is used for calling a kernel tracking thread to capture the running time, the idle time, the virtual running time, the CPU (central processing unit) kernel, the process identification and the weight of each system calling process at a kernel scheduling node;
and the process switching information capturing submodule is used for calling a kernel tracking thread to capture the running time, the idle time, the virtual running time, the CPU (Central processing Unit) kernel, the process identification, the weight and the process information before and after switching in the switching process of the current process and the process to be scheduled at the kernel scheduling node.
As an optional implementation manner of the embodiment of the present invention, the module 403 for acquiring kernel space monitoring information by a user may include a visual display sub-module, configured to display, in a list form, a call time, a run time, an idle time, a CPU core, a process identifier, and a weight in each system call process within a preset time period to a user space through a visual interface; and switching time, running time, idle time, virtual running time, CPU core, process identification, weight and process information before and after switching in the switching process of the current process and the process to be scheduled.
Optionally, in other embodiments of this embodiment, the apparatus may further include a memory mapping active control module, for example, configured to set a virtual memory region exception handling method for a memory mapping region in advance; and when the linear address triggering the abnormity is detected to be in the virtual memory area of the user space and the corresponding physical page is not allocated, allocating the physical page for the current process to realize the autonomous control memory mapping.
The functions of the functional modules of the tuning device for storing a software system according to the embodiment of the present invention may be specifically implemented according to the method in the foregoing method embodiment, and the specific implementation process may refer to the description related to the foregoing method embodiment, which is not described herein again.
Therefore, the user mode of the embodiment of the invention can visually observe the key information of each system call and kernel process switching, and the high-consumption task is optimized in a targeted manner.
The foregoing description of the storage software system tuning apparatus is described from the perspective of functional modules, and further, the present application provides a storage software system tuning apparatus described from the perspective of hardware. Fig. 5 is a block diagram of another tuning apparatus for a storage software system according to an embodiment of the present application. As shown in fig. 5, the apparatus comprises a memory 50 for storing a computer program;
the processor 51, when executing the computer program, is configured to implement the steps of the stored software system tuning method according to any of the embodiments described above.
The processor 51 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and the like. The processor 51 may be implemented in at least one hardware form of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), and a PLA (Programmable Logic Array). The processor 51 may also include a main processor and a coprocessor, where the main processor is a processor for Processing data in an awake state, and is also called a Central Processing Unit (CPU); a coprocessor is a low power processor for processing data in a standby state. In some embodiments, the processor 51 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content required to be displayed on the display screen. In some embodiments, the processor 51 may further include an AI (Artificial Intelligence) processor for processing computing operations related to machine learning.
Memory 50 may include one or more computer-readable storage media, which may be non-transitory. Memory 50 may also include high speed random access memory, as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In this embodiment, the memory 50 is at least used for storing the following computer program 501, wherein after being loaded and executed by the processor 51, the computer program can implement the relevant steps of the tuning method for a storage software system disclosed in any of the foregoing embodiments. In addition, the resources stored in the memory 50 may also include an operating system 502, data 503, and the like, and the storage manner may be a transient storage manner or a permanent storage manner. Operating system 502 may include Windows, Unix, Linux, etc. Data 503 may include, but is not limited to, data corresponding to test results, and the like.
In some embodiments, the stored software system tuning apparatus may further include a display 52, an input/output interface 53, a communication interface 54, a power supply 55, and a communication bus 56.
Those skilled in the art will appreciate that the configuration shown in FIG. 5 does not constitute a limitation of the stored software system tuning apparatus and may include more or fewer components than those shown, such as sensors 57.
The functions of the functional modules of the tuning device for storing a software system according to the embodiment of the present invention may be specifically implemented according to the method in the foregoing method embodiment, and the specific implementation process may refer to the description related to the foregoing method embodiment, which is not described herein again.
Therefore, the user mode of the embodiment of the invention can visually observe the key information of each system call and kernel process switching, and the high-consumption task is optimized in a targeted manner.
It is to be understood that, if the tuning method of the stored software system in the above embodiments is implemented in the form of software functional units and sold or used as a stand-alone product, it can be stored in a computer readable storage medium. Based on such understanding, the technical solutions of the present application may be substantially or partially implemented in the form of a software product, which is stored in a storage medium and executes all or part of the steps of the methods of the embodiments of the present application, or all or part of the technical solutions. And the aforementioned storage medium includes: a U disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), an electrically erasable programmable ROM, a register, a hard disk, a removable magnetic disk, a CD-ROM, a magnetic or optical disk, and other various media capable of storing program codes.
Based on this, the embodiment of the present invention further provides a computer-readable storage medium, which stores a stored software system tuning program, where the stored software system tuning program is executed by a processor, and the steps of the stored software system tuning method according to any one of the above embodiments are provided.
The functions of the functional modules of the computer-readable storage medium according to the embodiment of the present invention may be specifically implemented according to the method in the foregoing method embodiment, and the specific implementation process may refer to the related description of the foregoing method embodiment, which is not described herein again.
The embodiments are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same or similar parts among the embodiments are referred to each other. The device disclosed by the embodiment corresponds to the method disclosed by the embodiment, so that the description is simple, and the relevant points can be referred to the method part for description.
Those of skill would further appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both, and that the various illustrative components and steps have been described above generally in terms of their functionality in order to clearly illustrate this interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
The foregoing detailed description is directed to a method, an apparatus, and a computer-readable storage medium for tuning a storage software system. The principles and embodiments of the present invention are explained herein using specific examples, which are presented only to assist in understanding the method and its core concepts. It should be noted that, for those skilled in the art, it is possible to make various improvements and modifications to the present invention without departing from the principle of the present invention, and those improvements and modifications also fall within the scope of the claims of the present application.

Claims (10)

1. A method for tuning a storage software system, comprising:
pre-constructing a kernel tracking thread; the kernel tracking thread monitors kernel process scheduling information in a form of an embedded system driving module;
calling the kernel tracking thread to capture preset type data information in each switching process of the system calling process, the current process and the process to be scheduled at a kernel scheduling node so as to serve as scheduling tracking information to be written into a tracking log of a kernel space; the preset type data information is an index reflecting the consumption of a process scheduling task and a numerical value thereof;
and when receiving a memory mapping method realized by a user mode program through an embedded system drive to access the scheduling tracking information, sending the scheduling tracking information to a user space.
2. The method for tuning a storage software system according to claim 1, wherein the step of calling the kernel tracking thread to capture preset type data information in each switching process of the system calling process, the current process and the process to be scheduled at the kernel scheduling node comprises:
calling the kernel tracking thread to capture the running time, idle time, virtual running time, CPU (central processing unit) kernel, process identification and weight of each system calling process at a kernel scheduling node;
and calling the kernel tracking thread to capture the running time, idle time, virtual running time, CPU (central processing unit) kernel, process identification, weight and process information before and after switching in the process of switching the current process and the process to be scheduled at the kernel scheduling node.
3. The method of claim 2, wherein said sending the scheduling tracking information to user space comprises:
displaying the calling time, the running time, the idle time, the CPU core, the process identification and the weight in each system calling process in a preset time period to the user space in a list form through a visual interface; and switching time, running time, idle time, virtual running time, CPU core, process identification, weight and process information before and after switching in the switching process of the current process and the process to be scheduled.
4. The method for tuning a storage software system according to any one of claims 1 to 3, wherein after the pre-constructing the kernel tracking thread, the method further comprises:
setting a virtual memory area exception handling method aiming at a memory mapping area in advance;
and when the linear address triggering the abnormity is detected to be in the virtual memory area of the user space and the corresponding physical page is not allocated, allocating the physical page for the current process to realize the autonomous control memory mapping.
5. A tuning apparatus for a storage software system, comprising:
the kernel tracking thread building module is used for building a kernel tracking thread in advance; the kernel tracking thread monitors kernel process scheduling information in a form of an embedded system driving module;
the key information capturing module is used for calling the kernel tracking thread to capture preset type data information in each switching process of the system calling process, the current process and the process to be scheduled at a kernel scheduling node so as to serve as scheduling tracking information to be written into a tracking log of a kernel space; the preset type data information is an index reflecting the consumption of a process scheduling task and a numerical value thereof;
and the kernel space monitoring information acquisition module is used for accessing the scheduling tracking information by a memory mapping method realized by a user mode program through an embedded system driver when receiving the scheduling tracking information and sending the scheduling tracking information to the user space.
6. The device for tuning a storage software system according to claim 5, wherein the key information capturing module comprises:
the calling information capturing submodule is used for calling the kernel tracking thread to capture the running time, idle time, virtual running time, CPU (central processing unit) kernel, process identification and weight of each system calling process at a kernel scheduling node;
and the process switching information capturing submodule is used for calling the kernel tracking thread to capture the running time, the idle time, the virtual running time, the CPU core, the process identification, the weight and the process information before and after switching in the process of switching the current process and the process to be scheduled at the kernel scheduling node.
7. The tuning apparatus for storage software system according to claim 6, wherein the module for acquiring kernel space monitoring information by the user comprises a visualization display sub-module, configured to display, in a list form, a call time, a run time, an idle time, a CPU core, a process identifier, and a weight in each system call process within a preset time period to the user space through a visualization interface; and switching time, running time, idle time, virtual running time, CPU core, process identification, weight and process information before and after switching in the switching process of the current process and the process to be scheduled.
8. The stored software system tuning apparatus of claim 7, further comprising:
the memory mapping active control module is used for setting a virtual memory area exception handling method aiming at the memory mapping area in advance; and when the linear address triggering the abnormity is detected to be in the virtual memory area of the user space and the corresponding physical page is not allocated, allocating the physical page for the current process to realize the autonomous control memory mapping.
9. A stored software system tuning apparatus, comprising a processor for implementing the steps of the stored software system tuning method according to any one of claims 1 to 4 when executing a computer program stored in a memory.
10. A computer-readable storage medium, having stored thereon a stored software system tuning program, which when executed by a processor implements the steps of the stored software system tuning method of any one of claims 1 to 4.
CN202011110346.9A 2020-10-16 2020-10-16 Method and device for optimizing storage software system and computer readable storage medium Pending CN112269536A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011110346.9A CN112269536A (en) 2020-10-16 2020-10-16 Method and device for optimizing storage software system and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011110346.9A CN112269536A (en) 2020-10-16 2020-10-16 Method and device for optimizing storage software system and computer readable storage medium

Publications (1)

Publication Number Publication Date
CN112269536A true CN112269536A (en) 2021-01-26

Family

ID=74338279

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011110346.9A Pending CN112269536A (en) 2020-10-16 2020-10-16 Method and device for optimizing storage software system and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN112269536A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113849238A (en) * 2021-09-29 2021-12-28 浪潮电子信息产业股份有限公司 Data communication method, device, electronic equipment and readable storage medium
CN116450120A (en) * 2023-06-06 2023-07-18 北京翼辉信息技术有限公司 Method, device, equipment and medium for analyzing kernel of real-time operating system
CN117311994A (en) * 2023-11-28 2023-12-29 苏州元脑智能科技有限公司 Processing core isolation method and device, electronic equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101403983A (en) * 2008-11-25 2009-04-08 北京航空航天大学 Resource monitoring method and system for multi-core processor based on virtual machine
CN106682061A (en) * 2016-10-17 2017-05-17 暨南大学 Distributed system for collection and storage of origin data
CN106681884A (en) * 2016-06-28 2017-05-17 腾讯科技(深圳)有限公司 System call monitoring method and device
CN108229172A (en) * 2018-02-13 2018-06-29 国家计算机网络与信息安全管理中心 Astride hierarchy data flow method for tracing based on windows platforms
CN109189573A (en) * 2018-08-10 2019-01-11 郑州云海信息技术有限公司 A kind of isomery internal storage management system based on NVDIMM

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101403983A (en) * 2008-11-25 2009-04-08 北京航空航天大学 Resource monitoring method and system for multi-core processor based on virtual machine
CN106681884A (en) * 2016-06-28 2017-05-17 腾讯科技(深圳)有限公司 System call monitoring method and device
CN106682061A (en) * 2016-10-17 2017-05-17 暨南大学 Distributed system for collection and storage of origin data
CN108229172A (en) * 2018-02-13 2018-06-29 国家计算机网络与信息安全管理中心 Astride hierarchy data flow method for tracing based on windows platforms
CN109189573A (en) * 2018-08-10 2019-01-11 郑州云海信息技术有限公司 A kind of isomery internal storage management system based on NVDIMM

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113849238A (en) * 2021-09-29 2021-12-28 浪潮电子信息产业股份有限公司 Data communication method, device, electronic equipment and readable storage medium
CN113849238B (en) * 2021-09-29 2024-02-09 浪潮电子信息产业股份有限公司 Data communication method, device, electronic equipment and readable storage medium
CN116450120A (en) * 2023-06-06 2023-07-18 北京翼辉信息技术有限公司 Method, device, equipment and medium for analyzing kernel of real-time operating system
CN116450120B (en) * 2023-06-06 2023-11-28 北京翼辉信息技术有限公司 Method, device, equipment and medium for analyzing kernel of real-time operating system
CN117311994A (en) * 2023-11-28 2023-12-29 苏州元脑智能科技有限公司 Processing core isolation method and device, electronic equipment and storage medium
CN117311994B (en) * 2023-11-28 2024-02-23 苏州元脑智能科技有限公司 Processing core isolation method and device, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
CN112269536A (en) Method and device for optimizing storage software system and computer readable storage medium
US8181185B2 (en) Filtering of performance monitoring information
KR20200122364A (en) Resource scheduling method and terminal device
US10127017B2 (en) Devops management
US8561032B2 (en) Visualizing thread life time in eclipse
US10162324B2 (en) Method for manipulating a control program of a control device
EP2733613B1 (en) Controller and program
CN112527452A (en) Virtual machine migration method, device and medium across OpenStack
KR20220147355A (en) Smart factory management apparatus and controlling method thereof
EP3572940A1 (en) Method and device for scheduling vcpu thread
CN113849238B (en) Data communication method, device, electronic equipment and readable storage medium
CN106708481B (en) Method for controlling task execution
CN107465620B (en) General data router and communication method thereof
CN108241522B (en) Sleep state switching method and device in virtualization environment and electronic equipment
CN115756866A (en) Load balancing method, device and storage medium
CN110007653B (en) Configuration method, device and equipment of welding control system and storage medium
CN115981822A (en) Task processing method, medium, device and computing equipment
CN110837399A (en) Method and device for managing streaming computing application program and computing equipment
CN113688343B (en) Page authority control method, device, equipment and readable storage medium
CN115480924A (en) Method and device for processing job data, storage medium and electronic equipment
CN103631571A (en) Method and device for controlling progress bar
CN113849229A (en) Server starting method and device, electronic equipment and readable storage medium
CN109445877B (en) Method for detecting same virtual machine used by multiple threads of game server
CN111831412A (en) Interrupt processing method and device, storage medium and electronic equipment
CN110908866A (en) Software monitoring method and related equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210126