FreeRTOS를 조사하기 시작했고 작업 컨텍스트 저장 루틴을 살펴 보았습니다. 이 루틴은 레지스터와 스택 포인터를 저장합니다. 내 질문은 다른 스레드 스택에 대한 것입니다. 컴파일러에 의해 생성 된 푸시와 팝을 수행하는 스레드가 있으면 어떨까요? 다른 스레드의 스택을 덮어 쓰는 것이 가능하지 않습니까?마이크로 프로세서 컨텍스트 스위치
-1
A
답변
2
각 스레드는 컨텍스트 저장소에 필요한 자체 호출 스택 +에 대해 충분한 스택을 할당해야합니다. 컨텍스트 저장소에 필요한 추가 스택 공간은 대상에 따라 달라 지지만 FreeRTOS의 경우 구체적으로 상수 configMINIMAL_STACK_SIZE
은 최소한 여유있는 크기 여야합니다.
스레드 스택이 인터럽트 컨텍스트에서 사용되는 일부 대상에서는 인터럽트별로 스택 사용을 고려해야합니다. 인터럽트가 중첩 가능하다면; 최악의 상황은 모든 인터럽트가 완료되기 전에 모든 인터럽트가 우선 순위 순서대로 활성화 될 때 발생합니다 - 아마도 드문 경우이지만, 고려해야 할 시나리오 일 것입니다. 당신이 무엇을 할 수있는 메모리 보호가 없다면 FreeRTOS에 대한 스택 할당에 대한
관련 문제
- 1. VHDL 마이크로 프로세서/마이크로 컨트롤러
- 2. 스레드 컨텍스트 스위치 대 프로세스 컨텍스트 스위치
- 3. Arduino 마이크로 프로세서 프로그래밍
- 4. 불필요한 Java 컨텍스트 스위치
- 5. django 컨텍스트 프로세서
- 6. . 마이크로 프로세서 용 .net 개발
- 7. 최대 수 - 8085 마이크로 프로세서
- 8. 컨텍스트 스위치 TIme
- 9. FreeRTOS 컨텍스트 스위치 - xQueueSend
- 10. 컨텍스트 스위치 시간을 측정
- 11. 컨텍스트 스위치 시간 측정
- 12. 컨텍스트 스위치 교착 상태
- 13. Linux에서 컨텍스트 스위치 모니터링
- 14. 스위치 컨텍스트 C
- 15. 인터럽트 처리기의 컨텍스트 스위치
- 16. 컨텍스트 스위치 : 언제 결정합니까?
- 17. 라즈베리 대기 프레스 마이크로 스위치
- 18. Django 컨텍스트 프로세서 및 미들웨어
- 19. django - 컨텍스트 프로세서 반환 오류
- 20. 장고 사이트 용 컨텍스트 프로세서
- 21. 컨텍스트 프로세서 vs django의 미들웨어
- 22. django-cms의 플러그인 컨텍스트 프로세서
- 23. 장치 드라이버 IRQL 및 스레드/컨텍스트 스위치
- 24. FreeRTOS 잘못된 컨텍스트 스위치 복원
- 25. 리눅스의 프로세스 컨텍스트 스위치 추적
- 26. 마이크로 프로세서/컨트롤러에서 스크롤러를 만드는 방법은 무엇입니까?
- 27. 마이크로 프로세서 통신을위한 TCP와 UDP의 비교
- 28. 프로세서 (CPU)와 마이크로 프로세서의 차이점은 무엇입니까?
- 29. CPU (중앙 처리 장치) 및 마이크로 프로세서
- 30. django에서 내 자신의 컨텍스트 프로세서 만들기
에서 자주 묻는 질문에 제공됩니다. 있다면, 그렇다. 하지만 스택을 덮어 쓸 수 있다고 생각하는 이유는 무엇입니까? 거기에서 실행되는 모든 쓰레드는 컴파일러에 의해 생성 된 푸시와 팝을 가질 것입니다 ...? –
하지만 특정 조건에 따라 푸시 및 팝이 발생하면 어떻게 될까요? 그런 다음 다른 스레드의 스택을 덮어 쓸 수 있습니다. – Gustavo
아직도 어떻게 될지 설명하십시오. 스레드는 별도의 스택을 가지고 있는데 왜 서로 겹쳐 씁니까? 그리고이 특정 조건은 무엇입니까? –