RT controller를 부팅시 146640 에러가 발생하는 이유?



주요한 소프트웨어:
주요한 소프트웨어 버전: 8.2
문제가 해결된 소프트웨어 버전:
부차적인 소프트웨어: N/A

문제점:
RT controller 부팅할 때마다, 아래와 같은 에러가 발생합니다.

fatal error KERNEL 146640: Thread stack overflow. Thread ID=1 Thread Name=Main Application Thread Thread stack range= "memory address", size = "number" current ESP="memory address"

이 에러가 발생하는 이유는 무엇이고, 어떻게 해결할 수 있습니까?

솔루션:
이 에러는 ni-rt.ini파일에서 발생하는 에러인데, 이것은 사용하는 RT target의 C:\ 경로에 위치한 파일입니다. 에러가 발생하는 이유는 파일 내부의 "RTTarget.TimeZone" 라는 key의 값이 너무 많은 character를 가지고 있기 때문에 발생하는 것입니다. 해당 Key 값의 형태는 CUT6CUT와 같은 형식을 지녀야 합니다. (참고로 CUT는 "Central United States"를 의미합니다.)

이 에러를 해결하기 위해서는 key값을 확인하셔야 합니다. 아래에 링크된 KB, "How Do I Disable Daylight Saving Time on LabVIEW Real-Time Targets?"의 웹문서를 참고하십시오. 여러분이 key값을 확인하셨는데도 에러가 지속될 경우에는, 일단 ni-rt.ini를 다른 곳에 copy하시고나서 원본 파일을 삭제하십시오. 그리고 나서 target을 재부팅하십시오. 재부팅시 RT 시스템은 ni-rt.ini를 자동으로 재생성할 것입니다. 이제 전에 copy해두신 파일과 새로 생성된 파일을 비교해보시고, 그 차이점을 발견해 무엇이 문제였는지 확실하게 파악하실 수 있을 것입니다.

관련 링크:
KnowledgeBase 3HKA4CXT: How Do I Disable Daylight Saving Time on LabVIEW Real-Time Targets?


첨부:





리포트 날짜: 04/23/2007
마지막 업데이트: 05/17/2007
문서 번호: 48M9LNMY