(toppers-users 4575) Re: SafeG - ノントラストOSの再起動について

Shinya Honda honda @ ertl.jp
2016年 7月 15日 (金) 12:23:23 JST


建部さん

本田です.

safeg_syscall_restarnt() はターゲット毎に実装する必要があります.
i.mx6に関しては再起動処理は実装されていないので,実装していただく必要が 
あります.

以上,よろしくお願いします.

On 2016/07/15 11:12, Yoshitaka Takebe wrote:
> セックの建部です。
>
> 最近、多投しており、申し訳ございません。
>
> 再度、SafeGまわりで質問させて頂きたいと思います。
>
>
> "safeg_syscall_restarnt()"をトラスト側から呼ぶと、
> ノントラスト側のアプリケーションを再起動できると思いますが、
> この機能を試してみたところ、ノントラスト側が再起動いたしません。
>
> 使い方や前提条件が誤っているでしょうか?
> チェックポイントなど、教えて頂ければ幸いです。
>
>
> 実行環境:i.MX6のCPUボード(MCIMX6-SDB)
>
> 実行しているプログラムの内容:
>
>   ・"shared_mem"サンプルを拡張して試しました。
>
>   ・トラスト側で、起動後10秒後(10回目の周期タスク起動時)に、
>     "safeg_syscall_restartnt()"、"target_do_reboot()"を呼び出す
>     ようにしました。
>
>     ※ "target_do_reboot()"関数は、空関数ですが、ここに何か実装する必要は
>        ありましたでしょうか?
>
>   ・safeg_syscall_restartnt()の呼び出しまでは、NT側で書き込みを行う
>     メモリ領域の内容が改変されましたが、
>     safeg_syscall_restartnt()呼び出し以降、その領域が"0"になりました。
>
>     ※ この領域がなぜ"0"になるのか、も疑問となっている点です。
>        メモリマップとしては、マニュアルの手順に沿って、以下のように配置しています。
>
>        ノントラスト: 0x17800000
>        monitor     : 0x4f000000
>        トラスト    : 0x4f100000
>        共有メモリ  : 0x4f800000 (=TARGET_COM_SHMEM_ADDRESS)
>
>
>   ・トラスト側のプログラムは、"safeg_syscall_restartnt()"呼び出し後も動作しています。
>     (UARTのコンソールで確認)
>
>
>
> すみませんが、よろしくお願いします。
>
> 以上です。
>