當你在瀏覽器中點擊一個鏈接,幾秒鐘后,熟悉的Windows 98桌面出現在眼前——這不是懷舊視頻,而是一個真實運行的操作系統。開發者Fabian Hemmer通過一個名為v86的項目,將100多個操作系統塞進了網頁,從1985年的Windows 1.01到Linux、FreeBSD,再到Android和各種小眾系統,用戶可以像翻閱計算機歷史書一樣體驗這些經典系統。
這個項目的神奇之處在于,它并非通過模擬器還原系統界面,而是讓操作系統在網頁中“原生態”運行。以Windows 98為例,用戶可以打開控制面板調整設置、切換桌面主題,甚至通過IE瀏覽器訪問網頁。盡管受限于瀏覽器兼容性,部分字符顯示異常,但系統核心功能均能正常使用。這種體驗讓許多用戶驚嘆:“這分明是一臺真實的Windows 98在運行!”
實現這一技術奇跡的背后,是Fabian對硬件的極致模擬。他通過代碼構建了一臺虛擬PC,從CPU、顯卡到聲卡、網卡,所有硬件均以軟件形式呈現。操作系統啟動時會對硬件進行檢測,任何行為偏差都會導致崩潰或黑屏。為此,Fabian參考Intel兩千多頁的x86指令集手冊,將每一條規則轉化為代碼,確保虛擬硬件與真實設備無異。僅模擬CPU一項工作,就足以讓大多數開發者望而卻步。
語言障礙是另一大挑戰。操作系統運行的是x86機器碼,而瀏覽器只能執行WebAssembly,兩者需要實時翻譯。v86采用JIT編譯技術解決這一問題:程序啟動時逐條翻譯指令,同時記錄高頻代碼段,將其整體編譯為WebAssembly版本存儲。當用戶再次執行相同操作時,系統直接調用編譯好的代碼,大幅提升運行速度。這種“邊運行邊優化”的機制,讓網頁中的操作系統逐漸變得流暢。
在v86的系統中,用戶能找到許多意想不到的細節。例如,Windows 98桌面上的“sheep.exe”寵物程序會四處奔跑,用鼠標拖動時還會掙扎;DOS系統中預裝了《毀滅公爵》等經典游戲,輸入命令即可開啟1993年的游戲體驗;Android-x86版本甚至保留了側滑菜單和聯系人應用,仿佛將手機系統移植到了網頁。這些細節讓技術演示變成了充滿趣味的互動展覽。
Fabian的極客精神在項目中體現得淋漓盡致。除了v86,他還開發過僅652字節的俄羅斯方塊、456字節的貪吃蛇等超精簡程序,并連續六年用K語言完成Advent of Code編程挑戰。這種“將事情做到極致”的執念,最終轉化為商業價值——他創立的Droplet Computing公司,專注于將桌面應用遷移至瀏覽器環境,核心技術正是基于WebAssembly的v86架構。
從技術演示到商業應用,v86證明了瀏覽器的能力遠超用戶想象。當有人質疑“在網頁中運行Windows 98有何意義”時,Fabian用行動給出了答案:探索技術的邊界本身,就是最大的價值。這個項目不僅讓經典系統重獲新生,更向世界展示了一個極客如何將瘋狂想法變為現實。











