반응형
운영체제를 이해하는 데 있어 가장 기본이 되는 개념 중 하나가 바로 **프로세스 상태(Process States)**이다.
프로세스는 단순히 프로그램을 실행하는 것을 넘어서, 운영체제에 의해 다양한 상태로 관리된다.
✅ 프로세스란 무엇인가?
프로세스(Process)란, 실행 중인 프로그램을 의미한다.
운영체제는 수많은 프로세스를 동시에 관리하기 위해 각각의 프로세스 상태를 구분하고, 필요에 따라 전환시킨다.
✅ 프로세스 상태(State) 종류
- New (생성 중)
- 프로세스가 생성되고 있는 초기 상태이다.
- Ready (준비 상태)
- 실행할 준비가 완료되었지만, CPU 할당을 기다리는 상태이다.
- Running (실행 상태)
- CPU를 할당받아 실제로 명령어를 실행하고 있는 상태이다.
- Blocked (대기 상태)
- 입출력 작업이나 다른 이벤트를 기다리며 대기하는 상태이다.
- Terminated (종료 상태)
- 프로세스의 작업이 모두 완료되어 시스템에서 제거되는 상태이다.
✅ 프로세스 상태 전이(흐름)
New → Ready → Running → Blocked → Ready → Running → Terminated
✅ 프로세스 상태 전이 플로우 차트 (텍스트 기반)
- New → Ready (프로세스 생성 완료)
- Ready → Running (CPU 스케줄러에 의해 선택)
- Running → Blocked (입출력 요청 발생 시)
- Blocked → Ready (입출력 완료 후)
- Running → Ready (타임 슬라이스 종료 등)
- Running → Terminated (프로세스 종료)
📚 예시로 쉽게 이해하기
"게임 프로그램을 켜는 상황"을 예로 들어보자.
- New: 게임 실행 파일을 더블 클릭해서 프로세스 생성 시작
- Ready: 게임이 메모리에 올라가고 CPU 할당을 기다리는 상태
- Running: 게임이 실행되면서 조작을 받을 수 있는 상태
- Blocked: 게임이 네트워크 서버 응답을 기다릴 때
- Ready: 서버 응답이 오고 다시 게임 진행 준비
- Running: 게임 계속 진행
- Terminated: 게임을 종료하고 프로그램이 완전히 꺼진 상태
✅ 프로세스 상태 요약 표
상태 | 설명 |
New | 프로세스가 생성되는 중 |
Ready | 실행 준비 완료, CPU 할당 대기 중 |
Running | 명령어 실행 중 |
Blocked | 입출력 완료 대기 등으로 멈춰있는 상태 |
Terminated | 실행 완료 후 시스템에서 제거된 상태 |
📌 결론
프로세스는 단순히 실행되기만 하는 것이 아니다.
Ready, Running, Blocked, Terminated 등 다양한 상태를 오가면서 운영체제에 의해 세밀하게 관리된다.
이 흐름을 이해하면 멀티태스킹, CPU 스케줄링, 프로세스 관리 같은 심화 주제도 쉽게 접근할 수 있다.
📌 매일 간단히 IT 관련 개념을 익히고 싶다면 구독하세요!👇👇👇
http://www.youtube.com/@itbite_daily
오늘의 IT한입
👋 하루 한 입, 쉽게 배우는 IT & 개발 개념! 프로그래밍, 데이터베이스, 운영체제, 네트워크, 보안, 코딩테스트까지! 취업 준비부터 실무 감각까지 매일 짧고 강력하게 정리해드립니다. 📍 매일
www.youtube.com
반응형
'IT개발 > Tech Notes' 카테고리의 다른 글
Paging vs Segmentation – 메모리 관리 기법 완전 비교 (0) | 2025.04.30 |
---|---|
Deadlock(교착 상태) 완전 정리 - 발생 조건과 해결 방법까지 (0) | 2025.04.29 |
RAM vs ROM 완전 정리 - 메모리 차이와 역할 쉽게 이해하기 (0) | 2025.04.27 |
접근 제어 방식 완벽 비교! MAC, DAC, RBAC 차이 정리 (0) | 2025.04.24 |
프로세스와 스레드의 차이, 개발자라면 꼭 알아야 할 CS 기초 개념 (0) | 2025.04.23 |
댓글