이전에 프로세스와 스레드의 차이를 정리하면서,프로세스는 서로 독립적인 메모리 공간을 가지고스레드는 같은 프로세스 안에서 메모리를 공유한다는 것을 알게 되었다.그렇다면 독립적인 메모리 공간을 가진 프로세스들은 서로 어떻게 데이터를 주고받을 수 있을까?또 여러 스레드나 프로세스가 같은 자원에 접근하면 어떤 문제가 생길 수 있을까?이번 글에서는 이러한 궁금증을 해결해보려고 한다.프로세스의 메모리 구조 간단 정리프로세스는 서로 독립된 가상 주소 공간을 가진다.예를 들어 A 프로세스와 B 프로세스가 있다고 했을 때,A 프로세스의 0x1000 주소와 B 프로세스의 0x1000 주소는같은 주소처럼 보여도 실제로는 서로 다른 물리 메모리를 가리킬 수 있다.프로세스가 사용하는 가상 주소는MMU(Memory Managem..