Multi-Process

Seokchan Yun·2022년 6월 28일
0

Multi-process ?

  • 두개 이상 다수의 프로세서(CPU)가 협력적으로 하나 이상의 작업(Task)을 동시에 처리하는 것이다.

  • 각 프로세스 간 메모리 구분이 필요하거나 독립된 주소 공간을 가져야 할 경우 사용한다.

Adventages of Multi-processing

  • 독립된 구조로 구성되어 있기 때문에 안전성이 높은 장점이 있다.

  • 즉, 프로세스 중 하나에 문제가 생겨도 다른 프로세스에 영향을 주지 않아 작업속도가 느려지는 문제는 생기지만 정지되거나 하는 문제는 생기지 않는다.

  • 여러개의 프로세스가 처리되어야 할 때 동일한 데이터를 사용하고, 이러한 데이터를 하나의 디스크에 두고 모든 프로세서(CPU)가 이를 공유하면 비용적으로 저렴하다.

Disadvantages of Multi-processing

  • CPU에서는 하나의 프로세스만 처리 할 수 있기 때문에 너무 잦은 context-switching 이 일어날 경우 캐시 메모리를 pcb에 저장해야하는 멀티프로세싱의 구조상 오버헤드가 발생하여 성능저하가 발생 할 수 있다.


overhead?

  • 오버헤드란 프로그램의 실행흐름에서 나타나는 현상중 하나로 예를 들어 , 프로그램의 실행흐름 도중에 동떨어진 위치의 코드를 실행시켜야 할 때 , 추가적으로 시간,메모리,자원이 사용되는 현상입니다.

한마디로 정의하자면, 오버 헤드는 특정 기능을 수행하는데 드는 간접적인 시간, 메모리 등 자원을 말한다.

profile
42 Paris developer

0개의 댓글