Schedulability Analysis of the Linux Push and Pull Scheduler with Arbitrary Processor Affinities
نویسندگان
چکیده
Contemporary multiprocessor real-time operating systems, such as VxWorks, LynxOS, QNX, and real-time variants of Linux, allow a process to have an arbitrary processor affinity, that is, a process may be pinned to an arbitrary subset of the processors in the system. Placing such a hard constraint on process migrations can help to improve cache performance of specific multi-threaded applications, achieve isolation among components, and aid in load-balancing. However, to date, the lack of schedulability analysis for such systems prevents the use of arbitrary processor affinities in predictable hard real-time applications. In this paper, it is shown that job-level fixed-priority scheduling with arbitrary processor affinities is strictly more general than global, clustered, and partitioned job-level fixed-priority scheduling. The Linux push and pull scheduler is studied as a reference implementation and techniques for the schedulability analysis of hard real-time tasks with arbitrary processor affinity masks are presented. The proposed tests work by reducing the scheduling problem to “global-like” sub-problems to which existing global schedulability tests can be applied. Schedulability experiments show the proposed techniques to be effective.
منابع مشابه
Shifting Real-Time Tasks towards Higher Schedulability
Virtually all major real-time operating systems such as QNX, VxWorks, LynxOS, and most real-time variants of Linux expose processor affinity APIs to restrict task migrations. Initially motivated by throughput and isolation reasons, the ability to flexibly control migrations on a per-task basis has also proved to be useful from a schedulability perspective. However, as the motivation to use proc...
متن کاملAn Optimal Semi-Partitioned Scheduler Assuming Arbitrary Affinity Masks∗
Modern operating systems like Linux allow task migrations to be restricted by specifying pertask processor affinity masks. Such a mask specifies the set of processor cores upon which a task can be scheduled. In this paper, a semi-partitioned scheduler, AM-Red (affinity mask reduction), is presented for scheduling implicit-deadline sporadic tasks with arbitrary affinity masks on an identical mul...
متن کاملAn examination of the effects of push and pull factors on Iranian national parks: Boujagh National Park, Iran
This article analyses the push and pull factors that bring visitors to the Iranian national parks. The study used a structured questionnaire to collect data on these factors and the socio-demographic profile of the visitors. Survey conducted in Boujagh National Park, an area of 3177 hectares located in the north of the Iran, produced 400 questionnaires. The factor analysis identified four push ...
متن کاملDeadline Fair Scheduling: Bridging the Theory and Practice of Proportionate Fair Scheduling in Multiprocessor Systems
In this paper, we present Deadline Fair Scheduling (DFS), a proportionate-fair CPU scheduling algorithm for multiprocessor servers. A particular focus of our work is to investigate practical issues in instantiating proportionatefair (P-fair) schedulers into conventional operating systems. We show via a simulation study that characteristics of conventional operating systems such as the asynchron...
متن کاملMulti-processor Schedulability Analysis of Preemptive Real-Time Tasks with Variable Execution Times
In this paper, we study schedulability analysis problems for multi-processor real-time systems. Assume a set of real time tasks whose execution times and deadlines are known. We use timed automata to describe the non-deterministic arrival times of tasks. The schedulability problem is to check whether the released task instances can be executed within their given deadlines on a multi-processor p...
متن کامل