Linux 의 스택 오버플로우 조건
Linux® 의 스택 오버플로우는 SIGSEGV 오류로 식별할 수 있지만, 콘솔에 정보를 표시하지 않고 JVM (Java™ Virtual Machine) 이 예기치 않게 중지될 수 있습니다.
스택 오버플로우가 없을 때 SIGSEGV 오류가 발생하면 덤프 파일이 생성되지 않을 수 있는 시나리오 의 예제와 같이 진단 정보가 콘솔에 기록됩니다.
스택 오버플로우가 발생한 경우 다음은 가장 가능성 있는 두 가지 결과입니다.
- Java 프로세스의 작업 디렉토리에 코어 파일 (core.pid) 이 생성되었습니다.
- 코어 파일이 생성되지 않았거나 코어 파일이 잘렸습니다.
코어 파일이 생성되지 않은 경우 시스템 설정에서 코어 파일 생성이 사용 설정되어 있는지 확인한 후 애플리케이션을 다시 실행해야 합니다. 자세한 정보는 OpenJ9 사용자 문서에서 시스템 구성 을 참조하십시오.
시스템 설정에 코어 파일 생성이 이미 사용으로 설정되어 있지만 코어 파일이 생성되지 않는 경우 문제점이 스택 오버플로우가 아닙니다. 스택 오버플로우의 경우 코어 파일의 프로덕션은 -Xrs 또는 -Xrs:sync 옵션으로 실행할 때 SIGSEGV 오류와 동일해야 합니다. 자세한 정보는 OpenJ9 사용자 문서에서 -Xrs 를 참조하십시오.