[운영체제] Parallelism & Concurrency

cosmos-JJ·2023년 10월 6일
0

Computer Science

목록 보기
15/15
post-thumbnail

Parallelism & Concurrency


<이미지 출처> https://seamless.tistory.com/42


<이미지 출처>https://www.codeproject.com/Articles/1267757/Concurrency-vs-Parallelism

Parallelism (병렬성)

  • 실제로 동시에 작업이 처리되는 것
  • 멀티 코어에서 멀티 쓰레드를 동작시키는 방식
  • 한번에 많은 일을 처리
  • 물리적인 개념

Concurrency (병행성)

  • 동시에 작업이 실행되는 것 처럼 느끼게 해주는 것
  • 싱글 코어에서 멀티 쓰레드를 동작시키는 방식
  • 한번에 많은 것을 처리할 수 있음
  • 논리적인 개념
  • 한 개의 CPU가 다수의 프로세스들을 서로 번갈아 가며 수행 ➡ 인터리빙(interleaving)
  • 빠른 CPU의 처리 속도로 인해 인터리빙이 빠르게 이루어지며 사용자가 여러 프로그램이 동시작동하는 것 처럼 느끼게 해줌

병행성의 문제점

  • 컴퓨터에서 자주 쓰이는 변수 또는 함수는 모든 프로세스들이 접근 가능한 전역 메모리에 적재하여 공유
  • 하지만 병행성으로 인하여 프로세스간 메모리 공유는 문제를 야기할 수 있음

참고

profile
🤍도전하는 건 즐거워요🤍

0개의 댓글