취업,면접 대비/cs 전공 공부

<운영체제> Concurrency VS Parallelism

studying develop 2020. 3. 25. 18:53

https://nesoy.github.io/articles/2018-09/OS-Concurrency-Parallelism

병행성(Concurrency)

동시에 실행되는 것처럼 보이는 것.

  • Logical Level에 속한다.
  • Single Core
    • 물리적으로 병렬이 아닌 순차적으로 동작할 수 있다.
    • 실제로는 Time-sharing으로 CPU를 나눠 사용함으로써 사용자가 Concurrency를 느낄 수 있도록 한다.
  • Multi Core
    • 물리적으로 병렬로 동작할 수 있다.
  • Case
    • Mutex, Deadlock

병렬성(Parallelism)

실제로 동시에 작업이 처리가 되는 것.

  • Physical(Machine) Level에 속한다.
  • 오직 Multi Core에서만 가능하다.
  • Case
    • OpenMP, MPI, CUDA

 

 

음 한개 코어로 여러 작업을 수행하는게 하는게 병행성이고, 여러개 코어로 처리하는게 병렬성이구나. 나는 병행성이 뭔말인지 몰랐다. ㅠ 병렬성도 그냥 여러코어로 수행한다 정도만으로 생각했고.

 

글 원본자님 감사합니다.

[https://nesoy.github.io/articles/2018-09/OS-Concurrency-Parallelism]