Sparc V8 아키텍처에는 N 개의 레지스터 창이 있습니다. 일반적으로 컨텍스트 스위칭 중 RTOS는 레지스터를 밀어 넣고 팝합니다. 이 레지스터 창을 스레드 중 하나로 사용할 수 있습니까 (또는 이미 완료되었습니다). 이렇게하면 레지스터 창을 이동하고 PSR을 누르고 터뜨리는 것과 같이 다음 스레드로 전환 할 수 있습니다! 따라서 컨텍스트 스위칭 시간을 절약하고보다 빠른 컨텍스트 스위칭 주파수를 가능하게합니다.Sparc V8 RTOS 쿼리
0
A
답변
0
어쩌면 스레드에 의한 의미와 개수에 따라 다를 수 있습니다.
레지스터 창은 잘 정의 된 작업으로 하드웨어 및 소프트웨어 트랩에서이를 구현하여 함수 호출 및 반환에 대한 아이디어를 토대로 구축됩니다. 스레드가 라운드 로빈 방식 등으로 호출되는 함수 일 경우 ... "예"에서 호출 된 다른 함수와 마찬가지로이 방식으로 전환됩니다. 일단 레지스터 창 수보다 더 많은 기능을 갖게되면 등록 파일에서 페이징 처리가 시작됩니다.
OS 및 사용자 코드의 관점에서 ... 등록실 창에 들어가거나 나가면 어떤 일이 발생할지 제어 할 수 없습니다. 등록 창은 트랩으로 구현되어 있기 때문에 아마도 펌웨어에서 이해할 수 있습니다. 만약 당신이 Sparc을 어떻게 운영하고 있는지를 바꾸고 싶다면, Sparc이 무엇을하는지는 스펙 (Spec)에 정의되어 있기 때문에 더 이상 작동하지 않습니다.
레지스터 창의 모든 부분은 항상 빠른 컨텍스트 스위칭 이었지만, TLB와 같은 Sparc 하드웨어의 다른 측면은 플랫 주소 공간이있는 Sparc MCU 컨텍스트에서 얻을 수 있습니다. ... 그렇다면 그것은 정말로 빠를 것입니다.
관련 문제
- 1. Sparc 하드웨어가없는 Sparc 바이너리를 실행하십시오.
- 2. 32 비트 SPARC V8 응용 프로그램을 64 비트 SPARC V9에서 실행할 수 있습니까?
- 3. Sparc V8 용 비교 및 스왑 기능의 구현 인라인 어셈블리
- 4. RTOS 경험
- 5. Sciopta RTOS 조립 오류
- 6. RTOS 및 마이크로 컨트롤러
- 7. CC3200 RTOS MultiThreading
- 8. Windows 용 무료 RTOS
- 9. AVR의 멀티 태스킹 RTOS
- 10. Cppunit for Nucleus RTOS
- 11. RTOS 용 메모리 맵
- 12. RTOS 데이터 로거 예제
- 13. RTOS 태스크 관리
- 14. 스레드 종료 CMSIS-RTOS
- 15. XC8의 스케줄러/RTOS 작성
- 16. RTOS STM32F4 발견
- 17. SPARC 어셈블리 스캔 오류
- 18. Solaris (SPARC) 개발 환경
- 19. SPARC 어셈블리 언어
- 20. Sparc 어셈블리 언어 컴파일
- 21. SPARC 조립 배열
- 22. SPARC 어셈블리의 루프 최적화
- 23. 왜 v8 :: String 이전에 새 v8 :: Array를 만들면 v8 :: String 및 v8 :: FunctionTemplate이 발생하지 않습니까?
- 24. V8 v8 :: Persistent <v8 :: Primitive>를 v8 :: Primitive로 변환하는 방법?
- 25. v8 :: Isolate와 v8 :: Context의 차이점은 무엇입니까?
- 26. VXWORKS RTOS RTP 응용 프로그램
- 27. RTOS 작업 시간을 계산하는 방법
- 28. 어떤 Linux RTOS 솔루션을 선택해야합니까?
- 29. PIC32, 무료 RTOS 시계 (ms)
- 30. 무엇이 RTOS 동작을 예측 가능하게합니까?
구현시 3 ~ 32 개의 레지스터 창이있을 수 있으며,이 방법을 사용하는 작업 수가 제한됩니다. V8 Arch 매뉴얼에서는 컨텍스트 스위칭에 대해 설명합니다. 구현에 따라이를 기대합니다. V9 Arch 매뉴얼에는 컨텍스트 스위치를보다 신속하게 설계 할 수있는 개선점이 설명되어 있습니다. – Clifford
나는 당신의 요지를 알고 있습니다. 내 질문은 가능한지 여부입니다. 그리고 만약 그것이 있다면 그것은 초고속 컨텍스트 스위칭을 허용 할 것인가입니다. – Prakhar
인접한 레지스터 창 사이에 겹침이 있음을 잊지 마십시오. 하나의 창의 출력 레지스터는 다음 윈도우의 입력이됩니다. 따라서 각 작업에 레지스터 창을 할당하더라도 각 컨텍스트 스위치에 입력 레지스터 (물론 전역)를 저장/복원해야합니다. –