티스토리 뷰

리눅스 커널(linux-3.9.3)에 시스템 콜 추가하기

1. 우선 arch/x86/syscalls/syscall_32.tbl 에 시스템 콜 번호를 정의한다. 

시스템 콜 테이블의  포멧은 아래와 같다.

<number> <abi>  <name> <entry point> <compact entry point>

351     i386      opsyscall        sys_opsyscall        



2. 시스템 콜 헤더파일을 수정한다. 위치는 include/linux/syscalls.h 에 아래와 같은

시스템 콜 함수를 추가한다.

asmlinkage long sys_opsyscall(const char* test);


3.   linux-3.9.3/ 커널소스디렉토리 아래에 opsyscall/syscall.c 파일을 작성한다. 

opsyscall/Makefile 도 작성해준다. 아래와 같다.


4. 커널  Makefile(linux-3.9.3/Makefile)에서 525 라인에 있는 내용을 수정하여 준다.


                          ↓


5. 커널 컴파일을 수행..

6. 추가한 시스템 콜을 호출하는 프로그램을 작성한다.


7. 프로그램을 컴파일하고 실행시킨후 dmesg 명령을 통해 확인한다. 




공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
TAG more
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함