On Tue, Aug 10, 2004 at 10:04:43AM +0200, Gilles Chanteperdrix wrote: > > > xnshadow_schedule() - issued a syscall, which is handled in the rthal > > > domain and calls there the scheduler, allowed from > > > linux domain (also from rthal, but makes no sense) > > > xnpod_schedule() - directly calls the scheuler, only permitted from > > > the rthal domain > > > > > > i think i've understand the usage of the 2 above, but i don't get when > > > to use this one.... > > > > > > xnarch_escalate() - triggers an adeos irq, which is handeled in rthal > > > domain (?), sets resched bit and calls the scheuler
> The irq handler is xnpod_schedule_handler, the reason why it sets the > resched bit is because this handler is also used to handle reschedule > IPIs, this is useless when triggering an escalation request. > The escalation request is used to cause the execution of real-time tasks > in the rtai domain when they are created from the Linux domain. If we > did not use this mechanism, the real-time task could run in the Linux > domain, and be interrupted by Linux IRQs, which is not what we want... Oh - I see. So calling the xnarch_escalate() here, has the same effect as xnshadow_schedule(), but probably less overhead, due to no syscall demultiplexing etc... tnx - marc -- #!/bin/sh set - `type $0` 'tr "[a-zA-Z]" "[n-za-mN-ZA-M]"';while [ "$2" != "" ];do \ shift;done; echo 'frq -a -rc '`echo "$0"| $1 `'>$UBZR/.`rpub signature|'`\ echo $1|$1`'`;rpub "Jr ner fvtangher bs obet. Erfvfgnapr vf shgvyr!"'|$1|sh
