多層化する言語世界
こんな記事を見つけました.
マシン語を知らない子ども達(2007.9.11)
まぁ、荒れているようです・・・
最近、言語も多層化して、低レベル層の知識がない技術者が多いようですね.
個人的にはマシン語の知識は必要スキルだと思いますが、現実はそんなふうにもいかないとも思っています.そもそもJavaやPHPは高度に抽象化されすぎて、中間層に関する知識はそんな容易に取得できるものではないです.
さらに言えば、中途半端なコンピュータ概要程度の知識ではプログラムの最適化はできないでしょう.そうなると、おのおのの層の人間がその層で出来る限りの最適化を図っていく方針のほうが現実味があります.JavaプログラマはJava言語の層で、JVMメンテナの方々は、その層で・・・
とはいえ、そんな状況下でもマシン語をやりたいというマゾなあなたにナイスなオープンソースソフトウェアがあります(コッチが本題)、MikeOSというものです.
BSDライセンスで配布されている、学習用のOSというポジションらしい(ドキュメントによると)です.
リアルモードで動くOSで、実行ファイルはMSのCOMをサポートしています.主な入出力はBIOSで行い、極力見通しの良いソースを目指しているようです.
全く知識がない状態からソースを読むには厳しいと思うので、以下の本を参考にするとよいかも.
はじめて読む8086―16ビット・コンピュータをやさしく語る(アスキーブック/1987.3)
はじめて読むMASM―ソフトウェア環境のからくりを学ぶ(蒲地 輝尚/アスキー/1988.8)
どちらも、かなり古い本ですが、とてもよい本です.
あ、あと、フロッピーの構造に関する知識とBIOSのアクセス方法の知識が必要です.
これらを糧に、目指せばバイナリアン.
| 固定リンク
| トラックバック (0)