JSLinux
(bellard.org)- JSLinux ब्राउज़र के अंदर Linux और अन्य operating systems को सीधे चलाकर देखने के लिए VM की एक सूची देता है, जिसमें CPU, UI, VFsync, और config file तक साथ में देखी जा सकती है
- चलाने योग्य आइटम x86_64, x86, riscv64 में विभाजित हैं, और इनमें Alpine Linux, Buildroot, Fedora 33, Windows 2000, FreeDOS शामिल हैं
- x86_64 Alpine Linux 3.23.2 console में AVX-512 और APX support शामिल है, और x86 Alpine Linux 3.12.0 के console और X Window version अलग-अलग उपलब्ध हैं
- graphical या X Window environment Windows 2000, FreeDOS, Alpine Linux, Buildroot, और Fedora 33 में उपलब्ध है, और कुछ X Window menu right mouse button से खुलते हैं
- riscv64 Fedora 33 आइटम पर boot time अधिक लंबा है की चेतावनी है, और Windows 2000 के लिए VFsync access के बिना अलग disclaimer लिंक दिया गया है
ब्राउज़र में चलने योग्य VM सूची
- JSLinux ब्राउज़र में Linux या अन्य operating systems चलाने के लिए emulated systems की सूची प्रदान करता है
- हर आइटम में CPU, operating system, user interface, VFsync access की उपलब्धता, start link, config file, और remarks शामिल हैं
- तालिका में VFsync access की उपलब्धता और TEMU से संबंधित config links साथ में दिखाए गए हैं
CPU और operating system के अनुसार चलाने योग्य आइटम
-
x86_64
- Alpine Linux 3.23.2 Console
- VFsync access उपलब्ध
- config file: alpine-x86_64.cfg
- AVX-512 और APX support शामिल
- Alpine Linux 3.23.2 Console
-
x86
- Alpine Linux 3.12.0 Console
- VFsync access उपलब्ध
- config file: alpine-x86.cfg
- Alpine Linux 3.12.0 X Window
- VFsync access उपलब्ध
- config file: alpine-x86-xwin.cfg
- menu के लिए right mouse button का उपयोग करें
- Windows 2000 Graphical
- VFsync access उपलब्ध नहीं
- config file: win2k.cfg
- disclaimer लिंक किया गया है
- FreeDOS VGA Text
- VFsync access उपलब्ध नहीं
- config file: freedos.cfg
- Alpine Linux 3.12.0 Console
-
riscv64
- Buildroot Linux Console
- VFsync access उपलब्ध
- config file: buildroot-riscv64.cfg
- Buildroot Linux X Window
- VFsync access उपलब्ध
- config file: buildroot-riscv64-xwin.cfg
- menu के लिए right mouse button का उपयोग करें
- Fedora 33 Linux Console
- VFsync access उपलब्ध
- config file: fedora33-riscv.cfg
- boot time अधिक लंबा है की चेतावनी है
- Fedora 33 Linux X Window
- VFsync access उपलब्ध
- config file: fedora33-riscv-xwin.cfg
- boot time अधिक लंबा है की चेतावनी है, और menu के लिए right mouse button का उपयोग करें
- Buildroot Linux Console
2 टिप्पणियां
Hacker News की राय
Fabrice self-sufficient software बनाने में सचमुच बहुत अच्छे हैं, और कई बार उनके बनाए हुए काम अपनी अलग जिंदगी जीने लगते हैं
कम चर्चित उदाहरण के तौर पर, JSLinux का terminal emulator कई बार fork हुआ और अब xterm.js के नाम से जाना जाता है; यह वेब में embed किए जा सकने वाले terminal emulators की मुख्यधारा बन गया
अब मैं JSLinux का असली successor बना रहा हूं, जिसमें kernel और user space को native तौर पर Wasm में compile किया गया है, इसलिए यह काफी तेज है, और terminal emulation के लिए जाहिर है xterm.js इस्तेमाल कर रहा है
अगर आपको ऐसे bug-भरे demos पसंद हैं जिन्हें शायद अभी share नहीं करना चाहिए, तो https://linux.tombl.dev देखने लायक है, लेकिन फिलहाल इसमें सिर्फ busybox shell है, इसलिए
lsकी जगहecho *की आदत होनी चाहिएQEMU, ffmpeg, LTE से जुड़ा काम, QuickJS के बारे में तो पता था, लेकिन यह नहीं पता था कि xterm.js भी उन्हीं से शुरू हुआ था
attempted to munmapऔर kernel warning आती हैWARNING: CPU: 3 PID: 36 at kernel/exit.c:812 0x00000000,Comm: sh Not tainted 6.1.132जैसी stack trace दिखती है औरvmlinux-NLTKI6YG.wasmतथाworker-MHWHWELT.jsकी तरफ जाती हैलगता है इसका ज्यादातर हिस्सा फिर से लिखा गया है, और शायद बेहतर ही हुआ होगा
https://github.com/xtermjs/xterm.js
https://github.com/chjj/term.js
MacBook पर कोशिश की, लेकिन keyboard input register नहीं हुआ
ps,cat,vi,edसब crash हो रहे हैंbusybox embedding के बारे में ज्यादा नहीं पता, इसलिए समझ नहीं आ रहा कि क्या करना चाहिए
Fabrice कमाल के हैं। इस व्यक्ति ने जितनी चीजें बनाई हैं, उनकी मात्रा सचमुच अविश्वसनीय है
अगर मैंने उनके बनाए हुए में से सिर्फ एक चीज भी बनाई होती, जैसे ffmpeg, QEMU, या tinyc में से सिर्फ एक, तो जिंदगी भर उस पर गर्व करता, लेकिन वे बस लगातार कोई और शानदार चीज hack करते रहते हैं
फोन, operating systems, desktop environments, देश, app stores वगैरह सब
browser में चलने वाली virtual machines बहुत ज्यादा नहीं हैं
https://copy.sh/v86/
https://webvm.io/
https://bellard.org/jslinux/
https://jamesfriend.com.au/pce-js/ (https://github.com/jsdf/pce)
https://www.pcjs.org/ बहुत से hardware और operating systems support करता है (https://github.com/jeffpar/pcjs)
Mac OS के लिए https://infinitemac.org/ (https://blog.persistent.info/2023/03/infinitemac-dot-org.htm...), https://jamesfriend.com.au/projects/basiliskii/BasiliskII-wo..., https://jamesfriend.com.au/pce-js/pce-js-apps/ भी हैं
https://amiga.oszx.co/
https://www.file-hunter.com/AMIGA/
https://www.file-hunter.com/MSX/ WebMSX के जरिए MSX है
बेहद productive developers की चरम मिसालों को देखें तो “function या file कभी भी x lines से ज़्यादा नहीं होनी चाहिए” जैसी कट्टर धारणाओं से दिलचस्प contrast बनता है
quickjs.c50 हज़ार lines की है और इसमें सैकड़ों lines वाली functions भी हैंhttps://github.com/bellard/quickjs/blob/master/quickjs.c
बेशक, हालात के हिसाब से अलग approach सही हो सकता है
मेरी working memory भी काफ़ी बड़ी है, इसलिए मुझे बाद में समझ आया कि file और function size को लेकर मेरी limits दूसरों से कहीं ज़्यादा ऊँची हैं
ऐसी कट्टर rules तब ज़रूरी होती हैं जब कई लोगों को वही file पढ़नी और लिखनी होती है
शुरुआत में यह intimidate करता है, लेकिन सही editor इस्तेमाल करें तो काम करना हैरानी से आसान है। हालांकि कई editors इतनी बड़ी files में अटकने लगते हैं
file बहुत बड़ी है, लेकिन कुछ हद तक meaning के हिसाब से sorted है, इसलिए जैसे नया iterator method जोड़ते समय related code पास-पास मिलता है और काम आसान हो जाता है
यह इस्तेमाल की जा रही language पर भी निर्भर करता है। उदाहरण के लिए JVM bytecode instructions की संख्या किसी threshold से ऊपर जाने पर किसी function को inline नहीं कर सकता
dogma को जस का तस लागू करने वाला programmer नुकसानदेह हो सकता है
Kohei Tokunaga इस lineage की अगली generation बना रहे हैं
https://ktock.github.io/container2wasm-demo/
Emscripten के
fetchआधारित browser networking या POSIX-compatible WebSocket proxy का इस्तेमाल करता हैhttps://ktock.github.io/container2wasm-demo/amd64-debian-was...
https://github.com/container2wasm/container2wasm?tab=readme-...
20 साल बाद Windows 2000 इस्तेमाल करके देखा। पता है nostalgia नज़र धुंधला कर सकता है, लेकिन उस UI पर मैं तुरंत वापस जाना चाहूँगा
clutter-free taskbar और बेकार recommendations व ads से भरे बिना simple Start menu को इस्तेमाल करना सचमुच मज़ेदार था
आज तो चार generations के GUI toolkits मिले-जुले हैं, कोई UI एक style में है तो दूसरा बिल्कुल अलग style में—पूरा खिचड़ी जैसा
“Windows 2000 Server named peak Microsoft. Readers say it's all been downhill since Clippy”
https://www.theregister.com/2025/04/11/windows_2000_best_mic...
https://news.ycombinator.com/item?id=43653421
मुझे लगता है open source मूल रूप से users के हितों से aligned होता है और इसमें enshittification रोकने की व्यवस्था होती है
क्या किसी को पता है Fabrice Bellard पैसे कैसे कमाते हैं? इस व्यक्ति का open source output सचमुच हैरान करने वाला है
यह तुलना करना भी मुश्किल है कि उसी स्तर का कोई और है या नहीं। लगता है VMware ने उन्हें hire करने की कोशिश की होगी, या Google ने video codec, V8, Chromium rendering, ffmpeg के लिए उन्हें लाने की कोशिश की होगी
France से काफ़ी बहुत talented, creative और productive software artists या individual contributors निकलते दिखते हैं
यह कोई French factor है, Écoles जैसी education system की वजह है, या कुछ और—पता नहीं, लेकिन noticeable है
French tech की reputation पहले पुराने Renault cars की quality जैसी थी, लेकिन असल में मैंने ऐसा नहीं देखा। Renault और Citroen में भी उल्टा प्रभावित हुआ
इसके उलट German software engineers के साथ काम करना मुश्किल रहा, क्योंकि “अगर हमने नहीं बनाया तो नहीं चलेगा” वाला attitude बहुत मजबूत था। यह सिर्फ़ मेरा generalization है
European tech ecosystem की problem simple है। हम sell करना नहीं जानते और resource efficiency के लिए optimize करते हैं। “competitive salary” का मतलब अक्सर यह हो जाता है कि किसी भी हालत में market rate से ज़्यादा नहीं देंगे
America growth के लिए optimize करता है, और growth के जरिए cost amortize करने के लिए higher salary accept करता है
आख़िर में, जहाँ से मैं आता हूँ वहाँ कई लोग immigration की वजह से France के खराब होने का मज़ाक उड़ाते हैं। यह एक नजरिया हो सकता है, लेकिन यह भी सच है कि France ने अपनी colonies से brain drain खींचकर बहुत capable और productive लोगों को हासिल किया
मेरे master’s advisor भी Côte d’Ivoire से थे, और Bootlin में भी मैंने non-Francophone names वाले top-level engineers के साथ काम किया
https://barebox.org/webdemo पर JSLinux का इस्तेमाल करके, संभावित users को असली hardware पर flash किए बिना भी bootloader shell की सुविधा देखने दी जा रही है
यहाँ बताए गए कई forks देखकर अच्छा लगा, और देखना पड़ेगा कि इनमें से कौन bareDOOM सबसे अच्छे से चलाता है, और क्या किसी में sound काम करता है
JSLinux, Endor(https://endor.dev) बनाते समय प्रेरणा बना था, और उनका QEMU work भी कई Wasm-related browser projects की नींव बन रहा है
CORS सेटिंग गलत है, इसलिए लिंक में
https://www.bellard.org/jslinux/की बजायhttps://bellard.org/jslinux/पर जाना होगा, तभी यह सही तरह से काम करता है।