ishikawa
2014年6月25日 18時00分
ミタニです。
いつもお世話になっております。
現在、Cで液晶へGUI表示するアプリを作成してArmadillo-440で動作させています。
このアプリから、GUIでメニュー選択すると再起動させたいのですが、どのようにすれば可能でしょうか?
できれば、電源オフ→オンと同様のBootLoaderからの再起動を希望します。
以上、よろしくお願いいたします。
コメント
ishikawa
ミタニです。
初歩的な質問にお答えいただき、ありがとうございました。
無事、再起動できました。
> 中村です。
>
> > できれば、電源オフ→オンと同様のBootLoaderからの再起動を希望します。
>
> 誰かが書くのでは・・・、と様子見だったのですが、ないようなので。
>
> ハード的にリセットをかけるのではなく、
> ソフトウェアによる再起動でいいのですよね?
>
> 他のプロセスを殺したりsyncしたりする必要があるなら、
> rebootコマンドをsystem()で呼び出すのがいいと思います。
> system("reboot");
>
> Armadillo-4x0のrebootコマンドが何をやっているかは、
> busyboxの次のソースを見ればわかります。
> atmark-dist/user/busybox/busybox-1.00.rc3/init/reboot.c
> atmark-dist/user/busybox/busybox-1.00.rc3/init/init_shared.c
>
> いきなり再起動していいなら、reboot()関数を次のように呼び出します。
> (上に書いたrebootコマンドは最後にこれをコールして再起動してます)
> reboot(LINUX_REBOOT_CMD_RESTART);
>
> ブートローダー(Hermit-At)からの再起動になります。
>
> --
> なかむら
>
y.nakamura
2014年6月26日 13時02分
中村です。
> できれば、電源オフ→オンと同様のBootLoaderからの再起動を希望します。
誰かが書くのでは・・・、と様子見だったのですが、ないようなので。
ハード的にリセットをかけるのではなく、
ソフトウェアによる再起動でいいのですよね?
他のプロセスを殺したりsyncしたりする必要があるなら、
rebootコマンドをsystem()で呼び出すのがいいと思います。
system("reboot");
Armadillo-4x0のrebootコマンドが何をやっているかは、
busyboxの次のソースを見ればわかります。
atmark-dist/user/busybox/busybox-1.00.rc3/init/reboot.c
atmark-dist/user/busybox/busybox-1.00.rc3/init/init_shared.c
いきなり再起動していいなら、reboot()関数を次のように呼び出します。
(上に書いたrebootコマンドは最後にこれをコールして再起動してます)
reboot(LINUX_REBOOT_CMD_RESTART);
ブートローダー(Hermit-At)からの再起動になります。
--
なかむら