<div dir="ltr">Hi,Gedare:<div><br></div><div>Thank you for your suggestion.</div><div><br></div><div>In the function bootcart() in the file c/src/lib/libbsp/<span style="white-space:pre-wrap">shared/bootcard.c, there is a function </span><font color="#000000"><span style="white-space:pre-wrap">rtems_interrupt_disable</span></font> which will be compiled to be instruction "cli" in x86 platform. And the cli is also the reason why I failed to startup POK partitions [1]. </div>

<div><br></div><div>Now I consider there are two ways to solve the problem.One I called functional solution, The other I called instruction solution. That is say , we replace some functions with sensitive instructions or replace every instructions. The first approach seems to be easy to implementation, however maybe not easy to transplant to other platform. I'm more familiar with the second approach, but to implement the whole project will spent more time. And once we finish this project, we can easily implement paravirtualization to other platform. And if design properly, will also easily to transplant RTEMS to other hypervisor.</div>
<div><br></div><div>Or we have to mix this two solutions, This needs more discussion and should be thoughtful and deliberate.</div><div><br></div><div>By the way, I'm going to post a blog about the POK initiation and interrupt system this weekend.</div>

<div><br></div><div>[1]. <a href="http://listengine.tuxfamily.org/lists.tuxfamily.org/pok/2014/03/msg00003.html" target="_blank">http://listengine.tuxfamily.org/lists.tuxfamily.org/pok/2014/03/msg00003.html</a><br></div>
<div><br></div><div>---</div><div>Best Regards.</div><div>Youren Shen.</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Mar 20, 2014 at 10:04 PM, Gedare Bloom <span dir="ltr"><<a href="mailto:gedare@rtems.org" target="_blank">gedare@rtems.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Youren Shen,<br>
<br>
It looks like the problem you are having is that RTEMS "hello world"<br>
executes a sensitive instruction? There should not be any such<br>
instruction when you use the --enable-paravirt option, so you need to<br>
determine where this instruction gets executed. The best way to do<br>
this is to hook gdb up to an executing qemu. You can start qemu with<br>
some -S option to prevent the boot sequence from starting to give you<br>
some time to load gdb and connect it to qemu's gdbserver socket. once<br>
you have done this, you should be able to set some breakpoints in the<br>
pok/hello application to step through the program, or you might be<br>
able to catch exceptions before they get raised to pok. The other<br>
option should be that inside pok there should be some information<br>
about the source of the exception that you might investigate.<br>
<br>
Please keep us informed about your progress on this problem,<br>
Thanks,<br>
Gedare<br>
<div class="HOEnZb"><div class="h5"><br>
On Thu, Mar 20, 2014 at 9:16 AM, Youren Shen <<a href="mailto:shenyouren@gmail.com">shenyouren@gmail.com</a>> wrote:<br>
> Hi,Gedare<br>
><br>
> Maybe it's because my qemu version is low or POK has change the kernel, I<br>
> can't run the RTEMS Hello world on my computer anymore.<br>
><br>
> The problem has spent me a few days to find. More details see this mails.<br>
><br>
> [1].<br>
> <a href="http://listengine.tuxfamily.org/lists.tuxfamily.org/pok/2014/03/msg00000.html" target="_blank">http://listengine.tuxfamily.org/lists.tuxfamily.org/pok/2014/03/msg00000.html</a><br>
><br>
> -----<br>
> Best Regards.<br>
> Youren Shen.<br>
><br>
><br>
> On Thu, Mar 20, 2014 at 8:03 PM, Philipp Eppelt<br>
> <<a href="mailto:philipp.eppelt@mailbox.tu-dresden.de">philipp.eppelt@mailbox.tu-dresden.de</a>> wrote:<br>
>><br>
>> On 03/16/2014 01:01 PM, Youren Shen wrote:<br>
>> > Hi, every one:<br>
>> ><br>
>> > I have write a blog about how to build the RTEMS on POK. However, the<br>
>> > RTEMS can't run on POK now. Here is my blog[1].<br>
>> ><br>
>> > [1].<br>
>> > <a href="http://huaiyusched.github.io/rtems/2014/03/15/how-to-run-rtems-on-pok/" target="_blank">http://huaiyusched.github.io/rtems/2014/03/15/how-to-run-rtems-on-pok/</a><br>
>> > --<br>
>> > Best Regards.<br>
>> > Youren Shen.<br>
>><br>
>><br>
>> Hi Youren,<br>
>><br>
>> great!<br>
>> A screenshot of RTEMS HelloWorld sample running on POK would be even<br>
>> better :).<br>
>><br>
>> Cheers,<br>
>> Philipp<br>
><br>
><br>
><br>
><br>
> --<br>
> Best Regards.<br>
> Youren Shen.<br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr">Best Regards.<div>Youren Shen.</div></div>
</div>