프로세스와 스레드/ 멀티프로세스와 멀티스레드

상현·2023년 1월 29일
0

cs스터디

목록 보기
12/28

프로세스

  • 메모리 상에서 실행중인 프로그램으로 별도의 공간을 독립적으로 할당받음
  • stack, heap, data, code로 이루어져 있음
  • 운영체제에서의 최소 작업 단위

멀티프로세스

  • 멀티 스레드보다 많은 메모리공간과 CPU 시간을 필요로 함
  • 안정성이 높음
  • 작업량이 많아지면 성능저하가 발생할 수 있음


스레드

  • 프로세스 내에서 실행되는 흐름의 단위
  • stack만 따로 할당되고 heap, data, code는 서로 공유됨
  • CPU에서의 최소 작업 단위

멀티스레드

  • 멀티프로세스보다 적은 메모리를 차지함
  • 스레드는 heap, data, code를 공유해서 통신이 쉬움
  • 하나의 스레드 장애로 같은 프로세스 내 스레드가 모두 종료될 수 있음
  • 병목현상과 같은 동기화 문제가 발생할 수 있음
  • 설계에 주의가 필요함

0개의 댓글