{"title":"Asynchronous programming with futures in C on a safety-critical platform in the railway-control domain","authors":"O. M. Duarte, R. Hametner","doi":"10.1109/ETFA.2017.8247589","DOIUrl":null,"url":null,"abstract":"Programming parallel applications on replicated architectures in the safety-critical field is challenging due to the inherent non-determinism of the derived applications. This paper describes the concept of asynchronous programming with futures in C under a safety-critical platform used in the transport automation industry. A C language extension named Fresera and a Fresera-like runtime library implemented in C are presented. Our goal is to simplify the development of parallel applications with replica-deterministic guarantees. An overview of a transport automation platform in the railway control domain is given which relies on Triple Modular Redundancy (TMR) for fault tolerance. An example application written in a Fresera-like runtime library in C is used as a demonstration of the presented programming model. Early benchmarks of the runtime library exhibit an improved performance when using a lightweight tasks and a Work Stealing scheduler compared with a plain pthreads implementation.","PeriodicalId":6522,"journal":{"name":"2017 22nd IEEE International Conference on Emerging Technologies and Factory Automation (ETFA)","volume":"37 1","pages":"1-8"},"PeriodicalIF":0.0000,"publicationDate":"2017-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2017 22nd IEEE International Conference on Emerging Technologies and Factory Automation (ETFA)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ETFA.2017.8247589","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Programming parallel applications on replicated architectures in the safety-critical field is challenging due to the inherent non-determinism of the derived applications. This paper describes the concept of asynchronous programming with futures in C under a safety-critical platform used in the transport automation industry. A C language extension named Fresera and a Fresera-like runtime library implemented in C are presented. Our goal is to simplify the development of parallel applications with replica-deterministic guarantees. An overview of a transport automation platform in the railway control domain is given which relies on Triple Modular Redundancy (TMR) for fault tolerance. An example application written in a Fresera-like runtime library in C is used as a demonstration of the presented programming model. Early benchmarks of the runtime library exhibit an improved performance when using a lightweight tasks and a Work Stealing scheduler compared with a plain pthreads implementation.