프로그래밍 QnA

zini08의 이미지

void 와 void * 의 차이는?

함수 리턴형중에 void*라는것을 보고 의문이 생깁니다
void는 자주 보는것중에 하나인데 void*는 뭘까요?

stypr의 이미지

개인용 컴에서 특정 사이트URL을 치면 접근을 다른 사이트로 돌

이런 구현은 무엇을 이용하나요.
리눅스,유닉스 같으면 pcap을 이용하는데, 윈도우는어떤 방식으로 이용을하는지 뭘 사용하는지 모르겠군요.
알려주세요????????????????????

voider의 이미지

c++ Default template argument

template < typename T, typename T_INT = T::INT >
class T_int{
    T_INT a;
};

이코드는 VC 7.1 에서 잘 돌아가거든요...
근데 g++에선 되질 않네요
클라이언트 코드가
T_int<have_Int_type> t; // have_int_type 에는 INT라는 타입이 정의되어있다

이와 같다면 이것은 컴파일 되는게 합당하지 않을까요????
제가 잘못한것인지 다른 사용법이 있는건지
g++은 지원하지 않는건지 도 모르겠네요!![/code]
indizarm의 이미지

질문2개: '파이프가 깨짐' + 'Timer (in Single process program

상황 1. 서버 프로세스 1개가 떠 있고, 똑같은 클라이언트가 n개 서버에
_____접속해 있습니다. (blocking socket, TCP, select() 형태의 서버)
_____이중에 클라이언트 i (i <=n) 에서 'Ctrl + c/ z'등으로 '비정상적'인
_____종료를 하면 서버와 나머지 클라이언트들이 모두 '파이프가 깨짐'
_____이렇게 종료되는군요.

물음 1. 왜 이럴까요? (-_-;; 소켓때문에 문제가 발생하는 것 같기는 한데...)
물음 1.1 어떻게 해야 처치할 수 있을까요?

상황 2. Single process 만으로 온갖 삽질을 하는 프로그램이 있습니다.

linuxs의 이미지

네트워크 프로그래밍 브로드캐스팅하는 법

안녕하세요.. 소켓프로그램을 이용해서 로컬 호스트들에게(192.168.0.2 ~ 192.168.0.254) 특정 데이타를 보내려고 합니다. 각각의 호스트들은 이를 수신할 수 있도록 데몬을 만들려고 또한 데이타를 보낼수 있도록 하는 간단한 테스트 프로그램을 만들려고 합니다. 그냥 하나의 호스트에게 보내는건 돼는데 브로드캐스트 주소로 했더니 unreachable로 나오네요.

sockaddr_in 구조체 멤버인 sin_addr.s_addr에 192.168.0.255를 입력하였는데 브로드 캐스팅이 될 질 않내요..
제가 아주 원초적인 실수를 하는건가요?

운형의 이미지

html문서 덤프 받기 .. -_- 생각보다 힘들군요.

3일전에 글올려서 대강 프로그램을 작성했는데.. 그림 파일이 저장되지 않는 군요...

send(fd, "GET /index.html", strlen("GET /index.html"));
보내서 텍스트는 받았습니다.

그림파일(주로 png)을 저장할 방법은 없을 까요... ???

조언좀 부탁드립니다.. (__)

erenes의 이미지

[Q] 블록킹 상태에서 시그널에 의해 깨어나지 않도록

안녕하세요.

지금 생긴 문제는...

프로그램에서 타이머(주기적)를 하나 만들고 소켓서버를 하나 만들었습니다.
타이머는 SIGALRM 시그널이 100ms 마다 뜨고 그 때마다 등록한 시그널핸들러가 실행됩니다.
그리고 소켓 서버는 클라이언트 접속을 기다리는 accept상태에서 블록중입니다.

그런데 문제는 accept가 블록중에 SIGALRM 시그널에 의해 깨어나는 것입니다.
클라이언트의 접속이 없는데도 말이죠. accept가 시그널에 의해 깨어나지 않고
클라이언트의 요구에 의해서만 깨어게 할 수 없습니까?

mach337의 이미지

[질문] USB Mass storage 관련

USB Mass Storage 기기를 자동으로 마운트하는 프로그램을 작성중 입니다.
USB 2.0 의 외장형 HDD 나 1.1 의 플래시드라이브를
Linux (RedHat 8.0 , 2.4.18-14 #1) 에 연결하면
SCSI 로 Emulation 해서 사용하게 됩니다. 그 정보는
/proc/scsi/usb-storage-0/0 에 나오고 이것을
/dev/sda1 을 이용해 마운트 합니다.
궁금한 것은
/proc/scsi/usb-storage-0/0 가 연결되었다가
끊어도 기억하더군요. 물론
Attached: No 상태로 말이죠.
그런데 이상태에서 다른 USB Mass storage 기기를 연결하면
/proc/scsi/usb-storage-1/1 와 같이

maia0430의 이미지

커널에서 TCP/IP 프로토콜을 변경하려고 합니다.

안녕하세요.
대학원에서 리눅스 클러스터링을 공부하고 있는 학생입니다.

리눅스에서 TCP/IP 프로토콜을 수정해서 Connection Handoff 프로토콜을 구현 하려고 하는데여.. (제가 구할 수 있었던 것은 FreeBSD2.6버전에서만 쓸수 있는 것 밖에 없어서...ㅠ.ㅠ 저희 연구실에 설치가 안되더군여..하드를 못잡는다는...)

리눅스 커널에 대해서 공부해 본적이 없는 초짜입니다.
이제부터 공부 하려고 하는데여, 어떤 부분부터 시작을 해야 할지 막막합니다.
TCP/IP 프로토콜을 수정하여 모듈로 올려서 이 프로토콜을 이용해서 통신을 하려고 하는데여, 네트워크 외의 다른 모든 커널 부분에 대한 이해가 필요할까여?

down7town의 이미지

gcc 3.2.2 warning: dereferencing `void *' pointer

gcc 3.2.2를 사용하는데, C에서

now_element->data->time

이런형태로 포인터를 넘겨주니 계속해서 저런 워닝을 띄우내요..
중간에 형으로 받아서 넘겨주면 워닝은 없어지는것 같은데, 무시해도 되는건지
궁금합니다.

Elmtdata *elementdata;
St_time *sttime;

elementdata=now_element->data;
sttime=elementdata->time;

꼭 이렇게 중간 과정이 필요한지...?

페이지

프로그래밍 QnA 구독하기