모듈

모듈 프로그래밍에 대해서 질문을 드립니다.

1
point

안녕하세요?

프로그래밍 작업을 하다보니 모듈화된 소스코드들을 분석하게 되거나.. 혹은 모듈화 해서 프로젝트를 진행하는 것을 보게 됩니다.
그런데 저같은 경우에는 지식이 짧다보니 어떻게 모듈화 하는 것이 잘하는 것인지 모호함에.. 그냥 한파일에 다 만들어버리고 맙니다.

키보드에대한 질문하나말 할게요

0
points

atkbd.c파일을 수정해서 모듈로 만들었습니다.
그래서 기존에 있던 드리이버를 강제로 내리고 수정한것을 커널 컴파일 을 하지 않고 올리고 싶습니다.

imyejin의 이미지
14808
points

데비안 kernel 2.6.2x 에서 vmware 설정 안되는 분들 해결방법

2
points

데비안 언스테이블 쓰시는 분들 중에 최근에 커널 업그레이드 하신 분들은 vmware 가 잘 설정이 안 되시는 분들도 있을 겁니다.

현재 module-init-tools 패키지의 insmod 라는 유틸리티가 버그가 있어서 vmware 관련 커널 모듈이 컴파일은 잘 되는데 로드할 때 문제가 생깁니다.

모듈에서 다른 모듈의 IOCTL 사용.

0
points

제가 만든 모듈에서 디바이스 드라이버 모듈에 존재하는 ioctl 을 가져다 쓰고 싶습니다.

정확하게는 무선 랜 드라이버에 있는 ioctl을 통해서 채널변경을 시키는 작업을 모듈에서 하고 싶은건데요.

커널 모듈 관련 문의 드립니다 !! 도와 주세요 ㅠㅜ

0
points

전에 있던 커널 소스는 잊어버려서 ㅠㅜ

현재 커널 이미지만 가지고 있습니다.

그런데 커널 이미지에 박혀 있는 모듈이 있는데요

박혀 있는 모듈을 사용 하지 않고

그 모듈을 새로 컴파일 해서 insmod해서 사용 하면

커널에서 새로 만든 모듈을 사용 하게 될까요?

페도라 core 6을 다운 받고 간단한 hello.ko 예제 만들었습니다. 근데 에러가.. ToT

-1
points

====== Makefile ========

obj-m := test.o

#KDIR := /lib/modules/$(shell uname -r)/build
KDIR := /usr/src/kernels/2.6.18-1.2798.fc6-i686
PWD := $(shell pwd)

default:
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules

clean:
rm -rf *.ko
rm -rf *.mod
rm -rf .*.cmd
rm -rf *.o

====== test.c =======
#include
#include
#include

모듈에서 signal 사용하기

0
points

모듈로 일정 시간 간격으로 뭔가를 체크 하려는데요

처음에는 무한루프를 돌멶서 딜레이를 주면서 체크 했습니다.

근데 부하가 많아서..시그널로 처리 하려고 했는데

signal(SIGALRM, handler)

setitimer(ITIMER_REAL, &itimer, NULL)

이런식으로 했는데

컴파일은 되는데 모듈이 올라가지 않습니다.

저 두 함수가 unresolved symbol 이라는 메시지가 뜨면서 말이죠

드루팔 모듈 질문..

0
points

안녕하세요.. 드루팔 초본데요..

드루팔 사용법 알려고 검색 열심히 해봤지만

드루팔에 대한 정보는 드루팔 홈피하고

여기밖에 없더군요.. 참 힘드네요..

하지만 소스코드도 많이 읽었고 사용법도 익숙해지고

있음다.. 하나 질문있는데요.. 여기 같이 포럼

만들려면 어떤 모듈을 사용해야 되나요?

모듈과 사용자 프로그램과의 통신

0
points

안녕하세요.

커널 모듈 프로그래밍에 아직 익숙치 않은 초보라서 어려운점이 많습니다. ^^

커널 2.6에서 만든 모듈과 유저프로그램간에 통신(유저프로그램에서 모듈에 명령 내리기 등)을 해야 하거든요.

2.4에서 sys_call_table을 사용해서 잘 안쓰는 시스템콜(17번, SYS_obreak)을 후킹해서 사용했는데..
2.6에서는 sys_call_table대신에 LSM이라는걸 사용하라고 권장하더군요.

[초보] 모듈 올리라고 하고 .c 나 .o 가 있으면 어찌 해야 하나요?

0
points

aodv를 설치 하다가...이 프로그램을 깔려면 커널에 aodv6.o가 돌고 있는지 확인 하라고 하더군요.

그런데 find / -name aodv6.o를 해봐도 아무 것도 없고...

다운 받은 해당 프로그램에 aodv6.c는 있거든요..

혹시 이걸 어떻게 컴파일 해서...커널에 모듈로 올려야 하는건가요?

만일 그렇다면..명령어나...특정 저장 위치가 있는지 부탁 드립니다.

내용묶음