CS/운영체제 (3) 썸네일형 리스트형 동시성에 대해서(동기 vs 비동기) 개발을 하다보면 자주 마주치는 용어들 중 하나이다. 동기성이냐? 비동기성이냐? 나도 처음 개발을 할때 2개의 의미를 정확히 말로 설명할 수 없었다. (몸으로는 알고 있었지만) 지금도 정확히 이렇다라고 말하기가 어렵기에 정리를 해보자. 1. 동기성(synchronicity) 하계 올림픽을 보다보면 싱크로나이즈 라는 종목이 있다. 혹시 모르는 사람들을 위해 아래처럼 그림처럼 여러 사람이 물 속에서 합을 맞추는 종목이다. 이와 같이 동기성이라는 말 자체에는 2개 이사의 서로 다른 something 가 있다는 의미이기도 하다. 그럼 프로그래밍 세계로 다시 넘어온다면 A라는 작업의 흐름이 있고 B라는 작업의 흐름이 있다고 가정하자. 여기서 동기성이란 A가 B에게 요청을 하면 B는 요청에 대한 결과값을 줄 것이다... 프로세스의 메모리 구조 앞에서 포스팅한 프로세스는 컴퓨터로부터 메모리 공간을 할당을 받는다고 정리를 하였다. (자세한 내용은 아래 포스팅 참고) https://eeasyy.tistory.com/39 프로세스와 스레드의 차이 개발자 면접에서 단골 질문인 "프로세스와 스레드의 차이를 설명하시오" 에 대해 정리해보려고 한다. 우선 둘의 차이를 알려면 각각의 개념에 대해서 알아볼 필요가 있다. 1) 프로세스란 무엇인 eeasyy.tistory.com 할당받은 메모리 공간의 구조는 어떻게 생겼고 얼마나 받을 수 있는지 정리를 해보려고 한다. 1) 프로세스는 얼마나 자신의 독립적인 공간을 할당 받을까? 답부터 말하자면 4GB 이다. 할당받은 메모리 공간은 가상 메모리라는 것이며 말 그대로 실제로 존재하지 않은 공간이다. 운영체제내에서 구.. 프로세스와 스레드의 차이 개발자 면접에서 단골 질문인 "프로세스와 스레드의 차이를 설명하시오" 에 대해 정리해보려고 한다. 우선 둘의 차이를 알려면 각각의 개념에 대해서 알아볼 필요가 있다. 1) 프로세스란 무엇인가? 먼저, 프로세스에 대해 한번 알아보자. 대부분의 사람들이 무언가를 설명할때 힘들어하는 이유의 대부분의 단어의 정의를 제대로 알지못하기 때문이라고 생각한다. 그래서 프로세스의 정의를 위키백과를 통해 검색해보면 프로세스는 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램 이라고 칭하고있다. 위 정의에서 우리는 3가지로 다시 쪼개볼 수 있다. 1. 컴퓨터 2. 연속적으로 실행 3. 프로그램 쪼개진 3가지를 이해하고 풀어내면 프로세스가 어떤 놈인지 알 수 있을것같다. 먼저 컴퓨터. 사실 컴퓨터라는 말은 굉장히 방대하다... 이전 1 다음