유닉스의 코어 파일

유닉스의 코어 파일

핵심 파일에 관해 몇 가지 질문이 있습니다.

1) 코어 파일이란 무엇입니까? 2) 그것이 위치한 곳. 3) 코어 파이의 용도는 무엇입니까? 4) C 프로그램 컴파일시 코어 파일을 생성하는 방법. 5) 코어 파일과 코어 덤프의 차이점은 무엇입니까?

답변1

1) 코어 파일이란 무엇입니까?

코어 덤프가 포함된 파일입니다. 특정 비정상적인 프로그램 종료(예: 불법 명령 실행)로 인해 기본적으로 코어 덤프가 생성됩니다.

2) 그것이 위치한 곳.

일반적으로 프로세스가 생성된 원인은 현재 디렉터리에서 호출된 파일이지만 core일부 운영 체제(예: Linux)에서는 다른 파일이나 다른 문서로 저장되도록 재구성할 수 있습니다. 프로그램에 파이프됩니다. Linux의 경우 /proc/sys/kernel/core_pattern코어 덤프가 배치될 파일 이름을 찾으세요.

3) 코어 파이의 용도는 무엇입니까?

코어 덤프는 gdb와 같은 디버거에 로드될 수 있습니다. 이를 통해 마치 프로그램이 종료된 것처럼 프로그램의 상태를 확인할 수 있습니다. 이를 통해 개발자는 프로그램 충돌의 원인을 더 쉽게 확인할 수 있습니다.

4) C 프로그램 컴파일시 코어 파일을 생성하는 방법.

이것은 이상한 질문입니다. 내 생각에 C 프로그램을 컴파일할 때 코어 덤프를 생성하려면 컴파일러가 충돌해야 한다는 것이 답인 것 같습니다! 예를 들어, 컴파일러에서 버그를 찾아 활용할 수 있습니다! 아니면 기본적으로 코어 덤프로 프로그램을 강제 종료하여 SIGQUIT보낼 수도 있습니다.Ctrl^

5) 코어 파일과 코어 덤프의 차이점은 무엇입니까?

다음과 같이 정의할 수 있을 것 같습니다. 코어 파일은 코어 덤프를 포함하는 파일입니다. 그러나 일반적으로 대부분의 사람들은 이 용어를 같은 의미로 사용한다고 생각합니다.

관련 정보