nnd - 리눅스를 위한 초경량 고속 디버거
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
개발 툴
대상자
리눅스 개발자 및 디버깅 도구를 필요로 하는 프로그래머
초보자 및 중급자 모두에게 유용하며, 복잡한 디버깅 작업에 효율적인 도구를 찾고 있는 사람에게 적합
핵심 요약
- nnd는 Rust로 작성된 리눅스 전용 초경량 고속 디버거로, gdb나 lldb에 의존하지 않음
- 6MB의 단일 실행 파일로 배포되며, 종속성 없이 설치 없이 바로 사용 가능
- TUI 기반 UI를 사용해 대용량 실행 파일도 효율적으로 디버깅 가능
섹션별 세부 요약
- 기능 개요
- Rust로 직접 구현된 디버거로, gdb나 lldb에 의존하지 않음
- TUI 기반 UI 제공, 대용량 실행 파일(예: 2.5GB ClickHouse)도 무리 없이 다룰 수 있음
- 비동기/멀티스레드 기반으로 로딩, 검색 등 시간이 걸리는 작업 취소 및 진행 표시 지원
- 디버깅 기능
- 브레이크포인트 및 조건부 브레이크포인트 지원
- 단계별 실행 기능 제공
- 코드 및 어셈블리 표시 기능 구현
- watch 표현식, 표준 라이브러리 프리티프린터 지원
- vtable 기반 다운캐스팅 기능 제공
- 제한사항
- 리눅스 x86_64 전용 지원
- TUI만 지원, GUI는 미지원
- 원격 디버깅, fork 추적, record/replay 기능 없음
- 자바, 파이썬 등 VM 기반 언어 미지원
결론
- *nnd는 리눅스 환경에서의 디버깅 작업을 효율화할 수 있는 초경량 도구로, 설치가 간단하고 TUI 기반 UI로 대용량 프로세스를 효과적으로 처리할 수 있는 점에서 실무에 유용**하며, Rust 기반으로 구현되어 빠른 실행 성능을 제공함.