現在オペーレーティングシステム(プラットホーム)の主なものと言えば、Windows、UNIX、MAC の3つに大別されます。 ユーザ側はそれらの内どれか1つを選択して使っていけばいいのですが、ソフトを開発する側はそうゆう訳にはいきません。 オペレーティングシステムを限定すると、市場自体も限定してしまうからです。 同じ開発環境で複数のプラットホームに対応できれば、ソフト開発者の負担が大幅減となります。 UNIX と Windows の両方をサポートした開発環境を実現したものとして CYGWIN や QT ライブラリがありますが、 いずれもソース互換である為にそれぞれの環境でコンパイル,デバッグする必要があります。
Winux Project では一歩進んだ「バイナリ互換」を目指し、この文書でその具体的な方法を述べてゆきます。
同様な情報は私が検索した限りではないと思いますが、NASM などのアセンブラプログラミングについて記述したドキュメントは 参考になると思います。私はアセンブラを知らないプログラマーはプロではないと考えます。
この文書は初版です。
この文書の原文についての質問やコメントは、お気軽に eno538 (eno538@eno538.com) までメールしてください。どのような提案や批判でも歓迎します。もし原文の文書中に間違いを見つけたら、 次の版では訂正しますのでどうか私に知らせてください。