프로그래밍 QnA

ihkwon23의 이미지

e1000 드라이버 커널 패닉 문제

심심해서 커널 2.4에서 e1000 네트웍 드라이버에서 ip filtering 기능을 첨가하는 테스트 코드를 짜고 있는데.. 커널 패닉이 나는군요..

드라이버 코드를 보면 skb->protocol = eth_type_trans(skb, netdev);에서
ethernet header는 쉽게 까서 보는데..

ip hdr을 까면.. oops가 나는 이유를 모르겟네요.. 물론 ip 패킷만 날리고 이것을 받습니다.

간단히 넣은 코드는 다음과 같습니다.(e1000_main.c -> e1000_clean_rx_irq 함수)
skb->protocol = eth_type_trans(skb, netdev);

==> 여기서 부터..

hanzo69의 이미지

epoll fd 한개에 두 쓰레드가 동시에 epoll_wait()를 들어가면?

하나의 epoll fd에 두 쓰레드가 동시에 epoll_wait()를 들어가면 어떻게 되는지 궁금합니다.
직접 테스트 해보니 스택처럼 동작되더군요.

리스닝 쓰레드 A가 먼저 epoll_wait()를 들어간 후 리스닝 쓰레드 B가 epoll_wait()를 들어가게 테스트 프로그램을 준비했구요.
A쓰레드의 리스닝 tcp 포트에 클라이언트가 먼저 연결을 해도 반응이 없다가, B쓰레드의 리스닝 tcp포트에 클라이언트가 연결을 하니 그제서야 A쓰레드가 epoll fd에서 자신의 이벤트를 꺼내더군요.

전에 질문했던 대기중인 epoll fd에 대한 fd 추가는 이상없이 잘 되었습니다. 타 쓰레드에 의해 대기중인 epoll fd에 socket fd를 추가해도 문제없이 잘 돌아가더군요.

nayana의 이미지

vi? vim?

redhot 9.0을 쓸때는 vi 만눌러도 vim 실행 됬는데...
fedoracore3는 vi누르게 되면 vi가 실행되고 vim을 누르면 vim을 실행합니다. vi를 눌러도 vim 을 실행하게 할수 있는 방법이 없나요?

juluv의 이미지

glade 메뉴 작업시 에러

안녕하세요. glade 초보 사용자입니다. 처음시작하자마자 막히기 시작하네요.

메뉴를 생성한 뒤, 그것을 편집하기 위해 속성을 보려고 하면 glade가 다운됩니다. 다른 것 아무것도 하지 않았는데요..

혹시나해서 리눅스를 다시 깔고 깨끗한 상태에서 glade를 처음 실행시켰을 때도 이런 상황이 발생합니다.

제 시스템환경은, vmware위에 redhat 9.0 입니다. glade 버젼은 1.5.x 이구요..

아낌없는 조언 부탁드립니다.

cjy1126의 이미지

c++의 static 변수같은게 c에는 없나요?

유해 프로그램을 나타내는 code, name 을 멤버로 가지는 구조체가 있습니다.

이 구조체를 이용해서 유해 프로그램 리스트르 만들었습니다.

agent에 이 리스트를 전송하려고 하는데, 몇개의 리스트를 전할지 리스트의 개수를 보내고 데이터를 전달하려고 합니다.

listCount라는 변수를 따로 잡아야 하나요?

struct process
{
   int code;
   char name[100];
   int listCount;
}

이렇게하자니 listCount 변수는 1개만 필요한데 메모리가 낭비되고, 구조체와 따로해서 잡자니 현재 변수가 너무 많아서요.

hys545의 이미지

softpear compiler error

[code:1]
make all-recursive
make[1]: Entering directory `/home/hys545/SoftPear/softpear'
Making all in src
make[2]: Entering directory `/home/hys545/SoftPear/softpear/src'
g++ -g -O2 -o softpear -s main.o ppc_alu.o ppc_cpu.o ppc_dec.o ppc_exc.o ppc_fpu.o ppc_mmu.o ppc_opc.o loader.o nativelib.o spmalloc.o
nativelib.o(.text+0xc99): In function `my_mktemp()':
loader/nativelib.cc:692: warning: the use of `mktemp' is dangerous, better use `mkstemp'
nativelib.o(.text+0x100d): In function `my_dirname()':

세벌의 이미지

frame 어떻게 쓴 건지?

http://cafe.daum.net/malel
보다가 frame 쓴 것을 알고 마우스 오른쪽 버튼 눌러서
show only this frame 으로 봐도 주소창에는
http://cafe.daum.net/malel
이렇게 똑 같이 뜨네요.
이건 무슨 트릭을 사용한 건지?

yangsg의 이미지

가변 길이 한글 패킷 처리

가변 길이 한글 패킷은 보통 어떻게 처리하나요 ?

문제는 한글이 1byte로 처리 되는 쪽과 2byte로 처리 되는 부분과의 처리 부분입니다..
보통 어떻게들 처리 하시는지 궁금해서 질문드립니다..
저같은 경우는.. packet header에 size를 적어 날릴려고 했는데
한영 썩여 있을 경우 size를 계산하는 부분이 조금 문제가 될거 같더군요...

그래서 구분자를 사용해서 구현할까 생각도 하고 있습니다..
보통 구분자를 사용해서 구현할때.. 구분자를 어떻게들 정의 하시는지..

장택수의 이미지

시그널 처리에 대한 질문입니다.

시그널 처리에 대한 질문입니다.

한 사용자가 실행시키는 프로세스가 많이 있는 경우,

프로세스들 사이에서 주고 받는 시그널을
하나의 프로세스(데몬)가 검사하여 주고 받게 할 수 있을까요?

즉, A 프로세스가 B 프로세스에게 시그널을 보내는 경우
A 프로세스가 보내는 시그널이 B 프로세스에서 처리되기 전에
적합한 시그널은지 확인한 후 처리하는 프로그램을 짜는 것이 가능하냐는 것이지요...

hokim의 이미지

link시 error를 warning 메세지???

[hokim@sens root]$ sudo g++ -O -o bin/h2root main/src/h2root.o hbook/src/hntvar2.o -Llib -lCore -lCint -lHist -lGraf -lGraf3d -lGpad -lTree -lMatrix -L/belle/cern/2003/lib/so -L/belle/cern/2003/lib/so -lpacklib -lkernlib -lg2c -lnsl -lm -ldl -lpthread -rdynamic

/usr/bin/ld: warning: pawc.so, needed by /belle/cern/2003/lib/so/libpacklib.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libgrafX11.so.1, needed by /belle/cern/2003/lib/so/libpacklib.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libmathlib.so.1, needed by /belle/cern/2003/lib/so/libpacklib.so, not found (try using -rpath or -rpath-link)

페이지

프로그래밍 QnA 구독하기