Distributed real-time computing is one of the enabling technologies in establishing a team of autonomous robots. A team of soccer playing robots, Paderkicker, contains many computing nodes handling environment perception, artificial intelligence, team coordination, autonomous actuation, and interactions with external entities such as a remote server. Robots must act with varying degrees of autonomy in real-time. The time-triggered message-triggered object (TMO) programming scheme offers a high-level high-precision approach to programming of distributed real-time computing operations. The TMO programmer can apply deadlines to method executions and result-arrivals in a straightforward way. He is thus relieved from dealing with low-level resource allocation details and can show considerably increased productivity. This paper describes a TMO structuring approach for constructing teams of autonomous robots. A TMO network architecture is described for the Paderkicker team
{"title":"Distributed real-time computing in autonomous robots using time-triggered and message-triggered objects (TMOs)","authors":"Jan O. Biermeyer, V. P. Srini, B. Kleinjohann","doi":"10.1109/ISORC.2006.31","DOIUrl":"https://doi.org/10.1109/ISORC.2006.31","url":null,"abstract":"Distributed real-time computing is one of the enabling technologies in establishing a team of autonomous robots. A team of soccer playing robots, Paderkicker, contains many computing nodes handling environment perception, artificial intelligence, team coordination, autonomous actuation, and interactions with external entities such as a remote server. Robots must act with varying degrees of autonomy in real-time. The time-triggered message-triggered object (TMO) programming scheme offers a high-level high-precision approach to programming of distributed real-time computing operations. The TMO programmer can apply deadlines to method executions and result-arrivals in a straightforward way. He is thus relieved from dealing with low-level resource allocation details and can show considerably increased productivity. This paper describes a TMO structuring approach for constructing teams of autonomous robots. A TMO network architecture is described for the Paderkicker team","PeriodicalId":212174,"journal":{"name":"Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06)","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129103912","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}
Jian Liu, Jicheng Fu, Yansheng Zhang, F. Bastani, I. Yen, A. Tai, S. Chau
Automated code synthesis is a constructive process that can be used to generate programs from specifications. It can, thus, greatly reduce the software development cost and time. The use of formal code synthesis approach for software generation further increases the dependability of the system. Though code synthesis has many potential benefits, the synthesis techniques are still limited. Meanwhile, components are widely used in embedded system development. Applying code synthesis to component based software development (CBSD) process can greatly enhance the capability of code synthesis while reducing the component composition efforts. In this paper, we discuss the issues and techniques for applying deductive code synthesis techniques to CBSD. For deductive synthesis in CBSD, a rule base is the key for inferring appropriate component composition. We use the code patterns to guide the development of rules. Code patterns have been proposed to capture the typical usages of the components. Several general composition operations have been identified to facilitate systematic composition. We present the technique for rule development and automated generation of new patterns from existing code patterns. A case study of using this method in building a real-time control system is also presented
{"title":"Deductive glue code synthesis for embedded software systems based on code patterns","authors":"Jian Liu, Jicheng Fu, Yansheng Zhang, F. Bastani, I. Yen, A. Tai, S. Chau","doi":"10.1109/ISORC.2006.25","DOIUrl":"https://doi.org/10.1109/ISORC.2006.25","url":null,"abstract":"Automated code synthesis is a constructive process that can be used to generate programs from specifications. It can, thus, greatly reduce the software development cost and time. The use of formal code synthesis approach for software generation further increases the dependability of the system. Though code synthesis has many potential benefits, the synthesis techniques are still limited. Meanwhile, components are widely used in embedded system development. Applying code synthesis to component based software development (CBSD) process can greatly enhance the capability of code synthesis while reducing the component composition efforts. In this paper, we discuss the issues and techniques for applying deductive code synthesis techniques to CBSD. For deductive synthesis in CBSD, a rule base is the key for inferring appropriate component composition. We use the code patterns to guide the development of rules. Code patterns have been proposed to capture the typical usages of the components. Several general composition operations have been identified to facilitate systematic composition. We present the technique for rule development and automated generation of new patterns from existing code patterns. A case study of using this method in building a real-time control system is also presented","PeriodicalId":212174,"journal":{"name":"Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06)","volume":"358 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115942740","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}
Object-oriented software development practices are being rapidly adopted within increasingly complex systems, including reactive, real-time and concurrent system applications. While data modeling is performed very well under current object-oriented development practices, behavioral modeling necessary to capture critical information in real-time, reactive, and concurrent systems is often lacking. Addressing this deficiency, we offer an approach for modeling and analyzing concurrent object-oriented software designs through the use of behavioral patterns captured through colored Petri nets
{"title":"Modeling behavioral patterns of concurrent objects using Petri nets","authors":"IV RobertG.Pettit, H. Gomaa","doi":"10.1109/ISORC.2006.55","DOIUrl":"https://doi.org/10.1109/ISORC.2006.55","url":null,"abstract":"Object-oriented software development practices are being rapidly adopted within increasingly complex systems, including reactive, real-time and concurrent system applications. While data modeling is performed very well under current object-oriented development practices, behavioral modeling necessary to capture critical information in real-time, reactive, and concurrent systems is often lacking. Addressing this deficiency, we offer an approach for modeling and analyzing concurrent object-oriented software designs through the use of behavioral patterns captured through colored Petri nets","PeriodicalId":212174,"journal":{"name":"Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06)","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114901343","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 Avionics Full Duplex Switched Ethernet (AFDX) has been developed to provide reliable data exchange with strong data transmission time guarantees in internal communication of the aircraft. The AFDX design is based on the principle of a switched network with physically redundant links to support availability and be tolerant to transmission and link failures in the network. In this work, we develop a formal model of the AFDX frame management to ascertain the reliability properties of the design. To capture the precise temporal semantics, we model the system as a network of timed automata and use Uppaal to model-check for the desired properties expressed in CTL. Our analysis indicates that the design of the AFDX frame management is vulnerable to faults such as network babbling which can trigger unwarranted system resets. We show that these problems can be alleviated by modifying the original design to include a priority queue at the receiver for storing the frames. We also suggest communicating redundant copies of the reset message to achieve tolerance to network babbling
{"title":"Formal modeling and analysis of the AFDX frame management design","authors":"M. Anand, S. Vestal, S. Dajani-Brown, Insup Lee","doi":"10.1109/ISORC.2006.35","DOIUrl":"https://doi.org/10.1109/ISORC.2006.35","url":null,"abstract":"The Avionics Full Duplex Switched Ethernet (AFDX) has been developed to provide reliable data exchange with strong data transmission time guarantees in internal communication of the aircraft. The AFDX design is based on the principle of a switched network with physically redundant links to support availability and be tolerant to transmission and link failures in the network. In this work, we develop a formal model of the AFDX frame management to ascertain the reliability properties of the design. To capture the precise temporal semantics, we model the system as a network of timed automata and use Uppaal to model-check for the desired properties expressed in CTL. Our analysis indicates that the design of the AFDX frame management is vulnerable to faults such as network babbling which can trigger unwarranted system resets. We show that these problems can be alleviated by modifying the original design to include a priority queue at the receiver for storing the frames. We also suggest communicating redundant copies of the reset message to achieve tolerance to network babbling","PeriodicalId":212174,"journal":{"name":"Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06)","volume":"20 4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126201276","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 gives a short overview of model-driven development - an approach to software development in which high-level models play a fundamental role. First, the problems that plague current programming approaches are analyzed. This is followed by a short description of the essential features of model-driven development and the potential benefits that it can bring. The results achieved in industrial practice are reviewed briefly, followed by an analysis of current impediments towards greater levels of adoption of this approach and what needs to be done about to overcome them
{"title":"Model-driven development: its essence and opportunities","authors":"B. Selić","doi":"10.1109/ISORC.2006.54","DOIUrl":"https://doi.org/10.1109/ISORC.2006.54","url":null,"abstract":"This paper gives a short overview of model-driven development - an approach to software development in which high-level models play a fundamental role. First, the problems that plague current programming approaches are analyzed. This is followed by a short description of the essential features of model-driven development and the potential benefits that it can bring. The results achieved in industrial practice are reviewed briefly, followed by an analysis of current impediments towards greater levels of adoption of this approach and what needs to be done about to overcome them","PeriodicalId":212174,"journal":{"name":"Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06)","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124895573","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 proposes a rule-based expert system model to assist developers in enhancing the quality of embedded software. The expert system supports semi-automated source code enhancements from multiple perspectives including optimization, reconfiguration to achieve quality of service (QoS) trade-offs, conformance to coding standards, etc., by defining a rule base that is composed of modularized and extensible rule sets. The rule sets are composed of re-usable rules; the rules capture the in-depth knowledge of different software experts. The expert system also adopts a technique to support automated fact generation. This allows the expert system to support processing programs developed in different programming languages
{"title":"A software enhancement system for embedded software development","authors":"Jia Zhou, K. Cooper, I. Yen, J. Linn, R. Paul","doi":"10.1109/ISORC.2006.12","DOIUrl":"https://doi.org/10.1109/ISORC.2006.12","url":null,"abstract":"This paper proposes a rule-based expert system model to assist developers in enhancing the quality of embedded software. The expert system supports semi-automated source code enhancements from multiple perspectives including optimization, reconfiguration to achieve quality of service (QoS) trade-offs, conformance to coding standards, etc., by defining a rule base that is composed of modularized and extensible rule sets. The rule sets are composed of re-usable rules; the rules capture the in-depth knowledge of different software experts. The expert system also adopts a technique to support automated fact generation. This allows the expert system to support processing programs developed in different programming languages","PeriodicalId":212174,"journal":{"name":"Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06)","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123481678","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}
Many interesting applications using mobile ad-hoc networks are possible if quality-of-service (QoS) can be effectively supported. Towards that end, this paper proposes a method based on providing a pool of backup paths that can be used if the primary path can no longer support the required level of QoS. Such a capability is especially important for mobile ad-hoc networks because intermediate nodes (within routing paths) can move around in such networks. Route maintenance and switchover should also be performed in an efficient manner. This is accomplished with the help of a method referred to as pseudo-distance routing
{"title":"QoS support for mobile ad-hoc networks based on a reservation pool","authors":"Min-Gu Lee, Sunggu Lee","doi":"10.1109/ISORC.2006.65","DOIUrl":"https://doi.org/10.1109/ISORC.2006.65","url":null,"abstract":"Many interesting applications using mobile ad-hoc networks are possible if quality-of-service (QoS) can be effectively supported. Towards that end, this paper proposes a method based on providing a pool of backup paths that can be used if the primary path can no longer support the required level of QoS. Such a capability is especially important for mobile ad-hoc networks because intermediate nodes (within routing paths) can move around in such networks. Route maintenance and switchover should also be performed in an efficient manner. This is accomplished with the help of a method referred to as pseudo-distance routing","PeriodicalId":212174,"journal":{"name":"Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131257569","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}
While flash memory has been widely adopted for various embedded systems, space efficiency with reasonable performance has become a critical issue for the design of the flash-memory translation layer. The target of this paper is to improve the performance of existing designs by proposing a search-tree-like caching mechanism for efficient address translation. A replacement strategy with a low time complexity is presented to monitor the access status of recently used LBA's. The proposed caching mechanism and replacement strategy were shown being highly effective in the reducing of the address translation time over popular translation layer designs, such as NAND, where realistic workloads were used for experiments
{"title":"A space-efficient caching mechanism for flash-memory address translation","authors":"Chin-Hsien Wu, Tei-Wei Kuo, Chia-Lin Yang","doi":"10.1109/ISORC.2006.13","DOIUrl":"https://doi.org/10.1109/ISORC.2006.13","url":null,"abstract":"While flash memory has been widely adopted for various embedded systems, space efficiency with reasonable performance has become a critical issue for the design of the flash-memory translation layer. The target of this paper is to improve the performance of existing designs by proposing a search-tree-like caching mechanism for efficient address translation. A replacement strategy with a low time complexity is presented to monitor the access status of recently used LBA's. The proposed caching mechanism and replacement strategy were shown being highly effective in the reducing of the address translation time over popular translation layer designs, such as NAND, where realistic workloads were used for experiments","PeriodicalId":212174,"journal":{"name":"Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06)","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134292354","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}
Ho Lee, Jaeil Hwang, Joonwook Lee, Seungyong Park, Chungwoo Lee, Yunmook Nah, Segil Jeon, Moon-hae Kim
To handle the extreme situation that must manage positional information of a very large volume, at least millions, of moving objects, a cluster-based scalable distributed computing system architecture, called the GALIS, which consists of multiple data processors, each dedicated to keeping records relevant to a different geographical zone and a different time zone, was proposed. In this paper, we propose a valid time management and time-zone shifting scheme, which are essential in realizing the long-term location data subsystem of GALIS, but missed in our previous prototype development. We explain how to manage valid time of moving objects to avoid ambiguity of location information. We also describe time-zone shifting algorithm, with three variations, such as RT-TZS, B-TZS and TPB-TZS. Through experiments related with query processing time and CPU utilization, we show the efficiency of the proposed time-zone shifting schemes
{"title":"Long-term location data management for distributed moving object databases","authors":"Ho Lee, Jaeil Hwang, Joonwook Lee, Seungyong Park, Chungwoo Lee, Yunmook Nah, Segil Jeon, Moon-hae Kim","doi":"10.1109/ISORC.2006.48","DOIUrl":"https://doi.org/10.1109/ISORC.2006.48","url":null,"abstract":"To handle the extreme situation that must manage positional information of a very large volume, at least millions, of moving objects, a cluster-based scalable distributed computing system architecture, called the GALIS, which consists of multiple data processors, each dedicated to keeping records relevant to a different geographical zone and a different time zone, was proposed. In this paper, we propose a valid time management and time-zone shifting scheme, which are essential in realizing the long-term location data subsystem of GALIS, but missed in our previous prototype development. We explain how to manage valid time of moving objects to avoid ambiguity of location information. We also describe time-zone shifting algorithm, with three variations, such as RT-TZS, B-TZS and TPB-TZS. Through experiments related with query processing time and CPU utilization, we show the efficiency of the proposed time-zone shifting schemes","PeriodicalId":212174,"journal":{"name":"Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06)","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129849496","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}
Open multithreaded transactions constitute building blocks that allow a developer to design and structure the execution of complex distributed systems featuring cooperative and competitive concurrency in a reliable way. In this paper we describe an optimization to the standard open multithreaded transaction model that does not impose any participant synchronization when committing a transaction, but still provides the same execution semantics. This optimization - letting participants "look ahead" and continue their execution on the outside of the transaction - makes it possible to speed up the execution of in individual transaction with multiple participants tremendously. The paper describes all technical issues that had to be solved, e.g. adapting concurrency control of transactional objects to be look-ahead aware, adapting joining rules for look-ahead participants, and re-defining exception handling in the presence of look-ahead
{"title":"Looking ahead in open multithreaded transactions","authors":"Maxime Monod, J. Kienzle, A. Romanovsky","doi":"10.1109/ISORC.2006.49","DOIUrl":"https://doi.org/10.1109/ISORC.2006.49","url":null,"abstract":"Open multithreaded transactions constitute building blocks that allow a developer to design and structure the execution of complex distributed systems featuring cooperative and competitive concurrency in a reliable way. In this paper we describe an optimization to the standard open multithreaded transaction model that does not impose any participant synchronization when committing a transaction, but still provides the same execution semantics. This optimization - letting participants \"look ahead\" and continue their execution on the outside of the transaction - makes it possible to speed up the execution of in individual transaction with multiple participants tremendously. The paper describes all technical issues that had to be solved, e.g. adapting concurrency control of transactional objects to be look-ahead aware, adapting joining rules for look-ahead participants, and re-defining exception handling in the presence of look-ahead","PeriodicalId":212174,"journal":{"name":"Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06)","volume":"35 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132203996","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}