H. Posadas, E. Villar, Dominique Ragot, Marcos Martínez
{"title":"Early Modeling of Linux-Based RTOS Platforms in a SystemC Time-Approximate Co-simulation Environment","authors":"H. Posadas, E. Villar, Dominique Ragot, Marcos Martínez","doi":"10.1109/ISORC.2010.18","DOIUrl":"https://doi.org/10.1109/ISORC.2010.18","url":null,"abstract":"The increase of computational power in embedded systems has allowed integrating together hard real-time tasks and rich applications. Complex SW infrastructures containing both RTOS and GPOS are required to handle this complexity. To optimally map system functionality to the hard-RT SW domain, to the general purpose SW domain or to HW peripherals, early performance evaluations at the first steps of the design process are required. Approximate timed co-simulation has been proposed as a fast solution for system modeling at early design steps. This co-simulation technique allows simulating systems at speed close to functional execution, while considering timing effects. As a consequence, system performance estimations can be obtained early, allowing efficient design space exploration and system refinement. To achieve fast simulation speed, the SW code is pre-annotated with time information. The annotated code is then natively executed, performing what is called native-based co-simulation. Previous native-based simulation environments are not prepared to model multi-OS systems, so the performance evaluation of the different SW domains is not possible. This paper proposes a new embedded system modeling solution considering dual RTOS/GPOS systems. A real Linux-based infrastructure has been modeled an integrated into a state-of-the-art co-simulation environment. The resulting solution is capable of modeling and evaluating all HW and SW system components providing the designer with valuable information for early system optimization and design space exploration.","PeriodicalId":142767,"journal":{"name":"2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","volume":"3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121806960","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}
{"title":"Architectural and Behavioral Modeling with AADL for Fault Tolerant Embedded Systems","authors":"G. Lasnier, T. Robert, L. Pautet, F. Kordon","doi":"10.1109/ISORC.2010.32","DOIUrl":"https://doi.org/10.1109/ISORC.2010.32","url":null,"abstract":"AADL is an architecture description language intended for model-based engineering of high-integrity systems. The AADL Behavior Annex is an extension allowing the refinement of behavioral aspects described through AADL. When implementing Distributed Real-time Embedded system, fault tolerance concerns are integrated by applying replication patterns. We considered a simplified design of the primary backup replication pattern to express the modeling capabilities of AADL and its annex. Our contribution intends to give accurate description of the synchronization mechanisms integrated in this example.","PeriodicalId":142767,"journal":{"name":"2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","volume":"27 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114385674","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}
A. Dubey, G. Karsai, Róbert Kereskényi, N. Mahadevan
{"title":"A Real-Time Component Framework: Experience with CCM and ARINC-653","authors":"A. Dubey, G. Karsai, Róbert Kereskényi, N. Mahadevan","doi":"10.1109/ISORC.2010.39","DOIUrl":"https://doi.org/10.1109/ISORC.2010.39","url":null,"abstract":"The complexity of software in systems like aerospace vehicles has reached the point where new techniques are needed to ensure system dependability while improving the productivity of developers. One possible approach is to use precisely defined software execution platforms that (1) enable the system to be composed from separate components, (2) restrict component interactions and prevent fault propagation, and (3) whose compositional properties are well-known. In this paper we describe the initial steps towards building a platform that combines component-based software construction with hard real-time operating system services. Specifically, the paper discusses how the CORBA Component Model (CCM) could be combined with the ARINC-653 platform services and the lessons learned from this experiment. The results point towards both extending the CCM as well as revising the ARINC-653.","PeriodicalId":142767,"journal":{"name":"2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128618892","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}
Min-Jae Kim, Jin-Young Lee, Hyeyoung Chang, Seong-je Cho, Yongsu Park, Minkyu Park, P. Wilsey
{"title":"Design and Performance Evaluation of Binary Code Packing for Protecting Embedded Software against Reverse Engineering","authors":"Min-Jae Kim, Jin-Young Lee, Hyeyoung Chang, Seong-je Cho, Yongsu Park, Minkyu Park, P. Wilsey","doi":"10.1109/ISORC.2010.23","DOIUrl":"https://doi.org/10.1109/ISORC.2010.23","url":null,"abstract":"Packing (or executable compression) is considered as one of the most effective anti-reverse engineering methods in the Microsoft Windows environment. Even though many reversing attacks are widely conducted in the Linux-based embedded system there is no widely used secure binary code packing tools for Linux. This paper presents two secure packing methods that use AES encryption and the UPX packer to protect the intellectual property (IP) of software from reverse engineering attacks on Linux-based embedded system. We call these methods: secure UPX and AES-encryption packing. Since the original UPX system is designed not for software protection but for code compression, we present two anti-debugging methods in the unpacking module of the secure UPX to detect or abort reverse engineering attacks. Furthermore, since embedded systems are highly resource constrained, minimizing unpacking overhead is important. Therefore, we analyze the performance of the two packing methods from the perspective of: (i) code size, (ii) execution time, and (iii) power consumption. Our analysis results show that the Secure UPX performs better than AES-encryption packing in terms of the code size, execution time, and power consumption.","PeriodicalId":142767,"journal":{"name":"2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114746905","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}
{"title":"Understanding and Effectively Preventing the ABA Problem in Descriptor-Based Lock-Free Designs","authors":"D. Dechev, P. Pirkelbauer, B. Stroustrup","doi":"10.1109/ISORC.2010.10","DOIUrl":"https://doi.org/10.1109/ISORC.2010.10","url":null,"abstract":"An increasing number of modern real-time systems and the nowadays ubiquitous multicore architectures demand the application of programming techniques for reliable and efficient concurrent synchronization. Some recently developed Compare-And-Swap (CAS) based nonblocking techniques hold the promise of delivering practical and safer concurrency. The ABA problem is a fundamental problem to many CAS-based designs. Its significance has increased with the suggested use of CAS as a core atomic primitive for the implementation of portable lock-free algorithms. The ABA problem's occurrence is due to the intricate and complex interactions of the application's concurrent operations and, if not remedied, ABA can significantly corrupt the semantics of a nonblocking algorithm. The current state of the art leaves the elimination of the ABA hazards to the ingenuity of the software designer. In this work we provide the first systematic and detailed analysis of the ABA problem in lock-free Descriptor-based designs. We study the semantics of Descriptor-based lock-free data structures and propose a classification of their operations that helps us better understand the ABA problem and subsequently derive an effective ABA prevention scheme. Our ABA prevention approach outperforms by a large factor the use of the alternative CAS-based ABA prevention schemes. It offers speeds comparable to the use of the architecture-specific CAS2 instruction used for version counting. We demonstrate our ABA prevention scheme by integrating it into an advanced nonblocking data structure, a lock-free dynamically resizable array.","PeriodicalId":142767,"journal":{"name":"2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","volume":"131 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122745047","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}
{"title":"ServiceDDS: A Framework for Real-Time P2P Systems Integration","authors":"José A. Dianes, M. Díaz, B. Rubio","doi":"10.1109/ISORC.2010.37","DOIUrl":"https://doi.org/10.1109/ISORC.2010.37","url":null,"abstract":"In recent times real-time distributed systems have definitively become peer-to-peer organized. The common interactions are those of different real-time components dealing with sensors or actuators, implementing controllers, performing monitoring and surveillance tasks, and interacting between them in a dynamic decentralized way. There is a need for mechanisms that allow the integration of these independent components, saving development time while keeping their real-time capability. Services and events, thanks to their decoupled nature are perfect candidates for supporting these architectures. The data centric approach goes even farther, introducing a global data space that allows a flexible, decoupled and scalable coordination environment over which services and events can be added as specific interactions mechanisms inside this global data space, in order to support all the architectural possibilities. The Data Distribution Service specification provides a totally decentralized data-centric approach with real-time quality of service support. It is a perfect base upon which to develop a framework for the integration of real-time distributed architectures.","PeriodicalId":142767,"journal":{"name":"2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","volume":"73 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129429227","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}
Paul Lokuciejewski, Sascha Plazar, H. Falk, P. Marwedel, L. Thiele
{"title":"Multi-objective Exploration of Compiler Optimizations for Real-Time Systems","authors":"Paul Lokuciejewski, Sascha Plazar, H. Falk, P. Marwedel, L. Thiele","doi":"10.1109/ISORC.2010.15","DOIUrl":"https://doi.org/10.1109/ISORC.2010.15","url":null,"abstract":"With the growing complexity of embedded systems software, high code quality can only be achieved using a compiler. Sophisticated compilers provide a vast spectrum of various optimizations to improve code aggressively w. r. t. different objective functions, e. g., average-case execution time (ACET) or code size. Due to the complex interactions between the optimizations, the choice for a promising sequence of code transformations is not trivial. Compiler developers address this problem by proposing standard optimization levels, e. g., O3 or Os. However, previous studies have shown that these standard levels often miss optimization potential or might even result in performance degradation. In this paper, we propose the first adaptive WCET-aware compiler framework for an automatic search of compiler optimization sequences which yield highly optimized code. Besides the objective functions ACET and code size, we consider the worst-case execution time (WCET) which is a crucial parameter for real-time systems. To find suitable trade-offs between these objectives, stochastic evolutionary multi-objective algorithms identifying Pareto optimal solutions are exploited. A comparison based on statistical performance assessments is performed which helps to determine the most suitable multi-objective optimizer. The effectiveness of our approach is demonstrated on real-life benchmarks showing that standard optimization levels can be significantly outperformed.","PeriodicalId":142767,"journal":{"name":"2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124710923","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}
{"title":"An Admission Control Protocol for Real-Time OSGi","authors":"Thomas Richardson, A. Wellings","doi":"10.1109/ISORC.2010.19","DOIUrl":"https://doi.org/10.1109/ISORC.2010.19","url":null,"abstract":"In previous work we motivated the need for using the OSGi Framework with the RTSJ to develop real-time systems. We found a number of issues with using these technologies together. One of the issues we discovered was unbounded dynamism caused by the absence of admission control. Components can be uninstalled, installed and updated without regulation. This means that it is impossible to guarantee resources to components. In this paper, we propose a solution to the unbounded dynamism problem by providing an admission control protocol for real-time OSGi. We also provide a priority assignment approach to support temporal isolation. The combination of admission control and temporal isolation ensure that it is safe to update components or install components into the system in terms of guaranteeing resources to components. We show the practicality of our admission control protocol by implementing a prototype and measuring the execution time overhead incurred when performing a component install with admission control.","PeriodicalId":142767,"journal":{"name":"2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","volume":"54 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129486067","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}
{"title":"Energy-Saving Mechanisms in the Time-Triggered Architecture","authors":"H. Kopetz","doi":"10.1109/ISORC.2010.33","DOIUrl":"https://doi.org/10.1109/ISORC.2010.33","url":null,"abstract":"Energy consumption is a major issue in the design of embedded systems that are battery-driven. At the architectural level energy savings can be realized by a diversity of mechanisms. This paper presents the energy-savings mechanisms that are part of the time-triggered architecture (TTA). The paper starts with a general section on energy dissipation in VSLI circuits and an outline of the architectural style of the time-triggered architecture as far as it is relevant for energy efficiency. In the following three Sections we elaborate on the TTA energy-savings mechanisms at the system level, the component level, and of the communication system.","PeriodicalId":142767,"journal":{"name":"2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","volume":"75 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128928424","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}
Juan A. Colmenares, K. Kim, Zhen Zhang, Chae-Deok Lim, K. Rim
{"title":"Real-Time-Component Based Software Architecture for QoS-adaptive Networked Multimedia Applications","authors":"Juan A. Colmenares, K. Kim, Zhen Zhang, Chae-Deok Lim, K. Rim","doi":"10.1109/ISORC.2010.44","DOIUrl":"https://doi.org/10.1109/ISORC.2010.44","url":null,"abstract":"Highly desirable types of networked multimedia applications should adapt to changes in the environmental conditions in which they operate, such as communication bandwidth, available memory, and battery lifetime, while providing the best possible quality of service (QoS). In this paper we present a software architecture that facilitates the development of adaptive networked multimedia applications which meet this requirement. The proposed software architecture is based on the Time-triggered Message-triggered Object (TMO) programming scheme and it is implemented as a thin layer on top of the TMO Support Middleware (TMOSM). The new layer, called the QoS Adaptation Support Layer (QASL), includes monitoring andruntime reconfiguration facilities that allow us to easily incorporate QoS-adaptation capabilities into TMO-based multimedia applications. In addition, we introduce a novel, practical approach for establishing the QoS configurations that guide the adaptive behavior of a networked multimedia application. A QoS configuration contains a set of parameters that specify the quality-related characteristics of the media streams which a receiver expects from a sender. We also present a strategy used in QASL for selecting, from a given set of QoS configurations, an optimal configuration by reflecting currently observed environmental conditions. Finally, the effectiveness of the QoS-adaptation mechanisms implemented in QASL is evaluated with the use of a heterogeneous network based multi-party videoconference application.","PeriodicalId":142767,"journal":{"name":"2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124559783","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}