VxWorks에서 TLB (Load Word 또는 Instruction Fetch) 예외가 발생합니다. 내가 더 분석 할 때 나는 참조 된 메모리 주소가 유효한 메모리 위치를 가리 키지 않는다는 것을 이해했다.잘못된 컴파일러 옵션 사용으로 인해 TLB (로드 단어) 예외가 발생할 수 있습니까?
내가 아는 한, 일부 메모리 손상 (가능한 메모리 덮어 쓰기) 때문에이 문제가 발생할 수 있습니다. 그러나 코드 분석 및 정제중인 Windows의 동일한 코드 조각 실행에는 메모리 오류가 표시되지 않습니다.
그래서 어떤 컴파일러 옵션이이 문제를 일으킬 수 있는지 궁금합니다. 가능한가?
또한 이러한 문제를 디버깅하는 방법에 대한 모든 포인터가 있습니까?
아마 정렬 문제가 있습니까? * 예를 들어, 윈도우에서 4 바이트 정렬은 괜찮지 만 vxWorks에서 8 바이트 정렬이 필요합니다. * 코드에서 캐스트를 두 번 확인하십시오. – pmg
의문의 여지가 있음. 기억을 부패시키는 진술을 찾을 수 없다고해서 그것이 존재하지 않는다는 것을 의미하지는 않습니다. 다른 힙 관리자가있는 다른 운영 체제에서는 비교할 수없는 결과를 얻을 수 없습니다. –