NIC드라이버를 만들어 보구 있습니다.
모듈을 올리구 오류가 생겨서 모듈이 내려지지 않을 때는
어떻게 해야하는지 궁금합니다. 재부팅하면 돼겠지만
매번 그러는건 상당히 귀찮은 것 같아서요.
오랄리 linux device driver에서 나온 것 처럼 MODULE_USE_COUNT를
강제로 0으로 만들어 보았는데도 rmmod를 해도 않내려 지더군요.
좋은 방법이 없나요? 분명 방법이 있을꺼 같은데 정말 궁금합니다.
서버는 잘 알려진 포트(예로 2000)로 binding해 놓고 서비스를 기다리고 있다가
클라이언트의 접속이 올때 잘 알려진 포트는 해제하고 리슨상태로 있고.
임시포트를 할당해서 작업이 진행되는 걸로 알고 있습니다.
그래서 데이터 전달은 서버측 및 클라이언트 측의 이 임시 포트들을 사용하여
수행하고요.
궁금한게 있는데. 클라이언트가 서버에 여러대가 접속했을때 서버의
netstat -a 상태를 보면 port를 잘알려진 포트(예 2000)로만 표시되는데요.
sparc solaris 5.8에서는 gcc 3.2.2 환경에서 STLPORT 4.5.3을 잘 설치해서 사용했었는데
intel solaris 5.8 에서는 gcc 3.3.2 환경에서 STLPORT 4.5.3을 설치하는데 까지는 성공합니다. 이후 libstlport_gcc.so 를 링크한 바이너리를 실행하면 SIGFPE를 받고 core 남기고 죽습니다. truss 로 call 추적해본결과 libstlport_gcc 에서 무슨 작업을(복잡해서 원...)하다가 죽던데... 이렇게 저렇게 해봐도 안되는 군요...
아 제가 만든 프로젝트가 언급한 바와 같이 문제가 있어서 가장 간단한 hello world 만들고 실행해도 libstlport_gcc만 링크하면 그렇게 되는군요... STLPORT 에 관해 경험있으신분 좋은 조언 부탁드립니다.