Linux kernel developed and distributed in open source doesn’t support for Hard Real-time scheduling. The open source Linux kernels are designed in time sharing manner to obtain maximum throughput. With this, Linux Operating System is considered to be an OS, which is not supporting Real-Time Applications, natively it has some features, already included in the mainstream to provide real-time support. There are certain modified Linux kernels like RTLinux, Symbian OS, Nucleus OS, Lynx OS and Fusion RTOS [1] which are explicitly designed for hard Real-Time support [2]. These specially designed Real-Time Linux kernels is mostly targeted for special hardware’s like embedded systems, robots, safety critical etc. ,very few kernels for general purpose. Most of these kernels are be available as proprietary or closed, excluding a very few and not suitable for all hardware architecture’s.
Now a days Real-Time Performance has become universal requirement for computer games, multimedia systems, household monitoring and controlling appliances. So the general purpose Linux kernel needs to be optimized, to achieve Real-time performance to meet the user expectations. This paper tries to extract real-time performance from general kernel and suggest some techniques to optimize Linux kernel to meet real-time deadlines.
Efficient Dynamic Scheduling Algorithm for Real-Time MultiCore Systems iosrjce
Imprecise computation model is used in dynamic scheduling algorithm having heuristic function to
schedule task sets. A task is characterized by ready time, worst case computation time, deadline and resource
requirements. A task failing to meet its deadline and resource requirements on time is split into mandatory part
and optional part. These sub-tasks of a task can execute concurrently on multiple cores, thus achieving
parallelization provided by the multi-core system. Mandatory part produces acceptable results while optional
part refines the result further. To study the effectiveness of proposed scheduling algorithm, extensive simulation
studies have been carried out. Performance of proposed scheduling algorithm is compared with myopic and
improved myopic scheduling algorithm. The simulation studies shows that schedulability of task split myopic
algorithm is always higher than myopic and improved myopic algorithm.
Classification of Virtualization Environment for Cloud ComputingSouvik Pal
Cloud Computing is a relatively new field gaining more popularity day by day for ramified applications among the Internet users.
Virtualization plays a significant role for managing and coordinating the access from the resource pool to multiple virtual machines on
which multiple heterogeneous applications are running. Various virtualization methodologies are of significant importance because it
helps to overcome the complex workloads, frequent application patching and updating, and multiple software architecture. Although
a lot of research and study has been conducted on virtualization, a range of issues involved have mostly been presented in isolation
of each other. Therefore, we have made an attempt to present a comprehensive survey study of different aspects of virtualization. We
present our classification of virtualization methodologies and their brief explanation, based on their working principle and underlying
features.
IJRET : International Journal of Research in Engineering and Technology is an international peer reviewed, online journal published by eSAT Publishing House for the enhancement of research in various disciplines of Engineering and Technology. The aim and scope of the journal is to provide an academic medium and an important reference for the advancement and dissemination of research results that support high-level learning, teaching and research in the fields of Engineering and Technology. We bring together Scientists, Academician, Field Engineers, Scholars and Students of related fields of Engineering and Technology
(Slides) Task scheduling algorithm for multicore processor system for minimiz...Naoki Shibata
Shohei Gotoda, Naoki Shibata and Minoru Ito : "Task scheduling algorithm for multicore processor system for minimizing recovery time in case of single node fault," Proceedings of IEEE International Symposium on Cluster Computing and the Grid (CCGrid 2012), pp.260-267, DOI:10.1109/CCGrid.2012.23, May 15, 2012.
In this paper, we propose a task scheduling al-gorithm for a multicore processor system which reduces the
recovery time in case of a single fail-stop failure of a multicore
processor. Many of the recently developed processors have
multiple cores on a single die, so that one failure of a computing
node results in failure of many processors. In the case of a failure
of a multicore processor, all tasks which have been executed
on the failed multicore processor have to be recovered at once.
The proposed algorithm is based on an existing checkpointing
technique, and we assume that the state is saved when nodes
send results to the next node. If a series of computations that
depends on former results is executed on a single die, we need
to execute all parts of the series of computations again in
the case of failure of the processor. The proposed scheduling
algorithm tries not to concentrate tasks to processors on a die.
We designed our algorithm as a parallel algorithm that achieves
O(n) speedup where n is the number of processors. We evaluated
our method using simulations and experiments with four PCs.
We compared our method with existing scheduling method, and
in the simulation, the execution time including recovery time in
the case of a node failure is reduced by up to 50% while the
overhead in the case of no failure was a few percent in typical
scenarios.
Efficient Dynamic Scheduling Algorithm for Real-Time MultiCore Systems iosrjce
Imprecise computation model is used in dynamic scheduling algorithm having heuristic function to
schedule task sets. A task is characterized by ready time, worst case computation time, deadline and resource
requirements. A task failing to meet its deadline and resource requirements on time is split into mandatory part
and optional part. These sub-tasks of a task can execute concurrently on multiple cores, thus achieving
parallelization provided by the multi-core system. Mandatory part produces acceptable results while optional
part refines the result further. To study the effectiveness of proposed scheduling algorithm, extensive simulation
studies have been carried out. Performance of proposed scheduling algorithm is compared with myopic and
improved myopic scheduling algorithm. The simulation studies shows that schedulability of task split myopic
algorithm is always higher than myopic and improved myopic algorithm.
Classification of Virtualization Environment for Cloud ComputingSouvik Pal
Cloud Computing is a relatively new field gaining more popularity day by day for ramified applications among the Internet users.
Virtualization plays a significant role for managing and coordinating the access from the resource pool to multiple virtual machines on
which multiple heterogeneous applications are running. Various virtualization methodologies are of significant importance because it
helps to overcome the complex workloads, frequent application patching and updating, and multiple software architecture. Although
a lot of research and study has been conducted on virtualization, a range of issues involved have mostly been presented in isolation
of each other. Therefore, we have made an attempt to present a comprehensive survey study of different aspects of virtualization. We
present our classification of virtualization methodologies and their brief explanation, based on their working principle and underlying
features.
IJRET : International Journal of Research in Engineering and Technology is an international peer reviewed, online journal published by eSAT Publishing House for the enhancement of research in various disciplines of Engineering and Technology. The aim and scope of the journal is to provide an academic medium and an important reference for the advancement and dissemination of research results that support high-level learning, teaching and research in the fields of Engineering and Technology. We bring together Scientists, Academician, Field Engineers, Scholars and Students of related fields of Engineering and Technology
(Slides) Task scheduling algorithm for multicore processor system for minimiz...Naoki Shibata
Shohei Gotoda, Naoki Shibata and Minoru Ito : "Task scheduling algorithm for multicore processor system for minimizing recovery time in case of single node fault," Proceedings of IEEE International Symposium on Cluster Computing and the Grid (CCGrid 2012), pp.260-267, DOI:10.1109/CCGrid.2012.23, May 15, 2012.
In this paper, we propose a task scheduling al-gorithm for a multicore processor system which reduces the
recovery time in case of a single fail-stop failure of a multicore
processor. Many of the recently developed processors have
multiple cores on a single die, so that one failure of a computing
node results in failure of many processors. In the case of a failure
of a multicore processor, all tasks which have been executed
on the failed multicore processor have to be recovered at once.
The proposed algorithm is based on an existing checkpointing
technique, and we assume that the state is saved when nodes
send results to the next node. If a series of computations that
depends on former results is executed on a single die, we need
to execute all parts of the series of computations again in
the case of failure of the processor. The proposed scheduling
algorithm tries not to concentrate tasks to processors on a die.
We designed our algorithm as a parallel algorithm that achieves
O(n) speedup where n is the number of processors. We evaluated
our method using simulations and experiments with four PCs.
We compared our method with existing scheduling method, and
in the simulation, the execution time including recovery time in
the case of a node failure is reduced by up to 50% while the
overhead in the case of no failure was a few percent in typical
scenarios.
Implementation and evaluation of novel scheduler of UC/OS (RTOS)Editor Jacotech
At present, there are more than a billion embedded applications either real time or non-real time. Among them, many appli cations require Prioritized queue of periodic tasks. UC/OS, one of the most widely Used real-time kernels in industry, has preemptive scheduler and doesn't Support two tasks at same priority level. This work proposes a modification in scheduler of UC/OS (RTOS) to make it more exible in handling a periodic and periodic task. The proposed scheduler allows assigning same priority to more than one task. Tasks with same priority are in queue, where their position is decided on first come (created) first Served basis. Time-slicing is used for scheduling tasks in same queue. Emendations in the task management and scheduler have been explained in detailed. Evaluation, to observe the effect of modified scheduling on Overhead of system calls is done on an evaluation board.
SCHEDULING DIFFERENT CUSTOMER ACTIVITIES WITH SENSING DEVICEijait
Most periodic tasks are assigned to processors using partition scheduling policy after checking feasibility conditions. A new approach is proposed for scheduling different activities with one periodic task within the system. In this paper, control strategies are identified for allocating different types of tasks (activities) to
individual computing elements like Smartphone or microphones. In our simulation model, each periodic task generates an aperiodic tasks are taken into consideration. Different sets of periodic tasks and aperiodic tasks are scheduled together. This new approach proves that when all different activities are
scheduled with one periodic tasks leads to better performance.
Reinforcement learning based multi core scheduling (RLBMCS) for real time sys...IJECEIAES
Embedded systems with multi core processors are increasingly popular because of the diversity of applications that can be run on it. In this work, a reinforcement learning based scheduling method is proposed to handle the real time tasks in multi core systems with effective CPU usage and lower response time. The priority of the tasks is varied dynamically to ensure fairness with reinforcement learning based priority assignment and Multi Core MultiLevel Feedback queue (MCMLFQ) to manage the task execution in multi core system
Task Scheduling Algorithm for Multicore Processor Systems with Turbo Boost an...Naoki Shibata
Yosuke Wakisaka, Naoki Shibata, Keiichi Yasumoto, Minoru Ito, and Junji Kitamichi : Task Scheduling Algorithm for Multicore Processor Systems with Turbo Boost and Hyper-Threading, In Proc. of The 2014 International Conference on Parallel and Distributed Processing Techniques and Applications(PDPTA'14), pp. 229-235
In this paper, we propose a task scheduling algorithm for multiprocessor systems with Turbo Boost and Hyper-Threading technologies. The proposed algorithm minimizes the total computation time taking account of dynamic changes of the processing speed by the two technologies, in addition to the network contention among the processors. We constructed a clock speed model with which the changes of processing speed with Turbo Boost and Hyper-threading can be estimated for various processor usage patterns. We then constructed a new scheduling algorithm that minimizes the total execution time of a task graph considering network contention and the two technologies. We evaluated the proposed algorithm by simulations and experiments with a multiprocessor system consisting of 4 PCs. In the experiment, the proposed algorithm produced a schedule that reduces the total execution time by 36% compared to conventional methods which are straightforward extensions of an existing method.
In a multiprogramming system, multiple processes exist concurrently in main memory. Each process alternates between using a processor and waiting for some event to occur, such as the completion of an I O operation. The processor or processors are kept busy by executing one process while the others wait. The key to multiprogramming is scheduling. CPU scheduling deals with the problem of deciding which of the processes in the ready queue is to be allocated the CPU. By switching the CPU among processor the operating system can make the computer more productive. Scheduling affectes the performance of the system because it determines which processes will wait and which will progress. In this paper, simulation of various scheduling algorithm First Come First Served FCFS , Round Robin RR , Shortest Process Next SPN and Shortest Remaining Time SRT is done over C Daw Khin Po ""Simulation of Process Scheduling Algorithms"" Published in International Journal of Trend in Scientific Research and Development (ijtsrd), ISSN: 2456-6470, Volume-3 | Issue-4 , June 2019, URL: https://www.ijtsrd.com/papers/ijtsrd25124.pdf
Paper URL: https://www.ijtsrd.com/computer-science/operating-system/25124/simulation-of-process-scheduling-algorithms/daw-khin-po
Efficient Resource Management Mechanism with Fault Tolerant Model for Computa...Editor IJCATR
Grid computing provides a framework and deployment environment that enables resource
sharing, accessing, aggregation and management. It allows resource and coordinated use of various
resources in dynamic, distributed virtual organization. The grid scheduling is responsible for resource
discovery, resource selection and job assignment over a decentralized heterogeneous system. In the
existing system, primary-backup approach is used for fault tolerance in a single environment. In this
approach, each task has a primary copy and backup copy on two different processors. For dependent
tasks, precedence constraint among tasks must be considered when scheduling backup copies and
overloading backups. Then, two algorithms have been developed to schedule backups of dependent and
independent tasks. The proposed work is to manage the resource failures in grid job scheduling. In this
method, data source and resource are integrated from different geographical environment. Faulttolerant
scheduling with primary backup approach is used to handle job failures in grid environment.
Impact of communication protocols is considered. Communication protocols such as Transmission
Control Protocol (TCP), User Datagram Protocol (UDP) which are used to distribute the message of
each task to grid resources.
Integrating fault tolerant scheme with feedback control scheduling algorithm ...ijics
In order to provide Quality of Service (QoS) in open and unpredictable environment, Feedback based
Control Scheduling Algorithm (FCSA) is designed to keep the processor utilization at the scheduling
utilization bound. FCSA controls CPU utilization by assigning task periods that optimize overall control
performance, meeting deadlines even if the task execution time is unpredictable and through performance
control feedback loop. Current FCSA doesn’t ensure Fault Tolerance (FT) while providing QoS in terms of
CPU utilization and resource management. In order to assure that tasks should meet their deadlines even
in the presence of faults, a FT scheme has to be integrated at control scheduling co-design level. This paper
presents a novel approach on integrating FT scheme with FCSA for real time embedded systems. This
procedure is especially important for control scheduling co-design of embedded systems.
One of the requirements for mission critical systems is to provide reliable volume backup without impacting running system. The recommended way of cinder backup is to unmount volume before backup to avoid crash consistent backup. Unmounting is intrusive in nature and may not be feasible for mission critical systems.
This presentation focuses on strategy to achieve non-intrusive cinder backup. The presentation was given in Openstack summit at Sydney on 06 Nov 2017.
https://www.openstack.org/videos/sydney-2017/truly-non-intrusive-openstack-cinder-backup-for-mission-critical-systems
An improved approach to minimize context switching in round robin scheduling ...eSAT Publishing House
IJRET : International Journal of Research in Engineering and Technology is an international peer reviewed, online journal published by eSAT Publishing House for the enhancement of research in various disciplines of Engineering and Technology. The aim and scope of the journal is to provide an academic medium and an important reference for the advancement and dissemination of research results that support high-level learning, teaching and research in the fields of Engineering and Technology. We bring together Scientists, Academician, Field Engineers, Scholars and Students of related fields of Engineering and Technology
Μελέτη ανακύκλωσης γυαλιού Θάνου Πασιαρδή. Παρακαλώ μπορείτε να την αντιγράψετε, βελτιωσετε, η ότι άλλο επιθυμείτε. Είμαι στην διάθεση σας. Είμαι μαθητής στο Δημοτικό σχολείο Δροσιάς Κύκλος Β, τάξη Δ Δημοτικού.
Implementation and evaluation of novel scheduler of UC/OS (RTOS)Editor Jacotech
At present, there are more than a billion embedded applications either real time or non-real time. Among them, many appli cations require Prioritized queue of periodic tasks. UC/OS, one of the most widely Used real-time kernels in industry, has preemptive scheduler and doesn't Support two tasks at same priority level. This work proposes a modification in scheduler of UC/OS (RTOS) to make it more exible in handling a periodic and periodic task. The proposed scheduler allows assigning same priority to more than one task. Tasks with same priority are in queue, where their position is decided on first come (created) first Served basis. Time-slicing is used for scheduling tasks in same queue. Emendations in the task management and scheduler have been explained in detailed. Evaluation, to observe the effect of modified scheduling on Overhead of system calls is done on an evaluation board.
SCHEDULING DIFFERENT CUSTOMER ACTIVITIES WITH SENSING DEVICEijait
Most periodic tasks are assigned to processors using partition scheduling policy after checking feasibility conditions. A new approach is proposed for scheduling different activities with one periodic task within the system. In this paper, control strategies are identified for allocating different types of tasks (activities) to
individual computing elements like Smartphone or microphones. In our simulation model, each periodic task generates an aperiodic tasks are taken into consideration. Different sets of periodic tasks and aperiodic tasks are scheduled together. This new approach proves that when all different activities are
scheduled with one periodic tasks leads to better performance.
Reinforcement learning based multi core scheduling (RLBMCS) for real time sys...IJECEIAES
Embedded systems with multi core processors are increasingly popular because of the diversity of applications that can be run on it. In this work, a reinforcement learning based scheduling method is proposed to handle the real time tasks in multi core systems with effective CPU usage and lower response time. The priority of the tasks is varied dynamically to ensure fairness with reinforcement learning based priority assignment and Multi Core MultiLevel Feedback queue (MCMLFQ) to manage the task execution in multi core system
Task Scheduling Algorithm for Multicore Processor Systems with Turbo Boost an...Naoki Shibata
Yosuke Wakisaka, Naoki Shibata, Keiichi Yasumoto, Minoru Ito, and Junji Kitamichi : Task Scheduling Algorithm for Multicore Processor Systems with Turbo Boost and Hyper-Threading, In Proc. of The 2014 International Conference on Parallel and Distributed Processing Techniques and Applications(PDPTA'14), pp. 229-235
In this paper, we propose a task scheduling algorithm for multiprocessor systems with Turbo Boost and Hyper-Threading technologies. The proposed algorithm minimizes the total computation time taking account of dynamic changes of the processing speed by the two technologies, in addition to the network contention among the processors. We constructed a clock speed model with which the changes of processing speed with Turbo Boost and Hyper-threading can be estimated for various processor usage patterns. We then constructed a new scheduling algorithm that minimizes the total execution time of a task graph considering network contention and the two technologies. We evaluated the proposed algorithm by simulations and experiments with a multiprocessor system consisting of 4 PCs. In the experiment, the proposed algorithm produced a schedule that reduces the total execution time by 36% compared to conventional methods which are straightforward extensions of an existing method.
In a multiprogramming system, multiple processes exist concurrently in main memory. Each process alternates between using a processor and waiting for some event to occur, such as the completion of an I O operation. The processor or processors are kept busy by executing one process while the others wait. The key to multiprogramming is scheduling. CPU scheduling deals with the problem of deciding which of the processes in the ready queue is to be allocated the CPU. By switching the CPU among processor the operating system can make the computer more productive. Scheduling affectes the performance of the system because it determines which processes will wait and which will progress. In this paper, simulation of various scheduling algorithm First Come First Served FCFS , Round Robin RR , Shortest Process Next SPN and Shortest Remaining Time SRT is done over C Daw Khin Po ""Simulation of Process Scheduling Algorithms"" Published in International Journal of Trend in Scientific Research and Development (ijtsrd), ISSN: 2456-6470, Volume-3 | Issue-4 , June 2019, URL: https://www.ijtsrd.com/papers/ijtsrd25124.pdf
Paper URL: https://www.ijtsrd.com/computer-science/operating-system/25124/simulation-of-process-scheduling-algorithms/daw-khin-po
Efficient Resource Management Mechanism with Fault Tolerant Model for Computa...Editor IJCATR
Grid computing provides a framework and deployment environment that enables resource
sharing, accessing, aggregation and management. It allows resource and coordinated use of various
resources in dynamic, distributed virtual organization. The grid scheduling is responsible for resource
discovery, resource selection and job assignment over a decentralized heterogeneous system. In the
existing system, primary-backup approach is used for fault tolerance in a single environment. In this
approach, each task has a primary copy and backup copy on two different processors. For dependent
tasks, precedence constraint among tasks must be considered when scheduling backup copies and
overloading backups. Then, two algorithms have been developed to schedule backups of dependent and
independent tasks. The proposed work is to manage the resource failures in grid job scheduling. In this
method, data source and resource are integrated from different geographical environment. Faulttolerant
scheduling with primary backup approach is used to handle job failures in grid environment.
Impact of communication protocols is considered. Communication protocols such as Transmission
Control Protocol (TCP), User Datagram Protocol (UDP) which are used to distribute the message of
each task to grid resources.
Integrating fault tolerant scheme with feedback control scheduling algorithm ...ijics
In order to provide Quality of Service (QoS) in open and unpredictable environment, Feedback based
Control Scheduling Algorithm (FCSA) is designed to keep the processor utilization at the scheduling
utilization bound. FCSA controls CPU utilization by assigning task periods that optimize overall control
performance, meeting deadlines even if the task execution time is unpredictable and through performance
control feedback loop. Current FCSA doesn’t ensure Fault Tolerance (FT) while providing QoS in terms of
CPU utilization and resource management. In order to assure that tasks should meet their deadlines even
in the presence of faults, a FT scheme has to be integrated at control scheduling co-design level. This paper
presents a novel approach on integrating FT scheme with FCSA for real time embedded systems. This
procedure is especially important for control scheduling co-design of embedded systems.
One of the requirements for mission critical systems is to provide reliable volume backup without impacting running system. The recommended way of cinder backup is to unmount volume before backup to avoid crash consistent backup. Unmounting is intrusive in nature and may not be feasible for mission critical systems.
This presentation focuses on strategy to achieve non-intrusive cinder backup. The presentation was given in Openstack summit at Sydney on 06 Nov 2017.
https://www.openstack.org/videos/sydney-2017/truly-non-intrusive-openstack-cinder-backup-for-mission-critical-systems
An improved approach to minimize context switching in round robin scheduling ...eSAT Publishing House
IJRET : International Journal of Research in Engineering and Technology is an international peer reviewed, online journal published by eSAT Publishing House for the enhancement of research in various disciplines of Engineering and Technology. The aim and scope of the journal is to provide an academic medium and an important reference for the advancement and dissemination of research results that support high-level learning, teaching and research in the fields of Engineering and Technology. We bring together Scientists, Academician, Field Engineers, Scholars and Students of related fields of Engineering and Technology
Μελέτη ανακύκλωσης γυαλιού Θάνου Πασιαρδή. Παρακαλώ μπορείτε να την αντιγράψετε, βελτιωσετε, η ότι άλλο επιθυμείτε. Είμαι στην διάθεση σας. Είμαι μαθητής στο Δημοτικό σχολείο Δροσιάς Κύκλος Β, τάξη Δ Δημοτικού.
Ce document présente comment permettre l'accès au sens d'un texte à l'aide d'étayages adaptés aux besoin des élèves. L'objectif reste que tous les élèves soient capables de rédiger un texte argumentatif de 15 lignes environ qui montre que la nouvelle constitue un texte engagé ? Elle invite aussi à passer d'une démarche d'enseignement traditionnel à une démarche différenciée.
المقدمة:
أن التعليم الالكتروني لا يحتاج الى شيء بقدر حاجته الى المعلم الماهر المتقن لأساليب واستراتيجيات التعليم الإلكتروني، المتمكن من مادته العلمية، الراغب في الراغب في التزود بكل حديث في مجال تخصصه.
والتعليم الالكتروني يحتاج الى المعلم الذي يعي بأنه في كل يوم لا تزداد فيه خبرته ومعرفته ومعلوماته فإنه يتأخر سنوات كثيرة، ولابد من الإشارة الى أن التعليم الإلكتروني خلق أدوار ووظائف جديدة للمعلم غير أدواره التقليدية في نظام التعليم التقليدي والتي يوضحها الجدول التالي بالمقارنة مع أدواره في النظام التقليدي.
Проект трансформации законодательства о высшем образовании для мотивированного вовлечения науки, производства и бизнеса в обучение студентов университетов
PI-Tool To Improve Performance of Application In Multi-core ArchitectureCSCJournals
Multi-core CPUs become increasingly popular on server-grade hardware as well as end-user desktop PCs or laptops. Necessary efforts are taken in the community towards developing applications optimized for multi-core architecture [1], still every user is expecting to run applications or programs with more speed than normal execution. In order to achieve maximum possible performance, there is a need for fine tuning in the areas of Operating System scheduling, Process Priority and CPU Affinity. So this paper presents PI-tool, to aid user by changing priority and CPU Affinity to his application or program at runtime to achieve better performance .The PI-tool is compared with Red Hat TUNA tool with NQueens program the results are presented for evaluation.
REAL-TIME SCHEDULING ALGORITHMS FOR WIRELESS SENSOR NETWORKcsijjournal
In Recent era, researchers attention is get magnetize towards a widely used technology known as a wireless sensor networks (WSNs) used in the many of applications related to variety of fields including military, healthcare
monitoring, biological, home, vehicular monitoring, infrastructure monitoring, building energy monitoring and industrial sensing. Many of applications in WSNs are real time applications that are requested to run in real time
way. To support such real time applications we need Real Time Operating System (RTOS) which provides logically correct results and also deadline has to be met. This paper presents an overview of existing scheduling
algorithms which helps to schedule tasks in real time systems. Next, we discuss work in sensornet operating system (OS) design. Then, the specialties what sensornet OS should posses are discussed in detail. At last, we
proposed Micro Controller OS-II (µC/OS-II) with Earliest Deadline First (EDF) algorithm.
TIME CRITICAL MULTITASKING FOR MULTICORE MICROCONTROLLER USING XMOS® KITijesajournal
This paper presents the research work on multicore microcontrollers using parallel, and time critical
programming for the embedded systems. Due to the high complexity and limitations, it is very hard to work
on the application development phase on such architectures. The experimental results mentioned in the
paper are based on xCORE multicore microcontroller form XMOS®
. The paper also imitates multi-tasking
and parallel programming for the same platform. The tasks assigned to multiple cores are executed
simultaneously, which saves the time and energy. The relative study for multicore processor and multicore
controller concludes that micro architecture based controller having multiple cores illustrates better
performance in time critical multi-tasking environment. The research work mentioned here not only
illustrates the functionality of multicore microcontroller, but also express the novel technique of
programming, profiling and optimization on such platforms in real time environments.
Time critical multitasking for multicoreijesajournal
This paper presents the research work on multicore microcontrollers using parallel, and time critical
programming for the embedded systems. Due to the high complexity and limitations, it is very hard to work
on the application development phase on such architectures. The experimental results mentioned in the
paper are based on xCORE multicore microcontroller form XMOS®. The paper also imitates multi-tasking
and parallel programming for the same platform. The tasks assigned to multiple cores are executed
simultaneously, which saves the time and energy. The relative study for multicore processor and multicore
controller concludes that micro architecture based controller having multiple cores illustrates better
performance in time critical multi-tasking environment. The research work mentioned here not only
illustrates the functionality of multicore microcontroller, but also express the novel technique of
programming, profiling and optimization on such platforms in real time environments.
System on Chip Based RTC in Power ElectronicsjournalBEEI
Current control systems and emulation systems (Hardware-in-the-Loop, HIL or Processor-in-the-Loop, PIL) for high-end power-electronic applications often consist of numerous components and interlinking busses: a micro controller for communication and high level control, a DSP for real-time control, an FPGA section for fast parallel actions and data acquisition, multiport RAM structures or bus systems as interconnecting structure. System-on-Chip (SoC) combines many of these functions on a single die. This gives the advantage of space reduction combined with cost reduction and very fast internal communication. Such systems become very relevant for research and also for industrial applications. The SoC used here as an example combines a Dual-Core ARM 9 hard processor system (HPS) and an FPGA, including fast interlinks between these components. SoC systems require careful software and firmware concepts to provide real-time control and emulation capability. This paper demonstrates an optimal way to use the resources of the SoC and discusses challenges caused by the internal structure of SoC. The key idea is to use asymmetric multiprocessing: One core uses a bare-metal operating system for hard real time. The other core runs a “real-time” Linux for service functions and communication. The FPGA is used for flexible process-oriented interfaces (A/D, D/A, switching signals), quasi-hard-wired protection and the precise timing of the real-time control cycle. This way of implementation is generally known and sometimes even suggested–but to the knowledge of the author’s seldomly implemented and documented in the context of demanding real-time control or emulation. The paper details the way of implementation, including process interfaces, and discusses the advantages and disadvantages of the chosen concept. Measurement results demonstrate the properties of the solution.
Testing real-time Linux. What to test and how Chirag Jog
This paper describes testing of the real-time (CONFIG_PREEMPT_RT) Linux kernel. It explains how testing the real-time kernel is different from testing the mainline Linux kernel and provides some tips and guidelines about writing test cases for the real-time kernel. It illustrates real-time tests in the Linux Test Project (LTP) suite using examples. It also briefly covers real-time tests that are not part of LTP.
Reliable embedded systems play an increasing role in modern life, especially in modern
automotive designs. Many studies have proved that it performs better in many situations.
Firstly, reliable embedded systems provide the system reliability improvements. Secondly,
reliable embedded systems also can improve the development efficiency and make the
development cycle shorter.
However, in the high real-time required occasion, the software implementation of the RTOS
can`t fully meet requirements. To have better real-time only through the algorithm improvement
or just increase the processor speed. On the contrary, operating system based on a hardware
implementation can make it more real-time and more reliable. The reason is due to that the
hardware circuit is independent of the processor running and do not take up the processing time
of the processor. Thereby it can save time to execute other tasks and improve real-time. In this
paper, ARM+FPGA will be choose as the IP hardware development platform.
DYNAMIC HW PRIORITY QUEUE BASED SCHEDULERS FOR EMBEDDED SYSTEMijesajournal
A real-time operating system (RTOs) is often used in embedded system, to structure the application code
and to ensure that the deadlines are met by reacting on events by executing the functions within precise
time. Most embedded systems are bound to real-time constraints with determinism and latency as a critical
metrics. RTOs are generally implemented in software, increases computational overheads, jitter and
memory footprint. Modern FPGA technology, enables the implementation of a full featured and flexible
hardware based RTOs, which helps in reducing to greater extent these overheads even if not remove
completely. Scheduling algorithms play an important role in the design of real-time systems. An Adaptive
Fuzzy Inference System (FIS) based scheduler framework proposed in this article is based on the study and
conclusion drawn from the research over the years in HW SW co-design domain. The proposed novel two
phase FIS based adaptive hardware task scheduler minimizes the processor time for scheduling activity
which uses fuzzy logic to model the uncertainty at first stage along with adaptive framework that uses
feedback which allows processors share of task running on multiprocessor to be controlled dynamically at
runtime. This Fuzzy logic based adaptive hardware scheduler breakthroughs the limit of the number of
total task and thus improves efficiency of the entire real-time system. The increased computation overheads
resulted from proposed two phase FIS scheduler can be compensated by utilising the basic characteristics
of parallelism of the hardware as scheduler being migrated to FPGA.
Dynamic HW Priority Queue Based Schedulers for Embedded System[ijesajournal
A real-time operating system (RTOs) is often used in embedded system, to structure the application code
and to ensure that the deadlines are met by reacting on events by executing the functions within precise
time. Most embedded systems are bound to real-time constraints with determinism and latency as a critical
metrics. RTOs are generally implemented in software, increases computational overheads, jitter and
memory footprint. Modern FPGA technology, enables the implementation of a full featured and flexible
hardware based RTOs, which helps in reducing to greater extent these overheads even if not remove
completely. Scheduling algorithms play an important role in the design of real-time systems. An Adaptive
Fuzzy Inference System (FIS) based scheduler framework proposed in this article is based on the study and
conclusion drawn from the research over the years in HW SW co-design domain. The proposed novel two
phase FIS based adaptive hardware task scheduler minimizes the processor time for scheduling activity
which uses fuzzy logic to model the uncertainty at first stage along with adaptive framework that uses
feedback which allows processors share of task running on multiprocessor to be controlled dynamically at
runtime. This Fuzzy logic based adaptive hardware scheduler breakthroughs the limit of the number of
total task and thus improves efficiency of the entire real-time system. The increased computation overheads
resulted from proposed two phase FIS scheduler can be compensated by utilising the basic characteristics
of parallelism of the hardware as scheduler being migrated to FPGA.
Performance analysis of real-time and general-purpose operating systems for p...IJECEIAES
In general, modern operating systems can be divided into two essential parts, real-time operating systems (RTOS) and general-purpose operating systems (GPOS). The main difference between GPOS and RTOS is the system is time-critical or not. It means that; in GPOS, a high-priority thread cannot preempt a kernel call. But, in RTOS, a low-priority task is preempted by a high-priority task if necessary, even if it’s executing a kernel call. Most Linux distributions can be used as both GPOS and RTOS with kernel modifications. In this study, two Linux distributions, Ubuntu and Pardus, were analyzed and their performances were compared both as GPOS and RTOS for path planning of the multi-robot systems. Robot groups with different numbers of members were used to perform the path tracking tasks using both Ubuntu and Pardus as GPOS and RTOS. In this way, both the performance of two different Linux distributions in robotic applications were observed and compared in two forms, GPOS, and RTOS.
A low cost, real-time algorithm for embedded devices based on freertos kerneleSAT Journals
Abstract A low-cost, real-time methodology for embedded devices based on well-known open source kernel - freeRTOS is presented in this study. The real-time algorithm designed consists of three main steps. Firstly, the algorithm is designed and evaluated by utilizing Matlab/Simulink toolboxes. Secondly, the generic embedded C code is generated by Matlab program. Finally, freeRTOS Tasks code is utilized based on C code generated to build and run on embedded targets. This real-time algorithm is demonstrated on a two-wheeled self-balancing robot which is employed a fuzzy PID self-tuning controller. The designed controller is executed on a famous ARM Cortex M4 core microcontroller STM32F407VTG. The experimental results show that algorithm designed operated well on embedded systems. The tracking position and rotation angle response are so good with low steady error (i.e. 0.01 [m] and less than 1.15 degrees, respectively) while stabilizing the two-wheeled at the upright. The real-time system designed is a low cost methodology and suitable for embedded system designers. Key Words: Open source, RTOS, embedded system, ARM Cortex and fuzzy PID controller
Multiprocessor scheduling of dependent tasks to minimize makespan and reliabi...ijfcstjournal
Algorithms developed for scheduling applications on heterogeneous multiprocessor system focus on a
single objective such as execution time, cost or total data transmission time. However, if more than one
objective (e.g. execution cost and time, which may be in conflict) are considered, then the problem becomes
more challenging. This project is proposed to develop a multiobjective scheduling algorithm using
Evolutionary techniques for scheduling a set of dependent tasks on available resources in a multiprocessor
environment which will minimize the makespan and reliability cost. A Non-dominated sorting Genetic
Algorithm-II procedure has been developed to get the pareto- optimal solutions. NSGA-II is a Elitist
Evolutionary algorithm, and it takes the initial parental solution without any changes, in all iteration to
eliminate the problem of loss of some pareto-optimal solutions.NSGA-II uses crowding distance concept to
create a diversity of the solutions.
Similar to Optimizing Linux Kernel for Real-time Performance On Multi-Core Architecture (20)
This presentation includes basic of PCOS their pathology and treatment and also Ayurveda correlation of PCOS and Ayurvedic line of treatment mentioned in classics.
How to Add Chatter in the odoo 17 ERP ModuleCeline George
In Odoo, the chatter is like a chat tool that helps you work together on records. You can leave notes and track things, making it easier to talk with your team and partners. Inside chatter, all communication history, activity, and changes will be displayed.
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...Levi Shapiro
Letter from the Congress of the United States regarding Anti-Semitism sent June 3rd to MIT President Sally Kornbluth, MIT Corp Chair, Mark Gorenberg
Dear Dr. Kornbluth and Mr. Gorenberg,
The US House of Representatives is deeply concerned by ongoing and pervasive acts of antisemitic
harassment and intimidation at the Massachusetts Institute of Technology (MIT). Failing to act decisively to ensure a safe learning environment for all students would be a grave dereliction of your responsibilities as President of MIT and Chair of the MIT Corporation.
This Congress will not stand idly by and allow an environment hostile to Jewish students to persist. The House believes that your institution is in violation of Title VI of the Civil Rights Act, and the inability or
unwillingness to rectify this violation through action requires accountability.
Postsecondary education is a unique opportunity for students to learn and have their ideas and beliefs challenged. However, universities receiving hundreds of millions of federal funds annually have denied
students that opportunity and have been hijacked to become venues for the promotion of terrorism, antisemitic harassment and intimidation, unlawful encampments, and in some cases, assaults and riots.
The House of Representatives will not countenance the use of federal funds to indoctrinate students into hateful, antisemitic, anti-American supporters of terrorism. Investigations into campus antisemitism by the Committee on Education and the Workforce and the Committee on Ways and Means have been expanded into a Congress-wide probe across all relevant jurisdictions to address this national crisis. The undersigned Committees will conduct oversight into the use of federal funds at MIT and its learning environment under authorities granted to each Committee.
• The Committee on Education and the Workforce has been investigating your institution since December 7, 2023. The Committee has broad jurisdiction over postsecondary education, including its compliance with Title VI of the Civil Rights Act, campus safety concerns over disruptions to the learning environment, and the awarding of federal student aid under the Higher Education Act.
• The Committee on Oversight and Accountability is investigating the sources of funding and other support flowing to groups espousing pro-Hamas propaganda and engaged in antisemitic harassment and intimidation of students. The Committee on Oversight and Accountability is the principal oversight committee of the US House of Representatives and has broad authority to investigate “any matter” at “any time” under House Rule X.
• The Committee on Ways and Means has been investigating several universities since November 15, 2023, when the Committee held a hearing entitled From Ivory Towers to Dark Corners: Investigating the Nexus Between Antisemitism, Tax-Exempt Universities, and Terror Financing. The Committee followed the hearing with letters to those institutions on January 10, 202
Normal Labour/ Stages of Labour/ Mechanism of LabourWasim Ak
Normal labor is also termed spontaneous labor, defined as the natural physiological process through which the fetus, placenta, and membranes are expelled from the uterus through the birth canal at term (37 to 42 weeks
Introduction to AI for Nonprofits with Tapp NetworkTechSoup
Dive into the world of AI! Experts Jon Hill and Tareq Monaur will guide you through AI's role in enhancing nonprofit websites and basic marketing strategies, making it easy to understand and apply.
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
Delivering Micro-Credentials in Technical and Vocational Education and TrainingAG2 Design
Explore how micro-credentials are transforming Technical and Vocational Education and Training (TVET) with this comprehensive slide deck. Discover what micro-credentials are, their importance in TVET, the advantages they offer, and the insights from industry experts. Additionally, learn about the top software applications available for creating and managing micro-credentials. This presentation also includes valuable resources and a discussion on the future of these specialised certifications.
For more detailed information on delivering micro-credentials in TVET, visit this https://tvettrainer.com/delivering-micro-credentials-in-tvet/
Unit 8 - Information and Communication Technology (Paper I).pdfThiyagu K
This slides describes the basic concepts of ICT, basics of Email, Emerging Technology and Digital Initiatives in Education. This presentations aligns with the UGC Paper I syllabus.
Acetabularia Information For Class 9 .docxvaibhavrinwa19
Acetabularia acetabulum is a single-celled green alga that in its vegetative state is morphologically differentiated into a basal rhizoid and an axially elongated stalk, which bears whorls of branching hairs. The single diploid nucleus resides in the rhizoid.
A review of the growth of the Israel Genealogy Research Association Database Collection for the last 12 months. Our collection is now passed the 3 million mark and still growing. See which archives have contributed the most. See the different types of records we have, and which years have had records added. You can also see what we have for the future.
Biological screening of herbal drugs: Introduction and Need for
Phyto-Pharmacological Screening, New Strategies for evaluating
Natural Products, In vitro evaluation techniques for Antioxidants, Antimicrobial and Anticancer drugs. In vivo evaluation techniques
for Anti-inflammatory, Antiulcer, Anticancer, Wound healing, Antidiabetic, Hepatoprotective, Cardio protective, Diuretics and
Antifertility, Toxicity studies as per OECD guidelines
Optimizing Linux Kernel for Real-time Performance On Multi-Core Architecture
1. P. Bala Subramanyam Raju & P. Govindarajulu
International Journal of Computer Science and Security (IJCSS), Volume (9) : Issue (4) : 2015 185
Optimizing Linux Kernel for Real-time Performance
On Multi-Core Architecture
P. Bala Subramanyam Raju bsr3011@gmail.com
Research Scholar,
S.V University,
Tirupathi Chittoor (Dt) AP, India
P. Govindarajulu PGovindarajulu@yahoo.com
Professor, Dept. of Computer Science,
S.V University,
Tirupathi Chittoor (Dt) AP, India
Abstract
Linux kernel developed and distributed in open source doesn’t support for Hard Real-time
scheduling. The open source Linux kernels are designed in time sharing manner to obtain
maximum throughput. With this, Linux Operating System is considered to be an OS, which is not
supporting Real-Time Applications, natively it has some features, already included in the
mainstream to provide real-time support. There are certain modified Linux kernels like RTLinux,
Symbian OS, Nucleus OS, Lynx OS and Fusion RTOS [1] which are explicitly designed for hard
Real-Time support [2]. These specially designed Real-Time Linux kernels is mostly targeted for
special hardware’s like embedded systems, robots, safety critical etc. ,very few kernels for
general purpose. Most of these kernels are be available as proprietary or closed, excluding a very
few and not suitable for all hardware architecture’s.
Now a days Real-Time Performance has become universal requirement for computer games,
multimedia systems, household monitoring and controlling appliances. So the general purpose
Linux kernel needs to be optimized, to achieve Real-time performance to meet the user
expectations. This paper tries to extract real-time performance from general kernel and suggest
some techniques to optimize Linux kernel to meet real-time deadlines.
Keywords: Kernel, Embedded Systems, Deadline, Real-time, Scheduler, Hyper Threading.
1. INTRODUCTION
Multi-core processor, delivering high computing power with reduction in hardware cost. This
reduction in the hardware cost helps large number of people to purchase high performance
computers. A normal user can run special types of applications like robot controller, applications
collecting data from physical sensors, which are real time in nature and are not supported by
open source Linux. In order to achieve real-time response, the General Purpose Linux kernel has
modified by adding two real-time scheduling policies as shown in figure 1.1.
2. P. Bala Subramanyam Raju & P. Govindarajulu
International Journal of Computer Science and Security (IJCSS), Volume (9) : Issue (4) : 2015 186
FIGURE1.1: Showing various Scheduling classes and policies in General Purpose Linux Kernel 4.0.
A real time system can be defined [3][4][5][6] as a "system capable of guaranteeing timing
requirements of the processes under its control".
The following goals should be considered in scheduling a real-time system:
• Meeting the timing constraints of the system
• Obtaining a high degree of System utilization while satisfying the timing constraints
• Reducing the cost of context switches caused by preemption
• Reducing the communication cost in real-time distributed systems
Even after adding new scheduling classes and polices, the kernel needs to be fine-tuned to reach
the goals of real-time system from multicore systems.
The remainder of the paper is organized as follows Section 2 discuss the previous work; section;
Section 3 presents the hardware and software environment details, Section 4 describes an
experimental performance evaluation; Section 5 proposes Optimization technique’s. Section 6
gives implementation and experimental Results; Section 7 concludes the paper with future work.
2. PREVIOUS WORK
This section gives the overview of the research work carried out related to the performance
improvement of Real-Time Systems.
Chenyang Lu, Xiaorui Wang and Xenofon Koutsoukos [7] proposed an approach to extend
Quality of Service (QoS) from single processor to Distributed Real-Time Systems by a model
predictive control approach. Utilization control is formulated as a multi-variable constrained
optimization problem, second a dynamic model is established to formally characterize the
coupling among multiple processor due to end to end tasks and practical constraints. MIMI model
predictive controller is designed to control the utilization of multiple processors simultaneously.
Finally stability analysis is performed to establish statistical guarantees on desired utilization
3. P. Bala Subramanyam Raju & P. Govindarajulu
International Journal of Computer Science and Security (IJCSS), Volume (9) : Issue (4) : 2015 187
despite the uncertainty introduced by variation in task execution times. Simulation results
demonstrate it can provide robust utilization guarantees when task execution times are
significantly overestimated and change dynamically at run-time.
David Beal [8] an engineer of Freescale semiconductor, has specified that standard Linux kernel
include enhanced schedulers, virtual memory, shared memory, POSIX Timers, Real-time
Signals, POSIX IO,POSIX threads, Low Latency and many features that make Linux suitable
for challenging real-time products and applications. Nat Hillary [9] of Freescale Semiconductor,
presented methods for designing, measuring, improving the performance of real-time systems.
Finally he concluded that real-time software is not something that can be done in a single step.
Meeting required performance criteria can be obtained by careful consideration between the
system and its environment needs. High fidelity software performance measurements may be
achieved by using a combination of source code instrumentation and hardware.
Suresh Siddha,Venkatesh Pallipadi and Asit Mallick [10] proposed new scheduler optimization
for Linux Kernel 2.6 for Chip Multi Processing (CMP). They discussed about generic OS
Scheduler optimization opportunities that are appropriate in CMP environment. Henrik Austad, of
Norwegian University of Science and Technology has introduced a new pfair algorithm for real-
time tasks in the linux kernel on multi-core system. This scheduler will handle real-time task that
cannon miss a deadline and is planned to be placed on top of the RT preemption patch. Due to
problems faced during integration process, a fully functional scheduler has not been
implemented.
Swati Pandit and Rajashree Shedge [11] has presented no of real-time scheduling algorithms that
are suitable for simple uniprocessor and highly sophisticated multi-core processor. This paper
also discusses the static, dynamic and hybrid priorities of a process. Finally conclusion shows
that Instantaneous utilization factor scheduling algorithm gives better result in uniprocessor
scheduling algorithms and Modified Instantaneous utilization factor scheduling algorithm gives
better context switching, response time and CPU utilization as compared to previous scheduling
algorithms.
Rohan R. Kabugade, S. S Dhotre, S H Patil [12] presents a modified algorithm named MOFRT
(Modify O (1) For Real-Time) and Just-In-Time (JIT) based on the Linux kernel 3.2 to improve the
Queue Management for Real time Tasks. Though, some of these algorithms have not been
implemented since it is very hard to support new scheduling algorithms on nearly every operating
system. However the previous works does not try to explore and fine tune the existing real-time
supporting features included in the Linux Kernel Scheduler.
3. HARDWARE & SOFTWARE DETAILS
TABLE 1.1: Showing the hardware details.
• LINUX KERNEL 4.0-generic [14]
• LINUX MINT OS [15]
• TERMINATOR
Processor Intel® Core™ i7-4770k
[5]
No of Cores 4
No of Threads 8
Base Frequency 3.5 GHz
Turbo Frequency 3.9 GHz
Intel® Smart Cache 8 MB
RAM 8 GB/1600 MHz
4. P. Bala Subramanyam Raju & P. Govindarajulu
International Journal of Computer Science and Security (IJCSS), Volume (9) : Issue (4) : 2015 188
• GCC COMPILER
• HTOP
• STRACE
4. EXPERIMENTAL PERFORMANCE EVALUATION
The goal of this experiment is to evaluate the performance of real-time scheduler included in the
kernel 4.0. The program is designed to create a load to a multicore processor; and evaluate how
far the existing scheduler supports for real-time programs in heavy load and normal situations,
irrespective of other delays like data transfers, IO read & writes Network issues etc.
The algorithm of “Load.C” is as follows:
Step 1 : Start
Step 2 : repeat the following until true
step 2.1 : Stime=Read System time
step 2.2 : print 'Start time is:" stime
step 2.3 : j=0;
step 2.3 : Repeat the following steps until j<100
step 2.3.1 :i=0
step 2.3.2 :Repeat the following steps until i<1000000
step 2.3.2.1 : sum =sum +i;
step 2.3.2.2 : i=i+1
step 2.3.3 :i=0
step 2.3.4 :Repeat the following steps until i<1000000
step 2.3.4.1 : sum =sum +i;
step 2.3.4.2 : i=i+1
step 2.3.5 :i=0
step 2.3.6 :Repeat the following steps until i<1000000
step 2.3.6.1 : sum =sum +i;
step 2.3.6.2 : i=i+1
step 2.3.7 :i=0
step 2.3.8 :Repeat the following steps until i<1000000
step 2.3.8.1 : sum =sum +i;
step 2.3.8.2 : i=i+1
step 2.3.9 :i=0
step 2.3.10 :Repeat the following steps until i<1000000
step 2.3.10.1 : sum =sum +i;
step 2.3.10.2 : i=i+1
step 2.3.11 :i=0
step 2.3.12 :Repeat the following steps until i<1000000
step 2.3.12.1 : sum =sum +i;
step 2.3.12.2 : i=i+1
step 2.3.13 :i=0
step 2.3.14 :Repeat the following steps until i<1000000
step 2.3.14.1 : sum =sum +i;
step 2.3.14.2 : i=i+1
step 2.3.15 :i=0
step 2.3.16 :Repeat the following steps until i<1000000
step 2.3.16.1 : sum =sum +i;
5. P. Bala Subramanyam Raju & P. Govindarajulu
International Journal of Computer Science and Security (IJCSS), Volume (9) : Issue (4) : 2015 189
step 2.3.16.2 : i=i+1
step 2.3.17 :i=0
step 2.3.18 :Repeat the following steps until i<1000000
step 2.3.18.1 : sum =sum +i;
step 2.3.18.2 : i=i+1
step 2.4 : etime=read system time
step 2.5 : print 'End time is:"etime
step 2.6 : 'The Loop used :' etime-stime 'seconds'
step 3 move to step 2
step 4 stop
The designed program has been executed with two different schedulers and priority. One with RT
class, FIFO scheduler and highest priority of 99 using the command “chrt –f 99. /FIFO”. Other has
executed with Fair Scheduler class and normal priority using the command “. /a.out”. The results
are tabulated below:
TABLE 1.2: showing execution results of Load.C.
The maximum time taken by the specified system to complete the loop execution is 2 seconds.
The above results show that Linux Kernel supports real-time performance by default, until no of
threads is equal to no of physical cores in the system without any deadline failure .After the no of
threads increases than physical cores the system performance starts degrading.
Real –Time
Threads
Normal Threads
Total No of Threads
Real-time Thread Failures/Sec
1 0 1 0
1 1 2 0
1 2 3 0
1 3 4 0
1 4 5 2
1 5 6 5
1 6 7 5
1 7 8 5
6. P. Bala Subramanyam Raju & P. Govindarajulu
International Journal of Computer Science and Security (IJCSS), Volume (9) : Issue (4) : 2015 190
The figure 1.2 shows the execution of “Load.c” program using terminator.
FIGURE 1.2: showing real-time thread and 7 normal thread execution.
5. PROPOSED OPTIMIZATION TECHNIQUE’S AND IMPLEMENTATION
There Linux kernel needs to be fine-tuned to support real-time environment in heavy load
situations ,because the default kernel fully supports multitasking to increase the overall
throughput buy using completely fair scheduling class the optimization techniques are specified
below.
5.1 No Force Preemption
Preemption is one of the bottlenecks to real-time performance, because the kernel will preempt
the thread non-voluntarily irrespective of program requirements and priorities, in order to support
completely fair scheduling class. The default Linux kernel available in General Public License is
built in way that the kernel can preempt the thread non-voluntarily. To improve real-time
performance the Linux kennel needs to rebuild and update boot loader in a way that the kernel
should not force thread to preempt. The procedure is explained below.
1. Download latest kernel from www.kernel.org[16]
2. Install git-core,libncurses5-dev tools required to build Linux kernel
3. Configure the options required using the $ make menuconfig
4. In menu configuration options select processor type and features-> preemption model
Select “No forced preemption (server) “model shown in fig 1.3
5. Then build using make command
6. Install modules using command $sudo make modules-install
7. Install kernel using $sudo make
8. Update system configuration using $ sudo update-initramfs-c-k 4.0
9. Update boot loader $ sudo update-grub
7. P. Bala Subramanyam Raju & P. Govindarajulu
International Journal of Computer Science and Security (IJCSS), Volume (9) : Issue (4) : 2015 191
FIGURE 1.3: Showing the setting the preemption model during kernel building.
5.2 Stop Non-Voluntary Context Switching
The default Linux kernel will move thread from one core to other, in order to load balance the
execution cores. This context switching takes CPU time to move executing thread from one core
to other, by blocking the execution, which results in the execution delay leads to real-time failure.
This can be avoided by setting the allowed CPU list to one specific core using the command
“taskset“. The figures 1.4 and 1.5 shows the thread allowed CPU’s list before and after setting
CPU affinity. This can be viewed by using a command “cat /proc/pid/Status”,where pid is
processID of a thread that needs to bind to a processor[17][18][19].
FIGURE 1.4 & 1.5: Showing process details before and after setting CPU affinities list and reduced context
switches.
5.3 Hyper Threading (HT)
Intel Hyper-Threading Technology (Intel® HT Technology) is a technology used by some Intel
microprocessors that allows a single microprocessor to act like two separate processors to the
operating system and the application programs that use it. HT Technology utilizes resources
8. P. Bala Subramanyam Raju & P. Govindarajulu
International Journal of Computer Science and Security (IJCSS), Volume (9) : Issue (4) : 2015 192
more efficiently .As a performance feature, it also increases processor throughput, improving
overall performance on threaded software. Figure 1.6 showing the difference between
Multiprocessor and Hyper threading processor [22][23][24].
FIGURE 1.6: showing technological difference between multiprocessor and HT enabled processor.
This HT Technology becomes a major drawback for real-time performance because, the two
threads compete for execution resource on single execution unit, and this results in sharing the
CPU cycles between the two threads. Sharing real-time thread CPU cycles results in deadline
failure, due to less execution time. To utilize 100 percent CPU cycles for real-time thread, the
other thread on the core needs to be disabled. This can be achieved using the command “echo 0
| sudo tee /sys/devices/system/cpu/cpu4/online”, here core no 4 has disabled. The figure1.7
showing the cpu4 disabled on quad core 8 threaded processor.
FIGURE 1.7: showing the cpu4 disabled on quad core 8 threaded processor.
9. P. Bala Subramanyam Raju & P. Govindarajulu
International Journal of Computer Science and Security (IJCSS), Volume (9) : Issue (4) : 2015 193
6. EXPERIMENTAL RESULTS AFTER OPTIMIZATION
After fine tuning the operating system and hardware, the program also needs to change
according to the requirements for real-time. The changed algorithm is shown below.
Step 1 : Start
Step 2 : Read current process ID from kernel
tid= getpid();
Step 3 : Set the current thread to execute on CPU0 using taskset –cp 0 tid
Step 4: Disable core 4 by executing the command as super user
“echo 0 |sudo tee /sys/devices/system/cpu/cpu4/online
Super user password
Step 5 : repeat the following until true
step 5.1 : Stime=Read System time
step 5.2 : print 'Start time is:" stime
step 5.3 : j=0;
step 5.3 : Repeat the following steps until j<100
step 5.3.1 :i=0
step 5.3.2 :Repeat the following steps until i<1000000
step 5.3.2.1 : sum =sum +i;
step 5.3.2.2 : i=i+1
step 5.3.3 :i=0
step 5.3.4 :Repeat the following steps until i<1000000
step 5.3.4.1 : sum =sum +i;
step 5.3.4.2 : i=i+1
step 5.3.5 :i=0
step 5.3.6 :Repeat the following steps until i<1000000
step 5.3.6.1 : sum =sum +i;
step 5.3.6.2 : i=i+1
step 5.3.7 :i=0
step 5.3.8 :Repeat the following steps until i<1000000
step 5.3.8.1 : sum =sum +i;
step 5.3.8.2 : i=i+1
step 5.3.9 :i=0
step 5.3.10 :Repeat the following steps until i<1000000
step 5.3.10.1 : sum =sum +i;
step 5.3.10.2 : i=i+1
step 5.3.11 :i=0
step 5.3.12 :Repeat the following steps until i<1000000
step 5.3.12.1 : sum =sum +i;
step 5.3.12.2 : i=i+1
step 5.3.13 :i=0
step 5.3.14 :Repeat the following steps until i<1000000
step 5.3.14.1 : sum =sum +i;
step 5.3.14.2 : i=i+1
step 5.3.15 :i=0
step 5.3.16 :Repeat the following steps until i<1000000
step 5.3.16.1 : sum =sum +i;
step 5.3.16.2 : i=i+1
10. P. Bala Subramanyam Raju & P. Govindarajulu
International Journal of Computer Science and Security (IJCSS), Volume (9) : Issue (4) : 2015 194
step 5.3.17 :i=0
step 5.3.18 :Repeat the following steps until i<1000000
step 5.3.18.1 : sum =sum +i;
step 5.3.18.2 : i=i+1
step 5.4 : etime=read system time
step 5.5 : print 'End time is:"etime
step 5.6 : 'The Loop used :' etime-stime 'seconds'
step 6 move to step 2
step 7 stop
The table 1.3 shows the execution results after fine tuning the system for real-time performance.
TABLE 1.3: showing execution results of real-time and normal threads.
7. CONCLUSION AND FUTURE WORK
The results show that after fine tuning the Linux kernel in consideration with hardware, it is
possible to extract real-time performance from generally available open source Linux kernel.
This paper doesn’t on concentrate on implementation of fully non-preemptible kernel. This
experiment results in delay for normal priority process. If the number of real-time process
increases and starts disabling the cores then only real-time process will execute until the
hardware supports and normal process will block execution leads to imbalance execution.
8. REFERENCES
[1] Wikipedia Internet:www.en.wikipedia.org/wiki/List_of_real-time_operating_systems [May 10,
2015].
[2] Embedded Internet: www.embedded.com/design/operating-systems/4371651/9/Comparing-
the-real-time-scheduling-policies-of-the-Linux-kernel-and-an- RTOS [May 10, 2015].
[3] Wikipedia Internet: www.en.wikipedia.org/wiki/Real-time_operating_system [May 10, 2015].
[4] Peter wurmsdobler "Real Time Linux Foundation, Inc.”. Internet :
www.realtimelinuxfoundation.org/ [May 10, 2015].
Real –Time
Threads
Normal Threads
Total No of Threads
Real-time Thread Failures/Sec
1 0 1 0
1 1 2 0
1 2 3 0
1 3 4 0
1 4 5 0
1 5 6 0
1 6 7 0
1 7 8 0
11. P. Bala Subramanyam Raju & P. Govindarajulu
International Journal of Computer Science and Security (IJCSS), Volume (9) : Issue (4) : 2015 195
[5] Fernando S. Schlindwein “Real-time DSP” Internet:www.le.ac.uk/eg/fss1/real%20time.htm.
[May 10, 2015].
[6] Kanaka Juvva “Real-Time Systems”Internet: www.users.ece.cmu.edu/~koopman
/des_s99/real_time/. [May 10, 2015].
[7] Chenyang Lu, Xiaorui Wang, Xenofon Koutsoukos,” End-to-End Utilization Control in
Distributed Real-Time Systems”, Distributed Computing Systems, 2004. Proceedings. 24th
International Conference, 2004.
[8] David Beal,”Linux® As a Real-Time Operating System” , Freescale Semiconductor,
Document Number: SWVERIFICATIONWP Rev. 0 11/2005.
[9] Nat Hillary,” Measuring Performance for Real-Time Systems” , Freescale Semiconductor,
Document Number: GRNTEEPFRMNCWP Rev. 0 11/2005.
[10] Suresh Siddha, Venkatesh Pallipadi,” Chip Multi Processing aware Linux Kernel Scheduler”,
Linux Symposium, Volume 2, 2006.
[11] Swati Pandit and Rajashree Shedge,” Survey of Real Time Scheduling Algorithms ” IOSR
Journal of Computer Engineering e-ISSN: 2278-0661, p- ISSN: 2278-8727 Volume 13,
Issue 2 (Jul. - Aug. 2013), pp 44-51,
[12] Rohan R. Kabugade, S. S Dhotre, S H Patil,” A Study of Modified O(1) Algorithm for Real
Time Task in Operating System”, Sinhgad Institute of Management and Computer
Application NCI2TM: 2014 ISBN: 978-81-927230-0-6.
[13] www.ark.intel.com/products/75123/Intel-Core-i7-4770K-Processor-8M-Cache-up-to-3_90-
GHz/[May.10, 2015].
[14] Internet: www.kernel.org,[May.10, 2015].
[15] Linux Mint Internet:www.linuxmint.com//[May.10, 2015].
[16] Lakshmanan Ganapathy,” How to Compile Linux Kernel from Source to Build Custom
Kernel” Internet: www.thegeekstuff.com/2013/06/compile-linux-kernel/ June 13, 2013 [May.
10, 2015].
[17] Robert Love,”CPU Affinity” Internet: www.linuxjournal.com/article/6799 [May.10, 2015].
[18] Internet: www.gnu.org/software/libc/manual/html_node/CPU-Affinity.html[May.10, 2015].
[19] Internet: www.linux.die.net/man/1/taskset[May.10, 2015].
[20] Alexander Sandler, April 15, 2008 “SMP affinity and proper interrupt handling in Linux”
Internet: www.alexonlinux.com/smp-affinity-and-proper-interrupt-handling-in-linux[May.10,
2015].
[21] Sandeep Krishnan on January 27, 2014,” Introduction to Linux Interrupts and CPU SMP
Affinity”, Internet: www.thegeekstuff.com/2014/01/linux interrupts/ [May.10, 2015].
[22] www.intel.in/content/www/in/en/architecture-and-technology/hyper-threading/hyper-
threading-technology.html [May.10, 2015].
[23] http://whatis.techtarget.com/definition/Hyper-Threading[May.10, 2015]
[24] Internet : www.doc.opensuse.org/products/draft/SLES/SLES-
tuning_sd_draft/cha.tuning.taskscheduler.html[May.10, 2015].