먼저 서두에 제가 작성한 글이 아님을 밝힙니다.
여기서 따옴
http://4ellene.net/tt/1198
사용하기
=====================================================
현재 커널 분석이 필요없으므로 일단 패스
ubuntu에서는 커널 upgrade시 /usr/src/kernel folder 이름이 바뀌므로
자칫하다가는 dummy 값을 symbolic link 해줄까봐 나중에 필요할 때 추가해야 겠음
= > 우선 커널이 있는 폴더로 이동 합니다
$cd /usr/src/linux/ <== ( 전 linux로 심볼릭 링크가 돼어 있습니다 안돼어 있다면
심볼릭 링크를 만드셔도 돼고 직접 경로를 다 입력 하셔도 상관없습니다)
심볼릭 링크 만들기 -> ln -s /usr/src/커널폴더명 linux
커널 폴더로 이동했으면 ctags -R 을 입력하여 tags 파일을 생성합니다
시간이 좀 걸리는데 ls로 tags 파일이 생성 된걸 확인 합니다
<extra 기능 >
ex 모드 -> vi 에서 : 을 눌러서 명령을 입력 하는 모드를 말합니다
ex 모드에서 :tj 함수명 이나 구조체명 (왜 tj 인가 ? tags jump 약어)
(찾고자 하는 함수명이나 구조체 이름등을 입력 하면 관력 이름 함수나 구조제..정보가 나타 납니다 )
보통 한두가개 아닌경우 스페이스바를 누르면 목록이 더나오며 d 를 누를 경우 한페이지씩..
보여 줍니다 나갈때는 q로 나갈수 있습니다 그럼 <CR> 이 나오는데 여기서 찾은 함수나 구조체
번호를 입력 하면 자동으로 점프합니다
다른 방법으로 가는 방법은 커널 소스를 vi열어서 분석하다가 함수 원형이나 구조체 이름에서
ctrl + ] 를 누르면 자동으로 태그를 찾아 갑니다
이전으로 다시 돌아 올때는 ctrl + t 를 사용 해서 돌아 올수 있습니다
ex모드 : sts 함수명 , 구조체명
위에서 설명한 tj와 비슷 하지만 한가지 다른점이 수평창분활을 해서 결과를 보여 줍니다
이외 명령이 더 있지만 실제 이거만 알아도 충분 합니다 나머지 이전으로 돌아가기 이런건..
거의 실제 사용 되지도 않습니다 위에 설명한 4가지 방법이 주로 쓰는 방법입니다.
댓글 없음:
댓글 쓰기