Towards a Load Balancer Architecture for Multi- Core Mobile Communication Systems

Size: px
Start display at page:

Download "Towards a Load Balancer Architecture for Multi- Core Mobile Communication Systems"

Transcription

1 Towards a Load Balancer Architecture for Multi- Core Mobile Communication Systems D. Tudor, G. Macariu, C. Jebelean and V. Creţu Politehnica University of Timisoara, Timisoara, Romania {dacian, georgiana, calin, vcretu}@cs.upt.ro Abstract Due to the exponential growth of the mobile communication systems in the past decade, more efforts have been invested in performance increase solutions which should satisfy the increasing demand for resource hungry applications. Since the computational power provided by single processing units seems to grow slower compared to the application needs, it is generally accepted that a suitable solution can be implemented using multi-core architectures which aim to provide a better balance between performance, power consumption, flexibility and scalability. In this paper we discuss the problem of scheduling and load balancing alternatives for virtualized run-time environments. Based on the virtualization concept, we summarize the most common approaches in scheduling techniques for embedded mobile communication systems. Considering the shortcomings of single core architectures for embedded mobile communication systems, a future architecture is presented, which has been proposed by the emuco project in the context of an European research project. Last but not least, we focus on a critical component in the future embedded system that aims to distribute and balance the load in order to ensure an optimal distribution of threads on the available cores and to eventually reduce power consumption. A variant of the architecture of the load balancer and its integration into the complete system is described. I. INTRODUCTION The continuous growth of mobile communication systems has lead to the development of more complex mobile systems. Complex feature commonly seen on high-end devices have started to become present in lowend products (e.g. video streaming, video telephony, rich multimedia applications). To satisfy the market s demands for more complex features, more efforts have been put into the increase of processing power due to the large scale availability of common processors. For example, it is easier to integrate a regular processor in a given system than to adopt a domain specific processor such as a graphical accelerator or advanced DSP. Since the computational power provided by individual processing units seems to grow very slowly compared to the needs, it is generally accepted that a suitable solution can be implemented using multi-core architectures. Multicore architectures are based on multiple processing cores manufactured on the same integrated circuit. Modern multi-core processors for embedded systems (e.g. such as those provided by ARM) offer support to control individual cores through dynamic clock scaling and advanced low-power states. As a result of the frequency reduction and possibility to turn cores off, it is expected to greatly support power efficiency and reduced heat dissipation. Next, it is expected that these architectures can provide the best balance between performance, power consumption, flexibility and scalability. A natural consequence of multi-core solutions is that they pave the way to enable separated execution domains. This aspect is especially important in the context of dynamic addition and execution of third party software application in their own execution environment, by making use of virtualization techniques. Virtualization is well known in the desktop and server domains and has been extensively used in the last couple of years. Legacy operating system virtualization has been extensively done on micro-kernel based systems such as the L4 microkernel. One of the major goals that are aimed in the emuco project [18] is to develop and demonstrate concepts allowing the co-operation of open and closed application environments through the utilization of virtualization techniques. The benefit of multi-core architectures is three-fold: first, multi-cores provide the required computing performance; second they provide power efficiency by allowing lower clock rates; and third, they provide a second dimension in resource allocation. In the emuco consortium it is believed that bringing these technologies together in a mobile environment will be a big step to a new mobile generation systems. II. SCHEDULING SOLUTIONS The scheduling algorithms considered for embedded systems can be divided in two major classes: offline algorithms and online algorithms. Offline (static) scheduling algorithms generate schedules prior to system execution. This kind of algorithms is appropriate in systems where the parameters of the tasks are known a priori and change infrequently. An offline schedule can be represented as a static table with explicit start time and execution place for each task. Although the resulting schedule is predictable and guarantees system performance it presents the drawback that it is inflexible since any change in the parameters of the tasks determines the reconstruction of the whole scheduling table. Online (dynamic) algorithms generate the schedule at runtime and do not assume any prior knowledge of task parameters. The main advantages of online scheduling come from its flexibility and ability to adapt to environment changes but all at the cost of high run-time processing time. Another possibility is to build a quasi-static schedule consisting of multiple offline schedules, each to be used in an alternate situation. At system runtime, an online schedule will select the pre-computed offline schedule

2 applicable to each situation. This solution was used in [10] to achieve fault-tolerance. In complex real-time systems applications may have different timing requirements and the differences between real-time and non-real-time tasks must be reflected in the chosen scheduling algorithm. At the same time, the scheduler must guarantee timely availability of sufficient computational resources to all real-time tasks and a certain performance level to non-real-time tasks. In such situations several levels of scheduling may be required. A. Hierarchical Scheduling Applications for embedded systems can have different performance requirements. Some of them may have strict timing constraints while for others achieving greater performance may be the most important requirement. A schedule for applications with hard real-time constraints demands extensive verification and analysis to determine if the application can meet all its deadlines. By contrast, scheduling non-real-time applications does not need such proofs but, in turn, may need to provide Quality of Service guarantees. The solution for making possible co-existence of applications with different timing requirements is represented by execution time servers. The basic idea behind this technique is that each application is assigned to a server which uses a fraction of the total processor bandwidth and the task running in the server is limited to using this reserved bandwidth. This solution is used extensively for uni-processor embedded systems and was also extended for multi-processor systems. In [2] and [3] two bandwidth sharing server algorithms for multiprocessor systems are introduced. Both algorithms assign a task to each server and use a global Earliest Deadline First (EDF) algorithm for scheduling servers. A more complex solution is presented in [5]. Here servers are assigned more than a single task and schedule their constituent tasks using any scheduling algorithm. At another level, server tasks are scheduled on available processors using a global EDF algorithm. For hard realtime tasks a server is associated with each processor in the system while for all soft real-time tasks a single migratory server is created and a number equal to the number of processors of migratory servers will handle best-effort jobs. This solution addresses only systems where the number of hard real-time tasks is small due to the need to statically assign them to servers. The FRESCOR (Framework for Real-time Embedded Systems based on COntRacts) project [8] extends the server technique introducing the notion of service contracts. Each application will have a contract specifying its timing and Quality of Service requirements which are negotiated with the scheduling framework. If negotiation is successful the system will reserve enough capacity for the application to meet its requirements by creating a server which keeps track of the resource usage for the associated contract. Contract negotiation can be made either offline at design time or online while the system is running when requirements change or new applications are deployed on the system. This solution enables composition of application components, each consisting of several threads, requiring hierarchical scheduling inside servers. A slightly different approach for ensuring that real-time applications running in a heterogeneous multi-processor system meet their timing constraints is introduced by the ARTiS scheduler [13]. In this case a number of processors are classified in real-time and non-real-time processors. Hard real-time tasks have the highest priority in the system, run only on real-time processors and cannot be migrated between processors, while soft real-time tasks may run on both real-time and non-real-time processors with the restriction that they may become non-preemptible only on non-real-time processors and may migrate from one processor to another. Non-real-time tasks can run on both types of processor as long as they do not endanger the real-time properties. The scheduler uses task migration for load balancing and as a way of ensuring that all hard real-time tasks meet their deadline. B. Power-Aware Scheduling Solutions As many embedded systems are powered by batteries a major issue is extending the autonomy of the system as much as possible. Existing power-aware scheduling algorithms exploit the processor capability of changing voltage and frequency during runtime. This technique is called Dynamic Voltage Scaling (DVS). A power-aware scheduling algorithm based on DVS selects at each instant the task to run and the processor voltage to apply while running the task. Power-aware scheduling can be done either offline (static) or online (dynamic). In the case of offline algorithms the processor voltage during the execution of a task is statically assigned before system execution as opposed to online algorithms where the processor voltage is determined just before scheduling a new task. Chen et al. [6] proposed a static scheduling algorithm using DVS for multi-core embedded systems applicable to loop applications. They start with an initial schedule obtained by rotation scheduling and use DVS for relaxing it in order to reduce energy consumption without endangering the timing requirements of the application. Opposite to the approach in [6], Shao et al. [15] introduce an algorithm in which the initial schedule assumes the minimum voltage level for all tasks and then iteratively increases the voltage for some tasks to reduce the execution time of the loop application until the timing constraints are satisfied. A mixed offline-online scheduling solution for sporadic hard real-time tasks upon multi-processor systems is proposed in [12]. Here an offline procedure determines a schedule where for each processor the smallest frequency is chosen and all task deadlines are met. As the offline procedure takes into consideration the worst case execution time (WCET) of each task and the probability of a task actual execution time being equal to its WCET is low, a further online procedure is applied to reduce the energy consumption. Basically, at system runtime, when a job is to be allocated to a processor based on a global EDF policy, the algorithm reduces the processor speed in such a way that the job still meets its deadline. A resembling technique is presented in [1], with the difference that here the processor speed is reduced only if the next task is not ready for execution when the current task should finish. The solutions presented above minimize energy consumption by executing tasks at reduced speed when the difference between WCET and actual execution time of tasks allows it and does not cause risks of missing deadlines. Another possible approach is to shut down processors when there are no active tasks and increase the supply voltage at maximum when there are tasks ready for

3 running. Such a solution is presented for example in [16] for uni-processor systems or in [4] for multi-processor systems. In [4] DVS is applied to all processor cores at once. In this case, cores are switched on only if task deadlines cannot be satisfied using only the cores that are already powered. Moreover, the speed of all cores is increased only if the algorithm cannot guarantee the WCET of all running tasks. As tasks finish, the working frequency of the cores is reduced or some of them are shut down. A drawback of the algorithm comes from the fact that the power savings are highly dependent of running time of each task and of their inter-arrival time. In [7] the voltage level used for each task instance is determined based on actual execution time of past instances which leads to more efficient energy consumption but only after several instances of each task have executed. The frequency and voltage scaling can also be made considering probabilistic distributions of task execution time. Such an approach is considered in [17] where tasks are portioned between the processors with the aim to balance energy consumption between them. All power-aware scheduling solutions presented above are defined for hard real-time task systems. But modern embedded systems have to deal with a combination of hard-, soft- or non-real-time tasks. To assure temporal isolation between these different types of tasks, a technique based on servers can be used. Scordino and Lipari [14] present a server-based technique using DVS for uni-processor systems where slowing down the processor determines each server with active jobs execute for a longer time. The server-based approach to DVS presents the advantage that it is not needed to know a priori the release time of tasks or their execution times. C. Multi-Mode Systems Some applications for embedded systems may have multiple modes of operation, each mode with an associated set of tasks. In these systems a problem that arises is transition from one mode to another. For example, the tasks of the old mode could all be interrupted or it may be possible to finish the tasks currently running and start the tasks of the new mode only after that. If the task associated with the new mode start only after all tasks of the old mode have stopped the transition protocol is said to be synchronous, otherwise it is asynchronous. A synchronous transition protocol for multi-processor realtime systems is introduced in [11]. III. A FUTURE MOBILE COMMUNICATION SYSTEM This section is largely based on the emuco technical report [18] and aims to summarize the most important aspects of the project from the architectural and scheduling point of view. A. emuco Architecture emuco [18] is one forerunner project that aims to provide an answer to the natural evolution of the embedded communication systems towards multi-core architectures. emuco introduces a multi-core hardware platform, which is efficiently exploited by the combination of an L4 micro-kernel with virtualization concepts, a load balancer, and legacy applications such as GSM protocol stack systems or multimedia applications running in heterogeneous run-time environments. In the emuco system architecture, the multi-core hardware platform lies on the lowest level, above which a micro-kernel is running (e.g. L4 Fiasco micro-kernel [19]). The micro-kernel is running in system mode, provides the upper layers with protected access to the hardware layer and offers a minimal set of system services like address management, memory management, thread handling and inter-process communication to applications running above. User-level services are built on top of these services, are run in user mode and compose the Basic Resource Layer. Upper layers consist of different choices for operating systems or virtual machines running on top of the micro-kernel and application layers. System flexibility and scalability is targeted by using a load balancer service running on top of the micro-kernel. The load balancer can be seen as an application running in the Basic Resource Layer in user mode, but for reasons of expressiveness we decided to allocate a separate level for this particular application. Conceptually, the load balancer continuously monitors the computational power needed by upper layers (applications) and dynamically balances the allocation of threads on the available cores in order to supply the necessary processing power and to optimize power consumption (e.g. shut down one or more cores when the computational power is low and put all cores to work when the need shows up). The emuco system architecture that includes the load balancer component is presented in Figure 1. B. Load Balancing Challenges In a multi-core environment, one component must decide where threads are allocated initially and decide when a thread needs to be relocated in order to satisfy an optimum criterion. We call such component the Load Balancer (LB). The role of the load balancer is to monitor thread execution and distribute the threads on the available cores. Only the load balancer has a global view of the threads in the system and can thus place threads on cores according to their needs. In the emuco system, the kernel does not migrate operating system threads dynamically, but rather only supplies functionality to do so for its applications. In an architectural view, the load balancer intercepts thread creations and thus gains control of the threads in applications. This functionality is transparent to the appli- Figure 1. emuco Architecture with Load Balancer

4 tion layer. The load balancer is then able to periodically, or on any specific event, monitor the threads and potentially migrate them between the available cores. Additionally, the load balancer has the possibility to switch CPU cores off to reduce the power consumption of the system, and to switch them back on if more CPU resources are required. IV. LOAD BALANCER ARCHITECTURE The main goal of the load balancer component is to ensure that, at each given moment, work is evenly distributed between the available CPUs. This implies that running threads should be migrated between CPUs such that no CPU becomes overloaded while other CPUs are kept under little stress, unless they are totally switched off. It is expected that this decision would promote an improvement on the overall power consumption of the system. Based on these considerations, we identified two main requirements for the load balancer antagonistic in nature: The load balancer should ensure that enough computation power is provided for each running thread. The load balancer should ensure an optimal distribution of threads on the available CPUs to improve power consumption if possible. During the evaluation of the possible design strategies of the load balancer, two scenarios have been considered in the emuco project, which are summarized next. The first approach refers to dynamic, on board load balancing. The second approach relies to offline system analysis and it is a part of our work in the context of the emuco project. The asynchronous scenario. Workload on each CPU is permanently monitored and thread migration between CPUs may occur at any given time. This scenario would normally ensure the best distribution of work among CPUs, but the overhead required by the monitoring part could become a serious drawback, especially in a realtime environment. The synchronous scenario. During its lifetime, the system can be seen as a state machine and certain events (external or not) determine transitions between states. States and transitions are application-specific and are dictated by the main component of the system, which is normally implemented as an L4 task, running next to the load balancer. This particular scenario relies on the fact that it is possible that thread distribution among CPUs does not need to change while the system remains in the same state. However, once the system switches its state, a new thread distribution may be needed, suitable for the new state. In this scenario there is no need to permanently monitor CPU loads and thread migration only happens when the system changes its state (thus being synchronous with that event). The exact distribution of threads for each state may be determined by means of profiling, automated learning, or other techniques. This scenario may not be as efficient as the previous one in what concerns the distribution of workload among CPUs but it can be more efficient when it comes to power consumption because it provides more flexibility. For example, the system may reach some state where the needed computation power is so low that the natural course of action would be to switch off a few CPUs while the other perform normally, instead of keeping all the CPUs active and balancing a small workload among all of them. We believe this scenario is the desirable one in a real-time environment since the overhead required to migrate threads between CPUs is smaller and only occurs during state changes. In case of the synchronous (or static approach), in each state, the load balancer should manage all the running threads in the L4 system where it is installed, tracking for each of them at least the following information: Thread identifier: primary key used to uniquely identify a thread; Priority: an integer between 0 and 255 (0 being the lowest, 255 being the highest) these values are enforced by the underlying L4 system; CPU identifier: an integer that uniquely identifies the CPU where the thread is currently running. In addition, for real-time threads the information which is managed by the load balancer can be enhanced with the following: Release time: the moment when thread execution is requested; Deadline: the maximum time until the task must be completed. Conceptually, this is achieved by using different thread tables, each of them being associated with one state of the load balancer. Thread tables are statically allocated at system startup and computed by a profiling application. In each state, the corresponding thread table contains a static mapping between running threads and available CPUs. The situation is depicted in Figure 2. The load balancer architecture is presented in Figure 3. It runs as a L4 service, together with other L4 services already available: pager, memory allocator, etc. In this architecture, it is possible that the L4 kernel runs an entire operating system on top of its virtualization layer. In the context of the emuco project, it was decided that the operating system of choice was L4Linux, which is a port of the Linux kernel to the L4 microkernel. It runs in user mode on top of the microkernel together with other microkernel applications, being binary compatible with the normal Linux/x86 kernel [9]. The main component of the system may also run as an L4 application, or as an L4Linux application, or there may be subcomponents Figure 2. Static Load Balancing Tables

5 running as L4 applications and other subcomponents running as L4Linux applications. In this environment, the load balancer may need to communicate with some or all of these components to properly perform its job. For example, communication with the L4 kernel is vital because thread migration, although commanded by the load balancer, is done at the L4 level. A. Thread tables generation The resource requirements of every application can be described in the form of a contract of the application with the rest of the system. The application contract concept is then used to determine the thread tables for each state of the system. The thread configuration tables can be obtained through benchmarking and profiling of applications. This is a must for hard real-time applications like the modem subsystem of an embedded mobile device for which the load balancer must decide as fast as possible on thread allocation and priority assignment. Through profiling one can determine the thread table for each operation mode (state) of an application. The process is described in Figure 4. The L4 microkernel offers a tracing facility which can provide application specific event traces. Those traces can contain information on thread scheduling like release times, execution time, thread core affinity, etc. Basically, by executing each application use case in L4 and collecting scheduling events an application contract containing application requirements can be determined through offline analysis. Further, the contract can be used to determine by offline negotiation the thread configuration tables for each use case (operation mode). Figure 4. Thread Configuration Table building process Once the contract negotiation is finished a reservation of computational resources (i.e. CPU time) is guaranteed to application tasks, and mapped to a priority captured within the load balancer table. V. CONCLUSIONS In this paper we have summarized some of the problems and challenges of constructing multi-core embedded communication systems from both the architectural and scheduling point of view. We have started by presenting the scheduling solution landscape and their applicability to multi-core embedded systems. Next, the architecture of the emuco system has been presented, which aims to bridge the gap between the increasing application requirements and the execution capabilities. In the context of the emuco architecture, we have identified a sensitive component which has to coordinate the execution of all running tasks within the system which is called the load balancer. Last but not least, the load balancer architecture is presented together with the system workflow in order to achieve a flexible and efficient system. ACKNOWLEDGMENT emuco ( is a European project supported by the European Union under the Seventh Framework Program (FP7) for research and technological development. REFERENCES Figure 3. Load Balancer Architecture [1] J. Ahmed, and C. Chakrabarti, "A Dynamic Task Scheduling Algorithm for Battery Powered DVS Systems," Proceedings of the 2004 International Symposium on Circuits and Systems 2004 (ISCAS '04), vol. 2, pp , May [2] S. Baruah, J. Goossens, and G. Lipari, Implementing Constant- Bandwidth Servers upon Multiprocessor Platforms, Proceedings of the Eighth IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS 02), pp , [3] S. Baruah, and G. Lipari, A Multiprocessor Implementation of the Total Bandwidth Server, Proceedings of the 18th International Parallel and Distributed Processing Symposium (IPDPS 04), vol. 1, pp. 40a, [4] D. Bautista, J. Sahuquillo, H. Hassan, S. Petit, and J. Duato, "A Simple Power-Aware Scheduling for Multicore Systems when Running Real-Time Applications," IEEE International Symposium on Parallel and Distributed Processing (IPDPS 08), pp.1-7, April 2008.

6 [5] B.B. Brandenburg, and J.H. Anderson, Integrating Hard/Soft Real-Time Tasks and Best-effort Jobs on Multiprocessors, Proceedings of the 19th Euromicro Conference on Real-Time Systems (ECRTS 07), pages 61-70, [6] Y. Chen, Z. Shao, Q. Zhuge, C. Xue, B. Xiao, and E.H. Sha, Minimizing Energy via Loop Scheduling and DVS for Multi- Core Embedded Systems, Proceedings of the 11th international Conference on Parallel and Distributed Systems - Workshops (ICPADS'05), vol. 2, pp. 2-6, July [7] A. Dudani, F. Mueller, and Y. Zhu, Energy-Conserving Feedback EDF Scheduling for Embedded Systems with Real-Time Constraints, Proceedings of the Joint Conference on Languages, Compilers and Tools for Embedded Systems: Software and Compilers For Embedded Systems (LCTES/SCOPES '02), pp , June [8] M.G. Harbour, FRESCOR - Architecture and Contract Model for Processors and Networks, Technical Report DAC1, Cantabria University, [9] H. Härtig, M. Hohmuth, J. Liedtke, S. Schönberg, and J. Wolter, The Performance of µ-kernel-based Systems, Proceedings of the 16th Symposium on Operating System Principles (SOSP), pp , France [10] V. Izosimov, P. Pop, P. Eles, and Z. Peng, Scheduling of Fault- Tolerant Embedded Systems with Soft and Hard Timing Constraints, Proceedings of the Conference on Design, Automation and Test in Europe (DATE '08), pp , March [11] V. Nelis, and J. Goossens, Mode Change Protocol for Multi- Mode Real-Time Systems upon Identical Multiprocessors, arxiv: , Cornell University, [12] V. Nelis, J. Goossens, R. Devillers, D. Milojevic, and N. Navet, Power-Aware Real-Time Scheduling upon Identical Multiprocessor Platforms, Proceedings of the 2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing (SUTC 08), pp , June [13] E. Piel, P. Marquet, J. Soula, J.-L. Dekeyser, "Real-Time Systems for Multiprocessor Architectures," 20th International on Parallel and Distributed Processing Symposium (IPDPS 06), 8 pp., April [14] C. Scordino, and G. Lipari, "A Resource Reservation Algorithm for Power-Aware Scheduling of Periodic and Aperiodic Real- Time Tasks," IEEE Transactions on Computers, vol. 55, no. 12, pp , December, [15] Z. Shao, M. Wang, Y. Chen, C. Xue, M. Qiu, L.T. Yang, and E.H. Sha, "Real-Time Dynamic Voltage Loop Scheduling for Multi- Core Embedded Systems," IEEE Transactions on Circuits and Systems II: Express Briefs, vol.54, no.5, pp , May [16] Y. Shin, K. Choi, and T. Sakurai, Power-conscious Scheduling for Real-time Embedded Systems Design, VLSI Design, vol. 12, no. 2, pp , [17] C. Xian, Y. Lu, and Z. Li, Energy-Aware Scheduling for Real- Time Multiprocessor Systems with Uncertain Task Execution Time, Proceedings of the 44th Annual Conference on Design Automation (DAC 07), pp , June [18] emuco Technical Report, [19] L4 Fiasco micro-kernel,

1. PUBLISHABLE SUMMARY

1. PUBLISHABLE SUMMARY 1. PUBLISHABLE SUMMARY ICT-eMuCo (www.emuco.eu) is a European project with a total budget of 4.6M which is supported by the European Union under the Seventh Framework Programme (FP7) for research and technological

More information

CHAPTER 1 INTRODUCTION

CHAPTER 1 INTRODUCTION 1 CHAPTER 1 INTRODUCTION 1.1 MOTIVATION OF RESEARCH Multicore processors have two or more execution cores (processors) implemented on a single chip having their own set of execution and architectural recourses.

More information

Predictable response times in event-driven real-time systems

Predictable response times in event-driven real-time systems Predictable response times in event-driven real-time systems Automotive 2006 - Security and Reliability in Automotive Systems Stuttgart, October 2006. Presented by: Michael González Harbour mgh@unican.es

More information

CHAPTER 1 INTRODUCTION

CHAPTER 1 INTRODUCTION CHAPTER 1 INTRODUCTION 1.1 Background The command over cloud computing infrastructure is increasing with the growing demands of IT infrastructure during the changed business scenario of the 21 st Century.

More information

Real-Time Scheduling 1 / 39

Real-Time Scheduling 1 / 39 Real-Time Scheduling 1 / 39 Multiple Real-Time Processes A runs every 30 msec; each time it needs 10 msec of CPU time B runs 25 times/sec for 15 msec C runs 20 times/sec for 5 msec For our equation, A

More information

A Dynamic Resource Management with Energy Saving Mechanism for Supporting Cloud Computing

A Dynamic Resource Management with Energy Saving Mechanism for Supporting Cloud Computing A Dynamic Resource Management with Energy Saving Mechanism for Supporting Cloud Computing Liang-Teh Lee, Kang-Yuan Liu, Hui-Yang Huang and Chia-Ying Tseng Department of Computer Science and Engineering,

More information

Asymmetric Scheduling and Load Balancing for Real-Time on Linux SMP

Asymmetric Scheduling and Load Balancing for Real-Time on Linux SMP Asymmetric Scheduling and Load Balancing for Real-Time on Linux SMP Éric Piel, Philippe Marquet, Julien Soula, and Jean-Luc Dekeyser {Eric.Piel,Philippe.Marquet,Julien.Soula,Jean-Luc.Dekeyser}@lifl.fr

More information

Aperiodic Task Scheduling

Aperiodic Task Scheduling Aperiodic Task Scheduling Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 Germany Springer, 2010 2014 年 11 月 19 日 These slides use Microsoft clip arts. Microsoft copyright

More information

Design and Implementation of the Heterogeneous Multikernel Operating System

Design and Implementation of the Heterogeneous Multikernel Operating System 223 Design and Implementation of the Heterogeneous Multikernel Operating System Yauhen KLIMIANKOU Department of Computer Systems and Networks, Belarusian State University of Informatics and Radioelectronics,

More information

Leveraging Thin Hypervisors for Security on Embedded Systems

Leveraging Thin Hypervisors for Security on Embedded Systems Leveraging Thin Hypervisors for Security on Embedded Systems Christian Gehrmann A part of Swedish ICT What is virtualization? Separation of a resource or request for a service from the underlying physical

More information

Application development solutions White paper December 2009. A practical approach for developing multicore systems.

Application development solutions White paper December 2009. A practical approach for developing multicore systems. Application development solutions White paper December 2009 A practical approach for developing multicore systems. Page 2 Contents 2 Introduction 3 Practical and proven approaches are available for multicore

More information

Lecture 3 Theoretical Foundations of RTOS

Lecture 3 Theoretical Foundations of RTOS CENG 383 Real-Time Systems Lecture 3 Theoretical Foundations of RTOS Asst. Prof. Tolga Ayav, Ph.D. Department of Computer Engineering Task States Executing Ready Suspended (or blocked) Dormant (or sleeping)

More information

Dynamic resource management for energy saving in the cloud computing environment

Dynamic resource management for energy saving in the cloud computing environment Dynamic resource management for energy saving in the cloud computing environment Liang-Teh Lee, Kang-Yuan Liu, and Hui-Yang Huang Department of Computer Science and Engineering, Tatung University, Taiwan

More information

Cloud Computing and Robotics for Disaster Management

Cloud Computing and Robotics for Disaster Management 2016 7th International Conference on Intelligent Systems, Modelling and Simulation Cloud Computing and Robotics for Disaster Management Nitesh Jangid Information Technology Department Green Research IT

More information

Ada Real-Time Services and Virtualization

Ada Real-Time Services and Virtualization Ada Real-Time Services and Virtualization Juan Zamorano, Ángel Esquinas, Juan A. de la Puente Universidad Politécnica de Madrid, Spain jzamora,aesquina@datsi.fi.upm.es, jpuente@dit.upm.es Abstract Virtualization

More information

Deeply Embedded Real-Time Hypervisors for the Automotive Domain Dr. Gary Morgan, ETAS/ESC

Deeply Embedded Real-Time Hypervisors for the Automotive Domain Dr. Gary Morgan, ETAS/ESC Deeply Embedded Real-Time Hypervisors for the Automotive Domain Dr. Gary Morgan, ETAS/ESC 1 Public ETAS/ESC 2014-02-20 ETAS GmbH 2014. All rights reserved, also regarding any disposal, exploitation, reproduction,

More information

4. Fixed-Priority Scheduling

4. Fixed-Priority Scheduling Simple workload model 4. Fixed-Priority Scheduling Credits to A. Burns and A. Wellings The application is assumed to consist of a fixed set of tasks All tasks are periodic with known periods This defines

More information

A hypervisor approach with real-time support to the MIPS M5150 processor

A hypervisor approach with real-time support to the MIPS M5150 processor ISQED Wednesday March 4, 2015 Session 5B A hypervisor approach with real-time support to the MIPS M5150 processor Authors: Samir Zampiva (samir.zampiva@acad.pucrs.br) Carlos Moratelli (carlos.moratelli@pucrs.br)

More information

STUDY AND SIMULATION OF A DISTRIBUTED REAL-TIME FAULT-TOLERANCE WEB MONITORING SYSTEM

STUDY AND SIMULATION OF A DISTRIBUTED REAL-TIME FAULT-TOLERANCE WEB MONITORING SYSTEM STUDY AND SIMULATION OF A DISTRIBUTED REAL-TIME FAULT-TOLERANCE WEB MONITORING SYSTEM Albert M. K. Cheng, Shaohong Fang Department of Computer Science University of Houston Houston, TX, 77204, USA http://www.cs.uh.edu

More information

Load-Balancing for a Real-Time System Based on Asymmetric Multi-Processing

Load-Balancing for a Real-Time System Based on Asymmetric Multi-Processing LIFL Report # 2004-06 Load-Balancing for a Real-Time System Based on Asymmetric Multi-Processing Éric PIEL Eric.Piel@lifl.fr Philippe MARQUET Philippe.Marquet@lifl.fr Julien SOULA Julien.Soula@lifl.fr

More information

Operatin g Systems: Internals and Design Principle s. Chapter 10 Multiprocessor and Real-Time Scheduling Seventh Edition By William Stallings

Operatin g Systems: Internals and Design Principle s. Chapter 10 Multiprocessor and Real-Time Scheduling Seventh Edition By William Stallings Operatin g Systems: Internals and Design Principle s Chapter 10 Multiprocessor and Real-Time Scheduling Seventh Edition By William Stallings Operating Systems: Internals and Design Principles Bear in mind,

More information

CS550. Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun

CS550. Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun CS550 Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun Email: sun@iit.edu, Phone: (312) 567-5260 Office hours: 2:10pm-3:10pm Tuesday, 3:30pm-4:30pm Thursday at SB229C,

More information

Aperiodic Task Scheduling

Aperiodic Task Scheduling Aperiodic Task Scheduling Gerhard Fohler Mälardalen University, Sweden gerhard.fohler@mdh.se Real-Time Systems Gerhard Fohler 2005 Non Periodic Tasks So far periodic events and tasks what about others?

More information

Distributed Systems LEEC (2005/06 2º Sem.)

Distributed Systems LEEC (2005/06 2º Sem.) Distributed Systems LEEC (2005/06 2º Sem.) Introduction João Paulo Carvalho Universidade Técnica de Lisboa / Instituto Superior Técnico Outline Definition of a Distributed System Goals Connecting Users

More information

evm Virtualization Platform for Windows

evm Virtualization Platform for Windows B A C K G R O U N D E R evm Virtualization Platform for Windows Host your Embedded OS and Windows on a Single Hardware Platform using Intel Virtualization Technology April, 2008 TenAsys Corporation 1400

More information

Making Multicore Work and Measuring its Benefits. Markus Levy, president EEMBC and Multicore Association

Making Multicore Work and Measuring its Benefits. Markus Levy, president EEMBC and Multicore Association Making Multicore Work and Measuring its Benefits Markus Levy, president EEMBC and Multicore Association Agenda Why Multicore? Standards and issues in the multicore community What is Multicore Association?

More information

Which ARM Cortex Core Is Right for Your Application: A, R or M?

Which ARM Cortex Core Is Right for Your Application: A, R or M? Which ARM Cortex Core Is Right for Your Application: A, R or M? Introduction The ARM Cortex series of cores encompasses a very wide range of scalable performance options offering designers a great deal

More information

Virtualization. Jukka K. Nurminen 23.9.2015

Virtualization. Jukka K. Nurminen 23.9.2015 Virtualization Jukka K. Nurminen 23.9.2015 Virtualization Virtualization refers to the act of creating a virtual (rather than actual) version of something, including virtual computer hardware platforms,

More information

Chapter 1: Introduction. What is an Operating System?

Chapter 1: Introduction. What is an Operating System? Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real -Time Systems Handheld Systems Computing Environments

More information

Real-time processing the basis for PC Control

Real-time processing the basis for PC Control Beckhoff real-time kernels for DOS, Windows, Embedded OS and multi-core CPUs Real-time processing the basis for PC Control Beckhoff employs Microsoft operating systems for its PCbased control technology.

More information

Power-Aware Real-Time Scheduling upon Identical Multiprocessor Platforms

Power-Aware Real-Time Scheduling upon Identical Multiprocessor Platforms 2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing Power-Aware Real-Time Scheduling upon Identical Multiprocessor Platforms Vincent Nélis, Joël Goossens, Raymond

More information

Real-Time Scheduling (Part 1) (Working Draft) Real-Time System Example

Real-Time Scheduling (Part 1) (Working Draft) Real-Time System Example Real-Time Scheduling (Part 1) (Working Draft) Insup Lee Department of Computer and Information Science School of Engineering and Applied Science University of Pennsylvania www.cis.upenn.edu/~lee/ CIS 41,

More information

Chapter 1: Operating System Models 1 2 Operating System Models 2.1 Introduction Over the past several years, a number of trends affecting operating system design are witnessed and foremost among them is

More information

Improved Handling of Soft Aperiodic Tasks in Offline Scheduled Real-Time Systems using Total Bandwidth Server

Improved Handling of Soft Aperiodic Tasks in Offline Scheduled Real-Time Systems using Total Bandwidth Server Improved Handling of Soft Aperiodic Tasks in Offline Scheduled Real-Time Systems using Total Bandwidth Server Gerhard Fohler, Tomas Lennvall Mälardalen University Västeras, Sweden gfr, tlv @mdh.se Giorgio

More information

White Paper. Real-time Capabilities for Linux SGI REACT Real-Time for Linux

White Paper. Real-time Capabilities for Linux SGI REACT Real-Time for Linux White Paper Real-time Capabilities for Linux SGI REACT Real-Time for Linux Abstract This white paper describes the real-time capabilities provided by SGI REACT Real-Time for Linux. software. REACT enables

More information

CHAPTER 15: Operating Systems: An Overview

CHAPTER 15: Operating Systems: An Overview CHAPTER 15: Operating Systems: An Overview The Architecture of Computer Hardware, Systems Software & Networking: An Information Technology Approach 4th Edition, Irv Englander John Wiley and Sons 2010 PowerPoint

More information

Efficient Scheduling Of On-line Services in Cloud Computing Based on Task Migration

Efficient Scheduling Of On-line Services in Cloud Computing Based on Task Migration Efficient Scheduling Of On-line Services in Cloud Computing Based on Task Migration 1 Harish H G, 2 Dr. R Girisha 1 PG Student, 2 Professor, Department of CSE, PESCE Mandya (An Autonomous Institution under

More information

Using EDF in Linux: SCHED DEADLINE. Luca Abeni luca.abeni@unitn.it

Using EDF in Linux: SCHED DEADLINE. Luca Abeni luca.abeni@unitn.it Using EDF in Linux: Luca Abeni luca.abeni@unitn.it Using Fixed Priorities in Linux SCHED FIFO and SCHED RR use fixed priorities They can be used for real-time tasks, to implement RM and DM Real-time tasks

More information

Energy Constrained Resource Scheduling for Cloud Environment

Energy Constrained Resource Scheduling for Cloud Environment Energy Constrained Resource Scheduling for Cloud Environment 1 R.Selvi, 2 S.Russia, 3 V.K.Anitha 1 2 nd Year M.E.(Software Engineering), 2 Assistant Professor Department of IT KSR Institute for Engineering

More information

theguard! ApplicationManager System Windows Data Collector

theguard! ApplicationManager System Windows Data Collector theguard! ApplicationManager System Windows Data Collector Status: 10/9/2008 Introduction... 3 The Performance Features of the ApplicationManager Data Collector for Microsoft Windows Server... 3 Overview

More information

Embedded Systems. 6. Real-Time Operating Systems

Embedded Systems. 6. Real-Time Operating Systems Embedded Systems 6. Real-Time Operating Systems Lothar Thiele 6-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic

More information

Virtual Platforms Addressing challenges in telecom product development

Virtual Platforms Addressing challenges in telecom product development white paper Virtual Platforms Addressing challenges in telecom product development This page is intentionally left blank. EXECUTIVE SUMMARY Telecom Equipment Manufacturers (TEMs) are currently facing numerous

More information

Mixed-Criticality: Integration of Different Models of Computation. University of Siegen, Roman Obermaisser

Mixed-Criticality: Integration of Different Models of Computation. University of Siegen, Roman Obermaisser Workshop on "Challenges in Mixed Criticality, Real-time, and Reliability in Networked Complex Embedded Systems" Mixed-Criticality: Integration of Different Models of Computation University of Siegen, Roman

More information

Advanced Operating Systems (M) Dr Colin Perkins School of Computing Science University of Glasgow

Advanced Operating Systems (M) Dr Colin Perkins School of Computing Science University of Glasgow Advanced Operating Systems (M) Dr Colin Perkins School of Computing Science University of Glasgow Rationale Radical changes to computing landscape; Desktop PC becoming irrelevant Heterogeneous, multicore,

More information

Client-Server Version of Energy Management through the Computational Outsourcing

Client-Server Version of Energy Management through the Computational Outsourcing Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 3, Issue. 3, March 2014,

More information

Setting deadlines and priorities to the tasks to improve energy efficiency in cloud computing

Setting deadlines and priorities to the tasks to improve energy efficiency in cloud computing Setting deadlines and priorities to the tasks to improve energy efficiency in cloud computing Problem description Cloud computing is a technology used more and more every day, requiring an important amount

More information

Chapter 1 Computer System Overview

Chapter 1 Computer System Overview Operating Systems: Internals and Design Principles Chapter 1 Computer System Overview Eighth Edition By William Stallings Operating System Exploits the hardware resources of one or more processors Provides

More information

Real-Time Operating Systems for MPSoCs

Real-Time Operating Systems for MPSoCs Real-Time Operating Systems for MPSoCs Hiroyuki Tomiyama Graduate School of Information Science Nagoya University http://member.acm.org/~hiroyuki MPSoC 2009 1 Contributors Hiroaki Takada Director and Professor

More information

Module 6. Embedded System Software. Version 2 EE IIT, Kharagpur 1

Module 6. Embedded System Software. Version 2 EE IIT, Kharagpur 1 Module 6 Embedded System Software Version 2 EE IIT, Kharagpur 1 Lesson 30 Real-Time Task Scheduling Part 2 Version 2 EE IIT, Kharagpur 2 Specific Instructional Objectives At the end of this lesson, the

More information

A Survey on Availability and Scalability Requirements in Middleware Service Platform

A Survey on Availability and Scalability Requirements in Middleware Service Platform International Journal of Computer Sciences and Engineering Open Access Survey Paper Volume-4, Issue-4 E-ISSN: 2347-2693 A Survey on Availability and Scalability Requirements in Middleware Service Platform

More information

Principles and characteristics of distributed systems and environments

Principles and characteristics of distributed systems and environments Principles and characteristics of distributed systems and environments Definition of a distributed system Distributed system is a collection of independent computers that appears to its users as a single

More information

A Bi-Objective Approach for Cloud Computing Systems

A Bi-Objective Approach for Cloud Computing Systems A Bi-Objective Approach for Cloud Computing Systems N.Geethanjali 1, M.Ramya 2 Assistant Professor, Department of Computer Science, Christ The King Engineering College 1, 2 ABSTRACT: There are Various

More information

Operating Systems 4 th Class

Operating Systems 4 th Class Operating Systems 4 th Class Lecture 1 Operating Systems Operating systems are essential part of any computer system. Therefore, a course in operating systems is an essential part of any computer science

More information

Designing Predictable Multicore Architectures for Avionics and Automotive Systems extended abstract

Designing Predictable Multicore Architectures for Avionics and Automotive Systems extended abstract Designing Predictable Multicore Architectures for Avionics and Automotive Systems extended abstract Reinhard Wilhelm, Christian Ferdinand, Christoph Cullmann, Daniel Grund, Jan Reineke, Benôit Triquet

More information

Real-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

Real-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Real-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No. # 26 Real - Time POSIX. (Contd.) Ok Good morning, so let us get

More information

Chapter 1. Introduction. 1.1 Motivation. A high-performance processor requires large power consumption to operate at

Chapter 1. Introduction. 1.1 Motivation. A high-performance processor requires large power consumption to operate at Chapter 1 Introduction 1.1 Motivation A high-performance processor requires large power consumption to operate at its high clock rate. For example, a Pentiunm-4 class processor currently consumes more

More information

Multi-core architectures. Jernej Barbic 15-213, Spring 2007 May 3, 2007

Multi-core architectures. Jernej Barbic 15-213, Spring 2007 May 3, 2007 Multi-core architectures Jernej Barbic 15-213, Spring 2007 May 3, 2007 1 Single-core computer 2 Single-core CPU chip the single core 3 Multi-core architectures This lecture is about a new trend in computer

More information

A Taxonomy and Survey of Energy-Efficient Data Centers and Cloud Computing Systems

A Taxonomy and Survey of Energy-Efficient Data Centers and Cloud Computing Systems A Taxonomy and Survey of Energy-Efficient Data Centers and Cloud Computing Systems Anton Beloglazov, Rajkumar Buyya, Young Choon Lee, and Albert Zomaya Present by Leping Wang 1/25/2012 Outline Background

More information

Lecture Outline Overview of real-time scheduling algorithms Outline relative strengths, weaknesses

Lecture Outline Overview of real-time scheduling algorithms Outline relative strengths, weaknesses Overview of Real-Time Scheduling Embedded Real-Time Software Lecture 3 Lecture Outline Overview of real-time scheduling algorithms Clock-driven Weighted round-robin Priority-driven Dynamic vs. static Deadline

More information

Virtual machine interface. Operating system. Physical machine interface

Virtual machine interface. Operating system. Physical machine interface Software Concepts User applications Operating system Hardware Virtual machine interface Physical machine interface Operating system: Interface between users and hardware Implements a virtual machine that

More information

Feb.2012 Benefits of the big.little Architecture

Feb.2012 Benefits of the big.little Architecture Feb.2012 Benefits of the big.little Architecture Hyun-Duk Cho, Ph. D. Principal Engineer (hd68.cho@samsung.com) Kisuk Chung, Senior Engineer (kiseok.jeong@samsung.com) Taehoon Kim, Vice President (taehoon1@samsung.com)

More information

Modular Real-Time Linux

Modular Real-Time Linux Modular Real-Time Linux Shinpei Kato Department of Information and Computer Science, Keio University 3-14-1 Hiyoshi, Kohoku, Yokohama, Japan shinpei@ny.ics.keio.ac.jp Nobuyuki Yamasaki Department of Information

More information

Data Center and Cloud Computing Market Landscape and Challenges

Data Center and Cloud Computing Market Landscape and Challenges Data Center and Cloud Computing Market Landscape and Challenges Manoj Roge, Director Wired & Data Center Solutions Xilinx Inc. #OpenPOWERSummit 1 Outline Data Center Trends Technology Challenges Solution

More information

OpenMosix Presented by Dr. Moshe Bar and MAASK [01]

OpenMosix Presented by Dr. Moshe Bar and MAASK [01] OpenMosix Presented by Dr. Moshe Bar and MAASK [01] openmosix is a kernel extension for single-system image clustering. openmosix [24] is a tool for a Unix-like kernel, such as Linux, consisting of adaptive

More information

Distributed Operating Systems

Distributed Operating Systems Distributed Operating Systems Prashant Shenoy UMass Computer Science http://lass.cs.umass.edu/~shenoy/courses/677 Lecture 1, page 1 Course Syllabus CMPSCI 677: Distributed Operating Systems Instructor:

More information

Real-Time Software. Basic Scheduling and Response-Time Analysis. René Rydhof Hansen. 21. september 2010

Real-Time Software. Basic Scheduling and Response-Time Analysis. René Rydhof Hansen. 21. september 2010 Real-Time Software Basic Scheduling and Response-Time Analysis René Rydhof Hansen 21. september 2010 TSW (2010e) (Lecture 05) Real-Time Software 21. september 2010 1 / 28 Last Time Time in a real-time

More information

IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures

IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures Dr. Sanjay P. Ahuja, Ph.D. 2010-14 FIS Distinguished Professor of Computer Science School of Computing, UNF Introduction

More information

Types Of Operating Systems

Types Of Operating Systems Types Of Operating Systems Date 10/01/2004 1/24/2004 Operating Systems 1 Brief history of OS design In the beginning OSes were runtime libraries The OS was just code you linked with your program and loaded

More information

Real- Time Scheduling

Real- Time Scheduling Real- Time Scheduling Chenyang Lu CSE 467S Embedded Compu5ng Systems Readings Ø Single-Processor Scheduling: Hard Real-Time Computing Systems, by G. Buttazzo. q Chapter 4 Periodic Task Scheduling q Chapter

More information

Resource Utilization of Middleware Components in Embedded Systems

Resource Utilization of Middleware Components in Embedded Systems Resource Utilization of Middleware Components in Embedded Systems 3 Introduction System memory, CPU, and network resources are critical to the operation and performance of any software system. These system

More information

Reconfigurable Architecture Requirements for Co-Designed Virtual Machines

Reconfigurable Architecture Requirements for Co-Designed Virtual Machines Reconfigurable Architecture Requirements for Co-Designed Virtual Machines Kenneth B. Kent University of New Brunswick Faculty of Computer Science Fredericton, New Brunswick, Canada ken@unb.ca Micaela Serra

More information

Power-Aware Scheduling of Conditional Task Graphs in Real-Time Multiprocessor Systems

Power-Aware Scheduling of Conditional Task Graphs in Real-Time Multiprocessor Systems Power-Aware Scheduling of Conditional Task Graphs in Real-Time Multiprocessor Systems Dongkun Shin School of Computer Science and Engineering Seoul National University sdk@davinci.snu.ac.kr Jihong Kim

More information

Framework for Validation, Test and Analysis of Real-time Scheduling Algorithms and Scheduler Implementations

Framework for Validation, Test and Analysis of Real-time Scheduling Algorithms and Scheduler Implementations Framework for Validation, Test and Analysis of Real-time Scheduling Algorithms and Scheduler Implementations Frank Golatowski, Jens Hildebrandt, Jan Blumenthal, Dirk Timmermann Institute of Applied Microelectronics

More information

Intel DPDK Boosts Server Appliance Performance White Paper

Intel DPDK Boosts Server Appliance Performance White Paper Intel DPDK Boosts Server Appliance Performance Intel DPDK Boosts Server Appliance Performance Introduction As network speeds increase to 40G and above, both in the enterprise and data center, the bottlenecks

More information

Solution Guide Parallels Virtualization for Linux

Solution Guide Parallels Virtualization for Linux Solution Guide Parallels Virtualization for Linux Overview Created in 1991, Linux was designed to be UNIX-compatible software that was composed entirely of open source or free software components. Linux

More information

A Data Centric Approach for Modular Assurance. Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March 2011

A Data Centric Approach for Modular Assurance. Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March 2011 A Data Centric Approach for Modular Assurance The Real-Time Middleware Experts Workshop on Real-time, Embedded and Enterprise-Scale Time-Critical Systems 23 March 2011 Gabriela F. Ciocarlie Heidi Schubert

More information

System Software Integration: An Expansive View. Overview

System Software Integration: An Expansive View. Overview Software Integration: An Expansive View Steven P. Smith Design of Embedded s EE382V Fall, 2009 EE382 SoC Design Software Integration SPS-1 University of Texas at Austin Overview Some Definitions Introduction:

More information

Fair Scheduling Algorithm with Dynamic Load Balancing Using In Grid Computing

Fair Scheduling Algorithm with Dynamic Load Balancing Using In Grid Computing Research Inventy: International Journal Of Engineering And Science Vol.2, Issue 10 (April 2013), Pp 53-57 Issn(e): 2278-4721, Issn(p):2319-6483, Www.Researchinventy.Com Fair Scheduling Algorithm with Dynamic

More information

MultiPARTES. Virtualization on Heterogeneous Multicore Platforms. 2012/7/18 Slides by TU Wien, UPV, fentiss, UPM

MultiPARTES. Virtualization on Heterogeneous Multicore Platforms. 2012/7/18 Slides by TU Wien, UPV, fentiss, UPM MultiPARTES Virtualization on Heterogeneous Multicore Platforms 2012/7/18 Slides by TU Wien, UPV, fentiss, UPM Contents Analysis of scheduling approaches Virtualization of devices Dealing with heterogeneous

More information

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL This chapter is to introduce the client-server model and its role in the development of distributed network systems. The chapter

More information

The Microsoft Windows Hypervisor High Level Architecture

The Microsoft Windows Hypervisor High Level Architecture The Microsoft Windows Hypervisor High Level Architecture September 21, 2007 Abstract The Microsoft Windows hypervisor brings new virtualization capabilities to the Windows Server operating system. Its

More information

Achieving Nanosecond Latency Between Applications with IPC Shared Memory Messaging

Achieving Nanosecond Latency Between Applications with IPC Shared Memory Messaging Achieving Nanosecond Latency Between Applications with IPC Shared Memory Messaging In some markets and scenarios where competitive advantage is all about speed, speed is measured in micro- and even nano-seconds.

More information

Radware ADC-VX Solution. The Agility of Virtual; The Predictability of Physical

Radware ADC-VX Solution. The Agility of Virtual; The Predictability of Physical Radware ADC-VX Solution The Agility of Virtual; The Predictability of Physical Table of Contents General... 3 Virtualization and consolidation trends in the data centers... 3 How virtualization and consolidation

More information

How To Understand The Concept Of A Distributed System

How To Understand The Concept Of A Distributed System Distributed Operating Systems Introduction Ewa Niewiadomska-Szynkiewicz and Adam Kozakiewicz ens@ia.pw.edu.pl, akozakie@ia.pw.edu.pl Institute of Control and Computation Engineering Warsaw University of

More information

An approach to grid scheduling by using Condor-G Matchmaking mechanism

An approach to grid scheduling by using Condor-G Matchmaking mechanism An approach to grid scheduling by using Condor-G Matchmaking mechanism E. Imamagic, B. Radic, D. Dobrenic University Computing Centre, University of Zagreb, Croatia {emir.imamagic, branimir.radic, dobrisa.dobrenic}@srce.hr

More information

Load Balancing and Maintaining the Qos on Cloud Partitioning For the Public Cloud

Load Balancing and Maintaining the Qos on Cloud Partitioning For the Public Cloud Load Balancing and Maintaining the Qos on Cloud Partitioning For the Public Cloud 1 S.Karthika, 2 T.Lavanya, 3 G.Gokila, 4 A.Arunraja 5 S.Sarumathi, 6 S.Saravanakumar, 7 A.Gokilavani 1,2,3,4 Student, Department

More information

Methods and Tools For Embedded Distributed System Scheduling and Schedulability Analysis

Methods and Tools For Embedded Distributed System Scheduling and Schedulability Analysis Methods and Tools For Embedded Distributed System Scheduling and Schedulability Analysis Steve Vestal Honeywell Labs Steve.Vestal@Honeywell.com 18 October 2005 Outline Background Binding and Routing Scheduling

More information

Control 2004, University of Bath, UK, September 2004

Control 2004, University of Bath, UK, September 2004 Control, University of Bath, UK, September ID- IMPACT OF DEPENDENCY AND LOAD BALANCING IN MULTITHREADING REAL-TIME CONTROL ALGORITHMS M A Hossain and M O Tokhi Department of Computing, The University of

More information

Introduction to Operating Systems. Perspective of the Computer. System Software. Indiana University Chen Yu

Introduction to Operating Systems. Perspective of the Computer. System Software. Indiana University Chen Yu Introduction to Operating Systems Indiana University Chen Yu Perspective of the Computer System Software A general piece of software with common functionalities that support many applications. Example:

More information

CHAPTER 4: SOFTWARE PART OF RTOS, THE SCHEDULER

CHAPTER 4: SOFTWARE PART OF RTOS, THE SCHEDULER CHAPTER 4: SOFTWARE PART OF RTOS, THE SCHEDULER To provide the transparency of the system the user space is implemented in software as Scheduler. Given the sketch of the architecture, a low overhead scheduler

More information

CHAPTER 7 SUMMARY AND CONCLUSION

CHAPTER 7 SUMMARY AND CONCLUSION 179 CHAPTER 7 SUMMARY AND CONCLUSION This chapter summarizes our research achievements and conclude this thesis with discussions and interesting avenues for future exploration. The thesis describes a novel

More information

Weighted Total Mark. Weighted Exam Mark

Weighted Total Mark. Weighted Exam Mark CMP2204 Operating System Technologies Period per Week Contact Hour per Semester Total Mark Exam Mark Continuous Assessment Mark Credit Units LH PH TH CH WTM WEM WCM CU 45 30 00 60 100 40 100 4 Rationale

More information

Real Time Network Server Monitoring using Smartphone with Dynamic Load Balancing

Real Time Network Server Monitoring using Smartphone with Dynamic Load Balancing www.ijcsi.org 227 Real Time Network Server Monitoring using Smartphone with Dynamic Load Balancing Dhuha Basheer Abdullah 1, Zeena Abdulgafar Thanoon 2, 1 Computer Science Department, Mosul University,

More information

LinuxWorld Conference & Expo Server Farms and XML Web Services

LinuxWorld Conference & Expo Server Farms and XML Web Services LinuxWorld Conference & Expo Server Farms and XML Web Services Jorgen Thelin, CapeConnect Chief Architect PJ Murray, Product Manager Cape Clear Software Objectives What aspects must a developer be aware

More information

Attaining EDF Task Scheduling with O(1) Time Complexity

Attaining EDF Task Scheduling with O(1) Time Complexity Attaining EDF Task Scheduling with O(1) Time Complexity Verber Domen University of Maribor, Faculty of Electrical Engineering and Computer Sciences, Maribor, Slovenia (e-mail: domen.verber@uni-mb.si) Abstract:

More information

Chapter 19: Real-Time Systems. Overview of Real-Time Systems. Objectives. System Characteristics. Features of Real-Time Systems

Chapter 19: Real-Time Systems. Overview of Real-Time Systems. Objectives. System Characteristics. Features of Real-Time Systems Chapter 19: Real-Time Systems System Characteristics Features of Real-Time Systems Chapter 19: Real-Time Systems Implementing Real-Time Operating Systems Real-Time CPU Scheduling VxWorks 5.x 19.2 Silberschatz,

More information

PeerMon: A Peer-to-Peer Network Monitoring System

PeerMon: A Peer-to-Peer Network Monitoring System PeerMon: A Peer-to-Peer Network Monitoring System Tia Newhall, Janis Libeks, Ross Greenwood, Jeff Knerr Computer Science Department Swarthmore College Swarthmore, PA USA newhall@cs.swarthmore.edu Target:

More information

- An Essential Building Block for Stable and Reliable Compute Clusters

- An Essential Building Block for Stable and Reliable Compute Clusters Ferdinand Geier ParTec Cluster Competence Center GmbH, V. 1.4, March 2005 Cluster Middleware - An Essential Building Block for Stable and Reliable Compute Clusters Contents: Compute Clusters a Real Alternative

More information

The Benefits of Virtualizing Citrix XenApp with Citrix XenServer

The Benefits of Virtualizing Citrix XenApp with Citrix XenServer White Paper The Benefits of Virtualizing Citrix XenApp with Citrix XenServer This white paper will discuss how customers can achieve faster deployment, higher reliability, easier management, and reduced

More information