멀티프로세스2 멀티프로세싱, 멀티스레딩 멀티프로세싱, 멀티스레딩 이번 포스팅에선 멀티프로세싱, 멀티스레딩을 설명해 보겠습니다. 멀티프로세싱 우리가 알고 있는 일반적인 개념은 하나의 프로그램이 실행되면 하나의 프로세스가 된다는 것입니다. 멀티프로세싱이란 하나의 응용프로그램을 여러 개의 프로세스로 구성하여 마찬가지로 여러 개의 프로세서가 하나의 작업을 처리하는 것입니다. 프로세서란 CPU를 의미하며 현재 우리가 사용하는 PC는 대부분 멀티코어로 여러 개의 프로세스를 가지고 있습니다. 멀티프로세싱에서 중요한 점은 하나의 프로그램이 여러개의 프로세스로 나누어진다는 것입니다. 나누어졌기 때문에 하나 이상의 일을 병렬로 처리할 수 있으며 프로세스 중 일부에 문제가 발생해도 다른 프로세스에 영향이 없어 신뢰성이 높은 강점이 있습니다. 하지만 각 프로세스들.. 2023. 3. 7. 컨텍스트 스위칭 컨텍스트 스위칭 우리가 컴퓨터를 쓸 때 하나의 프로그램만 실행하지 않습니다. 인터넷, 게임 등 여러개를 실행시킬 수 있죠? 프로그램들은 동시에 실행되는 것이 아니라 엄청나게 빠른 속도로 프로그램을 교체하며 실행시키는 것인데요. 예를 들어 A, B, C란 프로그램들을 실행시키자고 할 때 CPU는 하나의 코어를 기준으로 A -> B -> C -> A -> B -> A -> C 처럼 매우 빠르게 프로그램을 교체하는 것입니다. 이러한 방법을 '컨텍스트 스위칭'이라고합니다. PCB 컨텍스트 스위칭은 PCB를 통해 이루어 집니다. PCB란 운영체제에서 프로세스에 대한 메타데이터를 저장한 데이터인데요 메타데이터란 데이터를 설명하는 작은 데이터 입니다. 컨텍스트 스위칭은 프로그램들, 즉 프로세스들을 계속해서 교체하는 .. 2023. 3. 3. 이전 1 다음