라운드 - 로빈과 우선순위 중재인은 어떤게 좋을까?

D

davyzhu

Guest
모두 안녕하세요, 라운드 - 로빈과 우선순위 중재인은 어떤게 좋을까? 그리고있는 상황은 어떤 종류의 결정자를 사용하는가? 데비
 
회전 우선순위 (왕복 로빈) 우선, 특히 유사한 우선 순위와 주변 기기 사이에 봉사하면보다 효율적으로 유통을 서비스의 역사를 기반으로 변경하는 것은 중재 요구 : 우선 중재인이 상황을 고려 어디 단일 리소스에서 여러 주변 장치 요청 서비스 (예 : 마이크로 프로세서, DMA 컨트롤러)를 동시에 - 어떤 먼저 서비스를 받지요? 우선 결정자 단일 목적의 프로세서 주변 장치는 중재인에게 요청을 만들 결정자들은, 구성을 위해 시스템 버스에 연결된 자원 결정자에 대한 요청에만 관련하여 도움이 되었으면 좋겠하게
 
그것은 그들이 비교할 수없는 것 같습니다. 라운드 - 로빈이 작업을 예약하는 운영 체제에 의해 수행 시간 깔끔히에 관한 것입니다. 우선 결정자 자원에 액세스하기위한 것입니다.
 
정말 "좋은"대신에, 하나는 특정 응용 프로그램에 더 적합한지의 문제 구 중 문제가 아니에요. 작업이 비교적 동등한 중요성을 가지고있다면 모든 작업이 실행하기에있는 기회는 더 가지게 후 왕복 로빈은 더 낳은 효과;에 항상 가득해 때문에 당신은 가장 낮은 우선 순위로 작업이 거의 실행 않겠다 상황을 피하 높은 우선 순위가 다른 작업이 될 것입니다. 당신은 센서의 개수에서 데이터를 읽을 필요가 상상해보십시오. 기본적으로, 그들은 모두 중요하므로, 아마도 왕복 로빈 구성표를 선택합니다. 한편, 거기에 작업 중 일부가 정말 중요한 상황입니다, 그리고 아마도 그들은 비교적 자주 실행해야합니다. 높은 우선 순위 작업이 매우 빠르게 서비스를받을 때부터 이런 경우에는 우선 순위 중재인은 최상의 상태로 작동합니다. 그들이 너무 자주 실행될 필요가 없기 때문에 그러나, 우선 순위가 낮은 작업이 자신의 공평한 분배를 얻으려면 충분한 시간이있다. 예를 들어, 거기에 과정에 중요한 변수이며, 무언가가 범위를 벗어가는 때 조치를 취해야합니다. 한편, 연산자 키보드 자신도 그것을 몰래, 몇 밀리초 또는 밀리초 수만 나중에 서비스가 될 수 있습니다. 사용할 방법을 결정하는 것은 정말 운영 체제 설계의 "아트"입니다. 그리고 이것은 만드는 중요한 결정이다.
 
IMHO, 두 방법을 비교하고 당신이 뭘하는 응용 프로그램에 따라 다릅니다 수 없습니다. 당신 실시간 프로세스입니다 프로세스를 가지고있다면 우선 임의의 방법은 더 imporant이다. 예를 들어, 수 있습니다 우리가 한 사이클에 실행될 프로세스를 "N"이 말한다. 이러한 프로세스는 시간이 중요한 경우, 임의의 최우선 과제는 특정 프로세스가 중요한 프로세스 리소스의 일정 금액을 할당하여 중요합니다. 이것은 거의 또는 전혀 resoruces과 시간이 적게 중요한 프로세스 되었는데요. 그러나, 이러한 방식은 더 복잡하고 프로세스의 각 사전 실행 중에 MCU / MPU에 의해 사용할 수있는 '자원'의 평가를 필요로합니다. 따라서 우선 순위 arbitary 전화하십시오. 라운드 로빈 방식을 위해서는 각 프로세스가 실행되어야 일정 시간처럼 고정해야합니다. 라운드 로빈은 일반적으로 단순에 대한 동등한 우선 순위를 사용하여 구현됩니다. 예를 들어, 각 프로세스는 "X"기간 내에 또는 50 instuction 라인을 사용하여 실행해야합니다. 현재, 저는 왕복 로빈 방식을 사용하고 내가 전에 임의의 우선 순위를 사용하여 시스템을 통해 지났습니다. 나를 들어, 라운드 로빈이 구현되어야하는 것이 더 쉽습니다 조심스럽게 설계된 경우 매우 강력한 될 수 있습니다. 다른 메서드에 대한 하나의 참고가 일단 더 큰 규모의 시스템을 구현하고,이 임의의 우선 순위를 조심스럽게 아주 effecient 상태 기계를 사용하여 구현되어야합니다. 하루 번째 마지막에는 최고의 스위트 그를​​ 선택하는 디자이너의 최대. 복 많이 받으시고.
 

Welcome to EDABoard.com

Sponsor

Back
Top