런타임(runtime)은 주로 컴퓨터 과학 및 소프트웨어 분야에서 사용되는 용어로, 프로그램이 실행되는 동안의 시간·상태·환경 등을 통칭한다. 용어는 영어 runtime에서 차용되었으며, run(실행)과 time(시간)의 결합으로 이루어진 합성어이다.
정의
- 실행 시간
프로그램이 시작되어 종료될 때까지 걸리는 실제 시간. 이와 대비되는 개념으로는 프로그램이 작성·컴파일되는 컴파일 타임(compile time)이 있다. - 런타임 환경(runtime environment)
프로그램이 실행되는 동안 필요한 라이브러리·시스템 자원·가상 머신·인터프리터 등 소프트웨어와 하드웨어의 조합을 의미한다. 예를 들어, 자바 프로그램은 자바 가상 머신(JVM)에서 실행되며, JVM 자체가 자바 런타임 환경에 해당한다. - 런타임 오류(runtime error)
프로그램이 실행 중에 발생하는 오류로, 구문 오류와 달리 컴파일 단계에서는 검출되지 않는다. 메모리 접근 위반, 나눗셈 0 오류 등이 대표적인 사례이다. - 런타임 라이브러리(runtime library)
프로그램 실행 시 동적으로 링크되거나 자동으로 호출되는 함수·코드 집합. C 표준 라이브러리의printf·malloc등이 이에 포함된다.
사용 분야
- 소프트웨어 개발: 개발자는 런타임 성능을 최적화하기 위해 알고리즘·데이터 구조·메모리 관리 등을 분석한다.
- 운영 체제: 운영 체제는 프로세스·스레드의 런타임 스케줄링, 메모리 할당 등을 담당한다.
- 멀티미디어: 영상·음악 파일의 재생 시간을 의미하기도 하며, 이 경우 “재생 시간” 혹은 “런타임”이라는 용어가 그대로 사용된다.
어원
runtime은 영어권에서 1960년대 컴퓨터 과학 초기 단계에 등장한 용어로, 프로그램이 “실행(run)”되는 “시간(time)”을 가리킨다. 한국어에서는 1990년대 이후 컴퓨터 관련 서적·문서에서 음차어인 “런타임”으로 정착되었다.
관련 용어
- 컴파일 타임(compile time)
- 디버깅(debugging)
- 가상 머신(virtual machine)
- 동적 링크(dynamic linking)
참고
- IEEE Std 1003.1 (POSIX) – 실행 환경 정의
- 《컴퓨터 과학 개론》, 김정현 외, 2020.
본 항목은 현재까지 확인된 공신력 있는 자료에 근거하여 작성되었으며, 추가적인 학술적 검증이 필요한 부분에 대해서는 별도 명시하지 않는다.