런타임

런타임(runtime)은 주로 컴퓨터 과학 및 소프트웨어 분야에서 사용되는 용어로, 프로그램이 실행되는 동안의 시간·상태·환경 등을 통칭한다. 용어는 영어 runtime에서 차용되었으며, run(실행)과 time(시간)의 결합으로 이루어진 합성어이다.

정의

  1. 실행 시간
    프로그램이 시작되어 종료될 때까지 걸리는 실제 시간. 이와 대비되는 개념으로는 프로그램이 작성·컴파일되는 컴파일 타임(compile time)이 있다.
  2. 런타임 환경(runtime environment)
    프로그램이 실행되는 동안 필요한 라이브러리·시스템 자원·가상 머신·인터프리터 등 소프트웨어와 하드웨어의 조합을 의미한다. 예를 들어, 자바 프로그램은 자바 가상 머신(JVM)에서 실행되며, JVM 자체가 자바 런타임 환경에 해당한다.
  3. 런타임 오류(runtime error)
    프로그램이 실행 중에 발생하는 오류로, 구문 오류와 달리 컴파일 단계에서는 검출되지 않는다. 메모리 접근 위반, 나눗셈 0 오류 등이 대표적인 사례이다.
  4. 런타임 라이브러리(runtime library)
    프로그램 실행 시 동적으로 링크되거나 자동으로 호출되는 함수·코드 집합. C 표준 라이브러리의 printf·malloc 등이 이에 포함된다.

사용 분야

  • 소프트웨어 개발: 개발자는 런타임 성능을 최적화하기 위해 알고리즘·데이터 구조·메모리 관리 등을 분석한다.
  • 운영 체제: 운영 체제는 프로세스·스레드의 런타임 스케줄링, 메모리 할당 등을 담당한다.
  • 멀티미디어: 영상·음악 파일의 재생 시간을 의미하기도 하며, 이 경우 “재생 시간” 혹은 “런타임”이라는 용어가 그대로 사용된다.

어원

runtime은 영어권에서 1960년대 컴퓨터 과학 초기 단계에 등장한 용어로, 프로그램이 “실행(run)”되는 “시간(time)”을 가리킨다. 한국어에서는 1990년대 이후 컴퓨터 관련 서적·문서에서 음차어인 “런타임”으로 정착되었다.

관련 용어

  • 컴파일 타임(compile time)
  • 디버깅(debugging)
  • 가상 머신(virtual machine)
  • 동적 링크(dynamic linking)

참고

  • IEEE Std 1003.1 (POSIX) – 실행 환경 정의
  • 《컴퓨터 과학 개론》, 김정현 외, 2020.

본 항목은 현재까지 확인된 공신력 있는 자료에 근거하여 작성되었으며, 추가적인 학술적 검증이 필요한 부분에 대해서는 별도 명시하지 않는다.

둘러보기

더 찾아볼 만한 주제