오늘날 H/W의 급속한 발전으로 기본적으로 multi-core 환경에서 대부분의 server side 개발자가 개발을 하고 있습니다. 하지만 일반적으로 이러한 멀티코어 환경을 잘 이해하지 못한 상태에서 일반적인 코딩을 하여 성능이점을 누리지 못하거나, 생각하지 못한 결과 값을 얻는 경우도 있습니다. 오늘은 Java 의 Multi process programming에 대해서 설명을 하려고 합니다. 사실 multi process programming을 완전히 이해하기 위해서는 Hardware상의 CPU와 Memory 간의 아키텍처에 대한 이해가 필요합니다. 다양한 CPU 아키텍처가 있겠지만 일반적인 Multi-core CPU는 다음과 같은 Hardware Architecture를 가지고 있습니다. Multi..