실행중
개요
컴퓨팅에서 '실행중'(Running)은 프로그램이나 프로세스가 CPU 자원을 할당받아 명령어를 순차적으로 처리하며 활발히 작업을 수행하고 있는 상태를 의미합니다. 이는 프로그램의 생명주기에서 가장 핵심적인 단계로, 사용자와의 상호작용이나 데이터 처리가 실제로 이루어지는 시점입니다.
주요 내용
실행중 상태의 정의
실행중 상태는 운영체제의 프로세스 스케줄러에 의해 CPU 시간이 할당된 프로세스가 명령어를 실행하는 활성 상태입니다. 이 상태에서는 프로세스가 필요한 시스템 자원(메모리, 입출력 장치 등)을 사용하며, 작업이 완료되거나 인터럽트(입출력 요청, 시간 초과, 더 높은 우선순위 프로세스 등)가 발생할 때까지 계속됩니다.
프로세스 상태 전이에서의 위치
일반적인 프로세스 상태 모델(예: 준비, 실행, 대기)에서 '실행중'은 준비(Ready) 상태에 있던 프로세스가 스케줄러에 의해 선택되어 CPU를 점유한 후의 상태입니다. 실행중인 프로세스는 입출력 작업을 시작하면 대기(Waiting/Blocked) 상태로 전이되거나, 할당된 시간량(Time Quantum)을 모두 사용하면 다시 준비 상태로 돌아갈 수 있습니다.
시스템 관점에서의 의미
멀티태스킹 운영체제에서는 여러 프로세스가 매우 짧은 시간 간격으로 교체되며 실행되므로, 매 순간 실제 CPU 코어에서 실행중인 프로세스는 코어 수만큼으로 제한됩니다. 시스템 모니터링 도구(예: Windows 작업 관리자, macOS 활동 모니터, Linux의 top 명령어)는 현재 실행중인 프로세스와 그들이 소비하는 자원(CPU 사용률, 메모리 사용량)을 실시간으로 보여줍니다.
최신 동향
컨테이너와 오케스트레이션 환경에서의 실행중
2024-2025년 기준, 클라우드 네이티브 환경에서는 Docker 컨테이너나 Kubernetes 파드(Pod) 단위로 애플리케이션이 '실행중' 상태를 관리합니다. Kubernetes에서는 파드의 상태를 Running으로 명시적으로 표시하며, 이는 컨테이너가 성공적으로 생성되어 주요 프로세스가 종료되지 않고 실행 중임을 의미합니다. 헬스 체크(Health Check) 메커니즘을 통해 실행중인 서비스의 실제 정상 동작 여부를 추가로 판단하는 것이 일반화되었습니다.
서버리스 컴퓨팅에서의 실행 모델
AWS Lambda, Azure Functions와 같은 서버리스(FaaS) 환경에서는 '실행중' 상태가 매우 일시적이고 에피소드적입니다. 함수는 요청이 들어올 때만 실행(실행중) 인스턴스가 생성되고, 작업 완료 후 일정 시간이 지나면 자동으로 종료됩니다. 이 모델에서는 '콜드 스타트'(최초 실행 시 지연)와 '워트 스타트'(이미 실행중인 인스턴스 재사용) 개념이 성능에 중요한 영향을 미칩니다.
AI/ML 워크로드 실행
대규모 AI 모델 학습이나 추론 작업은 GPU와 같은 가속기를 집중적으로 사용하는 장시간 실행중 상태를 유지합니다. 이러한 워크로드를 효율적으로 관리하기 위해 Kubernetes의 GPU 스케줄링 확장 기능이나 전용 AI 플랫폼(예: Kubeflow)을 통해 실행중인 작업을 모니터링하고 자원을 최적화하는 트렌드가 두드러집니다.
관련 주제
- [[프로세스 상태]]
- [[CPU 스케줄링]]
- [[컨테이너 오케스트레이션]]
---
AI 자동 생성 문서 · 커뮤니티가 함께 개선합니다