[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: reboot without WinCE



こばやしです

 >単純に、AKCOMMIT されたカーネルイメージが存在すれば hot reboot、
 >それでなければ cold reboot ということで良いのではないでしょうか。

始めはそう考えたのですが、そうすると AKCOMMIT された状態で DDB に落ちた場合
DDB の中で cold reboot しようと思っても問答無用で hot reboot しまうなあと
と思って、こういう仕様にしてみたのですが、そのあたりはいかがでしょう。

 >reboot2 -u としたら、/dev/akmem を open/close だけしてカーネルイメージ
 >を解放できるようにしておけば問題ないと思います。

確かにこの機能は必要ですね。

 >(名前は reboot2 じゃなくて、akload とかでしょうか...)

この名前にするなら、デフォルトをカーネルのロードのみにして、-r をつけると
reboot を exec するというようにすると、わかり易そうですね。

 > > 今のところ、akmem のコードは arch/mips/mips/mem.c の中に入っていますが、
 > > arch/hpcmips/hpcmips/akmem.c を新たに作った上で、sys/conf.h を修正する
 > > かわりに新たなメジャー番号を振って、arch/hpcmips/hpcmips/conf.c に追加
 > > すれば、hpcmips の中だけで完結させれますけど、後ろ向きなやり方ですかね?
 >
 >最後の手段ということで。

hpc*以外に「BIOS なり firmware なりから直接 netbsd を boot できず、他の OS
一旦立ち上げる必要がある」という port ってあるんですかね?
amiga はそうなのかな。

 >ところで、TX では動作しないだろうとのことですが、MIPS1 用と MIPS3 用
 >の 2 つがあればいいんでしょうかねえ?

vr_reboot() に入っているアセンブラのコードは、pbsdboot の vr41xx.c のそれ
を多少変更しただけのものですから、tx39xx.c のコードに同様の変更を施して
tx_reboot() の中に入れれば、pbsdboot が機能する機種なら動作すると思います。
私は VR 系のマシンしかもっていませんので、手元ではテストできませんが、もし
テストしてくださる方がおられれば、対応コードは用意します。
もちろん TX を持っている方が作業してくださるほうが、手っ取り早くていいと
思います。
-- 
KOBAYASHI Yoshiaki