문제 설명 c언어 TCP 서버와 client 코드입니다. fork()를 이용해서 client는 1개의 부모와 5개의 자식으로 구성되며, 서버는 1개로 구성됩니다. Server로 fork()로 생성된 client 5개가 모두 서버로 접속하고, 접속 정보를 struct(구조체)에 저장하고, 구조체를 각 client로 전송 후 출력하는 코드입니다. server 결과 화면 및 코드 각 client 접속 로그를 보여주고 있습니다. Server 코드 /* client 접속 정보를 담기위해서 client_info 구조체 생성 Client 5개가 접속 될 때까지 대기 및 각 클라이언트간 메시지 전송 접속이 완료되면 client_info를 각 클라이언트로 모두 전송 받음 전송 받은 client 정보를 출력 */ #inc..
fork() 함수를 이해하는데 상당히 오랜시간이 걸렸습니다.위키피디아에 설명이 되어있고, 예제 코드도 존재합니다. http://en.wikipedia.org/wiki/Fork_(operating_system) 제가 만든 예제는 fork()를 이용하여 부모 프로스세 1개에 자식프로세스 5개를 생성하는 코드입니다. 간단한 fork예제 (wiki 참고) 그전에 fork의 기본 예제부터 살펴보겠습니다. wiki에 올라와 있고, 이미 많은 곧에서 배포되는 간단한 코드입니다. 아래와 같이 부모와 자식이 각각 구동되고 있습니다. 각각 0에서 9까지 출력하는 프로그램입니다. 실행중인 프로세스 확인 ps명령어로 실행되는 프로세스를 확인 할 수 있습니다. 예제 코드 #include #include #include #inc..