병렬성
-
동시성(concurrentcy) vs 병렬성(parallelism)컴퓨터 과학/운영체제 2021. 8. 11. 15:41
동시성 동시성은 동시에 작동하는 것처럼 보이는 것에 가깝습니다. 하나의 코어에서 멀티스레드로 여러 프로그램이 돌아갈 때 CPU는 인간이 인지할 때 동시에 작동하는 것처럼 느껴질 만큼 빠르게 여러 프로그램들을 다녀가면서 태스크를 수행합니다. 가벼운 프로그램이라면 크게 상관 없을지도 모르지만 프로그램이 크고 무겁다면 이야기가 다릅니다. 메모리가 무한대가 아니며 메모리 하나당 하나의 프로그램만 돌릴 수 있다고 했을 때 CPU가 할당된 프로그램(혹은 프로세스)이 바뀔 때마다 메모리와 레지스터에 올라와 있는 데이터를 지금 실행 중인 프로그램의 것으로 변경해야 하고 그 전에 있던 내용은 보조 메모리 등으로 옮겨야 하기 때문입니다. 이를 컨텍스트 스위칭이라고 합니다. 멀티프로세서의 컨텍스트 스위칭보다는 멀티스레드의 ..