Hi, <br>In the sample test it uses rtems_task_wake_after() to preempt the task.<br>And i will check whether the clock tick is report to partition OS rightly. But<br>i am also confused why the first schedules cycle is running successfully.<br><br>Wenjie<br>Best Regards<br><div></div><br><pre><br>At 2011-07-06 03:50:51,"Cláudio Silva" <claudiodcsilva@gmail.com> wrote:
>Hi,
>
>How are you preempting the tasks in each partition? rtems_task_wake_after()?
>
>If so it is possible that the problem is in how the clock ticks are
>reported to each partition. Just before the partition starts
>executing, the PMK reports all the ticks that passed since the last
>time the partition ran.
>
>
>Regards,
>Cláudio
>
>2011/7/5 张文杰 <157724595@163.com>:
>> Dear all mentors and rtems users:
>> I am very glad to report the progress of GSOC2011 hypervisor for RTEMS. In
>> the past about one month my main work is to
>> merge the Hypervisor and partition OS which is based on rtems4.8.1 to the
>> latest RTEMS version. Until now i have basically
>> realized the goal that the sample test case can run successfully on this
>> platform despite of a small bug. By the way all above
>> work is based on LEON3 hardware platform.
>> About the merge of Hypervisor the main work is to modify the LEON3 BSP
>> code and very little score code related to sparc cpu.
>> Because the Hypervisor kernel code is independent to RTEMS code and is also
>> build separately. So this part of merge is just a
>> patch for LEON3 BSP to RTEMS latest version.
>> About the merge of Partition OS the main work is to development a new BSP
>> for all sparc architecture and also very little
>> modified code to score code related to sparc cpu. And another work is to
>> update the build environment of sample test including
>> Makefile and linkerfile
>> And now the sample test can successfully schedule a cycle including four
>> partitions OS and each partition with three or four
>> tasks. But when it schedule the second cycle it will only execute each
>> partition OS‘ idle task. For example, the schedule table
>> arrange the schedule order as follow:
>> P1->P2->->P3->P4->P1->P2->P3->P4->......... and each partition OS arrange
>> its tasks
>> execution order is as follow :P1: P1A->P1B->P1C->P1idle P2:
>> P2A->P2B->P2idle P3: P3A->P3B->P3C->P3idle P4: P4A->
>> P4B->P4C->P4idle. so the first overall schedule cycle order is as follow:
>> P1A->P1B->P1C->P1idle->P2A->P2B->P2idle->P3A->P3B->P3C->P3idle->P4A->P4B->P4C->P4idle
>> The above is successfully test on the platform of Hypervisor and Partiton OS
>> all based on RTEMS4.11. But when the second
>> schedule cycle starts all the partiton OS is entering into idle tasks all
>> the time. Tobias, any idea about this problem?
>> Any comments is welcome.
>>
>> Wenjie
>> Best Regards
>>
>>
>>
>>
>>
>> _______________________________________________
>> rtems-users mailing list
>> rtems-users@rtems.org
>> http://www.rtems.org/mailman/listinfo/rtems-users
>>
>>
</pre><br><br><span title="neteasefooter"><span id="netease_mail_footer"></span></span>