시스템 콜작성하는 과제가 있어서.. 열심히 하는데.. 아무리해도 커널 컴
파일.. bzImage 작성에서 계속 arch/i386/kernel/kernel.o : In
function 'sys_call_table':
arch/i386/kernel/kernel.o(.data+0x3d8): undefined reference
to 'sys_testcall' 이렇게 되면서 이미지 작성이 멈춰버리거덩여..
분명.. usr/src/linux/include/asm/unistd.h 에 새로운 시스템 콜 번호
넣었구여.. entry.S 에도 시스템콜 등록하고 /usr/src/linux/kernel 의
Makefile 에 제가 작성한 시스템콜 작성파일 등록해줬는데.. 계속 위 부
분에서 멈춰버리네여.. 무슨 방법 없을까요??
참고로 제가 작성한 시스템 콜입니다.
/* 새로운 시스템 호출 */
#include <linux/unistd.h>
#include <linux/errno.h>
#include <linux/kernel.h>
#include <linux/sched.h>
#include <asm-i386/uaccess.h>
asmlinkage int sys_testcall(int x, int y, int *res)
{
int error, compute;
...
...
..
compute = x*y;
return(0);
}
이런식이구여.. 파일명은 시스템 콜 명과 같은. testcall.c 입니다.
곱셈을 구현하는 시스템 콜이구여..
정말. 몇일간.. 리눅스.. 몇번을 다시 깔고 해봤는데.. 계속 막히네여..
이젠.. 포기 단계에여. 제발.. 조금이라도 도움을 주세요..