Embedded systems is an area that grows rapidly with new communication media such as smart-phones, house automation applications (that might finally come) and all other hidden systems we use everyday in cars, airplanes, etc. Moreover, in these last domains, there is a need for very safe development because such systems are often life-critical.
{"title":"Design Methodologies for Embedded Systems: Where is the Super-Glue?","authors":"F. Kordon","doi":"10.1109/ISORC.2008.88","DOIUrl":"https://doi.org/10.1109/ISORC.2008.88","url":null,"abstract":"Embedded systems is an area that grows rapidly with new communication media such as smart-phones, house automation applications (that might finally come) and all other hidden systems we use everyday in cars, airplanes, etc. Moreover, in these last domains, there is a need for very safe development because such systems are often life-critical.","PeriodicalId":378715,"journal":{"name":"2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC)","volume":"160 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124492711","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 describes work to ease the resource allocation problem in the domain of game server hosting. A solution was sought that required no alteration to game server code and would not inhibit a player's gaming experience. Although an academic work, the problem is tackled in a commercial setting.
{"title":"Efficient Resource Management for Game Server Hosting","authors":"Dan Martin, A. Moorsel, G. Morgan","doi":"10.1109/ISORC.2008.12","DOIUrl":"https://doi.org/10.1109/ISORC.2008.12","url":null,"abstract":"This paper describes work to ease the resource allocation problem in the domain of game server hosting. A solution was sought that required no alteration to game server code and would not inhibit a player's gaming experience. Although an academic work, the problem is tackled in a commercial setting.","PeriodicalId":378715,"journal":{"name":"2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC)","volume":"43 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116725926","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 technology supporting multiplayer online games (MOGs) has greatly improved in the past few years. This represents great news both for players all over the world and for researchers that are struggling behind tough problems in real-time distributed systems. Indeed, MOGs represent a peculiar class of distributed systems, sharing features, requirements, challenges, and thereby also feasible solutions. To this aim, we focus on issues and state-of art solutions related to a crucial aspect in MOG deployment: the synchronization of its nodes. In particular, we review techniques able to guarantee that the system evolves in a quick and consistent way and highlight how they can be made more effective by exploiting specific game features. To further support this claim, we also present results from an experimental evaluation we performed.
{"title":"The Brave New World of Multiplayer Online Games: Synchronization Issues with Smart Solutions","authors":"M. Roccetti, S. Ferretti, C. Palazzi","doi":"10.1109/ISORC.2008.17","DOIUrl":"https://doi.org/10.1109/ISORC.2008.17","url":null,"abstract":"The technology supporting multiplayer online games (MOGs) has greatly improved in the past few years. This represents great news both for players all over the world and for researchers that are struggling behind tough problems in real-time distributed systems. Indeed, MOGs represent a peculiar class of distributed systems, sharing features, requirements, challenges, and thereby also feasible solutions. To this aim, we focus on issues and state-of art solutions related to a crucial aspect in MOG deployment: the synchronization of its nodes. In particular, we review techniques able to guarantee that the system evolves in a quick and consistent way and highlight how they can be made more effective by exploiting specific game features. To further support this claim, we also present results from an experimental evaluation we performed.","PeriodicalId":378715,"journal":{"name":"2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC)","volume":"59 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129671525","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}
Grid computing has emerged as a new paradigm of distributed computing technology on large-scale resource sharing and coordinated problem solving. Based on a proposed Web service-based grid architecture, we have designed a service grid middleware system called CROWN which aims to promote the utilization of valuable resources and cooperation of researchers nationwide and world-wide. To address the issues of CROWN resource management, we proposed some key technologies including trustworthy remote and hot service deployment, overlay-based distributed resource organization, resource scheduling and load balance, and federation-based virtual organization management. A status of the wide-area CROWN testbed is also introduced in this paper. Three typical applications including AREM, MDP and gViz are deployed on the CROWN testbed. Experience of CROWN testbed deployment and application development shows that the middleware can support the typical scenarios such as computing-intensive applications and data-intensive applications etc.
{"title":"CROWN: A Service-Oriented Grid Middleware System: Experience and Applications","authors":"J. Huai, Chunming Hu, Tianyu Wo, Jianxin Li","doi":"10.1109/ISORC.2008.79","DOIUrl":"https://doi.org/10.1109/ISORC.2008.79","url":null,"abstract":"Grid computing has emerged as a new paradigm of distributed computing technology on large-scale resource sharing and coordinated problem solving. Based on a proposed Web service-based grid architecture, we have designed a service grid middleware system called CROWN which aims to promote the utilization of valuable resources and cooperation of researchers nationwide and world-wide. To address the issues of CROWN resource management, we proposed some key technologies including trustworthy remote and hot service deployment, overlay-based distributed resource organization, resource scheduling and load balance, and federation-based virtual organization management. A status of the wide-area CROWN testbed is also introduced in this paper. Three typical applications including AREM, MDP and gViz are deployed on the CROWN testbed. Experience of CROWN testbed deployment and application development shows that the middleware can support the typical scenarios such as computing-intensive applications and data-intensive applications etc.","PeriodicalId":378715,"journal":{"name":"2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC)","volume":"2013 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127327418","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 introduces ReDAC, a new algorithm for dynamic reconfiguration of multi-threaded applications. In order to achieve high reliability and availability, distributed component software has to support dynamic reconfiguration. Typical examples include the application of hot-fixes to deal with security vulnerabilities. ReDAC can be implemented on top of the modern component-platforms Java and .NET. We extend the statical term component, denoting a unit of deployment, to runtime by defining a capsule (runtime component instance) to be a set of interconnected objects. This allows us to apply dynamic updates at the level of components during runtime without stopping whole applications. Using system-wide unique identifiers for threads (logical thread IDs), we can detect and also bring capsules into a reconfigurable state by selectively blocking threads, relying on data structures maintained by additional logic integrated into the capsules using aspect-oriented programming. An important contribution of this paper is that ReDAC supports the dynamic reconfiguration of distributed multi-threaded and re-entrant components with cyclic call dependencies.
{"title":"ReDAC -- Dynamic Reconfiguration of Distributed Component-Based Applications with Cyclic Dependencies","authors":"A. Rasche, A. Polze","doi":"10.1109/ISORC.2008.44","DOIUrl":"https://doi.org/10.1109/ISORC.2008.44","url":null,"abstract":"This paper introduces ReDAC, a new algorithm for dynamic reconfiguration of multi-threaded applications. In order to achieve high reliability and availability, distributed component software has to support dynamic reconfiguration. Typical examples include the application of hot-fixes to deal with security vulnerabilities. ReDAC can be implemented on top of the modern component-platforms Java and .NET. We extend the statical term component, denoting a unit of deployment, to runtime by defining a capsule (runtime component instance) to be a set of interconnected objects. This allows us to apply dynamic updates at the level of components during runtime without stopping whole applications. Using system-wide unique identifiers for threads (logical thread IDs), we can detect and also bring capsules into a reconfigurable state by selectively blocking threads, relying on data structures maintained by additional logic integrated into the capsules using aspect-oriented programming. An important contribution of this paper is that ReDAC supports the dynamic reconfiguration of distributed multi-threaded and re-entrant components with cyclic call dependencies.","PeriodicalId":378715,"journal":{"name":"2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC)","volume":"35 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127462320","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}
Several real-time executable software specification languages and techniques exist. However, there are aspects among these languages that are preventing these languages from being widely accepted and adopted. The paper identifies three key areas contributing to this non-acceptability. The paper also suggests future directions and advancements needed in the identified areas.
{"title":"The State of Executable Real-Time Specification Languages and the Need for Advancements","authors":"A. Khwaja, J. E. Urban","doi":"10.1109/ISORC.2008.32","DOIUrl":"https://doi.org/10.1109/ISORC.2008.32","url":null,"abstract":"Several real-time executable software specification languages and techniques exist. However, there are aspects among these languages that are preventing these languages from being widely accepted and adopted. The paper identifies three key areas contributing to this non-acceptability. The paper also suggests future directions and advancements needed in the identified areas.","PeriodicalId":378715,"journal":{"name":"2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC)","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122230550","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}
An increasing number of real-time systems are embedded in mission critical systems such as target tracking systems, in which workloads may dynamically vary, for example, depending on the number of targets in the area of interest Feedback control has been applied to support real-time performance in dynamic environments, producing promising initial results. However, mathematical system modeling necessary for feedback control is challenging. To reduce the difficulty of system modeling, we apply fuzzy control for direct nonlinear mappings between the utilization error (= target utilization - current utilization) and the workload adjustment required to achieve the target utilization via IF-THEN rules. Moreover, via online adaptation, our fuzzy controller can amplify or dampen its own fuzzy control signal, if necessary, to expedite the convergence to the desired utilization. In our simulation study, our approach quickly converges to the target utilization when the workload significantly changes. In contrast, the tested baselines oscillate between overload and underutilization.
{"title":"Adaptive Fuzzy Control for Utilization Management","authors":"Mehmet H. Suzer, K. Kang","doi":"10.1109/ISORC.2008.71","DOIUrl":"https://doi.org/10.1109/ISORC.2008.71","url":null,"abstract":"An increasing number of real-time systems are embedded in mission critical systems such as target tracking systems, in which workloads may dynamically vary, for example, depending on the number of targets in the area of interest Feedback control has been applied to support real-time performance in dynamic environments, producing promising initial results. However, mathematical system modeling necessary for feedback control is challenging. To reduce the difficulty of system modeling, we apply fuzzy control for direct nonlinear mappings between the utilization error (= target utilization - current utilization) and the workload adjustment required to achieve the target utilization via IF-THEN rules. Moreover, via online adaptation, our fuzzy controller can amplify or dampen its own fuzzy control signal, if necessary, to expedite the convergence to the desired utilization. In our simulation study, our approach quickly converges to the target utilization when the workload significantly changes. In contrast, the tested baselines oscillate between overload and underutilization.","PeriodicalId":378715,"journal":{"name":"2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC)","volume":"1998 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128241213","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}
Real-time Linux variants are becoming prominent solutions for the development of embedded systems. Compared to traditional real-time operating systems, embedded system engineers can leverage solutions and knowhow from the Linux development community (e.g., development tools, applications, drivers). Due to the availability of implementations of Internet protocols and network drivers, Linux also facilitates the implementation of embedded systems connected to the Internet. The goal of this paper is to evaluate experimentally the capabilities of the Real-time Linux variant RTAI/LXRT with respect to partitioning between different application software modules. Partitioning ensures that a failure caused by a design fault in one application software module cannot propagate to cause a failure in other application software modules, e.g., by blocking access to the CPU or by overwriting memory. Partitioning is important when building mixed-criticality systems comprising both non safety-critical software modules and safety-related ones. Even at the same level of criticality, partitioning improves the robustness of an embedded system. The experimental results described in this paper point out several limitations of RTAI/LXRT Linux concerning fault isolation. Based on these results, we propose modifications to improve the partitioning with respect to temporal and spatial interference.
{"title":"Temporal and Spatial Partitioning of a Time-Triggered Operating System Based on Real-Time Linux","authors":"R. Obermaisser, B. Leiner","doi":"10.1109/ISORC.2008.10","DOIUrl":"https://doi.org/10.1109/ISORC.2008.10","url":null,"abstract":"Real-time Linux variants are becoming prominent solutions for the development of embedded systems. Compared to traditional real-time operating systems, embedded system engineers can leverage solutions and knowhow from the Linux development community (e.g., development tools, applications, drivers). Due to the availability of implementations of Internet protocols and network drivers, Linux also facilitates the implementation of embedded systems connected to the Internet. The goal of this paper is to evaluate experimentally the capabilities of the Real-time Linux variant RTAI/LXRT with respect to partitioning between different application software modules. Partitioning ensures that a failure caused by a design fault in one application software module cannot propagate to cause a failure in other application software modules, e.g., by blocking access to the CPU or by overwriting memory. Partitioning is important when building mixed-criticality systems comprising both non safety-critical software modules and safety-related ones. Even at the same level of criticality, partitioning improves the robustness of an embedded system. The experimental results described in this paper point out several limitations of RTAI/LXRT Linux concerning fault isolation. Based on these results, we propose modifications to improve the partitioning with respect to temporal and spatial interference.","PeriodicalId":378715,"journal":{"name":"2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC)","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128281105","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}
Resource allocation decisions are critical for the design of embedded real-time systems. Today's trend to software integration makes these decisions tightly coupled to the software architecture. In this paper we discuss the use of architectural models to guide and maintain the integrity of the resource allocation decision at different levels of refinement of the system design. We discuss the budgeting process to split the development process into different teams, the use of bin packing techniques for low level resource allocation and the isolation strategies to separate the different criticality levels of these systems.
{"title":"On Resource Allocation in Architectural Models","authors":"Dionisio de Niz, P. Feiler","doi":"10.1109/ISORC.2008.49","DOIUrl":"https://doi.org/10.1109/ISORC.2008.49","url":null,"abstract":"Resource allocation decisions are critical for the design of embedded real-time systems. Today's trend to software integration makes these decisions tightly coupled to the software architecture. In this paper we discuss the use of architectural models to guide and maintain the integrity of the resource allocation decision at different levels of refinement of the system design. We discuss the budgeting process to split the development process into different teams, the use of bin packing techniques for low level resource allocation and the isolation strategies to separate the different criticality levels of these systems.","PeriodicalId":378715,"journal":{"name":"2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131193756","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}
Hongseok Kim, E. Nam, Ki Seok Choi, Yoon-Jae Seong, Jin-yong Choi, S. Min
In this paper, we explain the basics of flash memory technology in general and solid state disks in particular, and describe development platforms specifically designed for flash memory solid state disks.
在本文中,我们解释了闪存技术的基本原理,特别是固态磁盘,并描述了专门为闪存固态磁盘设计的开发平台。
{"title":"Development Platforms for Flash Memory Solid State Disks","authors":"Hongseok Kim, E. Nam, Ki Seok Choi, Yoon-Jae Seong, Jin-yong Choi, S. Min","doi":"10.1109/ISORC.2008.57","DOIUrl":"https://doi.org/10.1109/ISORC.2008.57","url":null,"abstract":"In this paper, we explain the basics of flash memory technology in general and solid state disks in particular, and describe development platforms specifically designed for flash memory solid state disks.","PeriodicalId":378715,"journal":{"name":"2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-05-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130339254","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}