This paper reaffirms that fixed-priority with preemption threshold (FPPT) is an important form of real-time scheduling algorithm, which fills the gap between fixed-priority preemptive (FPP) and fixed-priority nonpreemptive (FPNP). When a task set is schedulable by FPPT, there may exist multiple valid preemption threshold assignments, which provide useful scheduling options. All valid assignments form a solution space that is delimited by a minimal and maximal assignment. A mechanism is presented to generate part of the valid assignments once the minimal and maximal assignments are known. The known algorithm to compute the minimal assignment starts at FPP, and the known algorithm to compute the maximal assignment starts from any valid assignment. This paper presents algorithms to compute the minimal and maximal assignments starting from FPNP, and the proofs for the correctness of these algorithms are also presented.
{"title":"Solution space for fixed-priority with preemption threshold","authors":"Jiongxiong Chen, Ashif S. Harji, P. Buhr","doi":"10.1109/RTAS.2005.49","DOIUrl":"https://doi.org/10.1109/RTAS.2005.49","url":null,"abstract":"This paper reaffirms that fixed-priority with preemption threshold (FPPT) is an important form of real-time scheduling algorithm, which fills the gap between fixed-priority preemptive (FPP) and fixed-priority nonpreemptive (FPNP). When a task set is schedulable by FPPT, there may exist multiple valid preemption threshold assignments, which provide useful scheduling options. All valid assignments form a solution space that is delimited by a minimal and maximal assignment. A mechanism is presented to generate part of the valid assignments once the minimal and maximal assignments are known. The known algorithm to compute the minimal assignment starts at FPP, and the known algorithm to compute the maximal assignment starts from any valid assignment. This paper presents algorithms to compute the minimal and maximal assignments starting from FPNP, and the proofs for the correctness of these algorithms are also presented.","PeriodicalId":291045,"journal":{"name":"11th IEEE Real Time and Embedded Technology and Applications Symposium","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-03-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129630630","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Denial-of-service attacks are becoming more frequent and sophisticated. Researchers have proposed a variety of defenses, including better system configurations, infrastructures, protocols, firewalls, and monitoring tools. Can we validate a server implementation in a systematic manner? In this paper we focus on a particular attack, SYN flooding, where an attacker sends many TCP-connection requests to a victim's machine. We study the issue of whether a TCP server can keep up with the packets from an attacker, or whether the server exhausts its buffer space. We present a tool for statically validating a TCP server's ability to survive SYN flooding attacks. Our tool automatically transforms a TCP-server implementation into a timed automaton, and it transforms an attacker model, given by the output of a packet generator, into another timed automaton. Together the two timed automata form a system for which the model checker UPPAAL can decide whether a bad state, in which the buffer overruns, can be reached. Our tool has two advantages over simply testing the server implementation with a packet generator. First, our tool is an order of magnitude faster because of aggressive abstraction of the server code. Second, our tool can be applied to a variety of server software without having to install each one in the kernel of an operating system. Thus, a programmer of defensive measures against SYN flooding attacks can get rapid feedback during development.
{"title":"Timing analysis of TCP servers for surviving denial-of-service attacks","authors":"Krishna Nandivada, J. Palsberg","doi":"10.1109/RTAS.2005.54","DOIUrl":"https://doi.org/10.1109/RTAS.2005.54","url":null,"abstract":"Denial-of-service attacks are becoming more frequent and sophisticated. Researchers have proposed a variety of defenses, including better system configurations, infrastructures, protocols, firewalls, and monitoring tools. Can we validate a server implementation in a systematic manner? In this paper we focus on a particular attack, SYN flooding, where an attacker sends many TCP-connection requests to a victim's machine. We study the issue of whether a TCP server can keep up with the packets from an attacker, or whether the server exhausts its buffer space. We present a tool for statically validating a TCP server's ability to survive SYN flooding attacks. Our tool automatically transforms a TCP-server implementation into a timed automaton, and it transforms an attacker model, given by the output of a packet generator, into another timed automaton. Together the two timed automata form a system for which the model checker UPPAAL can decide whether a bad state, in which the buffer overruns, can be reached. Our tool has two advantages over simply testing the server implementation with a packet generator. First, our tool is an order of magnitude faster because of aggressive abstraction of the server code. Second, our tool can be applied to a variety of server software without having to install each one in the kernel of an operating system. Thus, a programmer of defensive measures against SYN flooding attacks can get rapid feedback during development.","PeriodicalId":291045,"journal":{"name":"11th IEEE Real Time and Embedded Technology and Applications Symposium","volume":"33 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-03-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129775059","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Kevin Bryan, L. DiPippo, V. Wolfe, Matthew Murphy, Jiangyin Zhang, D. Niehaus, D. Fleeman, D. Juedes, Chang Liu, L. Welch, C. Gill
Integration of middleware scheduling and resource management services enables open distributed real-time embedded (DRE) applications to meet end-to-end quality of service (QoS) requirements in highly variable operating environments. This paper describes our research on integrating CORBA scheduling and resource management services, and presents experiments we conducted to validate and quantify the benefits of this integration. Our experimental results show that integrating distributed scheduling and resource management in middleware for open DRE systems can offer significant improvements in predictability. Specifically, integrating our stand-alone resource management service with a previously unmanaged experimental baseline application reduced the ratio of missed deadlines from 26% to 10%, and the same application performed even better under the control of integrated scheduling and resource management services, with a missed deadline ratio of only 1%.
{"title":"Integrated CORBA scheduling and resource management for distributed real-time embedded systems","authors":"Kevin Bryan, L. DiPippo, V. Wolfe, Matthew Murphy, Jiangyin Zhang, D. Niehaus, D. Fleeman, D. Juedes, Chang Liu, L. Welch, C. Gill","doi":"10.1109/RTAS.2005.30","DOIUrl":"https://doi.org/10.1109/RTAS.2005.30","url":null,"abstract":"Integration of middleware scheduling and resource management services enables open distributed real-time embedded (DRE) applications to meet end-to-end quality of service (QoS) requirements in highly variable operating environments. This paper describes our research on integrating CORBA scheduling and resource management services, and presents experiments we conducted to validate and quantify the benefits of this integration. Our experimental results show that integrating distributed scheduling and resource management in middleware for open DRE systems can offer significant improvements in predictability. Specifically, integrating our stand-alone resource management service with a previously unmanaged experimental baseline application reduced the ratio of missed deadlines from 26% to 10%, and the same application performed even better under the control of integrated scheduling and resource management services, with a missed deadline ratio of only 1%.","PeriodicalId":291045,"journal":{"name":"11th IEEE Real Time and Embedded Technology and Applications Symposium","volume":"117 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-03-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124149401","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
This paper discusses the problem of controlling highly dynamic technical facilities such as mechatronic systems. To enforce the required behavior, sensors informing about the status of the facility are periodically read. The sensor signals are processed in end-to-end computations by computational activities, and, in case the measured data deviate from the technical specification, result in new settings of actuators. We consider the case that the changes of operating conditions of the facility underlie continuous mode changes. It is assumed that the variety of operation modes mechatronic systems may work in are restricted in the sense that a higher requirement in one system component may exclude higher requirements in other components. We expect that such dependencies are specified in the technical specification of the facility, and that from them the domain of realistic modes can be derived. The objective of this work is defining heuristic algorithms that intend to finding minimum sets of feasible allocations for a fixed number of processors, and comparing their usefulness experimentally.
{"title":"Heuristic resource allocation strategies for embedded systems with continuous mode changes","authors":"Silke Schomann, K. Ecker, D. Stankovic","doi":"10.1109/RTAS.2005.25","DOIUrl":"https://doi.org/10.1109/RTAS.2005.25","url":null,"abstract":"This paper discusses the problem of controlling highly dynamic technical facilities such as mechatronic systems. To enforce the required behavior, sensors informing about the status of the facility are periodically read. The sensor signals are processed in end-to-end computations by computational activities, and, in case the measured data deviate from the technical specification, result in new settings of actuators. We consider the case that the changes of operating conditions of the facility underlie continuous mode changes. It is assumed that the variety of operation modes mechatronic systems may work in are restricted in the sense that a higher requirement in one system component may exclude higher requirements in other components. We expect that such dependencies are specified in the technical specification of the facility, and that from them the domain of realistic modes can be derived. The objective of this work is defining heuristic algorithms that intend to finding minimum sets of feasible allocations for a fixed number of processors, and comparing their usefulness experimentally.","PeriodicalId":291045,"journal":{"name":"11th IEEE Real Time and Embedded Technology and Applications Symposium","volume":"101 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-03-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123047354","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
We present an online dynamic voltage scaling (DVS) algorithm for preemptive fixed-priority real-time systems called low power limited demand analysis with transition overhead (lpLDAT). It is the first algorithm in its class to explicitly account for transition overhead, and can reduce the energy consumption by as much as 40% when compared to previous methods.
{"title":"Practical on-line DVS scheduling for fixed-priority real-time systems","authors":"B. Mochocki, X. Hu, Gang Quan","doi":"10.1109/RTAS.2005.40","DOIUrl":"https://doi.org/10.1109/RTAS.2005.40","url":null,"abstract":"We present an online dynamic voltage scaling (DVS) algorithm for preemptive fixed-priority real-time systems called low power limited demand analysis with transition overhead (lpLDAT). It is the first algorithm in its class to explicitly account for transition overhead, and can reduce the energy consumption by as much as 40% when compared to previous methods.","PeriodicalId":291045,"journal":{"name":"11th IEEE Real Time and Embedded Technology and Applications Symposium","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-03-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114343195","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
J. R. Merrick, Shige Wang, K. Shin, Jing Song, W. Milam
In a large embedded real-time system, priority assignment can greatly affect the timing behavior - which can consequently affect the overall behavior - of the system. Thus, it is crucial for model-based design of a large embedded real-time system to be able to intelligently assign priorities such that tasks can meet their deadlines. In this paper, we propose a priority-refinement method for dependent tasks distributed throughout a heterogeneous multiprocessor environment. In this method, we refine an initial priority assignment iteratively using the simulated annealing technique with tasks' latest completion times (LCT). Our evaluations, based on randomly-generated models, have shown that the refinement method outperforms other priority-assignment schemes and scales well for large, complex, real-time systems. This method has been implemented in the Automatic Integration of Reusable Embedded Software (AIRES) toolkit and has been successfully applied to a vehicle system control application.
在大型嵌入式实时系统中,优先级分配会极大地影响定时行为,从而影响系统的整体行为。因此,在基于模型的大型嵌入式实时系统设计中,能够智能地分配优先级以使任务能够满足其截止日期是至关重要的。在本文中,我们提出了一种分布在异构多处理器环境中的依赖任务的优先级优化方法。在此方法中,我们使用任务最近完成时间(LCT)模拟退火技术迭代地改进初始优先级分配。我们基于随机生成模型的评估表明,改进方法优于其他优先级分配方案,并且适用于大型、复杂、实时的系统。该方法已在可重用嵌入式软件自动集成(Automatic Integration of Reusable Embedded Software, AIRES)工具包中实现,并已成功应用于某汽车系统控制应用。
{"title":"Priority refinement for dependent tasks in large embedded real-time software","authors":"J. R. Merrick, Shige Wang, K. Shin, Jing Song, W. Milam","doi":"10.1109/RTAS.2005.41","DOIUrl":"https://doi.org/10.1109/RTAS.2005.41","url":null,"abstract":"In a large embedded real-time system, priority assignment can greatly affect the timing behavior - which can consequently affect the overall behavior - of the system. Thus, it is crucial for model-based design of a large embedded real-time system to be able to intelligently assign priorities such that tasks can meet their deadlines. In this paper, we propose a priority-refinement method for dependent tasks distributed throughout a heterogeneous multiprocessor environment. In this method, we refine an initial priority assignment iteratively using the simulated annealing technique with tasks' latest completion times (LCT). Our evaluations, based on randomly-generated models, have shown that the refinement method outperforms other priority-assignment schemes and scales well for large, complex, real-time systems. This method has been implemented in the Automatic Integration of Reusable Embedded Software (AIRES) toolkit and has been successfully applied to a vehicle system control application.","PeriodicalId":291045,"journal":{"name":"11th IEEE Real Time and Embedded Technology and Applications Symposium","volume":"124 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-03-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123193182","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The paper presents a design method for embedded control systems based on the mixed architecture that consists of both time-triggered processing and event-triggered processing. We divide a design process into functional design and behavioral design. We also apply aspect-oriented programming to realize the separated design. In the functional design, we identify objects and define classes to realize functions of the target system. In the behavioral design, we determine triggering methods of objects to meet real-time requirements and define them as aspects. The aspects defined in the behavioral design are woven into the classes defined in the functional design. By using our method, we can design triggering methods independently of the functional design. Our method also improves the reusability of a model and source code of the system. It is possible to reuse classes designed in the functional design for both time-triggered systems and event-triggered systems.
{"title":"An aspect-oriented development method for embedded control systems with time-triggered and event-triggered processing","authors":"T. Yokoyama","doi":"10.1109/RTAS.2005.8","DOIUrl":"https://doi.org/10.1109/RTAS.2005.8","url":null,"abstract":"The paper presents a design method for embedded control systems based on the mixed architecture that consists of both time-triggered processing and event-triggered processing. We divide a design process into functional design and behavioral design. We also apply aspect-oriented programming to realize the separated design. In the functional design, we identify objects and define classes to realize functions of the target system. In the behavioral design, we determine triggering methods of objects to meet real-time requirements and define them as aspects. The aspects defined in the behavioral design are woven into the classes defined in the functional design. By using our method, we can design triggering methods independently of the functional design. Our method also improves the reusability of a model and source code of the system. It is possible to reuse classes designed in the functional design for both time-triggered systems and event-triggered systems.","PeriodicalId":291045,"journal":{"name":"11th IEEE Real Time and Embedded Technology and Applications Symposium","volume":"56 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-03-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130234982","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
G. Menkhaus, M. Holzmann, S. Fischmeister, Claudiu Farcas
Embedded computers are increasingly tighter integrated with each other forming distributed embedded systems that interact through a shared communication medium. Often these embedded systems perform services for safety-critical operations that require deterministic computation and predictable communication. However, since these systems are embedded, they must cope with limited resources. One fundamental challenge is to make efficient use of the shared communication medium, especially in the timed model, in which communication tends to cumulate at the end of harmonic periods of tasks. In this article, we present an approach that uses Microtasks for splitting computation and communication into several sequentially executed steps to allow for better balanced load on the communication medium in the timed model. We discuss the approach and describe its implementation in OSEK/Works with TTCAN.
{"title":"Towards efficient use of shared communication media in the timed model","authors":"G. Menkhaus, M. Holzmann, S. Fischmeister, Claudiu Farcas","doi":"10.1109/RTAS.2005.57","DOIUrl":"https://doi.org/10.1109/RTAS.2005.57","url":null,"abstract":"Embedded computers are increasingly tighter integrated with each other forming distributed embedded systems that interact through a shared communication medium. Often these embedded systems perform services for safety-critical operations that require deterministic computation and predictable communication. However, since these systems are embedded, they must cope with limited resources. One fundamental challenge is to make efficient use of the shared communication medium, especially in the timed model, in which communication tends to cumulate at the end of harmonic periods of tasks. In this article, we present an approach that uses Microtasks for splitting computation and communication into several sequentially executed steps to allow for better balanced load on the communication medium in the timed model. We discuss the approach and describe its implementation in OSEK/Works with TTCAN.","PeriodicalId":291045,"journal":{"name":"11th IEEE Real Time and Embedded Technology and Applications Symposium","volume":"32 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-03-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121300161","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Shengquan Wang, Sangig Rho, Zhibin Mai, R. Bettati, Wei Zhao
Component technology has become a central focus of software engineering in research and development. Reusability is a key factor that contributes to its success. The reuse of components can lead to a shortening of software development cycles and savings in software development costs. However, existing component models provide no support for real-time services and some real-time extensions of component models lack of consideration for reusability of components in providing real-time services. In this work, we develop a real-time component-based system that maintains the reusability of components.
{"title":"Real-time component-based systems","authors":"Shengquan Wang, Sangig Rho, Zhibin Mai, R. Bettati, Wei Zhao","doi":"10.1109/RTAS.2005.43","DOIUrl":"https://doi.org/10.1109/RTAS.2005.43","url":null,"abstract":"Component technology has become a central focus of software engineering in research and development. Reusability is a key factor that contributes to its success. The reuse of components can lead to a shortening of software development cycles and savings in software development costs. However, existing component models provide no support for real-time services and some real-time extensions of component models lack of consideration for reusability of components in providing real-time services. In this work, we develop a real-time component-based system that maintains the reusability of components.","PeriodicalId":291045,"journal":{"name":"11th IEEE Real Time and Embedded Technology and Applications Symposium","volume":"53 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-03-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116356175","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
We consider the problem of energy minimization for periodic preemptive hard real-time tasks that are scheduled on an identical multiprocessor platform with dynamic voltage scaling capability. We adopt partitioned scheduling and assume that the tasks are assigned rate-monotonic priorities. We show that the problem is NP-hard in the strong sense on m /spl ges/ 2 processors even when the feasibility is guaranteed a priori. Because of the intractability of the problem, we propose an integrated approach that consists of three different components: RMS admission control test, the partitioning heuristic and the speed assignment algorithm. We discuss possible options for each component by considering state-of-the-art solutions. Then, we experimentally investigate the impact of heuristics on feasibility, energy and feasibility/energy performance dimensions. In offline settings where tasks can be ordered according to the utilization values, we show that worst-fit dominates other well-known heuristics. For online settings, we propose an algorithm that is based on reserving a subset of processors for light tasks to guarantee a consistent performance.
{"title":"Energy-aware task allocation for rate monotonic scheduling","authors":"Tarek A. AlEnawy, Hakan Aydin","doi":"10.1109/RTAS.2005.20","DOIUrl":"https://doi.org/10.1109/RTAS.2005.20","url":null,"abstract":"We consider the problem of energy minimization for periodic preemptive hard real-time tasks that are scheduled on an identical multiprocessor platform with dynamic voltage scaling capability. We adopt partitioned scheduling and assume that the tasks are assigned rate-monotonic priorities. We show that the problem is NP-hard in the strong sense on m /spl ges/ 2 processors even when the feasibility is guaranteed a priori. Because of the intractability of the problem, we propose an integrated approach that consists of three different components: RMS admission control test, the partitioning heuristic and the speed assignment algorithm. We discuss possible options for each component by considering state-of-the-art solutions. Then, we experimentally investigate the impact of heuristics on feasibility, energy and feasibility/energy performance dimensions. In offline settings where tasks can be ordered according to the utilization values, we show that worst-fit dominates other well-known heuristics. For online settings, we propose an algorithm that is based on reserving a subset of processors for light tasks to guarantee a consistent performance.","PeriodicalId":291045,"journal":{"name":"11th IEEE Real Time and Embedded Technology and Applications Symposium","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-03-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121765310","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}