CN114911539A - Starting method of running system and computing equipment - Google Patents

Starting method of running system and computing equipment Download PDF

Info

Publication number
CN114911539A
CN114911539A CN202210540257.0A CN202210540257A CN114911539A CN 114911539 A CN114911539 A CN 114911539A CN 202210540257 A CN202210540257 A CN 202210540257A CN 114911539 A CN114911539 A CN 114911539A
Authority
CN
China
Prior art keywords
real
time
operating system
target
kernel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210540257.0A
Other languages
Chinese (zh)
Other versions
CN114911539B (en
Inventor
钟俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Deepin Technology Co ltd
Original Assignee
Wuhan Deepin Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan Deepin Technology Co ltd filed Critical Wuhan Deepin Technology Co ltd
Priority to CN202210540257.0A priority Critical patent/CN114911539B/en
Publication of CN114911539A publication Critical patent/CN114911539A/en
Application granted granted Critical
Publication of CN114911539B publication Critical patent/CN114911539B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention discloses a starting method of an operating system and computing equipment, wherein the method is executed in the starting stage of the operating system, the operating system comprises a kernel, a real-time operating system and a general operating system, and the method comprises the following steps: responding to a request for starting a target operation system, and generating a kernel starting parameter corresponding to the target operation system, wherein the target operation system is a real-time operation system or a general operation system; the kernel starting parameters are transmitted into a kernel, so that the kernel can carry out initialization operation on an operating system based on the kernel starting parameters, and a corresponding operating environment is provided for a target operating system; and initializing a target middleware corresponding to the target operating system based on the kernel starting parameter, and starting a target middleware service program so as to start the target operating system. According to the technical scheme of the invention, the operating system can be started and enters the running system appointed by the user according to the request of the user in the initial stage of starting the operating system.

Description

Starting method of running system and computing equipment
Technical Field
The present invention relates to the field of operating system technologies, and in particular, to a method for starting an operating system and a computing device.
Background
The cloud computing technology improves the utilization rate of hardware resources by carrying out separated management on the resources, greatly reduces the use cost of an IT information system, and simultaneously improves the usability of the system. At present, the mainstream large internet service is based on the infrastructure provided by cloud computing.
With the development of the 5G technology, the internet develops to a deeper and wider field, and the topological distance between a network terminal and a network center is continuously lengthened, so that the timeliness of network application response is influenced. The network terminal is a boundary between the digital world and the physical world, and the network terminal device usually has a requirement on real-time performance, and needs to complete a calculation task and feed back a calculation result within a limited time.
In the prior art, because factors such as cost are considered, the computing capability of the network terminal device is generally weak, and the computing resources of the cloud center are required to be used for completing the computing tasks of the core part, and then the computing tasks of the rest part are completed by the network terminal device. However, the distance between the cloud center and the network terminal is long, so that the real-time performance of the interaction is affected by the network transmission process. Therefore, a new computing method needs to be introduced between the cloud center and the network terminal, that is, at the edge of the cloud, to solve the contradiction between the computing resources and the physical distance.
The multi-time characteristic hybrid operation system is suitable for being applied to an edge computing application scene and can operate a computing task and a real-time task by improving a general operation system from a plurality of layers of a kernel, a middleware and an API. In terms of technical architecture, the multi-time characteristic hybrid operation system is a large extension on the basis of a general-purpose operating system. For a multi-time characteristic hybrid operation system, in consideration of compatibility, debugging and maintenance in the actual use process, a scheme which is applied to the hybrid operation system and can switch between a general operation system and a real-time operation system is needed.
For the hybrid operating system, in order to start and enter the operating system specified by the user according to the user's requirement in the initialization stage of the start of the operating system, a starting method of the operating system is required.
Disclosure of Invention
To this end, the present invention provides a method for starting a running system and a computing device, so as to solve or at least alleviate the above problems.
According to an aspect of the present invention, there is provided a method for starting an operating system, which is executed in a starting stage of the operating system, wherein the operating system includes a kernel, a real-time operating system, and a general operating system, and the method includes the steps of: responding to a request for starting a target operation system, and generating a kernel starting parameter corresponding to the target operation system, wherein the target operation system is a real-time operation system or a general operation system; transmitting the kernel starting parameter into a kernel so that the kernel can carry out initialization operation on an operating system based on the kernel starting parameter and provide a corresponding operating environment for a target operating system; and initializing a target middleware corresponding to the target running system based on the kernel starting parameter, and starting a target middleware service program so as to start the target running system.
Optionally, in the starting method of the operating system according to the present invention, the step of starting the target middleware service program includes: starting and initializing a general service program of an operating system; and starting a target middleware service program corresponding to the target running system through the general service program.
Optionally, in the starting method of the running system according to the present invention, a starting management module is deployed on the operating system; the step of generating the kernel starting parameter corresponding to the target operating system in response to the request for starting the target operating system comprises the following steps: the starting management module responds to a request of a user for starting the target running system and informs a starting loader to start the target running system; the boot loader generates kernel boot parameters corresponding to the target operating system.
Optionally, in the starting method of the running system according to the present invention, passing the kernel start parameter into the kernel includes: the boot loader transfers the kernel boot parameters to the kernel when the kernel is booted.
Optionally, in the starting method of the running system according to the present invention, the step of initializing the target middleware corresponding to the target running system includes: preparing a dependency library corresponding to a target operating system; generating memory access parameters corresponding to the target operating system; and generating core component parameters corresponding to the target operating system.
Optionally, in the starting method of the running system according to the present invention, the target running system is a real-time running system, and the target middleware is a real-time middleware; the step of initializing the real-time middleware corresponding to the real-time running system comprises the following steps: preparing a real-time dependency library corresponding to the real-time operation system; generating memory access parameters corresponding to the real-time operation system; and generating core component parameters of the real-time middleware corresponding to the real-time running system.
Optionally, in the starting method of the running system according to the present invention, the middleware includes a middleware service program, and the real-time middleware service program corresponding to the real-time running system includes: the fast interrupt service program is suitable for interrupting the real-time task which is being executed and carrying out interrupt processing when receiving the interrupt signal; the real-time scheduling service program is suitable for acquiring a real-time task with the highest emergency degree from the real-time task queue by using a real-time scheduling algorithm so as to immediately execute the real-time task with the highest emergency degree; and the real-time operation component is suitable for providing memory management service for the real-time task with the highest emergency degree.
Optionally, in the starting method of the operating system according to the present invention, the kernel is a fusion kernel formed by fusing a real-time kernel and a general kernel.
Optionally, in the starting method of the operating system according to the present invention, the general service program includes: and the network service program comprises one or more of a login service program, a timed task service program and a network service program.
According to an aspect of the invention, there is provided a computing device comprising: at least one processor; a memory storing program instructions, wherein the program instructions are configured to be executed by the at least one processor, the program instructions comprising instructions for performing the startup method of the operating system as described above.
According to an aspect of the present invention, there is provided a readable storage medium storing program instructions that, when read and executed by a computing device, cause the computing device to perform the boot method of the operating system as described above.
According to the technical scheme of the invention, the starting method of the running system is provided, and the operating system is a mixed running system comprising a real-time running system and a universal running system. The starting management module can respond to a request of a user for starting the target running system and inform the starting loader of starting the target running system, the starting loader can generate kernel starting parameters corresponding to the target running system and transmit the kernel starting parameters to the kernel, so that the initialization operation is carried out on the operating system based on the kernel starting parameters, the initialization operation is carried out on the target middleware corresponding to the target running system, the target middleware service program is started, and finally starting and entering the target running system can be achieved. Therefore, according to the technical scheme of the invention, the operating system can be started and enters the running system appointed by the user according to the request of the user in the initialization stage of the early start of the operating system. Therefore, the method and the device can realize switching to the corresponding operation mode of the target operation system based on the requirement of the task on the real-time performance so as to meet the requirement on the real-time performance when the task is executed in different application scenes.
The foregoing description is only an overview of the technical solutions of the present invention, and the embodiments of the present invention are described below in order to make the technical means of the present invention more clearly understood and to make the above and other objects, features, and advantages of the present invention more clearly understandable.
Drawings
To the accomplishment of the foregoing and related ends, certain illustrative aspects are described herein in connection with the following description and the annexed drawings, which are indicative of various ways in which the principles disclosed herein may be practiced, and all aspects and equivalents thereof are intended to be within the scope of the claimed subject matter. The above and other objects, features and advantages of the present disclosure will become more apparent from the following detailed description read in conjunction with the accompanying drawings. Throughout this disclosure, like reference numerals generally refer to like parts or elements.
FIG. 1 shows a schematic diagram of a computing device 100 with a hybrid-run system 120 deployed therein, according to one embodiment of the invention;
FIG. 2 illustrates a schematic diagram of a boot management module 135 deployed in the computing device 100, according to one embodiment of the invention;
FIG. 3 shows a flow diagram of a method 300 for booting a running system according to one embodiment of the invention;
FIG. 4 shows a hardware architecture diagram of a computing device 100, according to one embodiment of the invention.
Detailed Description
Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
FIG. 1 shows a schematic diagram of a hybrid operating system 120 deployed in a computing device 100, according to one embodiment of the invention. According to one application example, the computing device 100 may be, for example, an edge computing server applied in an edge computing domain.
As shown in fig. 1, the computing device 100 may include a hardware layer 110, a hybrid operating system 120, and an application layer 130. In some embodiments, the hybrid-operation system 120 may be a part of the operating system, i.e., the hybrid-operation system 120 is included in the operating system of the computing device 100. In still other embodiments, the operating system of the computing device 100 may be implemented as the hybrid runtime system 120 of the present invention.
Specifically, the application layer 130 may include one or more applications, runtime libraries, and interfaces provided by a hybrid runtime system, and the present invention is not limited to the types and numbers of applications. Developers can also develop applications based on actual business needs. Each application may call an interface provided by the hybrid runtime system to request the business runtime system to perform a task. In one embodiment, the applications include, for example, applications for hybrid environment monitoring, applications for hybrid traffic debugging, applications for hybrid traffic analysis, and the like.
The hardware layer 110 may provide a hardware environment for the operation of hybrid operating systems and applications. The hardware layer 110 may include a processor (CPU), an internal memory, and may further include an external hardware device such as a network card, a hard disk, and a keyboard.
The hybrid operating system 120 can provide a software operating environment for one or more tasks that an application requests to perform, including real-time tasks and computing-type tasks.
The hybrid operating system 120 according to the present invention can simultaneously operate a real-time task and a computing-type task. It should be noted that the real-time task is a task that needs to respond in a predetermined time, for example, a task of controlling a traffic light signal. The computing task is a task which needs to process a large amount of data and has high requirement on computing capacity, such as audio and video processing, database application and the like.
The real-time task and the computing task have different requirements in aspects of interrupt processing, scheduling processing, memory management and the like. Specifically, in terms of interrupt processing, a real-time task needs to execute a task with the highest degree of urgency as soon as possible by interrupt processing; for computational tasks, however, it is undesirable for the currently executing task to be interrupted frequently. In the aspect of scheduling processing, real-time tasks need to be scheduled as soon as possible after an event arrives; for computing services, however, it is undesirable for the currently executing task to be scheduled out frequently. In the memory management method, the real-time tasks need to be stored in the memory completely instead of being replaced by the virtual memory; the computing task needs to fully utilize the virtual memory to realize large-scale data computation because a large amount of data needs to be processed.
In view of the requirements of real-time tasks and computing tasks in terms of interrupt handling, scheduling processing, memory management, etc., the present invention provides a hybrid operating system 120 capable of scheduling and executing real-time tasks and computing tasks simultaneously.
According to an embodiment of the present invention, as shown in fig. 1, the hybrid operating system 120 includes a preemptive kernel 121, an interrupt preprocessing module 122 disposed above the preemptive kernel 121, and an operating system disposed above the interrupt preprocessing module 122. The runtime system includes a real-time runtime system 123 and a general runtime system 124 (non-real-time runtime system), where the real-time runtime system 123 may provide a real-time runtime environment for real-time tasks, and the general runtime system 124 may provide a non-real-time runtime environment for computing tasks.
It should be noted that the preemptive kernel 121 in the present invention adopts a full preemptive kernel to ensure the basic real-time response capability and the fused scheduling capability for resources. Each operating system adopts a complete independent core software stack, so that the two operating systems are mutually isolated, and the independence of real-time tasks and calculation type tasks with different time characteristics during operation is ensured.
In one embodiment, as shown in fig. 1, the hybrid operating system 120 further includes an application domain management module 126 located on the real-time operating system 123 and the general operating system 124, and the application domain management module 126 may provide a unified domain control interface for one or more applications of the upper application layer, so that the applications request execution of tasks by calling the domain control interface. The application domain management module 126 may receive task execution requests sent by one or more applications and assign tasks to corresponding domains for execution according to types of the tasks. That is, when the task is a real-time task, the real-time task is allocated to the real-time running system 123 to be executed, and the real-time running system 123 may provide a real-time running environment for the running of the real-time task. When the task is a computational task, the computational task is assigned to the common run system 124 for execution, and the common run system 124 may provide a common run environment for the execution of the computational task.
According to an embodiment of the present invention, each module in the real-time running system 123 is configured to prioritize the real-time task with the highest urgency, and each module in the general running system 124 is configured to prioritize the computing task with the highest priority.
Specifically, the preemptive core 121 may receive a hardware generated interrupt signal, i.e., a hardware interrupt signal. The hardware interrupt signal is generated automatically by a hardware device (e.g., network card, hard disk, keyboard, etc.) communicatively coupled to the hybrid operating system 120. The preemptive core 121 may then send an interrupt signal from the hardware to the interrupt pre-processing module 122, so that the interrupt signal is distributed to the corresponding running system for processing by the interrupt pre-processing module 122.
The interrupt preprocessing module 122 may determine an interrupt type according to an interrupt signal in response to the interrupt signal generated by hardware, and distribute the interrupt signal to a corresponding running system (the real-time running system 123 or the general running system 124) according to the interrupt type for processing. Here, the interrupt signal includes interrupt source information, and the interrupt preprocessing module 122 may obtain the interrupt source information from the interrupt signal and determine the interrupt type according to the interrupt source information. The interrupt type is to determine whether the most urgent real-time task or the highest priority computing task needs to be executed immediately.
When receiving the interrupt signal, the real-time running system 123 first immediately interrupts the real-time task being executed and performs interrupt processing, and then may obtain the real-time task with the highest urgency from the real-time task queue of the processor (CPU) by using a real-time scheduling algorithm, so that the processor (CPU) immediately executes the real-time task with the highest urgency. In this case, the real-time task corresponding to the highest degree of urgency preempts the use right of the processor. It is understood that, when receiving the interrupt signal, the real-time running system 123 first performs interrupt processing on the task being executed, and then performs scheduling processing.
Upon receiving the interrupt signal, the common operating system 124 first retrieves the highest priority compute-type task from the compute-type task queue of the processor, for example, the highest priority compute-type task may be retrieved from the compute-type task queue based on a fair scheduling algorithm. Further, the executing low priority computing-type task may be interrupted and the interrupt process performed so that the processor immediately executes the highest priority computing-type task.
Further, after selecting the highest priority computing-type task from the computing-type task queue, the common operating system 124 needs to determine whether the selected highest priority computing-type task is an executing computing-type task. If the highest priority computational task is not an executing computational task, indicating that the executing computational task currently belongs to a low priority computational task, then the executing low priority computational task (i.e., the previous highest priority computational task) is interrupted and interrupt processing is performed so that the processor immediately switches to executing the highest priority computational task. At this time, the task corresponding to the highest priority computing type preempts the use right of the processor.
In addition, if the selected highest-priority computing task is the executing computing task, the executing computing task does not need to be interrupted and the interrupt processing does not need to be carried out, so that the situation that the computing task is frequently interrupted is avoided. It will be appreciated that the general purpose operating system 124 first performs a scheduling process upon receiving an interrupt signal and then determines whether interrupt processing is required.
According to one embodiment of the invention, the real-time running system 123 includes a fast interrupt service 1231, a real-time scheduling service 1232, and a real-time running component 1233. During the operation of the most urgent real-time task, the real-time operation component 1233 may provide a memory management service for the operation of the most urgent real-time task.
The fast interrupt service routine 1231 runs on the processor, and the fast interrupt service routine 1231 can interrupt the real-time task being executed and interrupt the processing when receiving the interrupt signal.
Further, the fast interrupt service routine 1231 may be bound to the interrupt handler. The fast interrupt service routine 1231, upon receiving the interrupt signal, may send the interrupt signal to the processor, and the processor may interrupt the real-time task being executed and perform interrupt processing by looking up a corresponding interrupt handler (i.e., the interrupt handler bound to the fast interrupt service routine 1231) from the fast interrupt vector table and sending the interrupt signal to the interrupt handler.
It should be noted that the interrupt processing refers to a processing procedure in which, when a new task requiring priority execution occurs, the processor temporarily suspends execution of the current task and then executes the new task (for example, the real-time task with the highest degree of urgency or the highest-priority computation-type task in the above-described embodiment).
The real-time scheduling service 1232 may use a real-time scheduling algorithm to obtain the most urgent real-time task from the real-time task queue so that the processor immediately executes the most urgent real-time task.
In one embodiment, the real-time scheduling algorithm may be implemented as a minimum slack priority scheduling algorithm, that is, the real-time task with the highest urgency may be obtained from the real-time task queue by using the minimum slack priority scheduling algorithm. It should be noted that the minimum slack priority scheduling algorithm determines the priority of the task according to the degree of urgency (or slack) of the task. For the embodiment of the present invention, the higher the urgency level of the real-time task, the higher the priority level given to the real-time task so as to preferentially execute the real-time task with the highest urgency level. In the real-time task queue, each real-time task is sorted according to the slack from low to high (namely, the urgency is from high to low), wherein the real-time task with the lowest slack (the urgency is the highest) is arranged at the front of the real-time task queue and is scheduled to be executed preferentially. The sag calculation method is as follows: slack in real-time tasks-the time that must be completed-its own run time-the current time. According to this algorithm, when the minimum slack of a real-time task is reduced to 0, the real-time scheduler 1232 must immediately schedule the real-time task to immediately preempt the processor for the task, ensuring that the real-time task is executed and completed as required by the deadline.
According to one embodiment of the invention, the general purpose runtime system 124 includes a general purpose dispatch service program 1242, a threaded interrupt service program 1241, and a general purpose runtime component 1243. The general purpose execution component 1243 may provide memory management services for the highest priority computing task during its execution.
The general scheduler service routine 1242 may, upon receiving the interrupt signal, select and fetch the highest priority computational task from the computational task queue of the processor using a fair scheduling algorithm so that the processor immediately executes the highest priority computational task. In one implementation, the fair scheduling algorithm may be implemented as a CFS scheduling algorithm. The general scheduler service 1242 may select the highest priority computing type task from the task queue of the processor using the CFS scheduling algorithm. Specifically, according to the CFS scheduling algorithm, the general scheduler 1242 always selects the slowest running computing task from the computing task queue as the highest priority computing task, so that the slower running computing task may get more running opportunities.
If the highest priority task is an executing task, the executing task is continued, and it is not necessary to interrupt the executing task.
If the highest priority computational task is not an executing computational task, in other words, the executing computational task is a low priority computational task, then the executing low priority computational task is further interrupted and interrupted by the threaded interrupt service routine 1241.
In one embodiment, the threaded interrupt service routine 1241 runs on top of the processor. The threaded interrupt service routine 1241 may specifically interrupt an executing low-priority computing task and perform interrupt processing according to the following method: the interrupt signal may be sent to a processor by converting the interrupt signal to a corresponding Interrupt Request (IRQ) and looking up one or more interrupt handlers associated with the interrupt request from an interrupt request registry. And, the processor sequentially wakes up one or more processing threads corresponding to the one or more interrupt handlers to interrupt the executing low priority computing type task and perform interrupt processing via the one or more processing threads.
Specifically, the interrupt handler associated with the interrupt request may include a plurality. When the processor searches a plurality of interrupt processing programs associated with the interrupt request from the interrupt request registry, each time one associated interrupt processing program is found, the processor wakes up the processing thread corresponding to the interrupt processing program so as to break the executing low-priority computing task and interrupt the processing through the processing thread, after waiting for the completion of the execution of the processing thread, then searches a next associated interrupt processing program from the interrupt request registry, wakes up a next processing thread corresponding to the next interrupt processing program, and waits for the completion of the execution of the next processing thread. And repeating the steps until the execution of the processing threads corresponding to all the interrupt processing programs related to the interrupt request is completed, thereby completing the interrupt processing.
In addition, in one embodiment, as shown in fig. 1, a domain resource management service program 125 may be further deployed between the real-time running system 123 and the general-purpose running system 124, where the domain resource management service program 125 is configured to separate resources of the real-time running system 123 and the general-purpose running system 124, and ensure isolation of resources and characteristics between the real-time running system 123 and the general-purpose running system 124.
In an embodiment in accordance with the invention, the computing device 100 is configured to perform a boot method 300 of running a system in accordance with the invention. The computing device 100 includes a plurality of program instructions for executing the booting method 300 of the runtime system of the present invention, so that the computing device 100 implements booting of the target runtime system in the operating system booting stage by executing the booting method 300 of the runtime system of the present invention.
The application layer 130 in the computing device 100 also has a boot management module 135 deployed, according to one embodiment of the invention.
FIG. 2 illustrates a schematic diagram of a boot management module 135 deployed in the computing device 100, according to one embodiment of the invention.
As shown in fig. 2, the computing device 100 includes a hardware layer 110, an operating system, and an application layer 130 disposed on top of the operating system, wherein the application layer 130 includes a boot management module 135, a runtime library, and an interface provided by the operating system.
In an embodiment consistent with the invention, the operating system of computing device 100 may be implemented as hybrid runtime system 120 shown in FIG. 1. Specifically, the operating system includes a kernel, a real-time running system 123, and a general-purpose running system 124 (non-real-time running system). The kernel (preemptive kernel) in the operating system may be implemented as a fusion kernel formed based on fusion of a real-time kernel and a general-purpose kernel (non-real-time kernel). The fusion kernel in the invention is a specific realization of the preemptive kernel.
In one embodiment, the hardware layer 110 includes a processor, an internal memory, wherein the boot loader 115 is included in the internal memory. Here, the boot loader 115 is BootLoader, which is a first-stage program running before the kernel of the operating system runs, and may initialize hardware devices and establish a memory space map, so as to bring the software environment and the hardware environment to an appropriate state, so as to prepare a correct environment for finally calling the kernel of the operating system.
FIG. 3 shows a flow diagram of a method 300 for booting a running system, according to one embodiment of the invention. The method 300 is suitable for execution in a computing device 100. In an initialization phase of the operating system startup of the computing device 100, the computing device 100 may start the target operating system by executing the startup method 300 of the operating system according to the present invention, so that the operating system enters the operating mode of the target operating system. Here, the target operation system may be a real-time operation system or a general-purpose operation system.
As shown in FIG. 3, the method 300 includes steps S310-S330.
In step S310, in response to a request for starting the target operating system from a user, kernel start parameters corresponding to the target operating system are generated. Here, the target operating system that the user requests to start may be a real-time operating system or a general-purpose operating system.
Specifically, the boot management module 135 may receive a request from a user to boot the target operating system and, in response to the request from the user to boot the target operating system, notify the boot loader 115 to boot the target operating system. Subsequently, the boot loader 115 generates kernel boot parameters corresponding to the target operating system.
Next, in step S320, the boot loader 115 transfers the kernel start parameter into the kernel, and then the kernel may perform an initialization operation on the operating system based on the kernel start parameter, so as to provide a corresponding running environment for the target running system, and enter the running mode of the target running system.
Specifically, the boot loader 115 starts the kernel after generating the kernel start parameter corresponding to the target operating system, and transfers the kernel start parameter into the kernel when starting the kernel, so that the kernel initializes the operating system based on the kernel start parameter.
It should be noted that the kernel initializes the operating system based on the kernel start parameter, that is, initializes the operating environment required by the target operating system based on the kernel start parameter. In the embodiment of the invention, the real-time running system and the general running system adopt the same fusion kernel, and the difference is that the running environments required by the real-time running system and the general running system are different. Based on this, different environment parameters need to be set for the real-time running system and the general running system to form kernel startup parameters (that is, the environment parameters in the kernel startup parameters corresponding to the real-time running system and the general running system are different), and the initialization operation is performed on the operating system based on the kernel startup parameters, so that a required running environment can be provided for the target running system, so that the operating system enters the running mode of the target running system.
Specifically, when the target operating system requested to be started by the user is a real-time operating system, the kernel starting parameter is a kernel starting parameter corresponding to the real-time operating system, and includes an environment parameter corresponding to an operating environment required by the real-time operating system. The initialization operation is carried out on the operating system based on the kernel starting parameter corresponding to the real-time operating system, so that the corresponding required operating environment can be provided for the real-time operating system, and the operating system can enter a real-time operating mode.
When the target running system requested to be started by the user is a general running system, the kernel starting parameter is a kernel starting parameter corresponding to the general running system, wherein the kernel starting parameter comprises an environment parameter corresponding to a running environment required by the general running system. Initializing the operating system based on the kernel start parameter corresponding to the general operating system, so that a corresponding required operating environment can be provided for the general operating system, and the operating system can enter a non-real-time operating mode.
For example, in one implementation, the kernel start parameters corresponding to the real-time running system are:
kernel/boot/vmlinuz-2.6.17-converge root=/dev/hdc2 ro single env=rt
initrd/boot/initrd.img-2.6.17-converge
the kernel starting parameters corresponding to the general operation system are as follows:
kernel/boot/vmlinuz-2.6.17-converge root=/dev/hdc2 ro single env=tt
initrd/boot/initrd.img-2.6.17-converge
it can be seen that the difference between the kernel start parameters corresponding to the real-time running system and the general running system is the environment parameter env. The environment parameter env ═ rt, rt represents a real time, and indicates that the subsequent operating system is started to enter a real-time running mode, namely, the real-time running system is started. The environment parameter env of the kernel starting parameter corresponding to the general running system is tt, and tt represents a through output, and the subsequent running system is indicated to be started to enter a non-real-time running mode, namely, the general running system is started.
After the initialization operation is performed on the operating system, step S330 is performed.
In step S330, a target middleware corresponding to the target operating system is initialized based on the kernel start parameter, and a target middleware service program is started, so as to start the target operating system.
It should be noted that the middleware is connected between the operating system and the application, so that the operating system and the application communicate with each other. In the technical scheme of the invention, the target middleware corresponding to the target running system is software which is connected between the target running system and the application and is used for the communication between the target running system and the application.
In one embodiment of the invention, the middleware includes an interface, a runtime library, an application domain management module 126, a domain resource management service 125, a real-time running component 1233, a real-time scheduling service 1232, a fast interrupt service 1231, a general running component 1243, a general scheduling service 1242, and a threaded interrupt service 1241.
In one embodiment of the invention, the middleware is distinguished for a real-time running system and a general running system. Specifically, the real-time middleware corresponding to the real-time running system includes an interface, a runtime library, an application domain management module 126, a domain resource management service 125, a real-time running component 1233, a real-time scheduling service 1232, and a fast interrupt service 1231. The real-time middleware service program includes an application domain management module 126, a domain resource management service program 125, a real-time running component 1233, a real-time scheduling service program 1232, and a fast interrupt service program 1231. That is, the real-time middleware includes an interface, a runtime library, and a real-time middleware service program.
The general middleware corresponding to the general operating system includes an interface, a runtime library, an application domain management module 126, a domain resource management service program 125, a general operating component 1243, a general scheduling service program 1242, and a threaded interrupt service program 1241. The generic middleware services include an application domain management module 126, a domain resource management service 125, a generic run component 1243, a generic scheduler service 1242, and a threaded interrupt service 1241. That is, the common middleware includes an interface, a runtime library, and a common middleware server.
It is understood that the common middleware of the real-time middleware and the common middleware includes an interface, a runtime library, an application domain management module 126, and a domain resource management service 125.
It should be noted that the specific execution logic of each middleware and middleware service is described in the foregoing description of the computing device 100, and is not described here in detail.
It should be noted that the target middleware corresponding to the target operating system is initialized based on the kernel start parameter, that is, the operating environment (including the memory) required by the target middleware corresponding to the target operating system is initialized based on the kernel start parameter. The method specifically comprises the following steps: preparing a bottom-layer dependency library corresponding to the target operation system based on the kernel starting parameter; based on the kernel starting parameter, generating a memory access parameter corresponding to the target operation system, so that the target operation system accesses the memory based on the memory access parameter (wherein the memory access parameter corresponding to the real-time operation system can meet the real-time requirement of accessing the memory); and generating core component parameters of the target middleware corresponding to the target running system based on the kernel starting parameters.
It should be noted that the dependency library corresponding to the real-time running system is a real-time dependency library with real-time performance, the dependency library corresponding to the general running system is a general dependency library, and the general dependency library does not have real-time performance, so when the target running system is the real-time running system, the real-time dependency library corresponding to the real-time running system needs to be prepared so as to meet the real-time performance requirement. The real-time operation system has a real-time requirement on accessing the memory, so that when the target operation system is the real-time operation system, the real-time operation system can meet the real-time requirement when accessing the memory based on the corresponding memory access parameter by generating the memory access parameter corresponding to the real-time operation system.
In one embodiment, when the target operating system requested to be started by the user is a real-time operating system, the target middleware is correspondingly real-time middleware. In this embodiment, the initializing a target middleware corresponding to the target operating system (that is, initializing a real-time middleware) specifically includes: preparing a real-time dependency library corresponding to the real-time running system based on the kernel start parameter (i.e., the kernel start parameter corresponding to the real-time running system); generating memory access parameters corresponding to the real-time operation system so as to ensure the real-time performance of the real-time operation system on memory access; and generating core component parameters of the real-time middleware corresponding to the real-time running system.
In one embodiment, after initializing the target middleware corresponding to the target running system based on the kernel starting parameter, starting and initializing a general service program of the operating system, and then starting the target middleware service program corresponding to the target running system via the general service program. Thus, the target running system is started and enters the target running system.
In one embodiment, the general purpose service programs of the operating system may include a login service program, a timed task service program, a network service program, and the like.
According to the technical scheme of the invention, the operating system is a hybrid operating system comprising a real-time operating system and a general operating system. According to the starting method 300 of the operating system of the present invention, the start management module may respond to a request of a user for starting the target operating system, and notify the start loader to start the target operating system, and the start loader may generate the kernel start parameter corresponding to the target operating system and transmit the kernel start parameter to the kernel, so as to perform the initialization operation on the operating system based on the kernel start parameter, perform the initialization operation on the target middleware corresponding to the target operating system, and start the target middleware service program, and finally, start and enter the target operating system may be achieved. Therefore, according to the technical scheme of the invention, the operating system can be started and enters the running system appointed by the user according to the request of the user in the initialization stage of the early start of the operating system. Therefore, the method and the device can realize switching to the corresponding operation mode of the target operation system based on the requirement of the task on the real-time performance so as to meet the requirement on the real-time performance when the task is executed in different application scenes.
FIG. 4 shows a hardware architecture diagram of a computing device 100, according to one embodiment of the invention. As shown in fig. 4, the computing device 100 may include an input device 90, a processor 91, an output device 92, a memory 93, and at least one communication bus 94. The communication bus 94 is used to enable communication connections between the elements. The memory 93 may include a high-speed RAM memory, and may also include a non-volatile storage NVM, such as at least one disk memory, and various program instructions may be stored in the memory 93 for performing various processing functions and implementing the booting method of the operating system in the embodiment of the present invention.
Alternatively, the processor 91 may be implemented by, for example, a Central Processing Unit (CPU), an Application Specific Integrated Circuit (ASIC), a Digital Signal Processor (DSP), a Digital Signal Processing Device (DSPD), a Programmable Logic Device (PLD), a Field Programmable Gate Array (FPGA), a controller, a microcontroller, a microprocessor, or other electronic components, and the processor 91 is coupled to the input device 90 and the output device 92 through a wired or wireless connection.
Alternatively, the input device 90 may include a variety of input devices, such as at least one of a user-oriented user interface, a device-oriented device interface, a software-programmable interface, a camera, and a sensor. Optionally, the device interface facing the device may be a wired interface for data transmission between devices, or may be a hardware plug-in interface (e.g., a USB interface, a serial port, etc.) for data transmission between devices; optionally, the user-facing user interface may be, for example, a user-facing control key, a voice input device for receiving voice input, and a touch sensing device (e.g., a touch screen with a touch sensing function, a touch pad, etc.) for receiving user touch input; optionally, the programmable interface of the software may be, for example, an entry for a user to edit or modify a program, such as an input pin interface or an input interface of a chip; optionally, the transceiver may be a radio frequency transceiver chip with a communication function, a baseband processing chip, a transceiver antenna, and the like. An audio input device such as a microphone may receive voice data. The output device 92 may include a display, a sound, or other output device.
In one embodiment of the invention, computing device 100 includes one or more processors and one or more readable storage media storing program instructions. The program instructions, when configured to be executed by one or more processors, cause a computing device to perform a method of launching a runtime system in an embodiment of the invention.
The various techniques described herein may be implemented in connection with hardware or software or, alternatively, with a combination of both. Thus, the methods and apparatus of the present invention, or certain aspects or portions thereof, may take the form of program code (i.e., instructions) embodied in tangible media, such as removable hard drives, U.S. disks, floppy disks, CD-ROMs, or any other machine-readable storage medium, wherein, when the program is loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the invention.
In the case of program code execution on programmable computers, the mobile terminal generally includes a processor, a storage medium readable by the processor (including volatile and non-volatile memory and/or storage elements), at least one input device, and at least one output device. Wherein the memory is configured to store program code; the processor is configured to execute the inventive startup method of the operating system according to instructions in said program code stored in the memory.
By way of example, and not limitation, readable media may comprise readable storage media and communication media. Readable storage media store information such as computer readable instructions, data structures, program modules or other data. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. Combinations of any of the above are also included within the scope of readable media.
In the description provided herein, algorithms and displays are not inherently related to any particular computer, virtual system, or other apparatus. Various general purpose systems may also be used with examples of this invention. The required structure for constructing such a system will be apparent from the description above. Moreover, the present invention is not directed to any particular programming language. It is appreciated that a variety of programming languages may be used to implement the teachings of the present invention as described herein, and any descriptions of specific languages are provided above to disclose the best mode of the invention.
In the description provided herein, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
Similarly, it should be appreciated that in the foregoing description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various inventive aspects. However, the disclosed method should not be interpreted as reflecting an intention that: that the invention as claimed requires more features than are expressly recited in each claim. Thus, the claims following the detailed description are hereby expressly incorporated into this detailed description, with each claim standing on its own as a separate embodiment of this invention.
Those skilled in the art will appreciate that the modules or units or components of the devices in the examples disclosed herein may be arranged in a device as described in this embodiment or alternatively may be located in one or more devices different from the devices in this example. The modules in the foregoing examples may be combined into one module or may be further divided into multiple sub-modules.
Those skilled in the art will appreciate that the modules in the device in an embodiment may be adaptively changed and disposed in one or more devices different from the embodiment. The modules or units or components of the embodiments may be combined into one module or unit or component, and furthermore they may be divided into a plurality of sub-modules or sub-units or sub-components. All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and all of the processes or elements of any method or apparatus so disclosed, may be combined in any combination, except combinations where at least some of such features and/or processes or elements are mutually exclusive. Each feature disclosed in this specification (including any accompanying claims, abstract and drawings) may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise.
Furthermore, those skilled in the art will appreciate that while some embodiments described herein include some features included in other embodiments, rather than other features, combinations of features of different embodiments are meant to be within the scope of the invention and form different embodiments. For example, in the following claims, any of the claimed embodiments may be used in any combination.
Furthermore, some of the described embodiments are described herein as a method or combination of method elements that can be performed by a processor of a computer system or by other means of performing the described functions. A processor having the necessary instructions for carrying out the method or method elements thus forms a means for carrying out the method or method elements. Further, the elements of the apparatus embodiments described herein are examples of the following apparatus: the means for performing the functions performed by the elements for the purpose of carrying out the invention.
As used herein, unless otherwise specified the use of the ordinal adjectives "first", "second", "third", etc., to describe a common object, merely indicate that different instances of like objects are being referred to, and are not intended to imply that the objects so described must be in a given sequence, either temporally, spatially, in ranking, or in any other manner.
While the invention has been described with respect to a limited number of embodiments, those skilled in the art, having benefit of this description, will appreciate that other embodiments can be devised which do not depart from the scope of the invention as described herein. Furthermore, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter. Accordingly, many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the appended claims. The present invention has been disclosed in an illustrative rather than a restrictive sense with respect to the scope of the invention, as defined in the appended claims.

Claims (11)

1. A starting method of an operating system is executed in the starting stage of the operating system, the operating system comprises a kernel, a real-time operating system and a general operating system, and the method comprises the following steps:
responding to a request for starting a target operation system, and generating a kernel starting parameter corresponding to the target operation system, wherein the target operation system is a real-time operation system or a general operation system;
the kernel starting parameters are transmitted into a kernel, so that the kernel can carry out initialization operation on an operating system based on the kernel starting parameters, and a corresponding operating environment is provided for a target operating system;
and initializing a target middleware corresponding to the target running system based on the kernel starting parameter, and starting a target middleware service program so as to start the target running system.
2. The method of claim 1, wherein the step of launching the target middleware service routine comprises:
starting and initializing a general service program of an operating system;
and starting a target middleware service program corresponding to the target running system through the general service program.
3. The method of claim 1 or 2, wherein a boot management module is deployed on top of the operating system; the step of generating the kernel starting parameter corresponding to the target operating system in response to the request for starting the target operating system comprises the following steps:
the starting management module responds to a request of a user for starting the target running system and informs a starting loader to start the target running system;
the boot loader generates kernel boot parameters corresponding to the target operating system.
4. The method of claim 3, wherein passing the kernel boot parameters into a kernel comprises:
the boot loader transfers the kernel boot parameters to the kernel when the kernel is booted.
5. The method of any one of claims 1-4, wherein initializing target middleware corresponding to the target operating system comprises:
preparing a dependency library corresponding to a target operating system;
generating memory access parameters corresponding to the target operating system;
and generating core component parameters corresponding to the target operating system.
6. The method of any one of claims 1-5, wherein the target operating system is a real-time operating system and the target middleware is real-time middleware; the step of initializing the real-time middleware corresponding to the real-time running system comprises the following steps:
preparing a real-time dependency library corresponding to the real-time operation system;
generating memory access parameters corresponding to the real-time operation system;
and generating core component parameters of the real-time middleware corresponding to the real-time running system.
7. The method of any one of claims 1-6, wherein the middleware comprises a middleware service, and running a real-time middleware service corresponding to the system in real time comprises:
the quick interrupt service program is suitable for interrupting the real-time task which is being executed and carrying out interrupt processing when the interrupt signal is received;
the real-time scheduling service program is suitable for acquiring a real-time task with the highest emergency degree from the real-time task queue by using a real-time scheduling algorithm so as to immediately execute the real-time task with the highest emergency degree;
and the real-time operation component is suitable for providing memory management service for the real-time task with the highest emergency degree.
8. The method of any one of claims 1-7,
the kernel is a fusion kernel formed by fusing a real-time kernel and a general kernel.
9. The method of claim 2, wherein,
the general service program comprises: and the network service program comprises one or more of a login service program, a timed task service program and a network service program.
10. A computing device, comprising:
at least one processor; and
a memory storing program instructions, wherein the program instructions are configured to be adapted to be executed by the at least one processor, the program instructions comprising instructions for performing the method of any of claims 1-9.
11. A readable storage medium storing program instructions that, when read and executed by a computing device, cause the computing device to perform the method of any of claims 1-9.
CN202210540257.0A 2022-05-17 2022-05-17 Starting method of running system and computing equipment Active CN114911539B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210540257.0A CN114911539B (en) 2022-05-17 2022-05-17 Starting method of running system and computing equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210540257.0A CN114911539B (en) 2022-05-17 2022-05-17 Starting method of running system and computing equipment

Publications (2)

Publication Number Publication Date
CN114911539A true CN114911539A (en) 2022-08-16
CN114911539B CN114911539B (en) 2024-05-14

Family

ID=82768019

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210540257.0A Active CN114911539B (en) 2022-05-17 2022-05-17 Starting method of running system and computing equipment

Country Status (1)

Country Link
CN (1) CN114911539B (en)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101894045A (en) * 2010-06-18 2010-11-24 阳坚 Real-time Linux operating system
CN105278940A (en) * 2014-07-08 2016-01-27 北京航空航天大学 Robotic hybrid system application frame based on multi-core processor architecture
CN105786612A (en) * 2014-12-23 2016-07-20 杭州华为数字技术有限公司 Resource management method and apparatus
US20180046468A1 (en) * 2016-08-11 2018-02-15 International Business Machines Corporation Shielding Real-Time Workloads From OS Jitter Due To Expedited Grace Periods
CN109522099A (en) * 2017-09-20 2019-03-26 厦门雅迅网络股份有限公司 Improve the method and its system of non real-time nature operating system real-time
CN110321212A (en) * 2019-07-01 2019-10-11 电子科技大学 Multi-level fusion real-time scheduling method based on earliest Deadline First
CN110347485A (en) * 2019-07-01 2019-10-18 电子科技大学 The multi-level fusion real-time scheduling method of multicore preemptive type based on fixed priority
CN110704070A (en) * 2019-09-30 2020-01-17 北京航空航天大学 Method for constructing DDS communication middleware under partitioned real-time operating system
CN110780935A (en) * 2019-10-31 2020-02-11 深圳市友华软件科技有限公司 Synchronous starting method and device for multi-system fusion product
CN112035172A (en) * 2020-09-03 2020-12-04 腾讯科技(深圳)有限公司 Operating system starting method, device, server and storage medium
CN112988252A (en) * 2021-04-26 2021-06-18 统信软件技术有限公司 Operating system starting method and computing device
CN114296835A (en) * 2021-12-31 2022-04-08 奇安信科技集团股份有限公司 Application program starting method and device

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101894045A (en) * 2010-06-18 2010-11-24 阳坚 Real-time Linux operating system
CN105278940A (en) * 2014-07-08 2016-01-27 北京航空航天大学 Robotic hybrid system application frame based on multi-core processor architecture
CN105786612A (en) * 2014-12-23 2016-07-20 杭州华为数字技术有限公司 Resource management method and apparatus
US20180046468A1 (en) * 2016-08-11 2018-02-15 International Business Machines Corporation Shielding Real-Time Workloads From OS Jitter Due To Expedited Grace Periods
CN109522099A (en) * 2017-09-20 2019-03-26 厦门雅迅网络股份有限公司 Improve the method and its system of non real-time nature operating system real-time
CN110321212A (en) * 2019-07-01 2019-10-11 电子科技大学 Multi-level fusion real-time scheduling method based on earliest Deadline First
CN110347485A (en) * 2019-07-01 2019-10-18 电子科技大学 The multi-level fusion real-time scheduling method of multicore preemptive type based on fixed priority
CN110704070A (en) * 2019-09-30 2020-01-17 北京航空航天大学 Method for constructing DDS communication middleware under partitioned real-time operating system
CN110780935A (en) * 2019-10-31 2020-02-11 深圳市友华软件科技有限公司 Synchronous starting method and device for multi-system fusion product
CN112035172A (en) * 2020-09-03 2020-12-04 腾讯科技(深圳)有限公司 Operating system starting method, device, server and storage medium
CN112988252A (en) * 2021-04-26 2021-06-18 统信软件技术有限公司 Operating system starting method and computing device
CN114296835A (en) * 2021-12-31 2022-04-08 奇安信科技集团股份有限公司 Application program starting method and device

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ROHAN TABISH: ""A real-time scratchpad-centric OS with predictable inter/intra-core communication for multi-core embedded systems"", 《 REAL-TIME SYSTEMS》, vol. 55, no. 4, 29 October 2019 (2019-10-29), pages 850 - 888, XP036907992, DOI: 10.1007/s11241-019-09340-0 *
谢忱: ""基于TrustZone的双操作系统技术研究"", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》, 15 March 2022 (2022-03-15), pages 138 - 509 *
闫茂德, 贺昱曜, 陈金平, 许化龙: "嵌入式实时操作系统内核的设计与实现", 长安大学学报(自然科学版), no. 03, 30 May 2004 (2004-05-30), pages 97 - 101 *

Also Published As

Publication number Publication date
CN114911539B (en) 2024-05-14

Similar Documents

Publication Publication Date Title
EP3761170B1 (en) Virtual machine creation method and apparatus
CN108170503B (en) Method, terminal and storage medium for cross-system android application running
US7774781B2 (en) Storage subsystem access prioritization by system process and foreground application identification
US20100088703A1 (en) Multi-core system with central transaction control
CN114579285B (en) Task running system and method and computing device
CN113196238B (en) Service-aware server-less cloud computing system
CN110489213A (en) A kind of task processing method and processing unit, computer system
US20110219373A1 (en) Virtual machine management apparatus and virtualization method for virtualization-supporting terminal platform
US10275558B2 (en) Technologies for providing FPGA infrastructure-as-a-service computing capabilities
US20240160474A1 (en) Multi-core processor task scheduling method, and device and storage medium
CN111274019A (en) Data processing method and device and computer readable storage medium
CN111443985A (en) Method and equipment for instantiating virtual network function
CN115167996A (en) Scheduling method and device, chip, electronic equipment and storage medium
CN115237556A (en) Scheduling method and device, chip, electronic equipment and storage medium
CN113296874B (en) Task scheduling method, computing device and storage medium
CN115686805A (en) GPU resource sharing method and device, and GPU resource sharing scheduling method and device
CN114637536A (en) Task processing method, computing coprocessor, chip and computer equipment
CN111831408A (en) Asynchronous task processing method and device, electronic equipment and medium
CN115439250A (en) Transaction request processing method and device, storage medium and electronic device
CN114911538B (en) Starting method of running system and computing equipment
CN116414534A (en) Task scheduling method, device, integrated circuit, network equipment and storage medium
CN111310638B (en) Data processing method, device and computer readable storage medium
CN110245027B (en) Inter-process communication method and device
CN114911539B (en) Starting method of running system and computing equipment
CN114911597A (en) Switching method of operation system and computing equipment

Legal Events

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