13 ms·
Running Windows 98 in the Browser
- asicsp 3y agoPrevious discussions: https://news.ycombinator.com/item?id=11155203 https://news.ycombinator.com/item?id=11155203 (356 points | Feb 23, 2016 | 165 comments) https://news.ycombinator.com/item?id=23674012 https://news.ycombinator.com/item?id=23674012 (421 points | June 29, 2020 | 266 comments)
- nippoo 3y agoThe thing that always strikes me with these kinds of demos is how absurdly efficient old OSs were / had to be. It's obviously not an apples to apples comparison, as modern operating systems have to handle a lot more, but even Windows XP (which handled a lot of the same basic Internet browsing tasks as I still use now!) is almost comically fast on modern hardware.
- herbst 3y agoIt's a fair comparison IMO. There are Linux flavours still making my 15 year old hardware faster with every other update. And any standard flavor still works like a charm. There is no real reason OSes get more shitty with every version
- hsbauauvhabzb 3y ago> There is no real reason OSes get more shitty with every version The reason is that there’s profit to be squeezed out with all the additional bloat.
- deleted 3y ago[deleted]
- tonoto 3y agoBut still, during the time of Windows 95/98 I could hardly play even a 128kbps MP3 with WinAmp in my Pentium 133MHz with 12MB of Ram where I had got rid of lots of bloatware. At the same time I could play it smoothly in Linux with a full blown desktop environment (Window Maker) running. So it was a bad performer in comparison even back then.
- liotier 3y agoLet's not exaggerate: Winamp .mp3 playback was just fine on any Pentium running Windows 9x - though I concede that even my Pentium 75 had 16 MB RAM and I have never seen a Pentium with less than that. On the other hand, extracting a CD and compressing it's .wav to .mp3 was a whole day of computing, and sending the files as attachments through SMTP was enough to elicit flowery vehement objections from my university's sysadmins and my friend's small ISP alike...
- znpy 3y agoAh the times when the netiquette dictated not to attach large files to emails directed to mailing lists, but to upload them to some ftp server and only paste the link… The whole industry was had more attention to performance and resources consumption.
- liotier 3y agoNetiquette aside, a bunch of .mp3 as SMTP attachments hogged the single 64 kb/s that was my whole school's single link to the Internet and they entirely filled the receiving side's mail server storage, resulting in an outage... Both valid basis for criticism of my obnoxious behaviour in 1996 !
- tonoto 3y agoAlright, it might be that the memory fades and that it was OGG that I were struggling with, nevertheless the music playback worked way better in Linux. My issue I had were modelines/vertical refresh rate and having the graphics card recognized as it were my first computer and as a newbie with no friends to ask it felt rather steep to understand XFree86. But it was the IBM Aptiva K23 (basically this https://www.youtube.com/watch?v=sEhYumJiEbY https://www.youtube.com/watch?v=sEhYumJiEbY ) with 12MB onboard. Later upgraded to the K6-2 (500?) with a real speed bump.
- inferiorhuman 3y agoOGG would make a lot more sense. Even back in the Pentium days I believe there were optimized integer decoders that would handily outperform OGG stuff which only had a floating point decoder. Wikipedia is showing the og Pentium at 0.5 FP ops per clock cycle vs 1.88 integer ops. Of course by the time you get to the Core architecture you're in the opposite situation where Sandy Bridge is at 16 FP ops and 6.2 integer ops per clock cycle.
- hospitalJail 3y agoI was just amazed that my super old laptop could run youtube/games for my 2 year old. It had Windows but was too slow to really use. Fedora Silverblue was too heavy, but MX Linux made that computer run like my main. No slowdowns ever. Moments like this make me wonder who/what is leading us.
- andix 3y agoEven standard Ubuntu runs very smooth on old hardware (if it has enough memory and a ssd). I installed windows 10 on my 15 year old think pad, it was usable, but quite slow. Switched to Ubuntu and everything felt snappy again.
- FirmwareBurner 3y ago>but even Windows XP (which handled a lot of the same basic Internet browsing tasks as I still use now!) is almost comically fast on modern hardware. Why is it surprising that an old OS built for late 90's hardware runs "comically fast" on 2020's hardware? Just look at XP system requirements: - Pentium 233-megahertz (MHz) processor or faster (300 MHz is recommended) - At least 64 megabytes (MB) of RAM (128 MB is recommended) - At least 1.5 gigabytes (GB) of available space on the hard disk. How would anyone expect that not to be much faster on a modern quad+ core, 4GHz system with 8GB+ RAM?
- creshal 3y agoBasic desktop interaction is the same as 22 years ago, yet modern desktop environments are orders of magnitude slower at performing those same basic tasks.
- FirmwareBurner 3y agoSure, but how is it surprising that an old OS built for late 90's hardware runs fast on 2020's hardware? I'm failing to see the surprise. Isn't it a a given that old SW runs faster on modern HW when you factor in how far HW evolved since then.
- jraph 3y agoOP used the phrase "strikes me", that's not quite the same as being surprised. Something can strike you without you being surprised. For instance the amount of ads on youtube when it's running on a smart TV at someone else's always strikes me, but I'm not in the least surprised.
- paulmooreparks 3y agoWhat is striking is the fact that the interactions are the same between old and new shells/applications/syscalls/whatever, but modern software on modern hardware feels so much slower. The only reason for this is that modern software is doing a lot more stuff in the nooks and crannies of those interactions that it didn't used to do. Perhaps some of that stuff is useful, but some of it has to be code that is just less efficient or was just shoveled in because the CPU was faster and the RAM was more spacious.
- creshal 3y agoThe main downside is that those OSes were also really quick to hack, and the smallest problem bluescreen'd the system and lost all your work. But you can get a reasonably close experience with Linux or the BSDs and a simple GUI environment like the *box window managers. They're modern and snappy even on things like older generation RasPis.
- MrBuddyCasino 3y agoWindows 2000 was memory protected, and still had very modest hardware requirements. IMO the pinnacle of Windows UX, everything after that was downhill.
- jeremycarter 3y agoAll of my computer muscle memory is from Windows 2000. It was surprisingly accessible for it's time. Modern macOS still can't use the tab key correctly to tab focus between certain buttons, inputs and actions.
- znpy 3y ago100% agree, windows 2000 was the best windows ever.
- mips_r4300i 3y agoWin2k was peak windows. Though, it did need a lot more RAM than 98 did - it was happy only at 128mb, and 256mb was optimal. Meanwhile, 98 could run most things all day at 64meg. 98's swap and caching agent was definitely not as good as 2k though. You absolutely had to reboot at least daily or the chance of hitting swap would only increase upwards.
- pjmlp 3y agoIf only it had a proper UNIX subsystem, instead of something to make DoD happy. That was Microsoft's biggest mistake regarding GNU/Linux adoption. I only cared about Slackware in 1995, because Windows NT POSIX wasn't enough for university work.
- gwervc 3y agoEven functionally it's very comical because of how we were able to do on Win98 (even 95) almost everything we are doing today: editing documents, browsing the web (with images), playing games, watching videos, printing documents, listening to music. The only functional improvements I can note over two decades are: Unicode support, higher resolution of everything (from hardware to content), and system reliability thanks to driver isolation.
- signal11 3y agoHigher resolutions (and the accompanying resource sizes) would be hell for 32-bit OSes though. Also, it’s kind of amazing that many web pages these days are larger than Doom shareware’s zip size.
- M95D 3y agoNot true. Or it's true because of software bloat and resource waste these days. When I was a teenager, I wanted to see what was the maximum resolution my monitor supported. It was a Samsung Syncmaster 14" entirely analog, no OSD, with analog adjustment knobs on the bottom. The video card was a Matrox Millennium II 8MB VRAM and the OS was Windows 3.10. The maximum resolution that I could get was 1600x1200 @ 41Hz interlaced. That's almost 2K (1.92K to be more precise). 41Hz interlaced hurt my eyes like hell but everything worked on the software side.
- nightski 3y agoThere's a lot more to it than just increasing the resolution. Graphics, animations, font rendering quality, huge images, the list goes on.
- userbinator 3y agoMost of that is GPU-accelerated anyway so the OS / CPU doesn't need to do much beyond telling the GPU what to do.
- bluetomcat 3y agoThe core OS APIs still allow writing fast and snappy applications, but most apps nowadays are not written this way. Apps are using generic libraries that bring "the gorilla and the jungle" with them, browsers are relying on a JIT to draw their own UI, etc.
- steve1977 3y agoThis. I’m still using a couple of MFC or Win32 apps and using them is pure joy on a modern computer.
- reddalo 3y agoI agree. I love native Win32 apps, they're so light and quick. But nowadays everyone is using shitty solutions such as Electron.
- delta_p_delta_x 3y agoTheir binary sizes are also tiny. A full-fledged GUI app in a few hundred kB or less, that runs completely native code—truly a wonder.
- gosub100 3y agoyou can see this if you emerge (gentoo) or build from ports (*bsd). You try to compile vim and suddenly you're in the config page for CUPS (printer support) which then wants to know if you need Unicode support for a language you've never heard of (and if so, which font packages do you want to show it on).
- projektfu 3y agoEven a lot of the new APIs are quite fast. I feel that slowness creeps into frameworks two ways. 1. Bad abstraction, causing the moral equivalent of N+1 queries in UI code. For example, modify one thing, causing layout, moving something else, causing layout, moving something else, causing layout, etc., etc., until it is all recalculated and re-laid out, and then allowing the paint. 2. Hidden serialization of asynchronous processes, essentially causing tiny pauses throughout the main thread. I think this is one reason why people are so impressed with IMGUI. They imagine that the UI code must be doing an incredible amount of work to feel so slow, but then they watch a similar IMGUI app build and display the whole UI every frame 60-120 times per second, with plenty processing power left over. But if the other frameworks weren't wasting clock time, they could feel plenty fast. You can get a good feel for what is really slow by using a very slow computer. The original Macintosh feels snappy, but it is doing one process in black and white. It's not hard to reach 30fps. When you take System 7, and put it on a 16MHz 68020 with half a memory bus (Mac LC), and run it at 16-bit color, painting those windows takes a long time. Our trick back then was to jump to black and white when we needed to get things done quickly, then back to higher bit depths when we wanted color or eye candy. Now we have a situation where we can output full screen 24bit color in a millisecond or less, we are waiting on other things.
- revskill 3y agoBecause when you add more functionalities, the efficiency will eventually break.
- sebtron 3y agoWe software engineers took Moore's law as a free pass to make our software twice as shitty every 18 months.
- charles_f 3y agoThis! Oh, this! And look at the size as well. A fresh install of 11 is over 10gb. It's something of a Parkinson's law of optimization. The more computing power there is, the more clutter and less optimization will be had until we fill the computing power. When your hardware is a big limiting factor, performance becomes a primary concern. I think there is also something to be said about the size of the project. Win98 was in the hundreds, 11 is in the thousands. I have found much harder to get the fundamentals right on a larger project than a smaller one. Responsibility is diluted, architecture creates more seams and redundancies, and coordinating people is more complex. On top of that, slap a product culture that favors form over function, and cramming in the largest feature list possible, and you've got yourself a modern OS.
- ravenstine 3y agoThere was once a time where shitty software couldn't just ride on the back of good hardware.
- juunpp 3y agoYou're right, it's not an apples-to-apples comparison. The comparison is unfair to Windows 11 running on bare metal. You'd have to emulate 10 browser stacks recursively and then put Windows 98 on that to get a reasonable baseline.
- eloh 3y agoNice, first thing I tried was to defrag the C: drive. Feeling well-groomed again.
- easywood 3y agoBonus points for including sheep.exe. That was a welcome trip down memory lane.
- Aardwolf 3y agoAmazingly, opening google.com in the internet explorer browser worked after running the "networking.bat" from the desktop Many other pages don't load, possibly non supported https standards
- corethree 3y agoNavigate to the same site. Run windows from a browser within windows running on the browser.
- Medox 3y agoAnd after Windows XP becomes an option, we can run it from within the Windows 98 Browser, possibly creating a black hole!
- ta1243 3y agonot immediately clear how networking is done, but if you send traffic from the site it seems to come from a Digital Ocean VM
- _ea1k 3y agoIt made me wonder how hard it would be to get Firefox running inside of there.
- hecatia 3y agoGetting KernelEx should not be hard to be able to get a newer Firefox version in it.
- dosshell 3y agoOh, there are more OSes one can use at the parent page: https://copy.sh/v86/ https://copy.sh/v86/ My highlights: - First version of Windows (1.01) - SerenityOS <3 - and even ReactOS
- taspeotis 3y ago3D Maze is there, I'm happy.
- whoopdedo 3y agoWhere is that? I remember that being an extra on the CD-ROM but I don't see it mounted and can't remember the name of the file to search for it. If the CD is there somewhere, does that mean the Weezer music video should be there too. And then I got a BSOD (Invalid VxD dynamic link call from VMM(06)+1D72 to device "C001" service E74) when I turned on the Underwater screen saver.
- deleted 3y ago[deleted]
- taspeotis 3y agoIt’s one of the first screensavers in the dropdown. Worked for me, albeit slowly.
- shaunpud 3y agoBSOD = Start -> Run -> c:\con\con -> OK
- smusamashah 3y agoI compiled a list of in browser VMs which includes this one https://gist.github.com/SMUsamaShah/6379649c0cbade9abc02b2427bd33210 https://gist.github.com/SMUsamaShah/6379649c0cbade9abc02b242...
- LorenDB 3y agoWow, we live in a time where I can run Windows 98 in my browser on my phone. Technology has really come a long way since the olden days. (And I wasn't even there for the olden days!)
- wvenable 3y agoI was able to fire up Windows 3.11 briefly on a browser on my wrist watch. And that was my old watch -- I haven't even tried on the new one.
- peterhull90 3y agoBravo! Was there anyone used the 'Briefcase' back in the day? I'd forgotten about that. In fact I got so in the zone that I pressed ALT-F4 to close Win98 notepad and shut down my whole web browser instead!
- Xerox9213 3y agoI always assumed that the briefcase was for stuff my dad did. I don’t think he knew what it was either.
- unregistereddev 3y agoThe briefcase was mostly for storing files that would be synced between devices. The general idea was to allow loading contacts and documents onto your PDA, editing stuff on the go, and syncing it back. Sync primarily happened via either a hardwired serial connection or wirelessly via infrared. The infrared sync worked, but was finicky and required that the infrared sensors on your laptop and PDA be directly facing each other. I only played with this after I'd graduated and started making enough money that I could buy used PDA's just to see what they were capable of.
- kej 3y agoI used the briefcase with my first 32MB flash drive to keep school files synced between home and the computer lab (and with tons of space left over!).
- guestbest 3y agoBriefcase is as handy for portable drives such as Zip drives. Yahoo also had an online version was much more restrictive
- vorticalbox 3y agoI am getting ip conflict warnings
- andix 3y agoUsability is really bad in the iPad. But incredible that web technology came that far, that we can complain about something like that!
- udev4096 3y agoThis is so cool! Thanks for making it
- seahyinghang8 3y agoOh I did not make it, here is the link to whom I believe to be the creator: https://github.com/copy/ https://github.com/copy/ I discovered it while browsing the web and thought it'd be interesting to share it
- Pikamander2 3y agoSpeaking of running Windows 98 in a browser, some of you might enjoy this: https://win1998.com https://win1998.com
- sproketboy 3y ago[dead]
- userbinator 3y agoRun a DOS box inside that, and you actually have a VM running inside that VM. Win9x (and I believe it started with Windows/386) are based on a hypervisor architecture with minimal protections. The Win32 environment is essentially a protected-mode DOS application that also runs its own application format, and is itself a VM, along with each "DOS box" that gets created.
- calamari4065 3y ago95 and prior were literally running on top of DOS. If you exited the Windows environment, you were left on a real DOS shell. 98 is when they changed to what you're describing, AFAIK
- p3n1s 3y ago>> The Win32 environment is essentially a protected-mode DOS application" > 95 and prior were literally running on top of DOS. Not sure how you're gathering that the GP is contradicting this. Windows 95, 98 and Me are all architecturally the same: a protected-mode DOS app. Running DOS from within the Windows shell is not the same as exiting or skipping the boot of the Windows graphical shell, and is running in VM86 mode (which as the GP points out existed in Windows/386 / Windows 3.0 Enhanced 386 mode) See Virtual 8086 mode for some more overview.
- rahen 3y agoYou're right, but this shell still ran in a 32 bit VM on top of DOS (16 bit). https://en.wikipedia.org/wiki/Windows_95#Architecture https://en.wikipedia.org/wiki/Windows_95#Architecture https://en.wikipedia.org/wiki/Windows_9x#Virtual_Machine_Manager https://en.wikipedia.org/wiki/Windows_9x#Virtual_Machine_Man...
- p3n1s 3y agoNo, what they are referring to: you could actually just exit Windows entirely, or just skip booting into it and what you would be left at is a plain real mode DOS environment. From your own reference: To end-users, MS-DOS appears as an underlying component of Windows 95. For example, it is possible to prevent the loading of the graphical user interface and boot the system into a real-mode MS-DOS environment. You can even try this in the linked VM: Shutdown and Restart in MS-DOS mode. That is a real mode DOS without any Windows running. This was often necessary for games and other heavyweight protected mode DOS applications like CAD/CAM at the time that would not tolerate running in the VM86 environment.
- ThinkingGuy 3y agoI ran Disk Defragmenter, just out of curiousity. The drive actually has some sectors marked as bad.
- avlevy-ms 3y agoI tried out the bootchess implementation on the website, and while it is very impressive to fit a chess-playing program in under 512 bytes, fair warning that it is not a complete implementation of chess. I tried castling and it didn't work, then found this comment explaining more: https://www.pouet.net/prod.php?which=64962#c715279 https://www.pouet.net/prod.php?which=64962#c715279
- Trixter 3y agoA more complete chess that fits in a boot sector is Toledo Atomchess: https://nanochess.org/chess6.html https://nanochess.org/chess6.html
- reboot_boom 3y agofeels more snappy than my normal windows 10 experience. Even the boottime is way faster with win98.