DOI QR코드

DOI QR Code

Analyzing thread-safety on ROS2 with Libclang

Libclang 을 활용한 ROS2 의 스레드 안전성 분석

  • Chae-Won Shin (School of Computer Science and Engineering, Pusan National University) ;
  • Jeong-Hwan Kang (Dept. of Information Convergence Engineering, Pusan National University) ;
  • Dong-Hyun Kwon (School of Computer Science and Engineering, Pusan National University)
  • 신채원 (부산대학교 정보컴퓨터공학부) ;
  • 강정환 (부산대학교 정보융합공학과) ;
  • 권동현 (부산대학교 정보컴퓨터공학부 )
  • Published : 2023.05.18

Abstract

ROS2 코드에서, multi-threaded executor 은 여러 메시지 또는 이벤트를 병렬로 처리할 수 있도록 복수의 스레드를 만든다. Multi-threaded executor 을 사용하면 프로그램 성능이 가속화되고 메모리를 경제적으로 사용할 수 있지만, 하나의 시스템 자원을 여러 개의 프로세스가 동시에 참조하거나 수정하기 때문에 deadlock 등의 여러 문제가 발생한다. 이 논문에서는 libclang 인터페이스를 이용해 ROS2 코드를 구문 분석하고 스레드 안전성을 평가하는 방법과 그 한계점, 향후 연구 방향에 대해 논한다.

Keywords

Acknowledgement

본 연구는 과학기술정보통신부 및 정보통신기획평가원의 대학 ICT 연구센터육성지원사업의 연구결과로 수행되었음 (IITP-2023-2020-0-01797). 또한, 본 연구는 과학기술정보통신부 및 정보통신기획평가원의 융합보안핵심인재양성사업의 연구 결과로 수행되었음 (IITP-2023-2022-0-01201).