Skip to content

Cscope

  • Published on
    커널 학습에서 실제로 가장 자주 쓰게 되는 기술은 읽기가 아니라 찾기입니다. 어떤 트리를 받을지부터 정리합니다. mainline, stable, longterm이 각각 무엇이고 kernel.org의 릴리스 표를 어떻게 읽는지, torvalds 트리와 stable 트리 중 무엇을 clone해야 하는지, 얕은 복제가 언제 손해로 돌아오는지를 다룹니다. 그다음이 이 글의 본론입니다. 알고 있는 동작 하나에서 출발해 그것을 구현한 커널 함수에 도달하는 경로를 실제 명령으로 보여 줍니다. ripgrep과 grep의 실전 패턴, make cscope와 make tags가 만들어 주는 인덱스, 그리고 매크로가 이름을 생성하기 때문에 순진한 grep이 실패하는 대표적인 경우를 시스템 콜 테이블에서 SYSCALL_DEFINE까지 따라가며 설명합니다. 마지막으로 MAINTAINERS 파일의 필드 표기를 읽어 어느 코드가 누구 소관인지 알아내는 법과 Documentation 트리를 검색 대상으로 쓰는 법을 정리합니다.