소켓은 파일이라 하셨는데..
강사님 안녕하세요. 강사님 강의를 쭉 보다가 의문이 생겨 질문 드립니다.
네트워크 통신에서 소켓이 파일이라 하셨는데 이 부분이 이해가 가지 않습니다.
파일이라 함은 2차 메모리에 저장되는 포맷(파일이라는 형태로 저장된다고 말씀하셨습니다.) 아닌가요?
하지만 소켓 통신은 Ram 수준에서 버퍼를 통해 통신하지 않습니까?
'소켓의 본질은 파일이다.' 가 무슨 의미인지 이해가 가지 않습니다.
답변 1
5
OS 수준에서 파일은 크게 보면 두 종류입니다. 2차 메모리에 저장된 단위 데이터 덩어리를 의미하는 파일과 장치에 대한 추상화된 인터페이스를 제공하는 장치파일 입니다. 내부는 전혀 다른 이 두 파일은 어쨌든 파일 입니다. C언어에서 파일을 개방하는 함수로 fopen() 함수가 있습니다. 재밌는 것은 이 함수로 데이터 파일이든 장치파일이든 개방이 가능하다는 것입니다.
소켓은 TCP에 대한 추상화된 인터페이스이며 TCP는 결국 NIC을 이용합니다. 결과적으로 소켓은 네트워크 통신 체계 및 장치에 대한 추상화 된 인터페이스이며 파일형식을 갖고 있습니다. 이 파일에 쓰면 2차 메모리에 데이터를 저장하는 일이 일어나는 것이 아니라 NIC을 움직여 정보를 송신합니다. 두 경우 모두 '쓰기' 입니다. 다만 소켓에서는 쓰기 대신 '송신'이라는 표현으로 바꾼 것입니다.
참고하시기 바랍니다.
32bit app에서 vms 4gb 설명에 대한 질문입니다.
0
77
2
레이스 컨디션 문제
0
213
2
스레드 종료 순서
0
154
1
제가 이해한게 맞는지 궁금합니다. (비디오 카드에 output)
0
232
2
플랫폼 bit관련 질문입니다
0
154
3
백그라운드 스케쥴링관련 질문입니다.
0
167
2
ready queue에 있던 프로세스들이 sleep이나 suspend되는 게 가능한가요?
0
250
2
IPC는 곧..?
0
361
2
interrupt와 DirectX 질문
0
406
2
공유자원과 임계구역
0
318
2
DMA와 고성능 소켓관련 질문입니다.
0
294
3
2강 DMA와 고성능 소켓 질문
0
421
3
I/O 관리자, 메모리 매니저 사용 이유
0
293
2
*pszResult =A; 포인터 사용 부분에 대한 질문입니다.
0
201
1
교착상태와 게임이 튕기는 현상
0
219
1
멀티스레딩
0
410
2
자료구조 공부
0
420
2
윈도우 레지스트리 질문
0
263
1
파일시스템과 가상메모리
0
341
1
Page fault 메시지가 나오면 스왑 인, 스왑 아웃은 일어나지 않는 건가요?
0
257
1
가상 주소, 절대 주소 부분이 헷갈립니다.
0
344
2
운영체제 스레드 공부 중 궁금한 점 있습니다.
0
360
3
직업 관련 질문
0
329
1
페이징 기법의 주소 변환
0
303
2





