본문 바로가기
728x90

소켓2

12. I/O Multiplexing 멀티프로세스 서버는 프로세스마다 별도의 메모리 공간을 유지하기 때문에 상호간에 데이터 교환에 복잡한 방법을 택할 수 밖에 없습니다. 즉 IPC가 좀 복잡한 통신 방법인거죠. 이 대안 법이 'IO 멀티플렉싱' 입니다. IO 멀티플렉싱 서버는 프로세스의 생성을 동반하지 않으면서 다수의 클라이언트에게 서비스를 제공할 수 있습니다. 멀티플렉싱의 단어의 이해가 필요 합니다. '하나의 통신 채널을 통해 둘 이상의 데이터(시그널)를 전송하는데 사용되는 기술' 입니다. 시(time)분할 멀티플렉싱 기술 -> 여러명에서 대화를 오고가는 느낌 주파수(frequency) 분할 멀티플렉싱 기술 -> 여러명이 한번에 이야기 하는데 목소리로 구분 하는 느낌 -select 함수의 이해 Select 함수는 멀티플렉싱 서버 구현에 있.. 2020. 4. 28.
11.프로세스 간 통신 (Inter Process Communication) 이번 챕터에서는 두개의 프로세스 상호간에 데이터를 주고받는 방법에 대해 알아보겠다. 이는 서버의 구현에 직접적인 연관은 없지만 운영체제를 이해한다는 측면에서도 의미가 있다. 프로세스간 통신이 가능 -> 데이터 주고 받음 -> 동시에 접근 가능한 메모리 공간 존재해야함 하지만 프로세스는 서로 완전히 별개의 메모리 공간을 지닌다. 따라서 fork 함수 호출을 통해 생성된 자식 프로세스 조차 부모 프로세스와 메모리 공간을 조금도 공유하지 않는다. 그래서 다른 방법을 통해 이루어질 수 있다. 두 프로세스 간의 통신을 위해 파이프라는 것을 생성해야한다. 위 그림처럼 파이프는 프로세스에 속한 것이 아니다. 파이프는 소셋과 마찬가지로 운영체제에 속하는 자원이다->그러므로 fork함수의 복사 대상이 아니다. 이렇게 운.. 2020. 4. 25.
728x90