Eu-teum Choi, Se-Won Park, Ok-Kyoon Ha, Yong-Kee Jun
{"title":"检测arinc653应用程序中的原子性竞争","authors":"Eu-teum Choi, Se-Won Park, Ok-Kyoon Ha, Yong-Kee Jun","doi":"10.1109/GDC.2015.16","DOIUrl":null,"url":null,"abstract":"Atomicity races in ARINC 653 applications are a kind of concurrency bugs which causes nondeterministic behaviors by parallel processes. This paper presents a tool, called AR653, to dynamically detect atomicity races. The tool monitors only synchronization operations and access to shared resources, and analyzes the relation of synchronizations to report atomicity races through a locking discipline of semaphores. We compared the accuracy of AR653 with CodeSonar using synthetic programs on a simulation system for integrated modular avionics. The empirical results show that our tool correctly reports atomicity races, while CodeSonar only locates atomicity races in cases of using shared variables.","PeriodicalId":350822,"journal":{"name":"2015 8th International Conference on Grid and Distributed Computing (GDC)","volume":"56 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2015-11-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Detecting Atomicity Races in ARINC 653 Applications\",\"authors\":\"Eu-teum Choi, Se-Won Park, Ok-Kyoon Ha, Yong-Kee Jun\",\"doi\":\"10.1109/GDC.2015.16\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Atomicity races in ARINC 653 applications are a kind of concurrency bugs which causes nondeterministic behaviors by parallel processes. This paper presents a tool, called AR653, to dynamically detect atomicity races. The tool monitors only synchronization operations and access to shared resources, and analyzes the relation of synchronizations to report atomicity races through a locking discipline of semaphores. We compared the accuracy of AR653 with CodeSonar using synthetic programs on a simulation system for integrated modular avionics. The empirical results show that our tool correctly reports atomicity races, while CodeSonar only locates atomicity races in cases of using shared variables.\",\"PeriodicalId\":350822,\"journal\":{\"name\":\"2015 8th International Conference on Grid and Distributed Computing (GDC)\",\"volume\":\"56 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2015-11-25\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2015 8th International Conference on Grid and Distributed Computing (GDC)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/GDC.2015.16\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2015 8th International Conference on Grid and Distributed Computing (GDC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/GDC.2015.16","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Detecting Atomicity Races in ARINC 653 Applications
Atomicity races in ARINC 653 applications are a kind of concurrency bugs which causes nondeterministic behaviors by parallel processes. This paper presents a tool, called AR653, to dynamically detect atomicity races. The tool monitors only synchronization operations and access to shared resources, and analyzes the relation of synchronizations to report atomicity races through a locking discipline of semaphores. We compared the accuracy of AR653 with CodeSonar using synthetic programs on a simulation system for integrated modular avionics. The empirical results show that our tool correctly reports atomicity races, while CodeSonar only locates atomicity races in cases of using shared variables.