상세 보기
초록
멀티스레드 프로그램의 수행 양상을 시각화하는 것은 다양한 수행에 대한 직관적인 이해를 가능하게 하므로 디버깅에 효과적이다. 그러나 기존의 시각화 기법들은 록킹 정보를 포함하지 않거나 이전 수행에서 발생한 록킹 연산 간의 실제적인 부분순서 정보만을 제공하므로 잠재적 교착상태에 대한 이해와 분석을 어렵게 한다. 본 논문은 록킹 연산 간의 잠재적인 부분순서를 표현하는 록-인과 그래프 (lock-causality graph)를 새로이 제시한다. 록-인과 그래프에서 록킹 연산에 의한 비결정적인 수행순서는 노드에 표현하고 스레드 연산 및 순차적 수행에 의한 결정적인 수행순서는 간선에 표현한다. Java로 작성된 식사하는 철학자 문제를 대상으로 한 실험에서 본 기법은 정상적으로 종료한 프로그램에 내재된 교착상태를 효과적으로 표현할 수 있음을 보인다.
키워드
Multithreaded Programs; Debugging; Potential Deadlocks; Visualization; Lock-Causality Graph
- 제목
- 멀티스레드 프로그램의 디버깅을 위한 수행그래프
- 제목 (타언어)
- An Execution Graph for Debugging Multithreaded Programs
- 저자
- 김병철; 전용기
- 발행일
- 2009
- 저널명
- 한국정보기술학회논문지
- 권
- 7
- 호
- 2
- 페이지
- 16 ~ 25
- 언어
- KOR
- 출판사
- 한국정보기술학회
- 발행국가
- 대한민국
- 분량
- 10 페이지
- ISSN
- E 2093-7571
P 1598-8619