CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): unixboy (세탁소주인)
날 짜 (Date): 2002년 3월 13일 수요일 오후 01시 42분 42초
제 목(Title): Re: [Q] kernel ping 좀더 구체적으로...



linux kernel 도 그리 만만할 것 같진 않습니다.
일단은 second-wise working 해야 되니까, 
kernel daemon 을 하나 작성해야 할 것 같구요.
/net/icmp.c 에 보니까, send/receive 함수가 
있긴 합니다만, 이것만 가지고는 안되고, 
sk_buff structure 를 만들어줘야 하는데, 그것
ip_queue_xmit() 이나 ip_queue_xmit_#@RqQWER() 
같은 함수내에 있는 icmp_send() 를 봐야 될 것 
같습니다. kernel daemon(thread) 에 대해서는 
init/main.c 내에 있는 rest_init() 함수같은데에
보면 kernel_thread() 란 kernel daemon 설치 함수가 
나와 있긴 합니다. ip_queue_xmit() 은 ip_output.c
라고 /net/ipv4/ 있죠.

제가 보기엔 앞 분이 말씀하신 그냥 사용자 수준에서 
접근하는 것이 올바른 것이 아닌가 하는 생각이 들긴
합니다만... 아니면 icmp_send() 만 호출하는 system call
을 하나 만드시는 것도.. system call 에 대해서는 

include/asm/unistd.h
arch/i386/kernel/entry.S 
를 보면 대충 감이 오긴 합니다. 



@@ 나비처럼 날아서 벌처럼 도배하자 @@
[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.