1) 내 데몬에 문제가 있습니다. 코어 벙어리 생성없이 시간이 추락했습니다. 시스템은 FreeBSD입니다. 항상 전에 .core
가 생성되었습니다. 이것이 다른 종류의 오류이거나 다른 일이 발생하고 핵심이없는 상황 인 것 같습니다. 어쨌든 나는 이것을 알고 고치고 싶다!cpp gdb가 작동하지 않고 gdb가 작동하지 않는 문제가 발생했습니다.
2) 코어가 100 % 확실히 생성되어야 함을 FreeBSD에서 확인하는 방법은 무엇입니까? 여기 는 : How to generate a core dump in Linux when a process gets a segmentation fault? 는 ulimit -c unlimited
하지만 Command not found
3) 내가 GDB와 프로세스에 연결하는 데 필요한 오류/충돌을 잡을 것 같다 있다고? 그렇게하는 방법? 또한 유래에서 검색 및 설립 : gdb attach to a process without stop을하지만 난 괜찮아 않도록주의입니다 :
A) 나는 attach
라는 파일이 실행이 라인을 추가 할 수있는 자신의 권리를 부여합니다
echo "cont" > attach.gdb
gdb server $1 -x attach.gdb
rm attach.gdb
B를) ./attach
처럼 실행되고 시작되지만 아무 것도 할 수 없습니다. 그 권리? 데몬이 충돌하기 전에 기다려야합니다. 코어를 얻으려면 generate-core-file
을 작성 하시겠습니까?
4) 디몬이 SEGFAIL 또는 다른 예외없이 종료하면 명령 generate-core-file
에 의해 코어가 생성됩니까?
내 영어를 사용해 죄송합니다. 네이티브 언어가 아닌 커다란 메시지를 쓰기 어렵다. 당신은 이해하기가해야 ...
감사합니다.하지만 하루 종일 gdb에서 데몬을 모니터 할 수 없기 때문에 .core 파일을 항상 유용하게 사용할 수 있습니다. 그리고 당신은 "아빠 일이 당신이 그들을 기대하지 않을 때 일어난다"고 가장 부적절한 순간을 알 것입니다. – abrahab
당신은 그것을 모니터 할 필요가 없습니다. 그냥 달려 둘 수도 있지만, gdb 하에서는 훨씬 느리게 실행될 것입니다. 신호가 발생합니다. 나는 gdb 사용에 대해서만 3과 4에 대답했다.코어 파일을 얻지 못하는 이유를 알아 내기 위해 데몬의 종료 상태를 알 수 있습니다 (스크립트에서 실행하여 종료 한 후 $?를 출력하고 코어 파일이없는 이유를 확인하십시오). 파일을 쓸 수있는 권한이없는 디렉토리에서) –
종료 상태를 얻는 방법에 대한 단계별 지침을 추가 할 수 있습니까? 내 질문에 같은 somethings 껍질 파일을 만듭니다. ./server | echo $> status.file? 추신. 아니, 나중에 SIGFAIL.에 기록 된 .core) – abrahab