파트 프런티어
uftrace
김홍규
C/C++/Rust로 작성된 프로그램을 코드 수정 없이 함수 단위로 성능을 측정하고 실행흐름을 추적(tracing)할 수 있는 분석 도구
2021 년
기타

- 개발자 주요경력
(현) Arm
(전) LG전자

 

- 개발자 전문분야

system tracing/profiling/debugging
 

- 활동 커뮤니티

github

 

- 활동 프로젝트 분야

tracing
 

- 프로젝트 개요

uftrace는 C/C++/Rust로 작성된 프로그램을 코드 수정 없이 함수 단위로 성능을 측정하고 실행흐름을 추적(trace)할 수 있는 분석 도구이다. 이러한 분석을 위해 어떠한 코드 수정도 필요 없이 단지 기존에 존재하는 컴파일러 옵션의 도움으로 분석이 가능하고, 또한 최근에는 full dynamic tracing 기법의 도입으로 컴파일러의 도움 없이도 바이너리 분석 및 조작을 통해서도 분석이 가능하다.


- 프로젝트 목표
대상 프로그램의 실행 흐름 분석에 유용하게 사용될 수 있는 분석 방법 지원 및 다양한 언어, 플랫폼 및 아키텍쳐에 대한 안정성 확보를 목표로 하고 있다.

- 프로젝트 특징

uftrace 는 소스코드에 있는 전체 함수와 라이브러리 호출 및 리눅스 커널 내부 함수에 대한 통합된 실행 흐름 추적이 가능하고, 시간의 흐름에 기반한 tracing 을 할 수 있어서 전체적인 프로그램 실행 순서에 대한 이해에 큰 도움이 될 수 있다. 또한, uftrace 는 함수의 인자 값 및 반환값도 읽을 수 있어서 이를 활용하면 특정 함수에 어떤 기대하지 않았던 인자가 전달되거나 리턴 값을 반환하는 것을 코드 수정 없이 쉽게 찾아낼 수 있어서 버그나 취약점 분석에 활용할 수 있다.
 

- 참고자료

https://uftrace.github.io/slide

전문개발자 프로젝트 게시물 리스트 표
번호 제목 분야 조회수 작성
공지 오픈프론티어 개발 프로젝트 연재 626 2016-08-06
228 [2021년 파트 - 변정훈 개발자] mocha 기타 124 2021-07-22
227 [2021년 파트 - 이은선 개발자] uftrace 기타 141 2021-07-20
226 [2021년 파트 - 박병철 개발자] Linux kernel 기타 146 2021-07-20
225 [2021년 파트 - 김진현 개발자] PyTorch 및 관련 저장소 인공지능(AI) 139 2021-07-20
224 [2021년 파트 - 신준수 개발자] KOMORANPy 인공지능(AI) 122 2021-07-19
223 [2021년 파트 - 강주희 개발자] Kubernetes/website 클라우드 141 2021-07-19
222 [2021년 파트 - 송욱 개발자] NNStreamer 인공지능(AI) 140 2021-07-19
221 [2021년 파트 - 이경일개발자] Project illuminati 기타 131 2021-07-18
220 [2021년 파트 - 정준영 개발자] redBPF 기타 136 2021-07-18
219 [2021년 파트 - 김홍규 개발자] uftrace 기타 130 2021-07-17
맨 위로
맨 위로