본문 바로가기

C&C++/C

(2)
[C/C++] 헤더 파일은 어디서 소스를 가져올까? 0. 개요 Linux 환경에서 커널을 살펴보거나 C 프로그래밍을 하다 보면 의문점이 생긴다. #include #include "myheader.h" 위와 같이 소스코드 맨 위에서 #include를 통한 헤더파일 삽입 전처리기를 사용하는데, 는 컴파일러가 정해놓은 루트(리눅스에선 일반적으로 /usr/include/)에서 찾고, ""는 현재 폴더에서 찾는다는 사실! ...까지는 많은 사람이 알고있다. 그런데 막상 그 헤더파일을 까보면 1) 각종 매크로 2) 구조체 3) 함수 선언부 4) 인라인 함수 5) 주석만 잔뜩 존재하고 3) 에서 선언된 함수의 소스는 찾을 수가 없다. 컴파일 구조를 생각했을 때, 우리가 작성한 main.c 파일 등에서 include한 것은 .o(오브젝트) 파일일 때에는 링크할 공간만 ..
[C/Socket] Network Programming - 패킷, 네트워크, OSI 7계층, 소켓 ##### 목차 ##### 1. 패킷 2. 네트워크 (1) 호스트 (2) 네트워크 구조 (3) 노드 1) 허브 2) 스위치 3) 브릿지 4) 라우터 5) 게이트웨이 3. OSI 7계층 (1) 개요 (2) 계층별 설명 (3) TCP/IP 4. 소켓 프로그래밍 (1) 개요 (2) IP 1) 개념 2) 분류 3) 확인법 4) ARP (3) 프로토콜 1) TCP 2) UDP 3) 포트 5. 코드 구현 (1) C (2) Python 1. 패킷 Packet 인터넷으로 하고자 하는 것은 결국 정보의 전달이다. 단방향이든 양방향이든 정보를 전달해야 하는데, 실제 정보->이진화->전자 신호(Signal)->유,무선 매체 를 거치는 큰 과정에서 규격화, 양산화라는 수요가 있었고 많은 사람들이 정보의 형식을 일정한 방식으로..