Browse > Article
http://dx.doi.org/10.5139/JKSAS.2020.48.10.821

An Efficient On-the-fly Repairing System of Order Violation Errors for Health Management of Airborne Software  

Kim, Tae-Hyung (Department of Informatics, Gyeongsang National University)
Choi, Eu-Teum (Department of Informatics, Gyeongsang National University)
Jun, Yong-Kee (Department of Informatics, Gyeongsang National University)
Publication Information
Journal of the Korean Society for Aeronautical & Space Sciences / v.48, no.10, 2020 , pp. 821-829 More about this Journal
Abstract
Health management system of airborne software repairs runtime errors to provide safety and to reduce cost of maintenance. It is critical to on-the-fly repair order violation errors, because it is difficult to identify them at the development phase. Previous work, called Repairing Atomicity Violations (Repairing-AV) diagnoses order violations for each access event by comparing execution order of accesses. As a result, Repairing-AV has time overhead that is proportional to the number of access events to shared variable. This paper presents a tool called On-the-fly Repairing System (ORS) that can repair order violations of object methods containing access events. The ORS diagnoses order violations by using correct order of object methods, and treats them by stalling its thread where the error is about to occur. Experimentation with five synthetic programs shows that ORS is more efficient than Repairing-AV when the number of access events is greater than sixty.
Keywords
Airborne Software; Health Management System; Order Violation Errors; On-the-fly Repairing;
Citations & Related Records
Times Cited By KSCI : 2  (Citation Analysis)
연도 인용수 순위
1 Airlines electronic engineering committee (AEEC), avionics application software standard interface - ARINC Specification 653 - Part 1. (supplement 2 - required services), ARINC Inc, 2015.
2 Merendino, T., Latimer IV, D. T., Hammons, C. B., Falkenthal, D., Capell, P. and Firesmith, D. G., The Method Framework for Engineering System Architectures, CRC Press, 2008.
3 Mahadevan, N., Dubey, A. and Karsai, G., "Application of software health management techniques," Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, 2011, pp. 1-10.
4 Srivastava, A. N. and Schumann, J., "The case for software health management," 2011 IEEE Fourth International Conference on Space Mission Challenges for Information Technology, 2011, pp. 3-9.
5 Koenig, D., "A new software glitch has been found in Boeing's troubled 737 Max jet," Associated Press, June 27, 2019.
6 Ha, O. K., Tchamgoue, G. M., Suh, J. B. and Jun, Y. K., "On-the-fly healing of race conditions in ARINC-653 flight software," 29th Digital Avionics Systems Conference, 2010, pp. 5.A.6-1-5.A.6.11.
7 Netzer, R. H. and Miller, B. P., "What Are Race Conditions?," ACM Letters on Programming Languages and Systems (LOPLAS), Vol. 1, No. 1, 1992, pp. 74-88.   DOI
8 Lucia, B. and Ceze, L., "Cooperative empirical failure avoidance for multithreaded programs," Proceedings of the eighteenth international conference on Architectural support for programming languages and operating systems, Vol. 48, No. 4, 2013, pp. 39-50.
9 Lu, S., Park, S., Seo, E. and Zhou, Y., "Learning from mistakes: a comprehensive study on real world concurrency bug characteristics," Proceedings of the 13th international conference on Architectural support for programming languages and operating systems, 2008, pp. 329-339.
10 Choi, E. T., Lee, D. S., Jun, Y. K., and Lee, S. J., "On-the-fly Atomicity Violation Repairing Technique for Airborne Health Management Systems," Journal of The Korean Society for Aeronautical and Space Sciences, Vol. 48, No. 7, 2020, pp. 547-554.   DOI
11 Zhang, M., Wu, Y., Lu, S., Qi, S., Ren, J. and Zheng, W., "A lightweight system for detecting and tolerating concurrency bugs," in IEEE Transactions on Software Engineering, Vol. 42, No. 10, 2016, pp. 899-917.   DOI
12 Zhang, L. and Wang, C., "Runtime prevention of concurrency related type-state violations in multi-threaded applications," Proceedings of the 2014 International Symposium on Software Testing and Analysis, 2014. pp. 1-12.
13 Sidiroglou, S., Laadan, O., Perez, C. R., Viennot, N., Nieh, J. and Keromytis, A. D., "Assure: automatic software self-healing using rescue points," ACM SIGARCH Computer Architecture News, Vol. 37, No. 1, 2009, pp. 37-48.   DOI
14 Scandura, P. A., Jr., "7. Vehicle health management systems," Digital avionics handbook, CRC Press, 2015.
15 United State Department of Defense, "Appendix E. Generic Software Safety Requirements and Guidelines," Joint Software Systems Safety Engineering Handbook, August 2010, pp. E-15-E-18.
16 Zhang, W., Kruijf, M. D., Li, A., Lu, S. and Sankaralingam, K., "ConAir: featherweight concurrency bug recovery via single-threaded idempotent execution," In Proceedings of the eighteenth international conference on Architectural support for programming languages an operating systems, 2013, pp. 113-126.
17 Zhou, B., Neamtiu, I. and Gupta, R., "Predicting concurrency bugs: how many, what kind and where are they?," In Proceedings of the 19th International Conference on Evaluation and Assessment in Software Engineering, 2015, pp. 1-10.
18 Jackson, J., "Nasdaq's Facebook glitch came from 'race conditions'," Computerworld, May 21, 2013.
19 Luo, Z., Xiang, X. and Zhang, Q., "Autopilot system of remotely operated vehicle based on Ardupilot," Intelligent Robotics and Applications, 2019. pp. 206-217.