런타임(프로그램 라이프 사이클 단계)

Runtime (program lifecycle phase)

컴퓨터 과학에서 런타임, 실행 시간 또는 실행 시간은 컴퓨터 프로그램 수명 주기의 마지막 단계로, 코드가 컴퓨터 중앙 처리 장치(CPU)에서 기계 코드로 실행됩니다.즉, "런타임"은 프로그램의 실행 단계입니다.

런타임 에러는 프로그램 실행 후 또는 실행 중(실행 상태)에 검출되지만 컴파일러는 프로그램이 실행되기 전에 컴파일 시간 에러를 검출한다.유형 검사, 레지스터 할당, 코드 생성 및 코드 최적화는 일반적으로 컴파일 시에 수행되지만 특정 언어 및 컴파일러에 따라 런타임에 수행될 수 있습니다.다른 많은 런타임 에러가 존재하며, 다른 프로그래밍 언어에 의해 다르게 처리됩니다.를 들어 제로 에러에 의한 분할, 도메인 에러, 어레이 서브스크립트 아웃오브바운드에러, 산술 언더플로우 에러, 몇 가지 타입의 언더플로우 및 오버플로우 에러, 그 외의 많은 런타임 에러 등이 있습니다.이 에러는 일반적으로 b 또는 b의 소프트웨어 버그로 간주됩니다.특정 컴퓨터 언어에 의해 포착되어 처리됩니다.

구현 상세

프로그램이 실행될 때 로더는 먼저 필요한 메모리 설정을 수행하고 필요한 동적으로 연결된 라이브러리와 프로그램을 링크한 다음 프로그램의 진입점부터 실행을 시작합니다.어떤 경우 언어 또는 구현에서는 이러한 태스크가 언어 런타임에 의해 대신 수행될 수 있지만, 이는 일반적인 소비자 운영 체제의 주류 언어에서는 드문 일입니다.

일부 프로그램 디버깅은 실행 시에만 실행할 수 있습니다(또는 실행 시 더 효율적이거나 정확합니다).논리 오류 및 배열 경계 검사가 그 예입니다.이 때문에, 고도의 컴파일 타임 체크나 프리리스 테스트에도 불구하고, 실가동 환경에서 실제 데이터를 사용해 프로그램을 테스트할 때까지, 일부의 프로그래밍 버그가 검출되지 않는 경우가 있습니다.이 경우 최종 사용자에게 "runtime error" 메시지가 표시될 수 있습니다.

응용 프로그램 오류(예외)

예외 처리는 런타임 오류를 처리하기 위해 설계된 언어 기능 중 하나로, 예기치 않은 상황 및 예측 가능한 오류 또는 비정상적인 결과를 검출할 수 있는 구조화된 방법을 제공합니다.이 기능이 없는 언어에 필요한 인라인 오류 체크를 하지 않아도 됩니다.런타임 엔진의 최신 발전으로 런타임 엔진에 특별한 소프트웨어 제품을 부가함으로써 모든 관심 예외에 대해 "근본 원인" 디버깅 정보를 제공하고 소스 코드와 독립적으로 구현되는 자동 예외 처리가 가능해졌습니다.

「 」를 참조해 주세요.

레퍼런스