6: 2009-11-21 (土) 16:32:11 hideyosi |
7: 2009-11-22 (日) 02:15:35 hideyosi |
| *OSASK-HBとは? [#p5f012b7] | | *OSASK-HBとは? [#p5f012b7] |
| | | |
- | ものすごく簡単に言えば、ほぼゼロから新しくOSASKを興しなおす。OSASKの作り直しバージョンだと思ってください。そのコードネームです。 | + | |
| + | ものすごく簡単に言えば、ほぼゼロから新しくOSASKを興しなおす。OSASKの作り直しバージョンだと思ってください。''第二世代OSASK''。そのコードネームです。 |
| | | |
| **なぜ作り直すのか [#t525a0ac] | | **なぜ作り直すのか [#t525a0ac] |
- | 川合氏いわく・・・ | |
- | 川合氏が「はりぼてOS」や「KHBIOS」などの開発を通じてスキルアップした後の | |
- | 目で旧OSASKを見たとき、これはひどい!と思いました。 | |
- | OSASKは長い間多くの問題点がありながらも、大改修を避けてきました。 | |
- | しかしこれを機にそれらの問題点についても、多くを修正することにしました。 | |
- | HBは「Haribte-Based」を意味していて、OSとしてOSASK-HBは、「はりぼてOS」の | |
- | コードをベースに作りはじめています。 | |
- | これはOSASK-HBを当面はC言語主体で書いてみようと思ったからです。 | |
| | | |
| -ことの経緯は旧OSASK Ver.4.8(試作。一般公開はなし)に手を入れていたあたり | | -ことの経緯は旧OSASK Ver.4.8(試作。一般公開はなし)に手を入れていたあたり |
| COLOR(blue){よく「OSASKはもう終わった」という発言がありますがそれは間違いです。新設計の元、作り直しているのです。} | | COLOR(blue){よく「OSASKはもう終わった」という発言がありますがそれは間違いです。新設計の元、作り直しているのです。} |
| | | |
- | *作り直しによる成果(OSASK-HBの特徴) [#p1a57760] | + | *作り直しによる成果 [#p1a57760] |
| せっかく動いていた旧OSASKを事実上凍結してまで行った作り直し。その成果は??? | | せっかく動いていた旧OSASKを事実上凍結してまで行った作り直し。その成果は??? |
| | | |
| 他のOSは機能密度の高いアプリを作りやすいAPIはどうあるべきかを考えていません。考えたつもりかもしれませんが、そんなのはOSASK-HBからすれば、考えていないに等しいのです。十分な汎用性や表現力を担保しつつ、かつ簡潔な表現を可能にするにはどうしたらいいのか、その答えがOSASK-HBのAPIにはつまっています。 | | 他のOSは機能密度の高いアプリを作りやすいAPIはどうあるべきかを考えていません。考えたつもりかもしれませんが、そんなのはOSASK-HBからすれば、考えていないに等しいのです。十分な汎用性や表現力を担保しつつ、かつ簡潔な表現を可能にするにはどうしたらいいのか、その答えがOSASK-HBのAPIにはつまっています。 |
| | | |
- | このほかにもhexdump.g01やcalendar.g01など、紹介したいものはたくさんありますが、きりがないのでここまでにしておきます。 | + | **アプリの互換性 [#vb864eb7] |
- | | + | |
- | *OSASK-HBの特徴(アプリの互換性): [#vb864eb7] | + | |
| | | |
| OSASK-HBのアプリは他のOS上で実行可能!?? | | OSASK-HBのアプリは他のOS上で実行可能!?? |
| しかしOSASK-HB用のアプリはのエミュレータを使わずに''efg01''と呼ばれる20KB程度のローダを使うだけで、Windows上での実行が可能です(efg01の大きさはバージョンabcdw014時のもの)。 | | しかしOSASK-HB用のアプリはのエミュレータを使わずに''efg01''と呼ばれる20KB程度のローダを使うだけで、Windows上での実行が可能です(efg01の大きさはバージョンabcdw014時のもの)。 |
| | | |
- | -COLOR(blue){efg01つーのが専用のエミュレータってところか? そんなふうに考えてもらっていいと思います。} | + | -COLOR(Purple){efg01つーのが専用のエミュレータってところか?} |
- | -COLOR(blue){「なんだよQUMEがあるのにわざわざ独自エミュ作ったのかよバカバカしい!」} | + | -COLOR(blue){そんなふうに考えてもらっていいと思います。} |
| + | -COLOR(Purple){「なんだよQUMEがあるのにわざわざ独自エミュ作ったのかよバカバカしい!」} |
| -COLOR(blue){まぁそんなふうに考えることもできるでしょう。} | | -COLOR(blue){まぁそんなふうに考えることもできるでしょう。} |
| | | |
| --まずは。圧倒的に小さい小さいってこと。QUME等はPC/ATが持つすべての機能をエミュレートしないといけません。機能・プログラムは複雑になり、速度も問題になってきます。efg01は本体がたったの20kbです。 | | --まずは。圧倒的に小さい小さいってこと。QUME等はPC/ATが持つすべての機能をエミュレートしないといけません。機能・プログラムは複雑になり、速度も問題になってきます。efg01は本体がたったの20kbです。 |
| | | |
- | 他の独自OS(旧OSASKを含む) | + | 他の独自OS(旧OSASKを含む)~ |
| ネイティブアプリ → 各種独自OS → QEMU → 実際のOS(Win・Linux・MacOSX等)→ 実機が動作 | | ネイティブアプリ → 各種独自OS → QEMU → 実際のOS(Win・Linux・MacOSX等)→ 実機が動作 |
| | | |
- | efg01を使い、OSASK-HBアプリを実行 | + | efg01を使い、OSASK-HBアプリを実行~ |
| ネイティブアプリ → eg01 → 実際のOS(Win・Linux・MacOSX等)→ 実機が動作 | | ネイティブアプリ → eg01 → 実際のOS(Win・Linux・MacOSX等)→ 実機が動作 |
| | | |
| --これを見ただけでも無駄を大きく省いていることが解ると思います。 | | --これを見ただけでも無駄を大きく省いていることが解ると思います。 |
| | | |
| + | ***efg01は既にLinux用・MonaOS用・MEG-OS用もある [#d5679f77] |
| | | |
- | | + | はりぼてOS用・旧OSASK用、その気になればTownsOS用やDOS汎用(DOS|Extender的なもの)もそう難しくないらしい。 |
- | **efg01は既にLinux用・MonaOS用・MEG-OS用もある(はりぼてOS用・旧OSASK用も可能) [#d5679f77] | + | |
- | | + | |
- | その気になればTownsOS用やDOS汎用(DOS|Extender的なもの)もそう難しくないらしい。 | + | |
| 基本的にx86用32bitOSであれば、ほとんど対応可能なはずです。 efg01の移植には多少の苦労が伴いますが、それさえできれば、OSASK-HB用のアプリは''再コンパイルしなくてもバイナリのまま''動いてしまうのです。それに苦労といってもたかが20KBのアプリです。それだけで全てのOSASK-HB用のアプリが使えるようになるのですから、安いものです。 | | 基本的にx86用32bitOSであれば、ほとんど対応可能なはずです。 efg01の移植には多少の苦労が伴いますが、それさえできれば、OSASK-HB用のアプリは''再コンパイルしなくてもバイナリのまま''動いてしまうのです。それに苦労といってもたかが20KBのアプリです。それだけで全てのOSASK-HB用のアプリが使えるようになるのですから、安いものです。 |
| | | |
| この「エミュレータなしで実行可能にする」を実現しようとすると、APIの設計の選択肢が減ります。そのため旧OSASKアプリでは実現できませんでしたし、他のOS用のアプリでもこのような特徴を挙げているものはほとんどないと思います。サイズの追求という面とは競合もしています。つまりこのバイナリ互換を捨てれば、アプリサイズはもっと小さくできたのです。・・・しかしこれは逆にとらえてほしいです。互換性まで盛り込みながらも、このサイズを達成できているのだ、と。 | | この「エミュレータなしで実行可能にする」を実現しようとすると、APIの設計の選択肢が減ります。そのため旧OSASKアプリでは実現できませんでしたし、他のOS用のアプリでもこのような特徴を挙げているものはほとんどないと思います。サイズの追求という面とは競合もしています。つまりこのバイナリ互換を捨てれば、アプリサイズはもっと小さくできたのです。・・・しかしこれは逆にとらえてほしいです。互換性まで盛り込みながらも、このサイズを達成できているのだ、と。 |
| | | |
- | **バイナリのまま互換を保てることで生まれる可能性 [#qa94293b] | + | ***バイナリのまま互換を保てることで生まれる可能性 [#qa94293b] |
| -当然ですが、「OSASK用」に作ったアプリを他のOSで動かそうとすると丸々移植・・・いやそれどころか事実上作り直しになるでしょう。 | | -当然ですが、「OSASK用」に作ったアプリを他のOSで動かそうとすると丸々移植・・・いやそれどころか事実上作り直しになるでしょう。 |
| -せっかく苦労してアプリを作ってもOSASKでしか動かない。アプリを作ってくださる人のモチベーションを大きく下げる要因かもしれません | | -せっかく苦労してアプリを作ってもOSASKでしか動かない。アプリを作ってくださる人のモチベーションを大きく下げる要因かもしれません |
| -しかしOSASK-HP用に作ったアプリはソース互換どころかefg01によってバイナリが直接動作します。つまり、「移植をする」という手間どころか概念が不要になるのです! | | -しかしOSASK-HP用に作ったアプリはソース互換どころかefg01によってバイナリが直接動作します。つまり、「移植をする」という手間どころか概念が不要になるのです! |
| | | |
- | *OSASK-HBの実用性: [#z893df63] | + | *実用性 [#z893df63] |
| | | |
| COLOR(red){APIがいくらもない物が小さくても当たり前だろw なんも作れネェよこんなんじゃwww} | | COLOR(red){APIがいくらもない物が小さくても当たり前だろw なんも作れネェよこんなんじゃwww} |