CN107589993A - A kind of dynamic priority scheduling algorithm based on linux real time operating systems - Google Patents
A kind of dynamic priority scheduling algorithm based on linux real time operating systems Download PDFInfo
- Publication number
- CN107589993A CN107589993A CN201710694888.7A CN201710694888A CN107589993A CN 107589993 A CN107589993 A CN 107589993A CN 201710694888 A CN201710694888 A CN 201710694888A CN 107589993 A CN107589993 A CN 107589993A
- Authority
- CN
- China
- Prior art keywords
- task
- time
- real
- algorithm
- memory module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明涉及一种基于linux实时操作系统的动态优先级调度算法,其特征在于,包括以下步骤:实时任务加入任务队列时,更新当前的恢复时间并获取当前任务的状态,实时任务进入缓存记忆模块;当实时任务超限时,调用SLAD或BACKSLASH算法,并在缓存记忆模块中计数;否则调用EDF算法,并在缓存记忆模块中计数;缓存记忆模块计算设定时间段内实时任务超限的频率;根据实时任务超限的频率决定直接调度SLAD或BACKSLASH算法,或者调度EDF算法,更新任务优先级和下次恢复时间。这样就在处理正常任务负载时有效的利用了EDF算法的优势,易于实现并且较少的占用处理器的资源。
The invention relates to a dynamic priority scheduling algorithm based on a linux real-time operating system, which is characterized in that it comprises the following steps: when a real-time task is added to the task queue, the current recovery time is updated and the state of the current task is obtained, and the real-time task enters the cache memory module ; When the real-time task exceeds the limit, call the SLAD or BACKSLASH algorithm, and count in the cache memory module; otherwise call the EDF algorithm, and count in the cache memory module; the cache memory module calculates the frequency of the real-time task overrun in the set time period; According to the frequency of real-time tasks exceeding the limit, it is decided to directly schedule the SLAD or BACKSLASH algorithm, or schedule the EDF algorithm, and update the task priority and next recovery time. In this way, the advantages of the EDF algorithm are effectively used when dealing with normal task loads, which are easy to implement and occupy less processor resources.
Description
技术领域technical field
本发明属于实时操作系统技术领域,具体涉及一种基于linux实时操作系统的动态优先级调度算法。The invention belongs to the technical field of real-time operating systems, and in particular relates to a dynamic priority scheduling algorithm based on a linux real-time operating system.
背景技术Background technique
在众多的实时操作系统中,基于Linux的实时操作系统,由于开放源代码,以及Linux系统的稳定性,日益受到人们的欢迎。但Linux本身并不是真正的实时操作系统,必须通过对Linux操作系统作相应的改进,提高它的实时性,使之具有满足实时系统要求的实时性和可靠性。Among many real-time operating systems, Linux-based real-time operating systems are increasingly popular due to the open source code and the stability of Linux systems. But Linux itself is not a real real-time operating system. It must improve its real-time performance by making corresponding improvements to the Linux operating system, so that it has the real-time and reliability that meet the requirements of real-time systems.
实时系统的行为正确性不仅取决于结算结果的正确性,还取决于得到这个结果所花费的时间。实时系统的基本特性是任务响应时间的确定性和系统处理任务的高吞吐量。实时系统的应用领域十分广泛,不同的应用对时间确定性的要求也不同。除了必须具备响应时间确定性以外,实时系统其它的重要特性包括并发性、可预测性和可靠性。并发性是指实时系统必须能够在规定时段内处理多个外部输入。可预测性实质上是对响应时间确定性的保证。外部输入的本质是并发和随机分布,每一个输入触发实时系统产生相应的动作,而这些动作的流程、所需的处理器时间是可预知的。只有在这种情况下才能保证响应时间的确定性。The correct behavior of a real-time system depends not only on the correctness of the settlement result, but also on the time it takes to obtain this result. The fundamental properties of real-time systems are the determinism of task response time and the high throughput of system processing tasks. The application fields of real-time systems are very extensive, and different applications have different requirements for time determinism. Besides having to have deterministic response times, other important properties of real-time systems include concurrency, predictability, and reliability. Concurrency means that a real-time system must be able to handle multiple external inputs within a specified period of time. Predictability is essentially a guarantee of response time determinism. The nature of external input is concurrency and random distribution. Each input triggers the real-time system to generate corresponding actions, and the flow of these actions and the required processor time are predictable. Deterministic response times are only guaranteed in this case.
实时调度算法是实时系统解决并发和保证可预测性的基本手段。实时调度算法根据调度策略为并发的外部输入确定处理顺序,并按照该顺序为每一个处理操作分配系统资源。实时调度算法的另一个主要功能是根据可调度条件确定系统现有资源是否满足处理操作的时间确定性。与通用调度算法不同,实时调度算法首先保证所有就绪处理操作均能在规定时限前结束,其次才是尽可能多地处理外部事件以提高系统的资源利用率。如何在保证时间确定性的前提下提高系统资源利用率是实时调度算法研究的热点问题。Real-time scheduling algorithm is the basic means for real-time systems to solve concurrency and ensure predictability. The real-time scheduling algorithm determines the processing sequence for the concurrent external input according to the scheduling strategy, and allocates system resources for each processing operation according to the sequence. Another main function of the real-time scheduling algorithm is to determine whether the existing resources of the system meet the time certainty of processing operations according to the schedulable conditions. Different from the general scheduling algorithm, the real-time scheduling algorithm first ensures that all ready processing operations can be completed before the specified time limit, and then processes as many external events as possible to improve the resource utilization of the system. How to improve the utilization of system resources on the premise of ensuring time determinism is a hot issue in the research of real-time scheduling algorithms.
经典的EDF(Earliest Deadline First)算法是一种基于优先级的动态调度算法,这种算法虽然能够保证在出现某个任务的最终期限不能满足之前,不存在处理器的空闲时间,从而尽可能的保证任务调度的实时性,理论上可对可调度负载进行优化,但它不能解决过载问题。一旦发生过载,就会导致CPU将大量时间花费在调度上,导致性能迅速退化。The classic EDF (Earliest Deadline First) algorithm is a priority-based dynamic scheduling algorithm. Although this algorithm can ensure that there is no idle time for the processor before the deadline of a certain task cannot be met, so as possible Guaranteeing the real-time nature of task scheduling can theoretically optimize the schedulable load, but it cannot solve the overload problem. Once overload occurs, it will cause the CPU to spend a lot of time on scheduling, resulting in rapid performance degradation.
另外,EDF调度算法采用的是非抢占式的调度策略,在内核分配给实时任务的时间片内,实时任务在执行时间到来之前就能完成了任务。这样,在空余的时间片内别的任务是不可以抢占内核,CPU在这一段的空闲时间内有可能是空闲的,这就会造成了实时任务的延误。另一方面一个实时任务超出任务执行时间后,任务并没有完成,则在下一周期内以当前的最高优先级继续抢占内核,会造成了后续的实时任务执行时间的顺延,由此形成的“多米诺骨牌”效应会使多个进程超出任务最后截止时间,而导致任务系统的崩溃。In addition, the EDF scheduling algorithm adopts a non-preemptive scheduling strategy. In the time slice allocated by the kernel to the real-time task, the real-time task can complete the task before the execution time arrives. In this way, other tasks cannot preempt the core in the spare time slice, and the CPU may be idle during this period of idle time, which will cause delays in real-time tasks. On the other hand, after a real-time task exceeds the task execution time and the task is not completed, it will continue to preempt the core with the current highest priority in the next cycle, which will cause the delay of the subsequent real-time task execution time, thus forming a "domino" The domino effect will cause multiple processes to exceed the deadline of the task, resulting in the collapse of the task system.
针对以上问题的出现,Lin和Brandt基于ISM思想,提出了SLAD(SLACK Donation)算法和BACKSLASH(BACK SLACK Donation)算法。ISM的思路是将实时任务分别分配到几个同级别服务级,各个服务按照一定比例分配CPU,如果某个服务上的实时任务超限继续运行下去,则占用该服务的CPU,并顺延该服务上的其它实时任务。这种策略不考虑任务间的影响,对减小截止期错失率DMR(deadline miss ratio)有一定效果。In response to the above problems, Lin and Brandt proposed the SLAD (SLACK Donation) algorithm and the BACKSLASH (BACK SLACK Donation) algorithm based on the ISM idea. The idea of ISM is to allocate real-time tasks to several service levels of the same level, and each service allocates CPU according to a certain ratio. If the real-time task on a service continues to run beyond the limit, the CPU of the service will be occupied and the service will be postponed. other real-time tasks on the This strategy does not consider the impact between tasks, and has a certain effect on reducing the deadline miss rate DMR (deadline miss ratio).
虽然SLAD和BACKSLASH算法可以让一个超预算的任务更好的动态分配剩余时间和在处理从下一个周期借入时间片,这样就能解决系统的实时任务(超限)overrun问题。但是由于对时限任务有一个预先的判断,以便决定是否采用动态分配剩余时间和在处理从下一个周期借入时间片。这样就会占用处理器的资源,当不是频繁出现实时任务超限的情况时;这种调度是效率不高的。Although the SLAD and BACKSLASH algorithms can allow an over-budget task to better dynamically allocate the remaining time and borrow time slices from the next cycle during processing, this can solve the real-time task (overrun) overrun problem of the system. However, because there is a pre-judgment for time-limited tasks, it is necessary to decide whether to use dynamic allocation of remaining time and borrow time slices from the next cycle during processing. This will occupy the resources of the processor, when the real-time task is not frequently exceeded; this kind of scheduling is not efficient.
由以上可知,上述两种类型算法单独应用于Linux实时操作系统中时,均无法满足实时系统要求的实时性和可靠性的要求。此为现有技术中的不足之处。It can be known from the above that when the above two types of algorithms are applied to the Linux real-time operating system alone, they cannot meet the real-time and reliability requirements of the real-time system. This is the weak point in the prior art.
发明内容Contents of the invention
本发明的目的在于,针对上述现有技术存在的问题,提出一种基于linux实时操作系统的动态优先级调度算法,以解决上述技术问题。The object of the present invention is, aim at the problem that above-mentioned prior art exists, propose a kind of dynamic priority scheduling algorithm based on linux real-time operating system, to solve above-mentioned technical problem.
为了达到上述目的,本发明的技术方案是:In order to achieve the above object, technical scheme of the present invention is:
一种基于linux实时操作系统的动态优先级调度算法,包括以下步骤:A kind of dynamic priority scheduling algorithm based on linux real-time operating system, comprises the following steps:
实时任务加入任务队列时,更新当前的释放时间并获取当前任务的状态,实时任务进入缓存记忆模块;When a real-time task is added to the task queue, the current release time is updated and the status of the current task is obtained, and the real-time task enters the cache memory module;
当实时任务超限时,调用SLAD或BACKSLASH算法,并在缓存记忆模块中计数;否则调用EDF算法,并在缓存记忆模块中计数;When the real-time task exceeds the limit, call the SLAD or BACKSLASH algorithm and count in the cache memory module; otherwise call the EDF algorithm and count in the cache memory module;
缓存记忆模块计算设定时间段内实时任务超限的频率;根据实时任务超限的频率决定直接调度SLAD或BACKSLASH算法,或者调度EDF算法,更新任务优先级和下次恢复时间。The cache memory module calculates the frequency of real-time tasks exceeding the limit within a set period of time; according to the frequency of real-time tasks exceeding the limit, it decides to directly schedule the SLAD or BACKSLASH algorithm, or schedule the EDF algorithm, and update the task priority and next recovery time.
所述设定时间段为若干工作周期。The set time period is several working cycles.
进一步的,该算法还包括以下步骤:Further, the algorithm also includes the following steps:
在所有状态任务中选取一个优先级最高的任务作为抢占任务,在有效状态的任务中选取优先级最高的任务作为可能切换的任务;Select a task with the highest priority among all state tasks as the preemptive task, and select the task with the highest priority among the tasks in the effective state as the task that may be switched;
判断若可能切换的任务和抢占任务相同,则下一次作业调度时间设置为可能切换任务的释放时间,否则将可能切换任务的释放时间和抢占任务的释放时间比较,较小值作为下一次作业调度时间;Judging that if the task that may be switched is the same as the preempting task, the next job scheduling time is set as the release time of the possible switching task, otherwise the release time of the possible switching task is compared with the release time of the preempting task, and the smaller value is used as the next job scheduling time;
进行作业切换。Perform job switching.
进一步的,缓存记忆模块设置一个任务期望e,用来对剩余的时间片和可能会借入的时间片的情况做预先的判断,当任务的期望越高,调度SLAD算法或BACKSLASH算法级别就越高;对期望e设置了KC系数,用来对期望e做出调节。Furthermore, the cache memory module sets a task expectation e, which is used to pre-judge the remaining time slices and possible borrowed time slices. When the task expectation is higher, the scheduling SLAD algorithm or BACKSLASH algorithm level is higher. ; The K C coefficient is set for the expected e, which is used to adjust the expected e.
进一步的,0≤KC≤1,根据设定时间发生分配剩余时间和借入时间片的任务的概率动态的分配;若设定时间内完全不发生上述这种任务,这个系数KC的值就会取0,直接调用EDF算法。Further, 0 ≤ K C ≤ 1, according to the probability of assigning the remaining time and borrowing time slice tasks in the set time, the dynamic allocation is done; if the above tasks do not occur at all within the set time, the value of this coefficient K C will be It will take 0 and directly call the EDF algorithm.
进一步的,SLAD算法优先级计算公式是:Further, the formula for calculating the priority of the SLAD algorithm is:
vdeadline=[t/p]*p+d 式(1)vdeadline=[t/p]*p+d formula (1)
BACKSLASH算法优先级计算公式是:The formula for calculating the priority of the BACKSLASH algorithm is:
vdeadline=ds,k-[(ds,k-t)/p]*p 式(2)vdeadline=d s,k -[(d s,k -t)/p]*p formula (2)
其中,t为当前时间,p为该任务周期,d为该任务周期内截止期限,vdeadline最小的任务优先级最高。Among them, t is the current time, p is the task period, d is the deadline in the task period, and the task with the smallest vdeadline has the highest priority.
进一步的,EDF算法任务集可调度的条件为:Further, the schedulable conditions of the EDF algorithm task set are:
任务集τ={T1,T2,…Tn},其中Ti=(ei,di,pi,ri),ei表示周期内的执行时间,di表示完成实现,pi表示周期大小,ri表示该任务的初始释放时刻,即任务投入运行的时刻;Task set τ={T 1 , T 2 ,…Tn}, where T i =(e i , d i , p i , r i ), e i represents the execution time in the cycle, d i represents the completion of realization, p i Indicates the period size, r i indicates the initial release time of the task, that is, the time when the task is put into operation;
其中ei,di,pi为正实数,ri为非负实数;任务周期与截止实现相同,即di=ri时, Where e i , d i , p i are positive real numbers, and ri is a non-negative real number; the task period is the same as the cut-off implementation, that is, when d i = r i ,
本发明的有益效果在于,缓存记忆模块根据一段时间内发生的实时任务超限的频率决定直接调度SLAD或BACKSLASH算法,反之调用EDF调度算法。这样就在处理正常任务负载时有效的利用了EDF算法的优势,易于实现并且较少的占用处理器的资源。在直接调度SLAD或BACKSLASH算法时它能高效的处理实时任务的超限问题。缓存记忆模块设置任务期望e,它用来对剩余的时间片和可能会借入的时间片的情况做出一个预先的判断。当这种任务(分配剩余时间和借入时间片)的期望越高,它所给与调度SLAD或BACKSLASH算法级别就越高。在通常的情况之下这种任务也许并不会频繁的发生。于是对期望e设置了一个KC系数,它用来对期望e做出一个调节,它根据一段时间发生这种任务的概率所动态的分配。当一段时间完全不发生这种任务,这个系数KC的值就会取0。从而转入到直接调用EDF算法。很好的解决了传统算法所不能解决的过载问题,并保证了系统调度的正确性和实时性,大大提高了系统的调度效率。The beneficial effect of the present invention is that the cache memory module decides to directly schedule the SLAD or BACKSLASH algorithm according to the frequency of the overrun of the real-time task occurring within a period of time, and vice versa calls the EDF scheduling algorithm. In this way, the advantages of the EDF algorithm are effectively used when dealing with normal task loads, which are easy to implement and occupy less processor resources. When directly scheduling SLAD or BACKSLASH algorithms, it can efficiently handle the overrun problem of real-time tasks. The cache memory module sets the task expectation e, which is used to make a pre-judgment on the remaining time slices and possible borrowed time slices. When the expectation of this kind of task (allocation of remaining time and borrowing time slice) is higher, the scheduling SLAD or BACKSLASH algorithm level it gives is higher. Under normal circumstances, such tasks may not occur frequently. Therefore, a K C coefficient is set for the expectation e, which is used to adjust the expectation e, and it is dynamically allocated according to the probability of such a task occurring in a period of time. When this task does not occur at all for a period of time, the value of this coefficient K C will take 0. Thus, it is transferred to directly calling the EDF algorithm. It solves the overload problem that cannot be solved by traditional algorithms, and ensures the correctness and real-time performance of system scheduling, greatly improving the scheduling efficiency of the system.
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。In addition, the design principle of the present invention is reliable, the structure is simple, and has very wide application prospects.
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著地进步,其实施的有益效果也是显而易见的。It can be seen that, compared with the prior art, the present invention has outstanding substantive features and remarkable progress, and the beneficial effects of its implementation are also obvious.
附图说明Description of drawings
图1为本发明提供的一种基于linux实时操作系统的动态优先级调度算法的算法流程图。FIG. 1 is an algorithm flow chart of a dynamic priority scheduling algorithm based on a linux real-time operating system provided by the present invention.
具体实施方式detailed description
下面结合附图并通过具体实施例对本发明进行详细阐述,以下实施例是对本发明的解释,而本发明并不局限于以下实施方式。The present invention will be described in detail below with reference to the accompanying drawings and specific embodiments. The following embodiments are explanations of the present invention, but the present invention is not limited to the following embodiments.
如图1所示,本实施例提供的一种基于linux实时操作系统的动态优先级调度算法,包括以下步骤:As shown in Figure 1, a kind of dynamic priority scheduling algorithm based on linux real-time operating system provided by the present embodiment comprises the following steps:
实时任务加入任务队列时,更新当前的释放时间并获取当前任务的状态,实时任务进入缓存记忆模块;When a real-time task is added to the task queue, the current release time is updated and the status of the current task is obtained, and the real-time task enters the cache memory module;
当实时任务超限时,调用SLAD或BACKSLASH算法,并在缓存记忆模块中计数;否则调用EDF算法,并在缓存记忆模块中计数;When the real-time task exceeds the limit, call the SLAD or BACKSLASH algorithm and count in the cache memory module; otherwise call the EDF algorithm and count in the cache memory module;
缓存记忆模块计算设定时间段内实时任务超限的频率;根据实时任务超限的频率决定直接调度SLAD或BACKSLASH算法,或者调度EDF算法,更新任务优先级和下次恢复时间。所述设定时间段为若干工作周期。The cache memory module calculates the frequency of real-time tasks exceeding the limit within a set period of time; according to the frequency of real-time tasks exceeding the limit, it decides to directly schedule the SLAD or BACKSLASH algorithm, or schedule the EDF algorithm, and update the task priority and next recovery time. The set time period is several working cycles.
任务调度算法具体步骤如下:The specific steps of the task scheduling algorithm are as follows:
步骤31:实时任务加入任务队列时更新当前的时间释放时间获取当前任务的状态,实时任务进入缓存记忆模块环节KC*e;Step 31: When the real-time task is added to the task queue, update the current time release time to obtain the status of the current task, and the real-time task enters the cache memory module link K C *e;
步骤32:根据缓存记录的任务过载和正常调度的次数,判断实时任务是否超限选择更新任务优先级的方法;Step 32: According to the number of task overload and normal scheduling recorded in the cache, determine whether the real-time task exceeds the limit and select a method for updating the task priority;
步骤33:更新任务优先级后,根据任务本周期的工作状态将任务进行分类,对于一个周期没有完成工作的任务,状态设为active,对于一个周期完成工作的任务状态设为inactive;Step 33: After updating the task priority, classify the tasks according to the working status of the tasks in this cycle. For the tasks that have not completed the work in one cycle, the state is set to active, and for the tasks that have completed the work in one cycle, the state is set to inactive;
步骤34:在所有的active状态的任务中选取一个优先级最高的任务作为可能切换的任务,并保存到next变量中,在所有状态任务中选取一个优先级最高的任务作为抢占任务,并保存到preemptor变量中,判断,若变量next和变量preemptor相等,则下一次作业调度时间将变量preempt_time设置为变量next的释放时间resume-time,否则将变量preempt_time设置为next的释放时间resume-time和preemptor的释放时间resume-time比较,较小值作为下一次作业调度时间;进行作业切换。Step 34: Select a task with the highest priority among all active state tasks as a possible switching task, and save it in the next variable, select a task with the highest priority among all state tasks as the preemptive task, and save it in In the preemptor variable, judge that if the variable next is equal to the variable preemptor, the next job scheduling time will set the variable preempt_time to the release time resume-time of the variable next, otherwise set the variable preempt_time to the release time resume-time of next and the release time of the preemptor Release time resume-time comparison, the smaller value is used as the next job scheduling time; perform job switching.
选择更新任务优先级的方法包括:Options for updating task priorities include:
若实时任务超限时调用SLAD算法更新任务优先级,并对记忆环节累加计数;若实时任务没有超限时调用EDF算法更新任务优先级,同时对记忆环节累加计数。If the real-time task exceeds the limit, the SLAD algorithm is called to update the task priority, and the memory link is counted up; if the real-time task is not overrun, the EDF algorithm is called to update the task priority, and the memory link is counted up.
缓存记忆模块设置一个任务期望e,用来对剩余的时间片和可能会借入的时间片的情况做预先的判断,当任务的期望越高,调度SLAD级别就越高;对期望e设置了一个KC系数,用来对期望e做出一个调节。The cache memory module sets a task expectation e, which is used to pre-judge the remaining time slices and the time slices that may be borrowed. When the task expectation is higher, the scheduling SLAD level is higher; set a task expectation e The K C coefficient is used to make an adjustment to the expected e.
0≤KC≤1,根据设定时间发生分配剩余时间和借入时间片的任务的概率动态的分配;若设定时间内完全不发生上述这种任务,这个系数KC的值就会取0,直接调用EDF算法。0≤K C ≤1, according to the probability of assigning the remaining time and the task of borrowing time slices according to the set time; if the above tasks do not occur at all within the set time, the value of this coefficient K C will be 0 , call the EDF algorithm directly.
SLAD算法优先级计算公式是:The formula for calculating the priority of the SLAD algorithm is:
vdeadline=[t/p]*p+dvdeadline=[t/p]*p+d
其中,t为当前时间,p为该任务周期,d为该任务周期内截止期限,vdeadline最小的任务优先级最高。Among them, t is the current time, p is the task period, d is the deadline in the task period, and the task with the smallest vdeadline has the highest priority.
EDF算法任务集可调度的条件为:The schedulable conditions for the EDF algorithm task set are:
任务集τ={T1,T2,…Tn},其中Ti=(ei,di,pi,ri),ei表示周期内的执行时间,di表示完成实现,pi表示周期大小,ri表示该任务的初始释放时刻,即任务投入运行的时刻;Task set τ={T 1 , T 2 ,…Tn}, where T i =(e i , d i , p i , r i ), e i represents the execution time in the cycle, d i represents the completion of realization, p i Indicates the period size, r i indicates the initial release time of the task, that is, the time when the task is put into operation;
其中ei,di,pi为正实数,ri为非负实数;任务周期与截止实现相同,即di=ri时, Where e i , d i , p i are positive real numbers, and ri is a non-negative real number; the task period is the same as the cut-off implementation, that is, when d i = r i ,
以上公开的仅为本发明的优选实施方式,但本发明并非局限于此,任何本领域的技术人员能思之的没有创造性的变化,以及在不脱离本发明原理前提下所作的若干改进和润饰,都应落在本发明的保护范围内。The above disclosure is only a preferred embodiment of the present invention, but the present invention is not limited thereto, any non-creative changes that those skilled in the art can think of, and some improvements and modifications made without departing from the principle of the present invention , should fall within the protection scope of the present invention.
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710694888.7A CN107589993A (en) | 2017-08-15 | 2017-08-15 | A kind of dynamic priority scheduling algorithm based on linux real time operating systems |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710694888.7A CN107589993A (en) | 2017-08-15 | 2017-08-15 | A kind of dynamic priority scheduling algorithm based on linux real time operating systems |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107589993A true CN107589993A (en) | 2018-01-16 |
Family
ID=61043146
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710694888.7A Pending CN107589993A (en) | 2017-08-15 | 2017-08-15 | A kind of dynamic priority scheduling algorithm based on linux real time operating systems |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107589993A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109165089A (en) * | 2018-09-21 | 2019-01-08 | 成都理工大学 | A kind of overload real-time system based on MaxSAT optimal solution can not preemption scheduling method |
CN111176637A (en) * | 2019-12-11 | 2020-05-19 | 西北工业大学 | Schedulability analysis method of AADL model based on cache preemption delay constraint |
CN113010273A (en) * | 2021-03-23 | 2021-06-22 | 河北冀联人力资源服务集团有限公司 | Human resource data distributed task processing method and system |
CN113296874A (en) * | 2020-05-29 | 2021-08-24 | 阿里巴巴集团控股有限公司 | Task scheduling method, computing device and storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5995745A (en) * | 1996-12-23 | 1999-11-30 | Yodaiken; Victor J. | Adding real-time support to general purpose operating systems |
CN101339521A (en) * | 2008-07-28 | 2009-01-07 | 华中科技大学 | A Dynamic Scheduling Algorithm of Task Priority |
CN102779047A (en) * | 2012-07-09 | 2012-11-14 | 哈尔滨工程大学 | Embedded software support platform |
-
2017
- 2017-08-15 CN CN201710694888.7A patent/CN107589993A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5995745A (en) * | 1996-12-23 | 1999-11-30 | Yodaiken; Victor J. | Adding real-time support to general purpose operating systems |
CN101339521A (en) * | 2008-07-28 | 2009-01-07 | 华中科技大学 | A Dynamic Scheduling Algorithm of Task Priority |
CN102779047A (en) * | 2012-07-09 | 2012-11-14 | 哈尔滨工程大学 | Embedded software support platform |
Non-Patent Citations (3)
Title |
---|
余祖峰 等: ""EDF调度算法的实时性改进"", 《广西工学院学报》 * |
余祖峰: ""嵌入式Lunux操作系统调度算法研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
余祖峰等: ""基于ISM的动态优先级调度算法"", 《计算机工程》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109165089A (en) * | 2018-09-21 | 2019-01-08 | 成都理工大学 | A kind of overload real-time system based on MaxSAT optimal solution can not preemption scheduling method |
CN109165089B (en) * | 2018-09-21 | 2021-10-29 | 成都理工大学 | A non-preemptive scheduling method for overloaded real-time systems based on MaxSAT optimal solution |
CN111176637A (en) * | 2019-12-11 | 2020-05-19 | 西北工业大学 | Schedulability analysis method of AADL model based on cache preemption delay constraint |
CN111176637B (en) * | 2019-12-11 | 2023-01-13 | 西北工业大学 | Schedulability analysis method of AADL model based on cache preemption delay constraint |
CN113296874A (en) * | 2020-05-29 | 2021-08-24 | 阿里巴巴集团控股有限公司 | Task scheduling method, computing device and storage medium |
CN113296874B (en) * | 2020-05-29 | 2022-06-21 | 阿里巴巴集团控股有限公司 | Task scheduling method, computing device and storage medium |
CN113010273A (en) * | 2021-03-23 | 2021-06-22 | 河北冀联人力资源服务集团有限公司 | Human resource data distributed task processing method and system |
CN113010273B (en) * | 2021-03-23 | 2022-07-19 | 河北冀联人力资源服务集团有限公司 | Human resource data distributed task processing method and system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Singh et al. | An optimized round robin scheduling algorithm for CPU scheduling | |
JP5311732B2 (en) | Scheduling in multi-core architecture | |
US8056083B2 (en) | Dividing a computer job into micro-jobs for execution | |
WO2016078178A1 (en) | Virtual cpu scheduling method | |
CN101887383B (en) | Process real-time scheduling method | |
CN101339521A (en) | A Dynamic Scheduling Algorithm of Task Priority | |
CN107589993A (en) | A kind of dynamic priority scheduling algorithm based on linux real time operating systems | |
US20120297216A1 (en) | Dynamically selecting active polling or timed waits | |
CN106776395B (en) | A kind of method for scheduling task and device of shared cluster | |
CN106569891A (en) | Method and device for carrying out task scheduling in storage system | |
CN107341041A (en) | Cloud task Multi-dimensional constraint backfill dispatching method based on Priority Queues | |
JP2011501309A (en) | Managing preemption in real-time operating systems | |
Stavrinides et al. | Scheduling single-task jobs along with bag-of-task-chains in distributed systems | |
CN118132271A (en) | Asynchronous application execution system and method for embedded software interface | |
Garg | Real-time linux kernel scheduler | |
EP2038747A1 (en) | Computer micro-jobs | |
Manickam et al. | A fair and efficient gang scheduling algorithm for multicore processors | |
CN106325983A (en) | Micro program model has less memory usage and supporting concurrence, and scheduling method | |
Erickson et al. | Reducing tardiness under global scheduling by splitting jobs | |
Xu et al. | Multi resource scheduling with task cloning in heterogeneous clusters | |
Komarasamy et al. | Deadline constrained adaptive multilevel scheduling system in cloud environment | |
De Sensi et al. | State-aware concurrency throttling | |
CN107301085B (en) | Queue-based cloud platform task allocation method | |
WO2017099863A1 (en) | Method and apparatus for time-based scheduling of tasks | |
JP2015041199A (en) | Information processing apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180116 |
|
RJ01 | Rejection of invention patent application after publication |