인터럽트 처리기가 인터럽트 된 작업의 스택 또는 별도의 스택을 스택으로 사용합니까? (PowerPC, VxWorks)VxWorks (PowerPC)에서 인터럽트 처리기를 스택으로 사용
답변
VxWorks에는 인터럽트를위한 특정 스택이 있습니다. 모든 인터럽트 핸들러는 동일한 스택을 공유합니다.이 스택은 vxWorks 이미지가로드되는 위치 바로 위에 있습니다.
기본 스택 크기는 5K이지만 커널 구성자로 쉽게 변경할 수 있다고 생각합니다.
ISR 메커니즘은 대략 다음과 같이 작동합니다.
VxWorks는 일반적으로 ISR 코드 주위에 어셈블리 코드 래퍼를 설치한다고 생각할 수 있습니다.
On Entry에서는 범용 레지스터가 ISR 스택에 자동으로 저장되므로 실행 컨텍스트 (다른 ISR 또는 작업) 상태가 보존됩니다.
종료시 레지스터가 복원되지만 방금 완료된 ISR이 우선 순위가 높은 작업 상태를 변경했는지 확인하기 위해 OS 스케줄러가 호출됩니다. 이 경우 우선 순위가 높은 작업이 다시 시작됩니다. 더 높은 우선 순위 작업을 사용할 수 없으면 원래 작업이 복원됩니다.
xiaokaoy, VxWorks 프로그래머 가이드 섹션 2.6에서 인터럽트가 작동하는 방식에 대한 설명이 있습니다. 사본이 없으면 여러 소스에서 온라인으로 사용할 수 있습니다.
감사합니다. 나는 그것을 찾으려고 노력할 것이다. – xiaokaoy
이것은 아키텍처에 따라 다릅니다. VxWorks 커널 프로그래머 가이드 (v6.8) :
모든 ISR은 동일한 인터럽트 스택을 사용합니다. [...]
주의 : 일부 아키텍처에서는 별도의 인터럽트 스택을 사용할 수 없으며 ISR은 인터럽트 된 작업의 스택을 사용합니다. [...] 아키텍처 이 별도의 인터럽트 스택을 지원하는지 여부를 확인하기 위해 BSP 용 VxWorks 참조 을 참조하십시오.
경우에 따라 PowerPC는 별도의 공유 인터럽트 스택 (코어 당)을 지원합니다.
- 1. MPIC를 사용하여 powerpc에서 IPI 용 인터럽트 처리기를 설치하는 방법은 무엇입니까?
- 2. SIGPOLL (SIGIO) 문제 : 처리기를 실행하는 중 인터럽트
- 3. VxWorks intConnect API를 리눅스에 이식하기
- 4. PowerPC에서 LLVM JIT가 지원됩니까?
- 5. Windows에서 인터럽트 사용 안 함
- 6. Button.Click 이벤트 처리기를 BackgroundWorker.RunWorkerCompleted 이벤트 처리기로 인터럽트 할 수 있습니까?
- 7. 인터럽트/인터럽트 처리기 이해, PIC
- 8. PowerPC에서 외부 예외를 처리 할 때 r1 스택 포인터 사용
- 9. 인터럽트 sleep() 함수
- 10. VxWorks 스케줄러는 어떻게 실행됩니까?
- 11. VxWorks 컴파일 오류
- 12. 리디렉션 VxWorks 시리얼 입력
- 13. 리눅스에서 인터럽트 처리. 인터럽트 공유
- 14. 어떻게 스레드를 중지하고 레지스터를 스택으로 플러시합니까?
- 15. MongoDB 배열을 스택으로 사용하십시오.
- 16. js 배열을 스택으로 사용하기
- 17. C에서 TCP 스택으로 연결
- 18. Viewcontroller가 스택으로 푸시되지 않습니다.
- 19. 큐에서 스택으로 값을 옮기기
- 20. AIX/powerpc에서 원자 할당을 구현하는 방법은 무엇입니까?
- 21. Linux C++ PowerPC에서 SIGABRT로 인한 충돌
- 22. powerpc에서 전체 명령 캐시를 플러시하는 방법은 무엇입니까?
- 23. CodeSourcery CS3 인터럽트 처리기 재정의
- 24. 인터럽트 및 인터럽트 처리에 관한 질문
- 25. 다른 인터럽트 벡터 내에서 인터럽트 벡터 호출
- 26. 인터럽트 활성화와 인터럽트 복원의 차이점은 무엇입니까?
- 27. VxWorks 셸 출력을 소켓으로 리디렉션
- 28. 비정상적으로 큰 VxWorks 스택 프레임
- 29. vxworks 스크립트의 끝 부분은 무엇입니까?
- 30. 차단 또는 수면 인터럽트 핸들러
감사합니다. ISR이 인터럽트 된 작업의 스택에서 특정 스택으로 전환하는 방법을 알려주시겠습니까? – xiaokaoy
다시 한번 감사드립니다. 고맙습니다. – xiaokaoy