ARM版Minixのマルチコア対応

ARM版Minixをしこしこvirtボードに移植したり、ここ1年くらいはマルチコア化をのんびりやってたんだけどついに動いてしまった。

最初はなんでかCPU2が起きなくて、qemuをシングルコアで起動してたことに気づくとか
そんなお粗末な感じだったんですけど世の中そんなもんさ。。

とりあえず動かしたのはqemuのvirtボードなので実機ではないんだけど、骨組みはできたと言うことなので実機に持って行くのも難しくないと思う。

4コア。そのうちラズパイに持って行きたいと考えている。

ちょっと情報は整理できてないのでそのうち纏めますね。

まだvirtioでつまづくんですよね。実機にvirtioはないのでもう実機に移植した方が早いかもしれないですけど(苦笑)

 

追記2023.2.15

virtioは問題なくて単に割り込みの対応漏れでした。

それ直すと進み始めたけど、途中でクラッシュするので何かまだ隠れてそう。

同じコードをCPUだけ一個に制限すると動くのでほんとにマルチコアでしか動かない部分よな…

 

追記2023.2.20

ちゃんとうごいたヽ(´▽`)ノ 元々のARM実装が排他が不十分な雑な実装でしたああ。
マルチコア対応なんかしてないもんね。
これソースコード公開したらいいんやろか。勝手に公開して良いんかな。いやライセンス上は問題ないんですけどね。
どうせならVUAにフィードバックしたいよな。。(整形とかめんどう)