728x90
반응형
프로세스와 쓰레드에 대한 내용을 정리해보았다.
1.Process
-OS에서 리소스를 할당받는 작업의 단위
-OS에서 여러 개 프로세스 실행: 멀티태스킹

-하나의 작업을 여러 개의 프로세스로 병렬 처리: 멀티프로세싱

하나의 프로세스를 CPU에서 스케줄링을 통해 처리하는데, 다음 프로세스 실행시 상태(Context)를 저장하게 됨. 실행 프로세스 변경 과정에서 Context Switching 발생함->오버헤드 발생
2.Thread
-한 프로세스 내에서 여러 실행되는 흐름을 의미함

-Thread끼리는 Stack을 제외한 나머지 메모리를 공유함
->프로세스와 달리 자원 공유가 간단해져 자원 소모가 적음(멀티프로세싱에 비해)
-Thread간 공유하는 데이터에 대한 관리가 어려움(충돌 가능성, 디버깅 어려움)
내용 및 사진 출처:https://magi82.github.io/process-thread/
728x90
반응형
'IT기초' 카테고리의 다른 글
| 쿠키(cookie) vs 세션(session) (0) | 2018.11.22 |
|---|---|
| 복잡도, OOP, 빅오분석법에 대해 (1) | 2018.11.22 |
| Database 종류와 예 (0) | 2018.11.22 |
| git Pull Request(풀 리퀘스트) 방법 정리 (0) | 2018.11.22 |
| 동기화,뮤텍스,세마포어 (0) | 2018.11.22 |