HN🔥 881
💬 205

Windows 9xでLinuxを動かす?「Windows 9x Subsystem for Linux」という衝撃のプロジェクト

sohkamyung
約20時間前

ディスカッション (11件)

2
rahen
約20時間前

WSLが登場する前、Windows上で未改変のLinuxバイナリを動かすベストな方法はCoLinuxとflinuxだったな。

http://www.colinux.org/

https://github.com/wishstudio/flinux

flinuxは基本的にWSL1と同じアーキテクチャだったけど、CoLinuxの方はサイドロードしたLinuxカーネルを使うWSL2に近い感じだった。

技術的にはCygwinが正攻法だったんだ。無理やりLinuxの仕組みを組み込むんじゃなくて、Windows上でネイティブなPOSIXバイナリを動かすわけだからね。単にリンクするDLL(の集まり)だけで済むから、Ring 0をいじくり回す必要もなくて余計なゴミも溜まらない。

とはいえ、当時は便利なCLIパッケージマネージャーがなかったし、Windowsで作業しなきゃいけない時はCoLinuxにどっぷりハマってたのを覚えてる。

3
scoopr
約20時間前

つまり、colinux[0]みたいなものだけど、NT以前のWindows向けってこと?面白い!

まだWindowsを使ってた頃(多分XP時代)、私もcolinuxを使ってたよ。あれは結構すごかった。Linux側でLAMPスタックみたいなのを構築するのがずっと楽になったし、Windowsのエディタで編集して開発環境を構築するのはかなり快適だったと思う!Windows上のX11サーバーを試して、Windowsの上でLinuxデスクトップを使ったりもできたしね。

Windows上でどんどんUnixっぽい環境を求めるようになっていった結果、最終的にmacOSに乗り換えたんだけど。

純粋なハックとしての価値は別として、実際の用途があるとはあまり思えないな。486時代のマシンだとすぐにメモリ不足になるだろうし!

[0] http://colinux.org/

4
ChrisRR
約19時間前

マイクロソフトの命名規則に従うなら、これは「Linux Subsystem for Windows」になるべきだね。

5
gblargg
約18時間前

Proudly written with zero AI.

残念ながらこれは曖昧だな。「Zero AI」っていう名前のAI製品が存在するから。

6
andai
約16時間前

この人、魔法使いなの?

私からすると不可能にしか見えないよ。

でも、仕組みを理解している人にはどう見えているんだろう?

あるジョークを思い出したよ。

2人の数学者が話していて、一方が定理を「自明だ」と言う。2時間かけて説明した後、もう一方も「確かに自明だ」と同意する。

7
ryanshrott
約15時間前

NTカーネル(NT 3.1から2000、XPで使われ、最終的にWindows 10/11のWSLにもバックポートされたもの)は、1993年の設計当初からPOSIXサブシステムを持つことを前提にゼロから作られたんだ。設計思想全体が「マルチパーソナリティ」で、異なる環境からのシステムコールをネイティブなNTカーネルのコールに変換して処理するというものだった。2016年のWSL1は、基本的に同じトリックをLinux向けに再実装したものと言える。

対照的にWindows 9xはDOS派生だから、その上でLinuxを動かすには全く別物で、しかももっと面倒なハックが必要になる。だから当時誰もやらなかったんだろうね。これが動いているという事実そのものが、NTのアーキテクチャがいかに時代を先取りしていたかの証だよ。

実用的な答えとしては、レガシーで縛られている状況ではこういうのが必要になるんじゃないかな。Windows 98でしか動かない古い医療系や産業系のソフトとか、モダンなドライバーが存在しない特殊なハードウェアとか。とはいえ、2026年に486機を持っているなら、わざわざ30年前のDOS派生OS上でLinuxを動かすより、ネイティブでLinuxを動かす方が間違いなく有益だろうけどね。

8
saadn92
約14時間前

「Show HNへの投稿が3倍になり、そのほとんどが雰囲気だけで作られたような見た目になった」という投稿と同じ日にこれがフロントページにあるのは、なんだか嬉しいね。片方は6年かけてWin9xの内部構造を理解し、その上でモダンなLinuxカーネルを動かそうとしている。もう片方のスレッドは、20分でプロンプトを叩いて生成したアプリで溢れかえっている。こういう投稿を見ると嬉しくなるよ。

10
spijdar
約8時間前

Windows 3.xや9xのアーキテクチャを解説している良い資料ってないかな?「VMモニター」があるとか、こういう類のものへのサポートがあるとか、断片的な知識はあるんだけど、詳細はあちこちに散らばっている。「WindowsはDOSの上で動いているだけ」なんてまとめられがちだけど、それは明らかに間違いだし。もちろん、現代の言葉で言うところの「仮想マシン」そのものを使っているわけじゃないだろうけど、確実にクールで技術的な何かが裏で行われているはずで、多くのソースではそこが省略されている気がするんだ。

このプロジェクトが「BSD on Windows」( https://archive.org/details/bsd-on-windows )とどれくらい似ているのかも気になるな。

あと、https://en.wikipedia.org/wiki/Architecture_of_Windows_9x は知ってるけど、私の知りたい欲求を満たすにはちょっと内容が薄いんだよね。