본문 바로가기
[ Laboratory ]/System Software & Storage

[Linux Kernel] 리눅스 커널 분석 - 실습 환경 구축 (cscope)

by dev charlotte 2024. 7. 8.

1. cscope 설치

sudo apt install cscope

 

2. vim 초기 설정

초기 설정을 하는 다양한 방법이 있다

 

2-1. git clone 

vim 사용 관련 초기 설정 코드를 담은 파일을 git clone 하는 방식으로 초기설정을 할 수 있다

git clone을 한다면 git clone 뒤에 레파지토리 링크를 넣은 후 

아래의 명령어로 레파지토리의 파일을 vim 설정 파일로 복사하면 된다

cp -r .vim* ~/

 

명령어는

-r 옵션을 사용하는 복사 명령어로 디렉토리와 하위 파일들을 재귀적으로 복사하고

vim* 을 통해 현재 디렉토리에서 .vim으로 시작하는 모든 파일과 디렉토리를 대상으로 한다 (와일드 카드 * 문자의 역할)

그 결과를 사용자 홈 디렉토리로 재귀적 복사한다는 의미

 

 

2-2. .vimrc 파일에 직접 설정값 넣기

이건 오늘 말고 다음 번에 자세히 설명하겠다 

 

3. cscope 초기 설정

3-1.  current working directory 변경

분석하고자 하는 소스코드의 최상위 폴더로 이동한다

cd ~
cd linux-6.6.36

 

분석을 위해 접속할 때마다 버전 정보를 다 입력하는 것이 번거로워 

디렉토리명을 변경했다

 

3-1-2. 디렉토리명 변경

변경 방법은

mv dir1 dir2

 

dir1과 dir2는 각각 기존 이름, 변경하고자 하는 이름이고

상대경로, 절대경로 모두 입력 가능하다

 

3-2. cscope.files 파일에 저장하기

find . -name *.c -o -name *.h -o -name *.s > cscope.files

현재 디렉토리와 하위 디렉토리에서 

.c 확장자를 가진 파일

or 

.h 확장자를 가진 파일

or

.s 확장자를 가진 파일 

을 찾아서 or 연산을 수행한 결과

찾은 파일 목록을 cscope.files 파일에 저장한다


3-3-1.  make cscope 

 

3-3-2. cscope -bqk

두 가지 중 하나의 방법으로 선택해서 수행하면 된다

두 번째 방법을 개인적으로는 더 추천한다

데이터 베이스 생성 b , 생성 시간 단축 q , 커널 코드 분석을 위한 옵션 k 까지 설치 해준 것

 

 

728x90