2012-02-17 4 views

답변

3

:는 x86 코 프로세서 스택 (나는 확신) 잘못 할 수 없기 때문에

Signal  Value  Action Comment 

SIGSTKFLT -,16,-  Term Stack fault on coprocessor (unused) 

, 나는 그것을 암시 신호를받을 수 있다고 생각하지 않습니다. 명시 적 생성 만 (kill() 또는 raise()에 의해) 발생할 수 있습니다.

grep 커널 소스. 사용하지는 않지만 약 50 인스턴스 (CPU 아키텍처 당)가

#define SIGSTKFLT 16 
+2

글쎄 x87 코 프로세서는 오류를 일으킬 수 있습니다. FPU 제어 워드에서 IM 비트를 언 마스하고'fstp' 또는 이와 유사한 명령없이'fld' 명령을 9 회 실행하려고합니다. 그러나 Linux에서 이러한 스택 오류는 SIGSTKFLT 대신 SIGFPE를 생성합니다. – Ruslan

+0

@Ruslan : 나는 8087이 SIGSTKFLT를 생성 할 수 있다고 생각하지 않았다. 물론 SIGSEGV와 같은 다른 유형의 결함을 생성 할 수 있습니다. – wallyk

+1

아니요, 사실상 말 그대로 스택 결함 (8 개의 레지스터가 스택으로 구성되어 있음)을 가질 수 있습니다. 오류 - 앱의 경우 SIGFPE입니다. – Ruslan

관련 문제