반응형
프로세스란? 프로그램과 차이점
프로그램은 명령어 리스트를 내용으로 가진 디스크에 저장된 실행파일이다.
따라서 프로그램은 수동적인 개체라고 말할 수 있다.
프로세스는 실행 중인 프로그램을 말한다. 쉽게 말하면 우리가 프로그램을 실행시키기 위해 더블클릭을 하는 순간 그 프로그램은 프로세스가 되는 것이다.
프로세스는 프로그램과 달리 다음에 실행할 명령어를 지정하는 프로그램 카운터(PC)와 관련 자원의 집합을 가진 능동적인 개체라고 말할 수 있다.
프로그램이 실행되기 위해서는 메모리에 적재되어야 한다.
프로그램을 메모리에 적재시키는 방법에는 두 가지 방법이 있다.
우리가 흔히 사용하는 프로그램 더블클릭하기 다른 방법으로는 명령어 라인 상에서 실행시키는 것이다.
이번에는 메모리에서의 프로세스는 어떤 형태로 존재하는지 알아보자.
스택 : 함수의 매개변수, 복귀주소, 로컬 변수와 같은 임시적인 자료들이 포함된다
힙 : 프로세스 실행 중에 동적으로 할당되는 메모리
데이터 : 전역 변수들 저장공간
코드들(텍스트) : 실행이 가능한 코드들이 있음
프로세스 상태
new(새로운) : 프로세스가 생성 중이다
running(실행) : 명령어들이 실행 중
wating(대기) : 프로세스가 어떤 사건이 일어나기를 기다림
ready(준비완료) : 프로세스가 처리기(CPU)에 할당되기를 기다린다
terminated(종료) : 프로세스 실행 종료
반응형
'운영체제' 카테고리의 다른 글
OPERATING SYSTEM CONCEPTS 에센셜 연습문제 3장 #1 (0) | 2022.04.09 |
---|---|
프로세스 제어 블록(PCB) (0) | 2022.04.08 |
vi 명령어(자주 사용하는) (0) | 2022.04.03 |
OPERATING SYSTEM CONCEPTS 에센셜 연습문제 2장 #2 (0) | 2022.04.01 |
OPERATING SYSTEM CONCEPTS 에센셜 연습문제 2장 #1 (0) | 2022.04.01 |
댓글