-
728x90
프로그램이란?
- 어떤 작업을 위해 실행할 수 있는 파일
- 윈도우에서 .exe 로 끝나는 파일
- Mac에서 .dmg 로 끝나는 파일
프로세스란?
- 프로세스는 메인 메모리에 올라와 실행 중인 프로그램
- 시스템 콜을 통해 자원을 요구하는 주체
출처:https://gmlwjd9405.github.io/2018/09/14/process-vs-thread.html 프로세스의 문맥(context)
- 프로세스는 상태 변화가 있는 동적인 개체
- 시분할에 따른 멀티태스킹 환경에서 프로세스는 항시 적어도 실행중단 및 속개 상태가 반복됨
문맥
프로세스의 실행 중단 시 보존되고, 속개 시 다시 원상 복구되어야 하는 프로세스의 모든 실행 정보 프로세스의 상태
- 생성(new) : 프로세스가 생성된 상태
- 준비(ready) : CPU의 배정을 기다리는 상태
- 실행(running) : 프로세스가 CPU에 의해 실행되고 있는 상태
- 대기(blocked) : 프로세스가 어떤 사건(event)이 발생하기를 기다리고 있는 상태 (사건의 예 : 입출력의 완료 또는 시그널의 접수)
- 종료(terminated) : 프로세스가 종료된 상태
쓰레드란?
- 프로세스 내에서 실행되는 여러 흐름의 단위
- 프로세스의 특정한 수행 경로
프로세스와 스레드의 차이
메모리를 공유 여부의 차이
스레드는 독립적으로 동작하는데 메모리 공간을 공유합니다. 데이터, 힙등을 공유
프로세스에서 독립적일 수 있는 최소한의 자원만으로 스레드가 생성됨
'운영체제' 카테고리의 다른 글
데드락(DeadLock) (1) 2023.08.15 모니터와 세마포어 (17) 2023.08.15