inflearn logo
강의

講義

知識共有

図で簡単に学ぶオペレーティングシステム

プロセス間通信

rpc와 소켓(tcp)차이

解決済みの質問

1550

wishks146178

投稿した質問数 102

1

컴퓨터간 통신에 있어서 소켓을 사용한다고 했는데

이게 rpc 방식하고는 다른건지 

헷갈리는데 정리좀 부탁드립니다. 감사합니다.

운영체제

回答 2

1

wishks146178

우와 감자 정말 최고에요 감사합니다

1

gamja5

소켓통신은 두 컴퓨터를 파이프로 연결해서 데이터를 주고 받는 통신입니다.
이 말은 결국 RPC도 소켓통신을 통해 이루어진다는 말입니다!

RPC도 결국 소켓을 사용합니다.
RPC는 프로토콜(약속)입니다.
RPC를 사용하는 이유는 소켓통신으로 구현하기 힘든 기능을 수월하게 구현할 수 있도록 해줍니다.

    [ClientRpc]
    private void RpcChangeColor(int number, Color color)
    {
        floors[number - 1].SpriteRenderer.color = color;
    }

이건 제가 만들었던 게임에서 RPC를 사용한 예시인데요.
한 유저가 바닥의 색을 변경하면 다른 모든 유저의 바닥의 색이 바뀌는 함수입니다.
클라이언트에서는 단지 RpcChangeColor(바닥의 id, 바꿀 색) 을 호출해주기만 하면 됩니다.
하지만 이걸 소켓통신으로 구현하려면 직관적이지 않은 방법으로 구현하게 될겁니다.


이 사진의 TCP/IP모델로 말씀 드리면 소켓통신은 전송계층(TRANSFORM)에, RPC는 어플리케이션계층에 있습니다.
RPC는 전송계층위에 있는 상위 계층입니다.

프로그램과 프로세스 강의 3분47초

1

637

1

컴파일 과정

1

547

1

페이징&가상메모리 관련 질문 드립니다.

1

395

1

페이징(배치정책) CPU에 논리주소를 물리주소로 전달해 줄때 계산 단위

1

471

1

운영체제의 역사 영상에서

1

471

2

프로세스 동작 및 스케줄링 알고리즘 관련 질문 드립니다.

1

488

1

인터럽트 발생 시점과 비동기 방식

1

583

2

PCB 상태 실행에서 대기 상태에서 준비 상태로 변경시

1

462

2

프로세스 동기화 질문 드립니다.

1

341

1

부모 프로세스는 프로그램을 실행하지 않아도 생기는 건가요?

1

410

1

페이지드 세그멘테이션 기법에서 메모리 주소 변환 할때요

4

397

1

오버헤드란?

1

4036

1

논리주소와 BoundAddress의 비교에 대한 질문

1

306

1

MLFQ 알고리즘

2

402

1

FIFO 알고리즘 / RR 알고리즘

1

442

1

블로그 업로드 질문

1

377

1

다중큐 강의에서 I/O 작업시 질문

2

245

1

예제코드 질문

1

297

1

하드디스크와 메모리 질문 있습니다!

0

216

1

컴파일 과정 예시와 관련해서 질문드립니다!!

1

272

1

예제 코드 관련 질문입니다!

1

254

1

공유 메모리 및 프로세스 생성 관련

3

492

1

레지스터 관련

2

387

1

"컴파일과 프로세스" 강의 1분 37초

1

238

1