Windows 런타임 오류란 무엇이며 어떻게 해결합니까?


Windows의 런타임 오류 은 운영 체제 자체만큼 오래되었습니다. 앱이 충돌할 때 표시되는 일반적인 오류 메시지입니다. 그런데 런타임 오류란 정확히 무엇이며 이에 대해 무엇을 할 수 있나요?

소프트웨어 개발은 ​​복잡하며 최신 애플리케이션은 예상대로 작동하기 위해 정교한 라이브러리와 지원 데이터에 의존합니다. 이 가이드는 런타임 오류가 발생하는 이유와 오류를 최소화하는 방법을 이해하는 데 도움이 됩니다.

런타임 오류란 무엇인가요?

'런타임 오류'라는 용어는 프로그램이 실행될 때 발생하는 모든 응용 프로그램 오류를 의미합니다. 즉, 실행 중인 프로그램에서 발생합니다. 이는 프로그램을 컴파일할 때 발생하는 오류와 대조됩니다. 컴파일은 프로그래밍 코드("소스" 코드)를 가져와 이를 운영 체제에서 사용할 수 있는 바이너리 코드로 변환하는 프로세스입니다. 소스 코드의 일부가 유효하지 않으면 컴파일러가 중지되고 오류 메시지가 표시됩니다.

런타임 오류는 컴파일된 실행 파일이 다음에 무엇을 해야 할지 알 수 없거나 정상적인 작동을 방해하는 상황에 직면할 때 발생합니다. 이 시점에서 수건을 던지고 런타임 오류가 발생합니다.

다양한 유형의 런타임 오류

런타임 오류는 매우 광범위하게 정의되므로 문제를 해결하는 것이 까다로울 수 있습니다. 발생할 수 있는 일반적인 오류 유형을 이해하는 데 도움이 됩니다. 아래의 5가지 오류 유형은 완전한 것은 아니지만 가장 큰 원인일 수 있습니다.

논리 오류

논리 오류는 컴퓨터가 문자 그대로 "계산하지 않는다 "을 발견할 때 발생합니다. 이는 코드의 논리가 추적되지 않거나 프로그래머가 특정 조건 또는 입력 세트를 예상하지 않았기 때문에 예상치 못한 결과, 때로는 불가능한 결과를 생성하는 프로그램 코드에 의해 생성된 출력입니다.

메모리 누수

메모리 누수는 프로그램이 더 이상 필요하지 않은 메모리를 요청했지만 돌려주지 않을 때 발생합니다. 시간이 지남에 따라 메모리 누수로 인해 다른 프로그램에 사용할 리소스가 점점 줄어들어 성능이 저하되고 결국에는 런타임 오류가 발생합니다. 런타임 오류를 보고하는 소프트웨어는 일반적으로 메모리 누수가 있는 소프트웨어가 아니기 때문에 이것은 흥미로운 것입니다. 유출의 피해자일 뿐입니다..

0으로 나누기

0으로 나누는 것은 불가능하므로 컴퓨터가 나누려고 하면 블랙홀이 터집니다. 농담이에요! "0으로 나눌 수 없습니다."라는 문구와 함께 런타임 오류가 발생하면서 프로그램이 중단됩니다.

정의되지 않은 개체

이 오류는 일반적으로 변수에 값이 할당되지 않았거나 선언되지 않은 Java 및 자바스크립트 와 관련이 있습니다. 즉, 변수에 데이터가 없거나 코드가 존재하지 않는 변수를 참조하는 것입니다. 기본적으로 프로그래머가 어떤 식으로든 실수를 저지른 것입니다.

IO 오류

IO 또는 입출력 오류는 프로그램이 저장 장치에서 데이터를 읽거나 쓰려고 시도했지만 실패할 때 발생합니다. 이는 연결이 끊어진 드라이브부터 결함이 있는 하드 드라이브 또는 USB 하드웨어에 이르기까지 다양한 이유가 있을 수 있습니다. 긁힌 광 디스크는 IO 오류의 또 다른 일반적인 원인입니다.

런타임 오류 수정 방법

런타임 오류가 발생하여 작업을 완료하려고 하다가 당황스럽습니다. 위에서 런타임 오류는 다양한 형태로 발생하며 특정 오류가 어떤 유형인지 단서가 될 수 있다고 언급했지만, 세부 사항에 관계없이 작동할 수 있는 몇 가지 일반적인 수정 사항이 있습니다.

컴퓨터 재부팅

컴퓨터를 재부팅하면 메모리 누수 문제가 해결되거나 프로그램 중지의 원인이 되었을 수 있는 임시 데이터 캐시 또는 기타 작업 데이터가 삭제될 수 있습니다. 재부팅 후 문제가 사라지면 원인을 해결하는 데 도움이 되지 않지만 가끔 발생하는 문제의 경우 다시 시작해 보는 것이 빠른 해결 방법입니다.

애플리케이션 업데이트

대개 소프트웨어의 런타임 오류는 소프트웨어 자체의 버그로 인해 발생합니다. 소프트웨어 개발자가 이러한 버그를 알게 되면 일반적으로 문제를 해결하고 애플리케이션에 대한 업데이트를 릴리스합니다. 따라서 가장 먼저 해야 할 일 중 하나는 소프트웨어 업데이트가 있는지 확인하는 것입니다.

아마도 더 중요한 것은 Windows 런타임 오류가 발생하면 이를 개발자에게 보고해야 한다는 것입니다. 오류 메시지 옆에 신고 버튼이 있는 경우도 있습니다. 때로는 스크린샷을 찍거나 오류 코드를 기록한 다음 이메일이나 소셜 미디어를 통해 연락해야 할 수도 있습니다. 새로운 버그를 보고하면 수정 속도가 빨라질 수 있습니다..

Windows 업데이트

런타임 오류는 Microsoft Windows 자체의 버그나 기타 문제로 인해 발생할 수도 있으며, 이는 Windows 업데이트에서 수정되는 경우가 많습니다. 작은 문제는 일반적으로 특정 긴급 문제를 해결하는 소규모 업데이트인 '핫픽스'를 통해 해결됩니다.

또는 Windows 업데이트 직후 프로그램에서 런타임 오류가 발생하기 시작한 경우 개발자가 소프트웨어를 업데이트할 때까지 마지막 업데이트 삭제 하는 것이 좋습니다.

오래된 드라이버 업데이트

드라이버는 운영 체제가 디스플레이 어댑터(일명 그래픽 카드)와 같은 하드웨어를 제어할 수 있게 해주는 소프트웨어입니다. 새로운 소프트웨어나 새로 업데이트된 소프트웨어는 최신 버전의 드라이버에만 존재하는 기능에 의존할 수 있으므로 컴퓨터 구성 요소에 대해 드라이버 업데이트 를 사용하면 하드웨어 관련 런타임 오류를 수정할 수 있습니다.

애플리케이션 재설치 또는 복구

런타임 오류는 손상된 애플리케이션 파일이나 데이터로 인해 발생할 수 있습니다. 따라서 프로그램 실행 파일이 작동해야 하는 데이터에 액세스하려고 하면 해당 데이터가 잘못되었거나 누락되었기 때문에 오류가 발생합니다.

애플리케이션을 제거하고 다시 설치하면 손상된 데이터를 새로운 복사본으로 덮어쓸 수 있습니다. 먼저 응용 프로그램을 제거할 필요가 없을 수도 있습니다. 많은 앱은 설치 프로그램을 다시 실행하거나 제어판의 프로그램 및 기능 섹션에서 제거 시도할 때 '복구' 또는 '확인' 옵션을 제공합니다.

다른 모든 앱 닫기

메모리 누수로 인해 발생하거나 특정 앱에 사용 가능한 것보다 더 많은 메모리가 필요하기 때문에 발생하는 런타임 오류는 열려 있는 불필요한 프로그램을 닫으면 완화될 수 있습니다. RAM에 맞지 않는 앱을 ​​위한 여유 공간을 조금 더 확보하기 위해 스왑 파일의 크기를 조정할 수도 있습니다.

런타임 오류가 메모리 누수로 인해 발생하는 것이 아니라 메모리 용량으로 인해 발생한다고 확신하는 경우에는 더 많은 작업 부하를 처리하기 위해 컴퓨터의 RAM 용량을 업그레이드하는 것도 고려해 볼 수 있습니다.

안전 모드에서 Windows 실행 또는 클린 부팅 수행

현재 발생하는 런타임 오류가 백그라운드의 드라이버나 기타 소프트웨어 애플리케이션의 결과라고 의심되는 경우 안전 모드나 클린 부팅을 사용하여 이를 확인할 수 있습니다..

안전 모드는 최소한의 드라이버와 Windows 서비스만 로드하는 Windows의 특수 부팅 모드입니다. 안전 모드에서 문제가 해결되면 문제가 드라이버 관련(업데이트) 문제인지 Windows 서비스 문제인지 상당히 확신할 수 있습니다. 도움이 되는지 알아보려면 안전 모드에서 시작하는 방법 에 대한 가이드를 참조하세요. 그렇다면 MSConfig 서비스 탭 에서 서비스를 비활성화하여 실험해 볼 수 있습니다.

클린 부팅은 안전 모드와 거의 반대입니다. Windows는 최소 운영 체제를 로드하는 대신 모든 타사 시작 소프트웨어를 비활성화합니다. 클린 부팅으로 런타임 오류가 해결되면 비활성화, 업데이트 또는 교체가 필요한 타사 앱일 가능성이 높습니다. 클린 부팅을 수행하는 방법 에 대한 가이드를 참조하세요.

런타임 구성요소 업데이트

소프트웨어는 공유 소프트웨어 라이브러리와 표준 소프트웨어 런타임 구성 요소에 의존하는 경우가 많습니다. 설치되지 않았거나, 손상되었거나, 잘못된 버전인 경우 문제가 발생할 수 있습니다. 이러한 런타임 구성 요소의 예로는 Microsoft Visual C++ 재배포 가능 패키지 가 있습니다.

Microsoft 웹사이트에서 필수 VC++ 재배포 가능 패키지를 다운로드할 수 있지만 일반적으로 필요한 소프트웨어에 포함되어 있습니다. 따라서 앱을 다시 설치하거나 복구하면 Visual C++ 런타임 라이브러리도 복원되어야 합니다. 이는 런타임 오류 메시지가 일반적으로 “C++ 런타임 오류”라고 지정하기 때문에 식별하기 가장 쉬운 런타임 구성 요소 문제 중 하나입니다.

손상된 파일 확인

데이터 손상은 파일을 구성하는 1과 0이 어떤 이유로 손상되거나 덮어쓰여질 때 발생합니다. 시스템 또는 애플리케이션 파일이 손상되면 예상치 못한 런타임 오류가 발생할 수 있습니다.

Windows 시스템 파일 검사기 (SFC)을 실행하여 시스템 파일의 손상을 확인하고 복구할 수 있습니다. 애플리케이션의 경우 먼저 앱을 제거하지 않고 실행하면 대부분의 경우 설치 프로그램에 "복구" 옵션이 표시됩니다. 증기 과 같은 소프트웨어 클라이언트를 사용하면 게임의 '확인' 옵션을 사용하여 파일이 여전히 전체인지 확인할 수도 있습니다.

악성코드 검사 수행

많은 유형의 악성코드가 실행 중인 코드에 자신을 주입하거나, 데이터 파일을 손상시키거나, 실행 파일을 변경합니다. 이 모든 것이 런타임 오류로 이어질 수 있습니다. 오류가 발생하는 원인인 맬웨어를 배제하려면 즐겨 사용하는 바이러스 백신 또는 맬웨어 방지 소프트웨어를 사용하여 검사를 실행하세요..

메모리 테스트 수행

실행 중인 소프트웨어는 처리를 위해 CPU에 도달하기 전에 RAM에서 중지됩니다. RAM에 결함이 있는 경우 추적하기 어려운 런타임 오류가 발생할 수 있습니다. 기억력 테스트 를 실행하고 메모리 모듈에서 비트가 뒤집히는 문제가 아닌지 확인하세요!

.

관련 게시물:


15.11.2022