본문 바로가기

Study

윈도우 기반의 소켓관련 함수 안녕하세요 꼬로미입니다~ 오늘은 화요일! 오늘도 알차게 한번 달려봅니다~~~ 오늘 포스팅은 윈도우 기반의 소켓관련 함수에 대해서 포스팅 합니다> 소켓핸들 반환, 실패 시 INVALID_SOCKET 반환 IP주소와 포트번호 할당 #include int bind(SOCKET s, const struct sockaddr * name, int namelen);-> O 반환, 실패 시 SOCKET_ERROR 반환 연결요청 상태로 변경 #include int listen(SOCKET s, int backlog);-> O 반환, 실패 시 SOCKET_ERROR 반환 연결요청의 수락 #include SOCKET accept(SOCKET s, struct sockaddr * addr, int * addrlen);-> 소.. 더보기
윈도우기반으로 구현하기(헤더, 라이브러리 설정, 초기화) 안녕하심까 꼬로미임당 윈도우 기반으로 소켓 프로그래밍을 구현하기에 앞서 설정해야하는 것이 있답니다 헤더와 라이브러리 설정, 소켓의 초기화 함수에 대해 포스팅합니다 클라이언트는 윈도우 기반의 개발이 다수이기에 책에서는 윈도우와 리눅스 운영체제를 동시에 설명하고 있어요 그러니 당연히 윈도우에서도 할 줄 알아야겠죠!ㅎㅎ 헤더와 라이브러리 설정 저는 visual studio 2008 버전을 사용합니다 제 버전에 맞추어 말씀드리겠습니다ㅎㅎ(버전에 따라 조금 다를 수가 있습니다) 윈도우 소켓 프로그램 개발을 위해 설정하는 두가지 1. winsock2.h 헤더파일 포함 2. ws2_32.lib 라이브러리 링크 프로젝트에서 오른쪽 마우스를 클릭해 속성 페이지를 엽니다 열린 프로젝트 속성 페이지에서구성속성 - 링커 - .. 더보기
리눅스 기반의 파일조작함수! 안녕하세요 꼬로미입니다 이번 포스팅에서는 리눅스를 기반 파일을 조작에 사용되는 파일열기, 파일 닫기, 파일에 저장된 데이터 쓰기와 읽기 4가지의 함수를 알아볼게요 리눅스에서는 소켓을 파일의 일종으로 구분합니다 * 파일 디스크립터 : 시스템으로부터 할당받은 파일 또는 소켓에 부여된 정수 파일열기(open)데이터를 읽거나 쓰기위해 파일을 여는 함수입니다두개의 인자 값의 첫번째 인자 값은 파일의 이름 및 경로 정보를 뜻하고두번째 인자 값은 파일의 오픈 모드 정보를 전달해요#include #include #include int open(const char *path, int flag); 디스크립터를 반환하며 실패하면 -1을 반환합니다 두번째 인자 값인 파일의 오픈 모드 정보 오픈 모드 의미 O_CREAT 필요하.. 더보기
네트워크 프로그래밍 그리고 소켓생성과정, 함수! 안녕하세요 꼬로미입니다! 이번 포스팅에선 네트워크 프로그래밍과 소켓에 대한 기본 개념과 함수를 살짝 살펴보겠습니다 네트워크 프로그래밍이란?소켓을 기반으로 프로그래밍하기에 소켓 프로그래밍이라고도 해요네트워크로 연결된 둘 이상의 컴퓨터 사이에서의 데이터 송수신 프로그램의 작성을 의미하죠 소켓이란?네트워크(인터넷)으로의 연결 도구예요운영체제에 의해 제공이 되는 소프트웨어적인 장치이며프로그래머에게 데이터 송수신에 대해 물리적, 소프트웨어적으로 작업소요를 신경쓰지 않게 해줍니다 소켓의 생성과정소켓은 크게 두 종류가 있으며 그 중 하나인 TCP 소켓은 전화기와 비유할 수 있으며전화를 받는 쪽과 거는 쪽의 차이도 있습니다 전화를 받는 쪽의 TCP 소켓의 생성과정 - 1단계 소켓 생성 - 2단계 IP주소와 포트번호를 .. 더보기
TCP/IP 소켓 프로그래밍! 안녕하세요 저는 컴퓨터공학계열의 학생이랍니다~ 저자 윤성우의 TCP/IP 소켓 프로그래밍 서적을 참고하며 C언어를 기반으로 한 리눅스와 윈도우 운영체제 위에 네트워크 프로그래밍(TCP/IP 소켓 프로그래밍)을 이해하며 제가 습득한 지식을 공유하는 목적에서 TCP/IP 카테고리를 만들고 포스팅해요 똬~~~~ 사실 컴퓨터전공에서는 감히 필수적인 프로그래밍 영역이지만 사실 제 미래에 무엇을 하고싶은지, 무엇을 할지 잘 몰르겠어요 디자인도 다루며 컨설턴트 경영 웹마스터 이 쪽이 조금더 흥미가 있었기에 추가적으로 알아두면 좋은 프로그래밍에 열정이 없었던 것 같아요ㅜㅜ 배우긴 했지만..... 그냥 듣는대로 흘러버려 지식과 실력이 없어요 고로치만! 이번년 3월을 계기로 한번 프로그래밍과 친해져보려 합니다 C언어와 J.. 더보기