문제

이 질문은 오랫동안 나를 괴롭 히고 있습니다. 온라인에서 검색하려고했지만 대답을 얻지 못했습니다.나는 정상적인 OS와 RTO의 차이점을 이해합니다.RTOS에 대한 응용 프로그램 프로그래머에게 부과 된 추가 제약 조건 (있는 경우)을 이해하고 싶었습니다.

예를 들어 몇 가지 요구 사항이 있으며 일반 OS 및 RTOS에서 실행되는 솔루션을 구현해야합니다.RTOS에 대한 해결책을 구현할 때 어떤 측면을 조심해야합니까?정확한 메모리를 확인해야하며, RTOS 스케줄러에 제공 해야하는 처리 요구 사항을 확인하여 타당성 분석을 수행하고 기존 일정에 내 응용 프로그램을 포함 할 수 있는지 여부를 결정해야합니까?

일부는 OSE, Windriver 등과 같은 RTOS에서 수행되는 방법에 대한 실용적인 예를 제공 할 수 있습니까?

도움이 되었습니까?

해결책

대부분의 RTO는 프로세스 스케줄러가 아닌 스레드 스케줄러이므로 단일 프로세스의 여러 스레드로 만든 "응용 프로그램"만 있습니다.이러한 컨텍스트에서 "응용 프로그램"의 스케줄링 문제는 하나의 응용 프로그램 오직 하나만 있습니다.

비 실시간 작업이있는 경우 (그리고 아마도 범용 OS (GPO)에서도 실행할 수있는 경우, 다음을 실행할 수있는 경우에도 다음과 같은 경우이를 암시 적으로 실행할 수 있습니다.라운드 로빈 타임 슬라이싱을 사용하여 다른 비 실시간 작업으로 공유하는 수준에서 낮은 우선 순위 - 해당 스레드는 GPO와 비슷한 방식으로 일정을 지정합니다.이 스레드 중 하나 이상이 결코 수확량은 가능한 가장 낮은 우선 순위 수준에서 실행되어야하며, 어떠한 경우에도 그러한 행동은 일반적으로 바람직하지 않습니다. 본질적으로 그러한 스레드는 유휴 작업이됩니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top