5: 2009-11-20 (金) 23:23:07 hideyosi |
6: 2009-11-21 (土) 16:32:11 hideyosi |
| | | |
| | | |
| + | COLOR(green){''※''ただし。この第二世代OSASKは旧OSASKのように単独で動作するOSという形にはなりえていません。誤解を恐れずに言えば、新OSASKへのたたき台・部分試作的な色合いが強いです。単独で動く新OSASKは、これから着手が予定されている第三世代OSASKにてとなるようです} |
| | | |
| | | |
| | | |
| | | |
- | | |
- | なく、旧OSASKに対して見劣りすることを含めても、それでもこの成果は現段階でリリースするに値します(将来的にはもちろんGUIのAPIも追加されます)。世界中に似たようなことを志している人はいるかもしれませんが、その人たちが私たちの技術を学ばずにOSASK-HBを追い抜くことはまず無理でしょう。いや追いつくことすら無理でしょう。 | |
| | | |
| -いくつかの例 | | -いくつかの例 |
| --OSASK-HBのアプリにはcpy.g01というものがあり、これはファイルのコピーや連結を行うことができるアプリです。このアプリは引数無しで起動すると、usageが出力されます。 | | --OSASK-HBのアプリにはcpy.g01というものがあり、これはファイルのコピーや連結を行うことができるアプリです。このアプリは引数無しで起動すると、usageが出力されます。 |
| | | |
- | usage>cpy.g01 [in:]input-file [[in:]input-file]... out:output-file | + | >> usage>cpy.g01 [in:]input-file [[in:]input-file]... out:output-file |
| | | |
| ---これの文字数を数えると、66文字あります。しかしながらこのcpy.g01というファイルは45バイトしかありません。たったの45バイトでも、コピーや連結ができる上に、66バイトものusage出力が可能なのです。それがOSASK-HBの常識であり、x86の本当の能力なのです。 | | ---これの文字数を数えると、66文字あります。しかしながらこのcpy.g01というファイルは45バイトしかありません。たったの45バイトでも、コピーや連結ができる上に、66バイトものusage出力が可能なのです。それがOSASK-HBの常識であり、x86の本当の能力なのです。 |
| | | |
| この「エミュレータなしで実行可能にする」を実現しようとすると、APIの設計の選択肢が減ります。そのため旧OSASKアプリでは実現できませんでしたし、他のOS用のアプリでもこのような特徴を挙げているものはほとんどないと思います。サイズの追求という面とは競合もしています。つまりこのバイナリ互換を捨てれば、アプリサイズはもっと小さくできたのです。・・・しかしこれは逆にとらえてほしいです。互換性まで盛り込みながらも、このサイズを達成できているのだ、と。 | | この「エミュレータなしで実行可能にする」を実現しようとすると、APIの設計の選択肢が減ります。そのため旧OSASKアプリでは実現できませんでしたし、他のOS用のアプリでもこのような特徴を挙げているものはほとんどないと思います。サイズの追求という面とは競合もしています。つまりこのバイナリ互換を捨てれば、アプリサイズはもっと小さくできたのです。・・・しかしこれは逆にとらえてほしいです。互換性まで盛り込みながらも、このサイズを達成できているのだ、と。 |
- | | |
- | せっかく苦労して作ったアプリがOSASK-HBでしか動かないなんて、寂しいではありませんか。最高のアプリを、好きなOSの上で使ってもらう、これこそがKの理想です。仮に機能密度の低いアプリがOSを超えて利用できたとしても、そんなものは使う気がしないというものです。 | |
| | | |
| **バイナリのまま互換を保てることで生まれる可能性 [#qa94293b] | | **バイナリのまま互換を保てることで生まれる可能性 [#qa94293b] |
- | えーと・・・・ | + | -当然ですが、「OSASK用」に作ったアプリを他のOSで動かそうとすると丸々移植・・・いやそれどころか事実上作り直しになるでしょう。 |
| + | -せっかく苦労してアプリを作ってもOSASKでしか動かない。アプリを作ってくださる人のモチベーションを大きく下げる要因かもしれません |
| + | -しかしOSASK-HP用に作ったアプリはソース互換どころかefg01によってバイナリが直接動作します。つまり、「移植をする」という手間どころか概念が不要になるのです! |
| | | |
| *OSASK-HBの実用性: [#z893df63] | | *OSASK-HBの実用性: [#z893df63] |
| | | |
- | ここまでの説明だと、実用性に乏しいhelloなどが極端に小さいサイズで書けて、それでそれが他のOSでも動くだけ、なんていう印象を持つかもしれません。しかし現状はもう少し進んでいます(バージョンabcdw014時点)。 | + | COLOR(red){APIがいくらもない物が小さくても当たり前だろw なんも作れネェよこんなんじゃwww} |
| | | |
- | たとえば、OSASKや「はりぼてOS」の開発ツールの定番に、naskというアセンブラがあります。このnaskはwin32版で27,648というサイズで、x86用アセンブラとしては世界最小をうたっています。このサイズは当時から「さすがだ」とたくさんの人に評価していただきました。しかし実はこのnaskはすでにOSASK-HB用に移植が完了していて、そのサイズは22,824です。つまり4,824バイトも小さくなっているのです。機能は全く損なっていませんし、先のefg01を持っていれば、この小さくなったnaskもWindows上で実行できます。そればかりか、Linux上でも、ほかのOS上でも動くのに、こんなに小さくなったのです。 | + | おっと。こう考える人もいるかもしれませんね。(現にまだまだAPIは不足しています) |
| + | |
| + | でもそう考えるのは早計ですよ。アナタが望むアプリはまだ作れないかもしれませんが、既に''十分実用''できるものが作られ、実際に動いています。 |
| + | |
| + | -例:nask |
| + | --OSASKや「はりぼてOS」の開発ツールの定番に、naskというアセンブラがあります。(naskについてはこちら) |
| + | --naskはwin32版で27,648というサイズで、x86用アセンブラとしては世界最小をうたっています。このサイズは当時から「さすがだ」とたくさんの人に評価していただいています。 |
| + | --このnaskはすでにOSASK-HB用(efg01で動く)に移植が完了していて、そのサイズは22,824です。つまり4,824バイトも小さくなっているのです。 |
| + | --naskは決して高機能とは呼べない(GAS等のモンスター級に比べればw)単機能アセンブラですが、現に旧OSASK・そのアプリ・はりぼてOSのコンパイルに実際に使用されています。そしてこの移植時にそれらの機能はなにも損なっていません。 |
| + | --先のefg01を持っていれば、この小さくなったnaskもWindows上で実行できますしLinux上でも動いています。(当然eft01さえ移植すれば、他のOS上でも動きます。) |
| + | --こんなに小さくなったのに・・・・ |
| | | |
| | | |
| | | |
| 技術的な細部に興味があるひとは、とりあえず http://wiki.osask.jp/?OsaTech を見てください | | 技術的な細部に興味があるひとは、とりあえず http://wiki.osask.jp/?OsaTech を見てください |
- | | |
- | | |
| | | |
| *問題点は? [#g7ceb1dd] | | *問題点は? [#g7ceb1dd] |
| -残念ながら現時点ではGUIまわりのAPIが装備されていません。 | | -残念ながら現時点ではGUIまわりのAPIが装備されていません。 |
| -OSASK-HBのアプリケーションフォーマットやAPIは、残念ながら旧OSASKとは互換性のないものになっています(とはいえ、APIブリッジなどでサポート可能ではありますが)。 | | -OSASK-HBのアプリケーションフォーマットやAPIは、残念ながら旧OSASKとは互換性のないものになっています(とはいえ、APIブリッジなどでサポート可能ではありますが)。 |
| + | -ドキュメントやサンプル等、作ってみたい人へのフォローが貧弱すぎる(汗 |