Task scheduling methods, electronic device, storage medium and computer program product
By detecting the operating mode of the physical processor and using the run queue structure to determine the target priority, the problem of low timeliness and accuracy of task scheduling in virtualization architecture is solved, thereby improving the system resource utilization.
Patent Information
- Application Number
- PCT/IB2025/051264
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-06-21
- Filing Date
- 2025-02-06
- Publication Date
- 2025-12-26
AI Technical Summary
In existing technologies, task scheduling strategies in virtualization architectures have not been able to effectively solve the problems of poor timeliness, low accuracy, and low system resource utilization in task scheduling.
By detecting the operating mode of the physical processor, the target priority of the task to be scheduled is determined by using the running bitmap in the running queue structure, and the tasks in the target scheduling queue are scheduled according to the priority to ensure that high-priority tasks respond in a timely manner and are scheduled first.
It improves the timeliness and accuracy of task scheduling in virtualization architecture and enhances system resource utilization.
Smart Images

Figure IB2025051264_26122025_PF_FP_ABST
Abstract
Description
[0001]This disclosure relates to the field of computer technology, specifically to a task scheduling method, electronic device, storage medium, and computer program product. Background Art: In traditional operating systems, a virtual processor (such as a Virtual Central Processing Unit, or VCPU) can exist as an independent process, and the operating system schedules the execution of the independent process corresponding to the VCPU according to a preset scheduling algorithm. However, in a virtualized operating system architecture (referred to as a virtualization architecture), the physical processor (such as a Physical Central Processing Unit, or PCPU) is switched to a VCPU, which can exist as a scheduled task rather than an independent process. Furthermore, the virtualization architecture includes various scheduled tasks to be executed, such as Least Recently Used (LRU) memory usage detection tasks and swap space tasks. Therefore, task scheduling strategies in virtualization architectures typically need to consider various scheduling influencing factors related to multiple scheduled tasks. However, no effective strategy for task scheduling in virtualization architectures has been proposed in the prior art. In other words, for virtualization architectures, efficient, accurate, and timely task scheduling has become one of the important technical problems in related fields. Currently, no effective solution has been proposed to address these problems. This disclosure provides a task scheduling method, electronic device, storage medium, and computer program product to at least solve the technical problems of poor timeliness, accuracy, and low system resource utilization in task scheduling. According to one aspect of this disclosure, a task scheduling method is provided, comprising: detecting the operating mode of a physical processor and obtaining a detection result; responding to the detection result indicating that the physical processor has switched from physical mode to virtualization mode, determining a target scheduling priority based on a running bitmap in the running queue structure corresponding to the physical processor, wherein different bits in the running bitmap correspond to different scheduling priorities; and performing scheduling processing on the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority.According to another aspect of the embodiments of this disclosure, a task scheduling method is also provided, comprising: obtaining a task scheduling request through a first application programming interface, wherein the request data carried in the task scheduling request includes: identification information of a physical processor, the identification information being used to indicate the detection of the physical processor's operating mode to obtain a detection result; and returning a task scheduling response through a second application programming interface, wherein the response data carried in the task scheduling response includes: a scheduling processing result, the scheduling processing result being obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled, the target scheduling priority being determined in response to the detection result indicating that the physical processor has switched from physical mode to virtualization mode, based on the running bitmap in the running queue structure corresponding to the physical processor, and different bits in the running bitmap corresponding to different scheduling priorities. According to another aspect of the embodiments of this disclosure, a task scheduling method is also provided, comprising: acquiring a currently input task scheduling dialogue request, wherein the information carried in the task scheduling dialogue request includes: identification information of a physical processor, the identification information being used to indicate the detection of the physical processor's operating mode to obtain a detection result; responding to the task scheduling dialogue request, returning a task scheduling dialogue response, wherein the information carried in the task scheduling dialogue response includes: a scheduling processing result, the scheduling processing result being obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled, the target scheduling priority being determined based on the running bitmap in the running queue structure corresponding to the physical processor in response to the detection result switching the physical processor from physical mode to virtualization mode, and different bits in the running bitmap corresponding to different scheduling priorities; and displaying the scheduling processing result in a graphical user interface. According to another aspect of the embodiments of this disclosure, an electronic device is also provided, comprising: a memory storing an executable program; and a processor for running the program, wherein the task scheduling method of any one of the above embodiments is executed during program execution. According to another aspect of the embodiments of this disclosure, a computer-readable storage medium is also provided, the computer-readable storage medium including a stored executable program, wherein, when the executable program is executed, it controls the device where the computer-readable storage medium is located to perform the task scheduling method described above. According to another aspect of the embodiments of this disclosure, a computer program product is also provided, including a computer program, which, when executed by a processor, implements the task scheduling method described above.In this embodiment, the operating mode of the physical processor is detected to obtain a detection result. In response to the detection result indicating that the physical processor switches from physical mode to virtualization mode, the target scheduling priority to be scheduled is determined based on the running bitmap in the running queue structure corresponding to the physical processor. Different bits in the running bitmap correspond to different scheduling priorities. Furthermore, the scheduling tasks to be executed in the target scheduling queue corresponding to the target scheduling priority are scheduled. Therefore, this disclosure, for processors in virtualization mode, schedules the scheduling tasks in the target scheduling queue corresponding to the processor based on the scheduling priority of the tasks to be scheduled, ensuring timely response and priority scheduling for tasks with higher scheduling priorities. Compared with related technologies that lack reasonable task scheduling strategies in virtualization mode, the solution provided by this embodiment achieves the goal of considering the scheduling priorities of multiple scheduling tasks corresponding to the running queue structure for task scheduling. This enhances the timeliness and accuracy of task scheduling and improves system resource utilization, thereby solving the technical problems of poor timeliness, accuracy, and low system resource utilization in task scheduling. It is readily apparent that the above general description and the following detailed description are for illustrative and explanatory purposes only and do not constitute a limitation thereof. The accompanying drawings, which are included to provide a further understanding of the present disclosure and constitute a part of this disclosure, illustrate exemplary embodiments of the present disclosure and, together with their descriptions, serve to explain the present disclosure and do not constitute an undue limitation thereof. In the drawings: Figure 1 shows a hardware structure block diagram of a computer terminal (or mobile device) for implementing a task scheduling method; Figure 2 shows a schematic diagram of an embodiment using a computer terminal (or mobile device) as a sender or receiver; Figure 3 is a flowchart of a task scheduling method according to Embodiment 1 of the present disclosure; Figure 4 is a flowchart of a task scheduling method according to Embodiment 2 of the present disclosure; Figure 5 is a flowchart of a task scheduling method according to Embodiment 3 of the present disclosure; Figure 6 is a structural schematic diagram of a task scheduling device according to Embodiment 4 of the present disclosure; Figure 7 is a structural schematic diagram of another task scheduling device according to Embodiment 4 of the present disclosure; Figure 8 is a structural schematic diagram of yet another task scheduling device according to Embodiment 4 of the present disclosure; Figure 9 is a structural block diagram of a computer terminal according to Embodiment 5 of the present disclosure. Detailed Description of Embodiments To enable those skilled in the art to better understand the present disclosure, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present disclosure, and not all embodiments.Based on the embodiments in this disclosure, all other embodiments obtained by those skilled in the art without inventive effort should fall within the scope of protection of this disclosure. It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this disclosure are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this disclosure described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or device that includes a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to these processes, methods, products, or devices. Firstly, some nouns or terms appearing in the description of the embodiments of this disclosure are to be interpreted as follows: Virtualization architecture: refers to the architecture obtained by virtualizing the operating system using virtualization technology. In a virtualization architecture, multiple virtual instances can run on a single physical server, each with independent computing resources (such as processor and memory resources). Lightweight virtualization architecture refers to the process of lightweight virtualizing a running physical host machine to obtain corresponding virtual machines. Lightweight virtualization involves converting the physical processor in the physical host machine into a virtual processor, omitting the virtualization of unnecessary functions (such as device functions), and maintaining registers in pass-through mode (i.e., input and output are connected to a common path) as much as possible. In other words, the lightweight virtualization architecture in this disclosure can be customized according to application scenario requirements, selecting specific functions in the host machine for virtualization. Task scheduling refers to the process of allocating tasks to available resources or processors for execution according to certain rules or strategies. In the computer field, task scheduling is used to manage and optimize resource utilization in computer systems to ensure that tasks are executed promptly according to certain priorities, time requirements, or other constraints. Task scheduling can help systems utilize resources more efficiently, improving task execution efficiency and response speed. Physical processor: Refers to the physical hardware in a computer system, typically a hardware device consisting of one or more processors (CPUs) used to execute computer programs and process data. The physical processor is directly connected to the computer system's motherboard and other hardware devices, and is a core component of the computer system.Virtual processor: Refers to a logical processor simulated through software virtualization technology. A virtual processor can run multiple operating system instances or virtual machines simultaneously on a single physical processor. The virtual processor can access the computing resources of the physical processor and can be independently allocated to different virtual machines or operating system instances, thereby achieving multitasking and resource isolation. Idle task (also called IDLE task): Refers to a task that is in an idle state. In the computer field, a task is defined as an IDLE task when it is not performing any operation or waiting for an external event to occur. An IDLE task typically refers to a task in which no processor resources or input / output resources are occupied in the system. In operating systems, IDLE tasks are often used to represent the system's idle time so that the system can perform some scheduled tasks or perform resource scheduling. Example 1: According to an embodiment of this disclosure, a task scheduling method embodiment is also provided. It should be noted that the steps shown in the flowchart can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, steps shown or described may be executed in a different order than that shown here. The method embodiment provided in Example 1 of this disclosure can be executed in a mobile terminal, computer terminal, or similar computing device. Figure 1 illustrates a hardware structure block diagram of a computer terminal (or mobile device) for implementing a task scheduling method. As shown in Figure 1, the computer terminal 10 (or mobile device 10) may include one or more processors 102 (shown as 102a, 102b, ..., 102n in the figure) (processor 102 may include, but is not limited to, a microprocessor (MCU) or a field-programmable gate array (FPGA), etc.), a memory 104 for storing data, and a transmission device 106 for communication functions. In addition, the computer terminal 10 may also include: a display, an input / output interface (I / O interface), a Universal Serial Bus (USB) port (which may be included as one of the ports of a computer bus), a network interface, a cursor control device (such as a mouse, touchpad, etc.), a keyboard, a power supply, and / or a camera. It will be understood by those skilled in the art that the structure shown in Figure 1 is merely illustrative and does not limit the structure of the aforementioned electronic device. For example, computer terminal 10 may also include more or fewer components than shown in FIG1, or have a different configuration than shown in FIG1.It should be noted that the aforementioned one or more processors 102 and / or other data processing circuits are generally referred to herein as "data processing circuits". These data processing circuits can be implemented wholly or partially as software, hardware, firmware, or any other combination. Furthermore, the data processing circuits can be a single, independent processing module, or wholly or partially integrated into any other element in the computer terminal 10 (or mobile device). As involved in the embodiments of this disclosure, the data processing circuit serves as processor control (e.g., selection of a variable resistor terminal path connected to an interface). The memory 104 can be used to store software programs and modules of application software, such as program instructions / data storage devices corresponding to the task scheduling method in the embodiments of this disclosure. The processor 102 executes various functional applications and data processing by running the software programs and modules stored in the memory 104, thereby implementing the aforementioned task scheduling method. The memory 104 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memories. In some instances, memory 104 may further include memory remotely located relative to processor 102, which can be connected to computer terminal 10 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof. Transmission device 106 is used to connect to a network via a network interface to receive or send data. Specific examples of such networks may include wired and / or wireless networks provided by the communication provider of computer terminal 10. In one instance, transmission device 106 includes a network interface controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In one instance, transmission device 106 may be a radio frequency (RF) module for wireless communication with the Internet. The display shown in Figure 1 may be, for example, a touchscreen liquid crystal display (LCD), which allows the user to interact with the user interface of computer terminal 10 (or mobile device). The hardware structure block diagram shown in Figure 1 can serve as an exemplary block diagram not only for the computer terminal 10 (or mobile device) described above, but also as an exemplary block diagram for the server described above. In one optional embodiment, Figure 2 shows a schematic diagram of an embodiment that uses a computer terminal (or mobile device) as a sender or receiver.As shown in Figure 2, the computer terminal 10 (or mobile device) can be connected to one or more servers (e.g., security servers, resource servers, game servers, etc.) via a data network connection or electronically. In one optional embodiment, the computer terminal 10 (or mobile device) can be any mobile computing device. The data network connection can be a local area network (LAN) connection, a wide area network (WAN) connection, an Internet connection, or other types of data network connection. The computer terminal 10 (or mobile device) can execute network services to connect to a server (e.g., a security server) or a group of servers 20. The network server is a network-based user service, such as social networks, cloud resources, email, online payments, or other online applications. In the above operating environment, this disclosure provides a task scheduling method as shown in Figure 3. Figure 3 is a flowchart of a task scheduling method according to Embodiment 1 of this disclosure. As shown in Figure 3, the task scheduling method includes: Step S31, detecting the operating mode of the physical processor and obtaining a detection result; Step S32, in response to the detection result indicating that the physical processor has switched from physical mode to virtualization mode, determining the target scheduling priority to be scheduled based on the running bitmap in the running queue structure corresponding to the physical processor, wherein different bits in the running bitmap correspond to different scheduling priorities; Step S33, scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority. The physical processor can be a computing component in the physical architecture of the operating system used to execute computing tasks. When the operating mode of the physical processor is switched to virtualization mode, the physical processor is switched to a virtual processor in the virtualization architecture corresponding to the operating system. It should be noted that physical processors can be categorized as follows: Central Processing Unit (CPU), Graphics Processing Unit (GPU), Physical Processing Unit (PPU), Math Coprocessor, Digital Signal Processor (DSP), Network Processor Unit (NPU), etc. In application scenarios, there may be situations where the operating mode switches during the operation of the physical processor. Specifically, depending on the requirements of the scenario, virtualization technology is used to virtualize the physical architecture to obtain a virtualized architecture. At this time, the operating mode of the physical processor switches from physical mode to virtualized mode.In the method steps provided in this disclosure, when it is detected that the physical processor has switched to virtualization mode, a running bitmap in the running queue structure corresponding to the physical processor is obtained, and the scheduling priority of multiple tasks in the running queue structure is determined based on multiple bits in the running bitmap. The above method steps can be applied to task scheduling scenarios involving virtualization architectures in preset application scenarios to enhance the resource utilization and operating performance of the virtualization architecture. The preset application scenarios may include, but are not limited to, scenarios involving the use of virtualized operating systems in fields such as e-commerce, education, healthcare, conferencing, social networks, financial products, logistics, and navigation. Correspondingly, the physical processor is a pre-set physical computing unit in the preset application scenario. Based on this, the technical solution provided in this disclosure can provide task scheduling services that consider scheduling priorities for the preset application scenarios. In this embodiment, the operating mode of the physical processor is detected to obtain a detection result. In response to the detection result indicating that the physical processor switches from physical mode to virtualization mode, the target scheduling priority to be scheduled is determined based on the running bitmap in the running queue structure corresponding to the physical processor. Different bits in the running bitmap correspond to different scheduling priorities. Further, the scheduling tasks to be executed in the target scheduling queue corresponding to the target scheduling priority are scheduled. It is noteworthy that this disclosure, for processors in virtualization mode, schedules the scheduling tasks in the target scheduling queue corresponding to the processor based on the scheduling priority of the tasks to be scheduled. This ensures timely response and priority scheduling for tasks with higher scheduling priorities. Compared with related technologies that lack reasonable task scheduling strategies in virtualization mode, the solution provided by this embodiment achieves the goal of considering the scheduling priorities of multiple scheduling tasks corresponding to the running queue structure for task scheduling. This enhances the timeliness and accuracy of task scheduling and improves system resource utilization, thereby solving the technical problems of poor timeliness, accuracy, and low system resource utilization in task scheduling. In one application scenario, the scheduling tasks (such as foreground and background scheduling tasks) in a lightweight virtualization architecture act as scheduling entities. The task scheduling strategies for the lightweight virtualization architecture need to be designed considering the characteristics of various scheduling tasks to ensure the timeliness and rationality of task scheduling, thereby improving system resource utilization and operational performance. The following further illustrates the above-mentioned method steps provided in the embodiments of this disclosure in conjunction with a lightweight virtualization architecture. The following description is an exemplary implementation, where the physical processor is a PCPU and the virtual processor is a VCPU.In an optional embodiment, in step S32, the target scheduling priority to be scheduled is determined based on the running bitmap in the running queue structure corresponding to the physical processor, including the following steps: Step S321, selecting a target bit from the running bitmap in the running queue structure corresponding to the physical processor, wherein the position of the target bit in the running bitmap and the value of the target bit satisfy a preset condition, and multiple scheduling priorities corresponding to the running queue structure are distributed sequentially in multiple bits of the running bitmap according to a preset arrangement order; Step S322, determining the target scheduling priority to be scheduled based on the target bit. According to the above optional embodiment, a running queue structure is defined for each PCPU in the virtualization architecture. Each running queue structure includes multiple regular scheduling queues and emergency scheduling queues, wherein the multiple regular scheduling queues correspond to multiple predefined scheduling priorities. The above running queue structure may also include multiple scheduling control fields, for example, the multiple scheduling control fields include: scheduling period, scheduling ratio corresponding to multiple scheduling priorities, number of tasks corresponding to multiple scheduling priorities, and task execution time corresponding to multiple scheduling priorities in the previous scheduling period adjacent to the current scheduling period. It should be noted that the above task execution times refer to the actual execution times of tasks with each scheduling priority. These actual execution times are compared with the set execution times of the corresponding tasks to obtain a comparison result, which is then used to dynamically adjust the task scheduling precision. For example, in an application scenario, several predefined scheduling priorities include: VCPU level, FCPU level, BACK level, and IDLE level. VCPU level represents the scheduling priority corresponding to the VCPU obtained after the physical processor undergoes virtualization switching; FCPU level represents the scheduling priority corresponding to the newly created VCPU; BACK level represents the scheduling priority corresponding to background tasks; and IDLE level represents the scheduling priority corresponding to idle tasks (i.e., IDLE tasks). In the application scenario, after the physical processor's operating mode switches to virtualization mode, the main function (denoted as hv_run) of the physical processor runs cyclically according to a specified period. Specifically, after a physical processor switches to virtual processor operation, the main function corresponding to that physical processor essentially runs cyclically according to its execution cycle. This main function repeatedly calls the scheduling main function (also known as the main function of the scheduling algorithm, denoted as hv_sched) to determine the target scheduling entity to be run. After the scheduling main function hv_sched starts running, it obtains the running bitmap from the running queue structure corresponding to the physical processor and determines the priority of the target scheduling entity to be scheduled for the physical processor based on this bitmap.In the optional embodiments described above, the preset order of the multiple scheduling priorities can be from high to low. For example, in the application scenario, the preset multiple scheduling priorities are arranged in descending order as follows: VCPU level, FCPU level, BACK level, and IDLE level. The multiple predefined scheduling priorities correspond to different bits in the runtime bitmap. Specifically, the multiple scheduling priorities correspond to the candidate values of multiple bits in the runtime bitmap from large to small in descending order. That is, by using the current value of a bit in the runtime bitmap, the specific scheduling priority of the task to be scheduled corresponding to that bit can be determined (in this example, it can be one of VCPU level, FCPU level, BACK level, and IDLE level). According to the optional embodiments described above, a target bit is selected from the values of multiple bits in the runtime bitmap corresponding to the physical processor. For example, the multiple bits in the runtime bitmap can be traversed, and the first non-zero bit in the traversal can be selected as the target bit, and the scheduling priority corresponding to the target bit is used as the target scheduling priority to be scheduled. Furthermore, after determining the scheduling priority corresponding to the target bit as the target scheduling priority, the value of the target bit is reset to 0 in the running bitmap. Simultaneously, the current running priority field (denoted as `pro`) in the running queue structure is assigned to the historical running priority field (denoted as `last_pro`), and the target scheduling priority is recorded in the current running priority field (`pro`) in the running queue structure. According to the above optional embodiments, this disclosure utilizes the values of multiple bits in the running bitmap to represent multiple scheduling priorities corresponding to the running queue structure of the physical processor. Furthermore, during system operation, the target scheduling priority of the physical processor to be scheduled can be determined in real time through the running bitmap, and the scheduling task corresponding to the target scheduling priority can be scheduled. In the above process, the task scheduling of the virtualization architecture has strong timeliness, thereby improving the system's resource utilization rate through reasonable and rapid task scheduling. In an optional embodiment, step S33 involves scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority, including the following steps: Step S331: Select a first scheduling entity corresponding to the scheduled task from the target scheduling queue corresponding to the target scheduling priority, wherein the first scheduling entity is contained in the structure of the scheduled task and is mounted in the target scheduling queue; Step S332: Run the first scheduling entity based on the target scheduling priority to schedule the task.In the optional embodiments described above, each scheduling task in the virtualization architecture (e.g., the scheduling task of the virtualized operating system) can be configured with a structure, in which the scheduling task is contained as a scheduling entity, thereby associating the scheduling entity with the scheduling task. As an exemplary embodiment, the structure corresponding to a VCPU task is set to VCPU task, which includes at least a VCPU scheduling entity; the structure corresponding to an LRU detection task is set to LRU tas, which includes at least an LRU scheduling entity; and the structure corresponding to a Swap task is set to Swap_task, which includes at least a Swap scheduling entity. Furthermore, each scheduling entity contains a regular node, through which it can be attached to a corresponding regular scheduling queue; and each scheduling entity also contains an emergency node, through which it can be attached to a corresponding emergency scheduling queue. According to the method steps of the optional embodiments described above, after determining the target scheduling priority, a first scheduling entity corresponding to the scheduling task is selected from the target scheduling queue corresponding to the target scheduling priority. For example, a regular running queue corresponding to a target scheduling priority is determined, and the scheduling entity currently at the head of the queue is selected as the first scheduling entity from among multiple scheduling entities attached to the regular running queue. It should be noted that the target scheduling queue can be a regular scheduling queue or an emergency scheduling queue. That is, according to the method steps of the above optional embodiments, the scheduling of regular scheduling tasks with different scheduling priorities in the operating system can be processed, as well as the scheduling of emergency scheduling tasks in the operating system. In an optional embodiment, in the task scheduling method, the structure of the scheduling task includes: a scheduling control field, wherein the scheduling control field is used to record the current scheduling state of the scheduling task structure, the scheduling plan of the first scheduling entity, and the runtime information of the scheduling plan of the first scheduling entity. In the above optional embodiments, the structure of the scheduling task in the running queue structure may also include multiple scheduling control fields. As an exemplary embodiment, the first field among the multiple scheduling control fields is used to characterize the current scheduling state of the current structure corresponding to the scheduling task, for example, the structure is being scheduled, the structure is being enqueued, etc. The second field among the multiple scheduling control fields is used to characterize the scheduling plan for the first scheduling entity. The third field among the multiple scheduling control fields is used to characterize the runtime information corresponding to the above scheduling plan. The runtime information may include, but is not limited to: set runtime, actual runtime, compensated runtime, and penalty runtime.Furthermore, the structure corresponding to each scheduled task in the virtualization architecture can also include a set of scheduling operation functions. This set of scheduling operation functions includes multiple scheduling operation functions such as: enqueue operation function, enqueue and dequeue operation function, run operation function, queue update operation function, time slice calculation operation function, priority change operation function, and scheduling entity selection operation function. Through the set of scheduling operation functions, the scheduled tasks can be controlled to perform corresponding operations in the virtualization architecture, thereby ensuring that multiple scheduled tasks in the virtualization architecture can reasonably share system resources, improving the performance and efficiency of the virtualization architecture. In an optional embodiment, the task scheduling method further includes the following steps: Step S34, in response to the target scheduling priority being the lowest among multiple scheduling priorities or the target scheduling queue being set with a refresh flag, calculating the scheduling time slice corresponding to each scheduling entity in the scheduling queue corresponding to different scheduling priorities among the multiple scheduling priorities. According to the above optional embodiments, in the application scenario, when it is detected that the target scheduling priority is the lowest scheduling priority (e.g., the aforementioned IDLE level), or when it is detected that the target scheduling queue selected according to the target scheduling priority has a refresh flag set, the time slice recalculation process is triggered. In the time slice recalculation process, the scheduling time slices corresponding to each scheduling entity in the scheduling queues corresponding to different scheduling priorities among multiple scheduling priorities are calculated and updated. Specifically, in the time slice recalculation process, if it is detected that the target scheduling queue has a refresh flag set, it indicates that the scheduling ratios corresponding to multiple scheduling priorities in multiple scheduling control fields have changed. At this time, according to the updated scheduling ratios and scheduling cycles in the running queue structure, the scheduling time slices are recalculated for the scheduling entities attached to the scheduling queues corresponding to multiple scheduling priorities. In an optional embodiment, the task scheduling method further includes the following steps: Step S351, determining whether there is a first scheduling entity in the target scheduling queue; Step S352, in response to the existence of a first scheduling entity in the target scheduling queue, setting the target bit in the running bitmap. According to the above optional embodiments, during the recalculation of the scheduling time slice, the scheduling entities attached to the scheduling queues corresponding to multiple scheduling priorities are traversed and calculated to obtain the scheduling time slice corresponding to each scheduling entity. During the traversal calculation, it is first determined whether there is at least one scheduling entity in the scheduling queue corresponding to the current scheduling priority. If there is no scheduling entity in the scheduling queue corresponding to the current scheduling priority, the running bitmap is cleaned and reset; if there is at least one scheduling entity in the scheduling queue corresponding to the current scheduling priority, the target bit is set in the running bitmap according to the first scheduling entity selected from the at least one scheduling entity.In an optional embodiment, the task scheduling method further includes the following steps: Step S361, in response to the existence of a single scheduling entity in the target scheduling queue, allocating a scheduling time slice to the first scheduling entity; Step S362, in response to the existence of multiple scheduling entities including the first scheduling entity in the target scheduling queue, allocating a scheduling time slice to the multiple scheduling entities jointly. According to the above optional embodiment, for a first type of priority among multiple scheduling priorities (such as the aforementioned VCPU level and IDLE level), there is one scheduling entity in the scheduling queue corresponding to each scheduling priority, and the scheduling time slice allocated to the scheduling queue corresponding to that scheduling priority is equal to the scheduling time slice allocated to that scheduling entity. For a second type of priority among multiple scheduling priorities (such as the aforementioned FCPU level and BACK level), there may be multiple scheduling entities in the scheduling queue corresponding to each scheduling priority. When there are multiple scheduling entities in the scheduling queue corresponding to each scheduling priority, the scheduling time slice allocated to the scheduling queue corresponding to that scheduling priority is allocated to the multiple scheduling entities in that scheduling queue (for example, it can be evenly allocated to the multiple scheduling entities). In an optional embodiment, the task scheduling method further includes the following steps: Step S371, determining whether the scheduling time slice allocated to the first scheduling entity has been fully used; Step S372, in response to the fact that the scheduling time slice allocated to the first scheduling entity has not been fully used, recording the remaining unused time slice in the scheduling time slice, wherein the remaining time slice is used to supplement the scheduling time slice occupied by the scheduling task corresponding to the subsequent scheduling priority, and the subsequent scheduling priority is lower than the target scheduling priority. According to the above optional embodiment, the usage reserve of the scheduling time slice corresponding to the first scheduling entity is calculated during the task scheduling process. When the usage reserve is not zero, it indicates that the scheduling time slice corresponding to the first scheduling entity has not been fully used, and at this time, the remaining time slice corresponding to the usage reserve is recorded. For example, if the target scheduling priority of the current scheduling cycle is FCPU level, and the target scheduling priority of the previous scheduling cycle adjacent to the current scheduling cycle is VCPU level, calculate whether the time slice allocated to the first scheduling entity corresponding to VCPU level in the previous scheduling cycle has been used up. If the time slice allocated to the first scheduling entity corresponding to VCPU level in the previous scheduling cycle has not been used up (i.e., the usage margin is not zero), then record the remaining time slice corresponding to the usage margin (denoted as surplus). This remaining time slice is used to supplement the first scheduling entity corresponding to FCPU level in the current scheduling cycle.In another optional implementation, during task scheduling, the runtime of the first scheduling entity among multiple scheduling priorities can be statistically analyzed, and the runtime can be used to determine whether a target scheduling priority switch has occurred during task scheduling. If the historical runtime priority field (last_pro) in the run queue structure differs from the current runtime priority field (pro), it is determined that a target scheduling priority switch has occurred during task scheduling. In this case, the actual runtime of the first scheduling entity in the target scheduling priority corresponding to the historical runtime priority field (last_pro) and the start time of the first scheduling entity in the target scheduling priority corresponding to the current runtime priority field (pro) are recorded. It should be noted that the actual runtime of the first scheduling entity in the target scheduling priority corresponding to the historical runtime priority field (last_pro) can be determined using the current time and the start time of the first scheduling entity in the target scheduling priority corresponding to the historical runtime priority field (last_pro). In an optional embodiment, step S331, selecting the first scheduling entity corresponding to the scheduling task from the target scheduling queue corresponding to the target scheduling priority, includes the following steps: Step S3311, determining whether a second scheduling entity that meets preset conditions exists in the virtualization mode, wherein the scheduling urgency of the second scheduling entity is higher than that of the first scheduling entity; Step S3312, in response to the absence of a second scheduling entity that meets the preset conditions, selecting the first scheduling entity corresponding to the scheduling task from the target scheduling queue corresponding to the target scheduling priority. In the above optional embodiment, the emergency scheduling queue in the above-mentioned run queue structure is a local emergency scheduling queue corresponding to the physical processor. The above-mentioned operating system architecture may also include a global emergency scheduling queue. In an exemplary application scenario, after the operating system architecture is switched to a virtualization architecture, when entering the task scheduling process, it is first checked whether a second scheduling entity exists in the global emergency scheduling queue. If a second scheduling entity exists in the global emergency scheduling queue, the target scheduling priority is adjusted to the scheduling priority corresponding to the second scheduling entity, and the second scheduling entity is prioritized for scheduling processing. Furthermore, if no second scheduling entity exists in the global emergency scheduling queue, the system checks whether a second scheduling entity exists in the local emergency scheduling queue within the run queue structure. If a second scheduling entity exists in the local emergency scheduling queue, the target scheduling priority is adjusted to the scheduling priority corresponding to the second scheduling entity, and the second scheduling entity is scheduled first.Furthermore, if no second scheduling entity exists in either the global emergency scheduling queue or the local emergency scheduling queue, the scheduling entity at the top of the regular scheduling queue corresponding to the target scheduling priority is selected as the second scheduling entity. It should be noted that if the currently selected second scheduling entity is the root scheduling entity of a certain group of schedules, then a specific scheduling entity is further selected as the second scheduling entity based on that root scheduling entity. Further, after selecting the second scheduling entity, it is determined whether a sub-scheduling selection function exists in the set of scheduling operation functions corresponding to the second scheduling entity. If a sub-scheduling selection function exists in the set of scheduling operation functions corresponding to the second scheduling entity, then that sub-scheduling selection function is called and executed. For example, if the target scheduling priority is FCPU level, and multiple newly created VCPUs corresponding to FCPU level will run on PCPUs within a specified range, these multiple newly created VCPUs will be organized in a queue. In this case, a specific target VCPU is selected from the multiple newly created VCPUs at the FCPU level for execution. It should be noted that if no target scheduling entity is selected in either the global emergency scheduling queue or the regular scheduling queue and local emergency scheduling queue corresponding to the target scheduling priority, the target scheduling priority is re-determined based on the execution bitmap. In an optional embodiment, the task scheduling method further includes one of the following steps: Step S381, in response to multiple scheduling entities bound to the physical processor corresponding to the target scheduling priority, an enqueue operation is performed on the first scheduling entity to enqueue the first scheduling entity to the target scheduling queue; Step S382, in response to multiple scheduling entities bound to the physical processor corresponding to the target scheduling priority, a dequeue operation is performed on the first scheduling entity to dequeue the first scheduling entity from the target scheduling queue. In an exemplary embodiment, after selecting the first scheduling entity or the second scheduling entity as the target scheduling entity to be run, the dequeue operation function corresponding to the target scheduling entity is called to realize the entity dequeueing of the target scheduling entity. It should be noted that the dequeue operation function can be customized for different scheduling priorities or different scheduling entities. It should be noted that if the scheduling priority of the target scheduling entity is VCPU or IDLE, and there is a corresponding scheduling entity (i.e., the target scheduling entity) at that VCPU or IDLE level, then no dequeue or enqueue operations are required during the execution of the target scheduling entity. However, the scheduler corresponding to the target scheduling entity may perform dequeue and enqueue operations during startup and destruction. When performing an enqueue operation on the target scheduling entity, if the scheduling priority of the target scheduling entity is FCPU, it is determined whether the target scheduling entity should be attached to the globally created VCPU queue when it is not running.If the target scheduling entity is attached to the globally created VCPU queue when not running, it is dequeued from this queue. If the target scheduling entity is not attached to the globally created VCPU queue but is bound to a PCPU when not running, it is dequeued from the regular scheduling queue corresponding to its target scheduling priority. When enqueuing a target scheduling entity, if its scheduling priority is BACK, it is dequeued from the regular scheduling queue corresponding to that priority. Further, during enqueuing, if the target scheduling entity's priority is VCPU or IDLE, no enqueuing is required. During enqueuing, if the target scheduling entity's priority is FCPU and it is not bound to a PCPU, it is enqueued to the tail of the globally created VCPU queue. If it is bound to a PCPU, it is enqueued to the tail of the regular scheduling queue corresponding to its target scheduling priority. Similarly, if the scheduling priority corresponding to the target scheduling entity is BACK level, the target scheduling entity is enqueued to the tail of the regular scheduling queue corresponding to the target scheduling priority. In an optional embodiment, in step S332, the first scheduling entity is run based on the target scheduling priority to perform scheduling processing on the scheduling task, including the following steps: Step S3321, the first scheduling entity is parsed based on the target scheduling priority to obtain the scheduling task corresponding to the target scheduling priority; Step S3322, the scheduling task is scheduled according to the target scheduling method corresponding to the target scheduling priority. According to the above optional embodiment, during the running of the target scheduling entity, if the scheduling priority corresponding to the target scheduling entity is VCPU level, the VCPU structure corresponding to the target scheduling entity is obtained, and the VCPU running function (denoted as VCPU_run) corresponding to the target scheduling entity is called to run it. Specifically, before starting to run the VCPU running function, the start time (denoted as start) is recorded; further, based on the current time (denoted as now), the scheduling time slice (denoted as slice), the usage timeout of the previous scheduling cycle (denoted as penalty), and the remaining time slice of the previous scheduled entity in the current scheduling cycle (denoted as surplus), the timeout of the VCPU running function (denoted as timeout) is determined.The aforementioned preceding scheduled entity is the scheduled entity with a higher priority than the target scheduled entity. The aforementioned usage timeout is the portion of the target scheduled entity's actual running time in the previous scheduled period that exceeds the timeout. Further, if the calculated timeout is less than or equal to the start time, it indicates that the scheduled entities already running in the current scheduled period have generated excessive usage timeouts, causing the current scheduled period to be penalized and its operation restricted by the system. In this case, a preset minimum running time (denoted as min) is allocated to the VCPU running function of the current scheduled period according to the virtualization architecture configuration information. Further, when the VCPU running function ends, the end time (denoted as end) is recorded, and the actual running time (denoted as run) of the VCPU running function is determined based on the start time and end time. If the actual running time (run) is greater than the timeout, the portion of the actual running time (run) exceeding the timeout is accumulated into the usage timeout (penalty). Furthermore, if the scheduling priority of the target scheduling entity is at the FCPU level, the execution logic corresponding to the VCPU level mentioned above can be referenced. If the scheduling priority of the target scheduling entity is at the BACK level, the target scheduling entity is parsed according to the type of the scheduling task, resulting in an LRU detection task or a Swap task, thereby realizing background hot and cold data updates or memory swapping. If the scheduling priority of the target scheduling entity is at the IDLE level, the target scheduling entity is parsed to obtain an IDLE task. If no runnable scheduling entity is attached to the queue corresponding to the IDLE task, the IDLE task is executed. If a runnable scheduling entity is attached to the queue corresponding to the IDLE task, the execution of the target scheduling entity is terminated. In addition, during the scheduling process, the execution time distribution of the target scheduling entity (which can be the first or second scheduling entity) is statistically analyzed to enable real-time monitoring of the scheduling task execution status. It should be noted that during the task scheduling process, logic for adjusting the scheduling range of specified categories of scheduling entities can also be added.For example, an LRU detection task is configured to run within a specified PCPU segment. In this case, a dequeue operation is performed on a certain type of task that is not running within the specified PCPU segment but is already attached. Further, if the regular scheduling queue corresponding to the target scheduling priority is not controlled after the dequeue operation, the bitmap of the target scheduling priority is cleared and reset. Further, it is determined whether the run queue within the specified PCPU segment has a certain type of scheduled task attached. If the run queue within the specified PCPU segment does not have a certain type of scheduled task attached, an enqueue operation is performed on the scheduled task. It should be noted that during task scheduling, the scheduling time slice and scheduling control fields can be customized according to the architectural characteristics of the virtualization architecture and the scenario requirements of the application. It should also be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this disclosure are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions, and corresponding operation entry points are provided for users to choose to authorize or refuse. It should be noted that, for the foregoing method embodiments, for the sake of simplicity, they are all described as a series of actions. However, those skilled in the art should understand that this disclosure is not limited to the described order of actions, because according to this disclosure, some steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by this disclosure. Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, they can also be implemented by hardware. Based on this understanding, the technical solution of this disclosure, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as read-only memory (ROM), random access memory (RAM), magnetic disk, optical disk), including several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of this disclosure. Example 2 In the operating environment as in Example 1, this disclosure provides another task scheduling method as shown in Figure 4.Figure 4 is a flowchart of a task scheduling method according to Embodiment 2 of this disclosure. As shown in Figure 4, the task scheduling method includes: Step S41, obtaining a task scheduling request through a first application programming interface (API), wherein the request data carried in the task scheduling request includes: identification information of the physical processor, which is used to indicate the detection of the physical processor's operating mode to obtain a detection result; Step S42, returning a task scheduling response through a second API, wherein the response data carried in the task scheduling response includes: a scheduling processing result, which is obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled. The target scheduling priority is determined based on the running bitmap in the running queue structure corresponding to the physical processor in response to the detection result switching the physical processor from physical mode to virtualization mode, and different bits in the running bitmap correspond to different scheduling priorities. According to the above method steps, a method for implementing a task scheduling cloud service is provided, which runs on a cloud server. The cloud server obtains the task scheduling request from the service caller through a first application programming interface (API). Based on the request data (i.e., the physical processor identification information) carried in the task scheduling request, it executes the task scheduling process to obtain the scheduling result. Further, the cloud server returns a task scheduling response to the service caller through a second API to provide the scheduling result to the service caller. The first and second APIs can be the same API or different APIs. In an optional embodiment, the interface parameters in the first and second APIs may include, but are not limited to: interface global identifier (interface signature key), interface timestamp, interface request identifier, system call credential identifier, etc. The first API can use either a GET or POST method to obtain the file processing request. The second API can use JavaScript Object Notation (JSON) format to return the file processing response. The physical processor mentioned above can be a computing component in the physical architecture of the operating system used to perform computing tasks. When the physical processor's operating mode is switched to virtualization mode, the physical processor is switched to a virtual processor in the virtualization architecture corresponding to the operating system.It should be noted that the categories of physical processors can include: Central Processing Unit (CPU), Graphics Processing Unit (GPU), Physical Processing Unit (PPU), Math Coprocessor, Digital Signal Processor (DSP), Network Processor Unit (NPU), etc. In application scenarios, there may be situations where the operating mode switches during the operation of the physical processor. Specifically, depending on the scenario requirements, virtualization technology is used to virtualize the physical architecture to obtain a virtualized architecture. At this time, the operating mode of the physical processor switches from physical mode to virtualized mode. In the method steps provided in the embodiments of this disclosure, when the physical processor is detected to be switching to virtualized mode, the running bitmap in the running queue structure corresponding to the physical processor is obtained, and the scheduling priority of multiple tasks in the running queue structure is determined based on multiple bits in the running bitmap. The above method steps can be applied to scenarios involving task scheduling of virtualized architecture in preset application scenarios to enhance the resource utilization and operating performance of the virtualized architecture. The aforementioned preset application scenarios may include, but are not limited to, scenarios involving the use of virtualized operating systems in fields such as e-commerce, education, healthcare, conferencing, social networks, financial products, logistics, and navigation. Correspondingly, the aforementioned physical processor is a pre-set physical computing unit in the aforementioned preset application scenarios. Based on this, the technical solution provided by the embodiments of this disclosure can provide task scheduling services that consider scheduling priorities for the aforementioned preset application scenarios. In the embodiments of this disclosure, a task scheduling request is obtained through a first application programming interface, wherein the request data carried in the task scheduling request includes: identification information of the physical processor, which is used to indicate the detection of the physical processor's operating mode to obtain the detection result; a task scheduling response is returned through a second application programming interface, wherein the response data carried in the task scheduling response includes: scheduling processing result, which is obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled. The target scheduling priority is determined in response to the detection result that the physical processor switches from physical mode to virtualization mode, based on the running bitmap in the running queue structure corresponding to the physical processor, and different bits in the running bitmap correspond to different scheduling priorities.It is noteworthy that this disclosure targets processors in virtualization mode. Based on the scheduling priority of the tasks to be scheduled, it schedules the tasks in the target scheduling queue corresponding to the processor. This achieves the goal of considering the scheduling priorities of multiple tasks corresponding to the run queue structure for task scheduling, thereby enhancing the timeliness and accuracy of task scheduling and improving system resource utilization. This solves the technical problems of poor timeliness, accuracy, and low system resource utilization in task scheduling. It should be noted that the preferred implementation of this embodiment can be found in the relevant description in Embodiment 1, which will not be repeated here. Embodiment 3: In the operating environment as described in Embodiment 1, this disclosure provides another task scheduling method as shown in Figure 5. Figure 5 is a flowchart of a task scheduling method according to Embodiment 3 of this disclosure. As shown in Figure 5, the task scheduling method includes: Step S51, obtaining the currently input task scheduling dialogue request, wherein the information carried in the task scheduling dialogue request includes: identification information of the physical processor, which is used to indicate the detection of the physical processor's operating mode to obtain the detection result; Step S52, responding to the task scheduling dialogue request, returning a task scheduling dialogue reply, wherein the information carried in the task scheduling dialogue reply includes: scheduling processing result, which is obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled, wherein the target scheduling priority is determined based on the running bitmap in the running queue structure corresponding to the physical processor in response to the detection result switching the physical processor from physical mode to virtualization mode, and different bits in the running bitmap correspond to different scheduling priorities; Step S53, displaying the scheduling processing result in a graphical user interface. According to the above method steps, a visualization scheme for task scheduling function is provided. The terminal device provides a graphical user interface, which displays at least one task scheduling scenario. The graphical user interface (GUI) also includes input components (such as text input boxes and voice input controls) and display components (such as text display windows). Users input task scheduling requests through the input components to specify the identification information of the physical processor in the task scheduling process. After detecting the user's input, the task scheduling process is executed based on the physical processor's identification information to obtain the scheduling result. Furthermore, the scheduling result is displayed through the display components within the GUI. The aforementioned physical processor can be a computing component in the operating system's physical architecture used to execute computing tasks. When the physical processor's operating mode switches to virtualization mode, it is switched to a virtual processor within the corresponding virtualization architecture of the operating system.It should be noted that the categories of physical processors can include: Central Processing Unit (CPU), Graphics Processing Unit (GPU), Physical Processing Unit (PPU), Math Coprocessor, Digital Signal Processor (DSP), Network Processor Unit (NPU), etc. In application scenarios, there may be situations where the operating mode switches during the operation of the physical processor. Specifically, depending on the scenario requirements, virtualization technology is used to virtualize the physical architecture to obtain a virtualized architecture. At this time, the operating mode of the physical processor switches from physical mode to virtualized mode. In the method steps provided in the embodiments of this disclosure, when the physical processor is detected to be switching to virtualized mode, the running bitmap in the running queue structure corresponding to the physical processor is obtained, and the scheduling priority of multiple tasks in the running queue structure is determined based on multiple bits in the running bitmap. The above method steps can be applied to scenarios involving task scheduling of virtualized architecture in preset application scenarios to enhance the resource utilization and operating performance of the virtualized architecture. The aforementioned preset application scenarios may include, but are not limited to, scenarios involving the use of virtualized operating systems in fields such as e-commerce, education, healthcare, conferencing, social networks, financial products, logistics, and navigation. Correspondingly, the aforementioned physical processor is a pre-configured physical computing unit in the aforementioned preset application scenarios. Based on this, the technical solution provided by the embodiments of this disclosure can provide task scheduling services that consider scheduling priorities for the aforementioned preset application scenarios. In this embodiment of the disclosure, a task scheduling dialogue request is obtained from the current input. The task scheduling dialogue request carries information including: identification information of the physical processor, which indicates that the operating mode of the physical processor is detected to obtain a detection result; in response to the task scheduling dialogue request, a task scheduling dialogue response is returned, wherein the task scheduling dialogue response carries information including: scheduling processing result, which is obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled. The target scheduling priority is determined based on the running bitmap in the running queue structure corresponding to the physical processor, in response to the detection result indicating that the physical processor has switched from physical mode to virtualization mode. Different bits in the running bitmap correspond to different scheduling priorities; the scheduling processing result is displayed in the graphical user interface.It is noteworthy that this disclosure targets processors in virtualization mode. Based on the scheduling priority of the tasks to be scheduled, it schedules the tasks in the target scheduling queue corresponding to the processor. This achieves the goal of considering the scheduling priorities of multiple tasks corresponding to the run queue structure for task scheduling, thereby enhancing the timeliness and accuracy of task scheduling and improving system resource utilization. This solves the technical problems of poor timeliness, accuracy, and low system resource utilization in task scheduling. It should be noted that the preferred embodiments of this example can be found in the relevant descriptions in Embodiment 1 or Embodiment 2, and will not be repeated here. Embodiment 4: According to an embodiment of this disclosure, an apparatus embodiment for implementing the above-described task scheduling method is also provided. Figure 6 is a schematic diagram of a task scheduling device according to Embodiment 4 of this disclosure. As shown in Figure 6, the device includes: a detection module 601, configured to detect the operating mode of the physical processor and obtain a detection result; a determination module 602, configured to, in response to the detection result indicating that the physical processor has switched from physical mode to virtualization mode, determine the target scheduling priority to be scheduled based on the running bitmap in the running queue structure corresponding to the physical processor, wherein different bits in the running bitmap correspond to different scheduling priorities; and a scheduling module 603, configured to perform scheduling processing on the scheduling tasks to be executed in the target scheduling queue corresponding to the target scheduling priority. Optionally, the determination module 602 is further configured to: select a target bit from the running bitmap in the running queue structure corresponding to the physical processor, wherein the position of the target bit in the running bitmap and the value of the target bit satisfy a preset condition, and multiple scheduling priorities corresponding to the running queue structure are sequentially distributed in multiple bits in the running bitmap according to a preset arrangement order; and determine the target scheduling priority to be scheduled based on the target bit. Optionally, the scheduling module 603 is further configured to: select a first scheduling entity corresponding to the scheduling task from the target scheduling queue corresponding to the target scheduling priority, wherein the first scheduling entity is contained in the structure of the scheduling task and is mounted in the target scheduling queue; and run the first scheduling entity based on the target scheduling priority to perform scheduling processing on the scheduling task. Optionally, in the task scheduling device, the structure of the scheduling task includes: a scheduling control field, wherein the scheduling control field is used to record the current scheduling status of the structure of the scheduling task, the scheduling plan of the first scheduling entity, and the running time information of the scheduling plan of the first scheduling entity.Optionally, in addition to all the modules described above, the task scheduling device further includes: a refresh module 604 (not shown in the figure), configured to: calculate the scheduling time slices corresponding to each scheduling entity in the scheduling queues corresponding to different scheduling priorities in response to the target scheduling priority being the lowest scheduling priority among multiple scheduling priorities or the target scheduling queue being set with a refresh flag. Optionally, in addition to all the modules described above, the task scheduling device further includes: a setting module 605 (not shown in the figure), configured to: determine whether a first scheduling entity exists in the target scheduling queue; and set a target bit in the running bitmap in response to the existence of a first scheduling entity in the target scheduling queue. Optionally, in addition to all the modules described above, the task scheduling device further includes: an allocation module 606 (not shown in the figure), configured to: allocate a scheduling time slice to the first scheduling entity in response to the existence of a single scheduling entity in the target scheduling queue; and allocate a scheduling time slice to multiple scheduling entities that include the first scheduling entity in the target scheduling queue. Optionally, in addition to all the modules described above, the task scheduling device further includes: a recording module 607 (not shown in the figure), configured to: determine whether the scheduling time slice allocated to the first scheduling entity has been used up; and, in response to the scheduling time slice allocated to the first scheduling entity not being used up, record the remaining unused time slice in the scheduling time slice, wherein the remaining time slice is used to supplement the scheduling time slice occupied by scheduling tasks corresponding to subsequent scheduling priorities, and the subsequent scheduling priorities are lower than the target scheduling priority. Optionally, the scheduling module 603 is further configured to: determine whether there is a second scheduling entity that meets preset conditions in the virtualization mode, wherein the scheduling urgency of the second scheduling entity is higher than that of the first scheduling entity; and, in response to the absence of a second scheduling entity that meets the preset conditions, select the first scheduling entity corresponding to the scheduling task from the target scheduling queue corresponding to the target scheduling priority. Optionally, in addition to all the modules described above, the task scheduling device further includes: an enqueue module 608 (not shown in the figure), configured to: in response to multiple scheduling entities bound to the physical processor corresponding to the target scheduling priority, perform an enqueue operation on the first scheduling entity to enqueue the first scheduling entity into the target scheduling queue; or, in response to multiple scheduling entities bound to the physical processor corresponding to the target scheduling priority, perform a dequeue operation on the first scheduling entity to dequeue the first scheduling entity from the target scheduling queue.Optionally, the scheduling module 603 is further configured to: parse the first scheduling entity based on the target scheduling priority to obtain the scheduling task corresponding to the target scheduling priority; and schedule the scheduling task according to the target scheduling method corresponding to the target scheduling priority. It should be noted that the detection module 601, determination module 602, and scheduling module 603 correspond to steps S31 to S33 in Embodiment 1. The three modules and their corresponding steps implement the same instances and application scenarios, but are not limited to the content disclosed in Embodiment 1. It should be noted that the modules or units can be hardware or software components stored in a memory (e.g., memory 104) and processed by one or more processors (e.g., processors 102a, 102b, >, 102n). The modules can also run as part of a device in the computer terminal 10 provided in Embodiment 1. According to this disclosure, an apparatus embodiment for implementing the task scheduling method in Embodiment 2 is also provided. Figure 7 is a schematic diagram of another task scheduling device according to Embodiment 4 of this disclosure. As shown in Figure 7, the device includes: an acquisition module 701, configured to acquire a task scheduling request through a first application programming interface, wherein the request data carried in the task scheduling request includes: identification information of the physical processor, the identification information being used to indicate the detection of the physical processor's operating mode to obtain a detection result; and a response module 702, configured to return a task scheduling response through a second application programming interface, wherein the response data carried in the task scheduling response includes: a scheduling processing result, the scheduling processing result being obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled, the target scheduling priority being determined in response to the detection result indicating that the physical processor has switched from physical mode to virtualization mode, based on the running bitmap in the running queue structure corresponding to the physical processor, and different bits in the running bitmap corresponding to different scheduling priorities. It should be noted that the acquisition module 701 and response module 702 mentioned above correspond to steps S41 to S42 in Embodiment 2. The two modules and their corresponding steps implement the same instances and application scenarios, but are not limited to the content disclosed in Embodiment 2. It should be noted that the above modules or units can be hardware or software components stored in memory (e.g., memory 104) and processed by one or more processors (e.g., processors 102a, 102b, ..., 102n). The above modules can also be part of a device and run in the computer terminal 10 provided in Embodiment 1.According to embodiments of this disclosure, an apparatus embodiment for implementing the task scheduling method in embodiment 3 above is also provided. Figure 8 is a schematic diagram of the structure of another task scheduling apparatus according to embodiment 4 of this disclosure. As shown in Figure 8, the apparatus includes: an acquisition module 801, configured to acquire a currently input task scheduling dialogue request, wherein the information carried in the task scheduling dialogue request includes: identification information of the physical processor, the identification information being used to indicate the detection of the physical processor's operating mode to obtain a detection result; a response module 802, configured to respond to the task scheduling dialogue request and return a task scheduling dialogue response, wherein the information carried in the task scheduling dialogue response includes: a scheduling processing result, the scheduling processing result being obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled, the target scheduling priority being determined based on the running bitmap in the running queue structure corresponding to the physical processor in response to the detection result switching the physical processor from physical mode to virtualization mode, and different bits in the running bitmap corresponding to different scheduling priorities; and a display module 803, configured to display the scheduling processing result in a graphical user interface. It should be noted that the acquisition module 801, response module 802, and display module 803 mentioned above correspond to steps S51 to S53 in Embodiment 3. The three modules and the corresponding steps implement the same instances and application scenarios, but are not limited to the content disclosed in Embodiment 3. It should be noted that the above modules or units can be hardware components or software components stored in memory (e.g., memory 104) and processed by one or more processors (e.g., processors 102a, 102b, ..., 102n). The above modules can also be part of the device and run in the computer terminal 10 provided in Embodiment 1. It should be noted that the preferred implementation of this embodiment can be found in the relevant descriptions in Embodiment 1, Embodiment 2, or Embodiment 3, and will not be repeated here. Embodiment 5 According to the embodiments of this disclosure, a computer terminal is also provided. The computer terminal can be any computer terminal device in a group of computer terminals. Optionally, in this embodiment, the above computer terminal can also be replaced by a mobile terminal or other terminal device. Optionally, in this embodiment, the computer terminal may be located in at least one of a plurality of network devices in a computer network.In this embodiment, the computer terminal described above can execute the program code for the following steps in the task scheduling method: detecting the operating mode of the physical processor and obtaining a detection result; responding to the detection result indicating that the physical processor switches from physical mode to virtualization mode, determining the target scheduling priority to be scheduled based on the running bitmap in the running queue structure corresponding to the physical processor, wherein different bits in the running bitmap correspond to different scheduling priorities; and performing scheduling processing on the scheduling tasks to be executed in the target scheduling queue corresponding to the target scheduling priority. Optionally, FIG9 is a structural block diagram of a computer terminal according to Embodiment 5 of this disclosure. As shown in FIG9, the computer terminal 90 may include: one or more (only one is shown in the figure) processors 902, memory 904, storage controller 906, and peripheral interface 908, wherein the peripheral interface 908 is connected to a radio frequency module, an audio module, and a display. The memory 904 can be used to store software programs and modules, such as the program instructions / modules corresponding to the task scheduling method and apparatus in this embodiment. The processor executes various functional applications and data processing by running the software programs and modules stored in the memory, thereby realizing the task scheduling method described above. The memory 904 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 904 may further include memory remotely located relative to the processor, and these remote memories can be connected to the computer terminal 90 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof. The processor 902 can invoke information and application programs stored in the memory via the transmission device to perform the following steps: detecting the operating mode of the physical processor and obtaining a detection result; in response to the detection result indicating that the physical processor has switched from physical mode to virtualization mode, determining the target scheduling priority to be scheduled based on the running bitmap in the running queue structure corresponding to the physical processor, wherein different bits in the running bitmap correspond to different scheduling priorities; and performing scheduling processing on the scheduling tasks to be executed in the target scheduling queue corresponding to the target scheduling priority. Optionally, the processor 902 can also execute program code for the following steps: selecting a target bit from the running bitmap in the running queue structure corresponding to the physical processor, wherein the position of the target bit in the running bitmap and the value of the target bit satisfy a preset condition, and multiple scheduling priorities corresponding to the running queue structure are distributed sequentially in multiple bits of the running bitmap according to a preset arrangement order; and determining the target scheduling priority to be scheduled based on the target bit.Optionally, the processor 902 may also execute program code for the following steps: selecting a first scheduling entity corresponding to a scheduling task from the target scheduling queue corresponding to the target scheduling priority, wherein the first scheduling entity is contained in the structure of the scheduling task and is mounted in the target scheduling queue; running the first scheduling entity based on the target scheduling priority to perform scheduling processing on the scheduling task. Optionally, the processor 902 may also execute program code for the following steps: the structure of the scheduling task includes a scheduling control field, wherein the scheduling control field is used to record the current scheduling state of the structure of the scheduling task, the scheduling plan of the first scheduling entity, and the runtime information of the scheduling plan of the first scheduling entity. Optionally, the processor 902 may also execute program code for the following steps: in response to the target scheduling priority being the lowest among multiple scheduling priorities or the target scheduling queue having a refresh flag set, calculating the scheduling time slice corresponding to each scheduling entity in the scheduling queue corresponding to different scheduling priorities among multiple scheduling priorities. Optionally, the processor 902 may also execute program code that performs the following steps: determining whether a first scheduling entity exists in the target scheduling queue; and setting a target bit in the running bitmap in response to the existence of a first scheduling entity in the target scheduling queue. Optionally, the processor 902 may also execute program code that performs the following steps: allocating a scheduling time slice to the first scheduling entity in response to the existence of a single scheduling entity in the target scheduling queue; and allocating a scheduling time slice to multiple scheduling entities that include the first scheduling entity in the target scheduling queue. Optionally, the processor 902 may also execute program code that performs the following steps: determining whether the scheduling time slice allocated to the first scheduling entity has been used up; and recording the remaining unused time slice in the scheduling time slice in response to the unused scheduling time slice not being used up, wherein the remaining time slice is used to supplement the scheduling time slice occupied by scheduling tasks corresponding to subsequent scheduling priorities, and the subsequent scheduling priorities are lower than the target scheduling priority. Optionally, the processor 902 may also execute program code that performs the following steps: determining whether there is a second scheduling entity that meets preset conditions in the virtualization mode, wherein the scheduling urgency of the second scheduling entity is higher than that of the first scheduling entity; in response to the absence of a second scheduling entity that meets preset conditions, selecting the first scheduling entity corresponding to the scheduling task from the target scheduling queue corresponding to the target scheduling priority.Optionally, the processor 902 may also execute program code that performs the following steps: In response to multiple scheduling entities bound to the physical processor corresponding to the target scheduling priority, perform an enqueue operation on the first scheduling entity to enqueue the first scheduling entity into the target scheduling queue; or, in response to multiple scheduling entities bound to the physical processor corresponding to the target scheduling priority, perform a dequeue operation on the first scheduling entity to dequeue the first scheduling entity from the target scheduling queue. Optionally, the processor 902 may also execute program code that performs the following steps: Parse the first scheduling entity based on the target scheduling priority to obtain the scheduling task corresponding to the target scheduling priority; and schedule the scheduling task according to the target scheduling method corresponding to the target scheduling priority. The processor 902 can invoke information and application programs stored in the memory via the transmission device to perform the following steps: Obtain a task scheduling request through a first application programming interface, wherein the request data carried in the task scheduling request includes: identification information of the physical processor, which is used to indicate the detection of the physical processor's operating mode to obtain the detection result; Return a task scheduling response through a second application programming interface, wherein the response data carried in the task scheduling response includes: a scheduling processing result, which is obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled, wherein the target scheduling priority is determined based on the running bitmap in the running queue structure corresponding to the physical processor in response to the detection result switching the physical processor from physical mode to virtualization mode, and different bits in the running bitmap correspond to different scheduling priorities. The processor 902 can invoke information and application programs stored in the memory via a transmission device to perform the following steps: Obtaining a currently input task scheduling dialog request, wherein the task scheduling dialog request carries information including: identification information of the physical processor, which is used to indicate the detection of the physical processor's operating mode to obtain a detection result; Responding to the task scheduling dialog request, returning a task scheduling dialog response, wherein the task scheduling dialog response carries information including: scheduling processing result, which is obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled, wherein the target scheduling priority is determined based on the running bitmap in the running queue structure corresponding to the physical processor in response to the detection result switching the physical processor from physical mode to virtualization mode, and different bits in the running bitmap correspond to different scheduling priorities; Displaying the scheduling processing result in a graphical user interface. Using this embodiment of the disclosure, a computer terminal for implementing the above-described task scheduling method is provided.By detecting the operating mode of the physical processor, a detection result is obtained. In response to the detection result indicating that the physical processor switches from physical mode to virtualization mode, the target scheduling priority to be scheduled is determined based on the running bitmap in the running queue structure corresponding to the physical processor. Different bits in the running bitmap correspond to different scheduling priorities. Further scheduling processing is performed on the scheduling tasks to be executed in the target scheduling queue corresponding to the target scheduling priority. This disclosure targets processors in virtualization mode, scheduling tasks in the target scheduling queue corresponding to the processor according to the scheduling priority of the task to be scheduled. This achieves the purpose of considering the scheduling priorities of multiple scheduling tasks corresponding to the running queue structure for task scheduling, thereby enhancing the timeliness and accuracy of task scheduling and improving system resource utilization. This solves the technical problems of poor timeliness, accuracy, and low system resource utilization in task scheduling. Those skilled in the art will understand that the structure shown in Figure 9 is only illustrative, and the computer terminal can also be a smartphone (such as an Android phone, iOS phone, etc.), tablet computer, PDA, or mobile internet device (MID), etc. Figure 9 does not limit the structure of the aforementioned computer terminal. For example, computer terminal 90 may also include more or fewer components (such as network interfaces, display devices, etc.) than those shown in FIG. 9, or have a different configuration than those shown in FIG. 9. Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be implemented by a program instructing the hardware related to the terminal device. This program can be stored in a computer-readable storage medium, which may include: flash drive, ROM, RAM, disk, or optical disk, etc. Embodiment 6 According to an embodiment of this disclosure, a computer-readable storage medium is also provided. Optionally, in this embodiment, the storage medium can be used to store the program code executed by the task scheduling method provided in Embodiments 1, 2, or 3. Optionally, in this embodiment, the storage medium can be located in any computer terminal in a group of computer terminals in a computer network, or in any mobile terminal in a group of mobile terminals.Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: detecting the operating mode of the physical processor and obtaining a detection result; in response to the detection result indicating that the physical processor switches from physical mode to virtualization mode, determining the target scheduling priority to be scheduled based on the running bitmap in the running queue structure corresponding to the physical processor, wherein different bits in the running bitmap correspond to different scheduling priorities; and performing scheduling processing on the scheduling tasks to be executed in the target scheduling queue corresponding to the target scheduling priority. Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: selecting a target bit from the running bitmap in the running queue structure corresponding to the physical processor, wherein the position of the target bit in the running bitmap and the value of the target bit satisfy a preset condition, and multiple scheduling priorities corresponding to the running queue structure are sequentially distributed in multiple bits of the running bitmap according to a preset arrangement order; and determining the target scheduling priority to be scheduled based on the target bit. Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: selecting a first scheduling entity corresponding to a scheduling task from the target scheduling queue corresponding to the target scheduling priority, wherein the first scheduling entity is contained in the structure of the scheduling task and is mounted in the target scheduling queue; running the first scheduling entity based on the target scheduling priority to perform scheduling processing on the scheduling task. Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: the structure of the scheduling task includes a scheduling control field, wherein the scheduling control field is used to record the current scheduling state of the structure of the scheduling task, the scheduling plan of the first scheduling entity, and the runtime information of the scheduling plan of the first scheduling entity. Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: in response to the target scheduling priority being the lowest scheduling priority among multiple scheduling priorities or the target scheduling queue being set with a refresh flag, calculating the scheduling time slice corresponding to each scheduling entity in the scheduling queue corresponding to different scheduling priorities among multiple scheduling priorities. Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: determining whether a first scheduling entity exists in the target scheduling queue; and setting a target bit in the running bitmap in response to the existence of a first scheduling entity in the target scheduling queue.Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: In response to the presence of a single scheduling entity in the target scheduling queue, allocating a scheduling time slice to a first scheduling entity; In response to the presence of multiple scheduling entities including the first scheduling entity in the target scheduling queue, allocating scheduling time slices jointly to the multiple scheduling entities. Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: Determining whether the scheduling time slice allocated to the first scheduling entity has been used up; In response to the scheduling time slice allocated to the first scheduling entity not being used up, recording the remaining unused time slices in the scheduling time slices, wherein the remaining time slices are used to supplement the scheduling time slices occupied by scheduling tasks corresponding to subsequent scheduling priorities, and the subsequent scheduling priorities are lower than the target scheduling priority. Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: determining whether a second scheduling entity that meets preset conditions exists in the virtualization mode, wherein the scheduling urgency of the second scheduling entity is higher than that of the first scheduling entity; in response to the absence of a second scheduling entity that meets the preset conditions, selecting a first scheduling entity corresponding to the scheduling task from the target scheduling queue corresponding to the target scheduling priority. Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: in response to multiple scheduling entities corresponding to the target scheduling priority being bound to the physical processor, performing an enqueue operation on the first scheduling entity to enqueue the first scheduling entity to the target scheduling queue; or, in response to multiple scheduling entities corresponding to the target scheduling priority being bound to the physical processor, performing a dequeue operation on the first scheduling entity to dequeue the first scheduling entity from the target scheduling queue. Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: parsing the first scheduling entity based on the target scheduling priority to obtain the scheduling task corresponding to the target scheduling priority; and scheduling the scheduling task according to the target scheduling method corresponding to the target scheduling priority.Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: obtaining a task scheduling request through a first application programming interface, wherein the request data carried in the task scheduling request includes: identification information of the physical processor, the identification information being used to indicate the detection of the physical processor's operating mode to obtain a detection result; returning a task scheduling response through a second application programming interface, wherein the response data carried in the task scheduling response includes: a scheduling processing result, the scheduling processing result being obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled, the target scheduling priority being determined in response to the detection result indicating that the physical processor has switched from physical mode to virtualization mode, based on the running bitmap in the running queue structure corresponding to the physical processor, and different bits in the running bitmap corresponding to different scheduling priorities. Optionally, in this embodiment, the computer-readable storage medium is configured to store program code for performing the following steps: obtaining a currently input task scheduling dialog request, wherein the task scheduling dialog request carries information including: identification information of the physical processor, the identification information being used to indicate the detection of the physical processor's operating mode to obtain a detection result; responding to the task scheduling dialog request, returning a task scheduling dialog response, wherein the task scheduling dialog response carries information including: scheduling processing result, the scheduling processing result being obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled, the target scheduling priority being determined based on the running bitmap in the running queue structure corresponding to the physical processor in response to the detection result switching the physical processor from physical mode to virtualization mode, different bits in the running bitmap corresponding to different scheduling priorities; and displaying the scheduling processing result in a graphical user interface. Using this embodiment of the disclosure, a computer-readable storage medium is provided for implementing the above-described task scheduling method. The physical processor's operating mode is detected, and the detection result is obtained. In response to the detection result indicating that the physical processor has switched from physical mode to virtualization mode, the target scheduling priority to be scheduled is determined based on the running bitmap in the running queue structure corresponding to the physical processor. Different bits in the running bitmap correspond to different scheduling priorities. The scheduling tasks to be executed in the target scheduling queue corresponding to the target scheduling priority are then scheduled.This disclosure targets processors in virtualization mode. Based on the scheduling priority of the tasks to be scheduled, it schedules the tasks in the target scheduling queue corresponding to the processor. This achieves the goal of considering the scheduling priorities of multiple tasks corresponding to the run queue structure for task scheduling, thereby enhancing the timeliness and accuracy of task scheduling and improving system resource utilization. It thus solves the technical problems of poor timeliness, accuracy, and low system resource utilization in task scheduling. According to embodiments of this disclosure, a computer program product is also provided. Optionally, in this embodiment, the computer program product can provide task scheduling services based on the task scheduling method provided in Embodiments 1, 2, or 3. Optionally, in this embodiment, the computer program product can be a set of instructions and code pre-written according to the task scheduling method. This computer program product can run on various computer platforms, including personal computers, servers, mobile devices, etc. Optionally, in this embodiment, the instructions and code corresponding to the computer program product are used to implement the following method steps: detecting the operating mode of the physical processor and obtaining a detection result; responding to the detection result indicating that the physical processor switches from physical mode to virtualization mode, determining the target scheduling priority to be scheduled based on the running bitmap in the running queue structure corresponding to the physical processor, wherein different bits in the running bitmap correspond to different scheduling priorities; and performing scheduling processing on the scheduling tasks to be executed in the target scheduling queue corresponding to the target scheduling priority. Through the above-described computer program product, task scheduling services can be provided in application scenarios involving task scheduling in a virtualized computing environment. For processors in virtualization mode, scheduling tasks in the target scheduling queue corresponding to the processor are scheduled according to the scheduling priority of the task to be scheduled, achieving the purpose of considering the scheduling priorities of multiple scheduling tasks corresponding to the running queue structure for task scheduling. This achieves the technical effect of enhancing the timeliness and accuracy of task scheduling and improving system resource utilization, thereby solving the technical problems of poor timeliness, accuracy, and low system resource utilization in task scheduling. The sequence numbers of the above embodiments are merely for description and do not represent the superiority or inferiority of the embodiments. In the above embodiments of this disclosure, the descriptions of each embodiment are exemplary. Parts not described in detail in a particular embodiment can be referred to in the relevant descriptions of other embodiments. It should be understood that the disclosed technical content can be implemented in other ways within the several embodiments provided in this disclosure.The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, indirect coupling or communication connection between units or modules, and may be electrical or other forms. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs. In addition, the functional units in the various embodiments of this disclosure may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The integrated units described above can be implemented in hardware or as software functional units. If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this disclosure, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this disclosure. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, ROM, RAM, portable hard drives, magnetic disks, or optical disks. The above descriptions are merely preferred embodiments of this disclosure. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principles of this disclosure, and these improvements and modifications should also be considered within the scope of protection of this disclosure.
Claims
25 claims 1. A task scheduling method, comprising: The operating mode of the physical processor is detected, and the detection results are obtained; In response to the detection result indicating that the physical processor has switched from physical mode to virtualization mode, the target scheduling priority to be scheduled is determined based on the running bitmap in the running queue structure corresponding to the physical processor, wherein different bits in the running bitmap correspond to different scheduling priorities. The scheduling tasks to be executed in the target scheduling queue corresponding to the target scheduling priority are scheduled. According to the task scheduling method of claim 1, wherein, Determining the target scheduling priority to be scheduled based on the running bitmap in the running queue structure corresponding to the physical processor includes: selecting a target bit from the running bitmap in the running queue structure corresponding to the physical processor, wherein the position of the target bit in the running bitmap and the value of the target bit satisfy a preset condition, and multiple scheduling priorities corresponding to the running queue structure are distributed sequentially in multiple bits of the running bitmap according to a preset arrangement order; and determining the target scheduling priority to be scheduled based on the target bit.
3. The task scheduling method according to claim 1, wherein, The scheduling process for the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority includes: selecting a first scheduling entity corresponding to the scheduled task from the target scheduling queue corresponding to the target scheduling priority, wherein the first scheduling entity is contained in the structure of the scheduled task and is attached to the target scheduling queue; and running the first scheduling entity based on the target scheduling priority to perform scheduling processing on the scheduled task. According to claim 3, the task scheduling method, wherein, The structure of the scheduling task includes: a scheduling control field, wherein the scheduling control field is used to record the current scheduling status of the structure of the scheduling task, the scheduling plan of the first scheduling entity, and the running time information of the scheduling plan of the first scheduling entity.
5. The task scheduling method according to claim 3, wherein, The task scheduling method further includes: in response to the target scheduling priority being the lowest among multiple scheduling priorities or the target scheduling queue being set with a refresh flag, calculating the scheduling time slices corresponding to each scheduling entity in the scheduling queues corresponding to different scheduling priorities among the multiple scheduling priorities.
6. The task scheduling method according to claim 3, wherein, The task scheduling method further includes: determining whether the first scheduling entity exists in the target scheduling queue; In response to the presence of the first scheduling entity in the target scheduling queue, the target bit is set in the running bitmap.
7. The task scheduling method according to claim 5, wherein, The task scheduling method further includes: in response to the existence of a single scheduling entity in the target scheduling queue, allocating the scheduling time slice to the first scheduling entity; and in response to the existence of multiple scheduling entities including the first scheduling entity in the target scheduling queue, allocating the scheduling time slice to the multiple scheduling entities together.
8. The task scheduling method according to claim 7, wherein, The task scheduling method further includes: determining whether the scheduling time slice allocated to the first scheduling entity has been used up; in response to the scheduling time slice allocated to the first scheduling entity not being used up, recording the remaining unused time slice in the scheduling time slice, wherein the remaining time slice is used to supplement the scheduling time slice occupied by the scheduling task corresponding to the subsequent scheduling priority, and the subsequent scheduling priority is lower than the target scheduling priority.
9. The task scheduling method according to claim 3, wherein, Selecting the first scheduling entity corresponding to the scheduling task from the target scheduling queue corresponding to the target scheduling priority includes: determining whether there is a second scheduling entity that meets preset conditions in the virtualization mode; in response to the absence of a second scheduling entity that meets the preset conditions, selecting the first scheduling entity corresponding to the scheduling task from the target scheduling queue corresponding to the target scheduling priority; wherein the scheduling urgency of the second scheduling entity is higher than that of the first scheduling entity.
10. The task scheduling method according to claim 3, wherein, The task scheduling method further includes: in response to multiple scheduling entities bound to the physical processor corresponding to the target scheduling priority, performing an enqueue operation on the first scheduling entity to enqueue the first scheduling entity to the target scheduling queue; or, in response to multiple scheduling entities bound to the physical processor corresponding to the target scheduling priority, performing a dequeue operation on the first scheduling entity to dequeue the first scheduling entity from the target scheduling queue.
11. The task scheduling method according to claim 3, wherein, The scheduling process for the scheduling task, which is performed by running the first scheduling entity based on the target scheduling priority, includes: parsing the first scheduling entity based on the target scheduling priority to obtain the scheduling task corresponding to the target scheduling priority; and scheduling the scheduling task according to the target scheduling method corresponding to the target scheduling priority.
12. A task scheduling method, comprising: The task scheduling request is obtained through the first application programming interface, wherein... The request data carried in the task scheduling request includes: identification information of the physical processor, which is used to indicate the detection of the physical processor's operating mode to obtain the detection result; and a task scheduling response returned through a second application programming interface, wherein the response data carried in the task scheduling response includes: a scheduling processing result, which is obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled, wherein the target scheduling priority is determined in response to the detection result indicating that the physical processor has switched from physical mode to virtualization mode, based on the running bitmap in the running queue structure corresponding to the physical processor, and different bits in the running bitmap correspond to different scheduling priorities.
13. A task scheduling method, comprising: The system retrieves the currently input task scheduling dialog request, wherein the task scheduling dialog request carries information including: physical processor identification information, which is used to indicate the detection of the physical processor's operating mode to obtain a detection result; in response to the task scheduling dialog request, the system returns a task scheduling dialog response, wherein the task scheduling dialog response carries information including: scheduling processing result, which is obtained by scheduling the scheduled tasks to be executed in the target scheduling queue corresponding to the target scheduling priority to be scheduled, wherein the target scheduling priority is determined based on the running bitmap in the running queue structure corresponding to the physical processor in response to the detection result indicating that the physical processor has switched from physical mode to virtualization mode, and different bits in the running bitmap correspond to different scheduling priorities; and displays the scheduling processing result in the graphical user interface.
14. An electronic device, comprising: Memory, which stores executable programs; A processor for running the program, wherein the program executes the task scheduling method according to any one of claims 1 to 13 when it runs.
15. A computer-readable storage medium comprising a stored executable program, wherein, When the executable program is executed, it controls the device containing the computer-readable storage medium to perform the task scheduling method according to any one of claims 1 to 13.
16. A computer program product comprising a computer program that, when executed by a processor, implements the task scheduling method according to any one of claims 1 to 13.
Citation Information
Patent Citations
CPU virtualization method based on processor partitioning technology
CN101788920A
Virtualization method, apparatus and system
CN106445628A
Method and device for realizing virtual resource scheduling
CN113760455A