Live data from Hacker News

Show HN: Windows 98 in browser

copy.sh

131–140 of 171 posts

Re: Show HN: Windows 98 in browser

#131

Earlier quoted context omitted.

Personally, I had some courses on computer architectures, and those covered the theory of how CPUs are constructed, how they run programs, etc. I decided to write an NES emulator. So: - Find Wikipedia articles, and learn that it used a variant of the MOS Technology 6502, which was used in a lot of computers in the 80s. - Find some digitized assembly programming manuals from the time (I think the one I used was distri…

One of my friends at uni wrote a Z80 emulator/assembler in PDP-10 assembler as a hobby project - and he was studying chemistry, not CS... I don't understand why a basic understanding of CPU architectures isn't a CS fundamental everywhere. Even if you have no interest in emulating a CPU or an OS, you really do need to know what registers are, how caches work, what interrupts do, and how basic IO happens. At the very l…

Agreed. It's important to understand how the hardware works, at least at the theoretical level. If you don't understand what the machine is doing, it's hard to say that you really understand how your program works.

Re: Show HN: Windows 98 in browser

#133
post #128

Earlier quoted context omitted.

I was equally shocked at the state of CS education at University of New South Wales here in Australia. They don't seem to cover many fundamentals (like CPU, algorithms and data structures, operating systems) compared to what I am used to in Europe. Either not at all in the undergrad curriculum or only very late.

In my US school we don't even write our own compiler in programming languages class. Europeans seem to learn a ton more.

I studied math at university, and did CS as a minor. They made me take data structure and algorithm classes for both.

The mathematician's version was half as long, but covered the material in more depth: ie they proved every result. The CS version was full of dumbed down and full of fluff. (And even those CS people did operating systems and compilers as undergrads.)

Re: Show HN: Windows 98 in browser

#134
post #82

Earlier quoted context omitted.

I agree it is a very cool demo. Is there anyway I can find out the call flow of this JS program? Like to see the actual dynamic call flow graph instead of just simple static flow analysis output.

That's because the Win98 code is that much simpler. It has less to do with speed and more to do with complexity. Your phone is doing all sorts of weird shit behind your back as you poke about. Stuff that it's not supposed to be doing if app-makers were actually respectful of their users... On that note, why does that crap take so long on smartphones anyway?

I think a big part of it is simply loading in resources and the like. Smartphones try to keep a _lot_ of apps in memory, so there's a lot of switching around.

Another thing is that Windows would put certain native widgets (like file selection) on a higher priority than other program code. Android, at least, tries to put as much stuff in userspace as possible, so you might be experiencing the reality if everything run at the same priority.

Re: Show HN: Windows 98 in browser

#135

How bad is it that Windows 98, running in a ^%%^@#!ing emulator, in my browser no less, runs better than the latest versions of Android OR iOS?

uhh it doesn't? Maybe it runs way better than the android or iOS emulators but you have to have a pretty messed up install of recent Android to make it run as slow as this.

Re: Show HN: Windows 98 in browser

#136
post #81
post #25

Earlier quoted context omitted.

Learning about CPU internals was a huge part of your first year in CS? Where did you go to school? At my school and every other school I'm remotely familiar with, the knowledge needed to emulate a CPU would be covered in upper division computer engineering courses, and not covered by CS undergrads at all, certainly not in their first year.

Back in 2007, my first semester in a technical CS school had plenty of assembly, binary, MMU emulation, OSI / TCP/IP, boolean math and so on. I know this is mostly gone at this point, but it should not. The fundamentals are essentials. I often meet people who are totally clueless how a computer work and have CS degrees. "How can you do C, it is so old? By now, we must have invented faster languages. Computers changed…

Wow. My first semester of computer science had me studying fuckin' Gofer.

Re: Show HN: Windows 98 in browser

#137
post #121

Earlier quoted context omitted.

You might think it's a great demonstration if you try it in a desktop browser. Meanwhile, on actual mobile hardware, the performance is so atrocious it's completely unusable. No knock on the implementors of course. But the idea that this demo has some deep insight about the performance of native smartphone software is just inaccurate. http://cl.ly/2O0L3t290s37

I didn't mean to compare native mobile apps to web apps (though I see now how it could be read that way). I'm talking about native software in general. I chose smartphones for the comparison because they're the most notorious about being slow, even as their hardware performance approaches what PCs were like just a few years ago. Although even some desktop apps manage to be as janky and dog slow as almost anything fro…

> Although even some desktop apps manage to be as janky and dog slow as almost anything from the Win98 era, e.g. iTunes until a couple of years ago. By contrast, the cheapest Third World market smartphone would run Win98 apps blinding fast.

It is easy to take potshots at e.g. iTunes, but the real reason software "got worse" is not developers getting lazy. What happened is that expectations for CPU-intensive features rose (memory protection, ASLR, NX, encryption, low-latency audio, high-efficiency codecs, ClearType) while willingness to pay vanished. In Win98 times, you bought your music player from the developer (remember Winamp?) whereas now it comes free with your OS, which is itself probably free. So of course it is all half-assed now, but it's not "lazy" to spend resources on software someone will pay for, and not on software nobody will pay for.

You could absolutely reverse this, but it has nothing to do with native or web technology, and everything to do with changing consumer attitudes about choosing software.

> On the desktop, the hardware is finally winning--it's just too damn fast. Hopefully that will happen with smartphones too.

From 1995 until today, power consumption in desktop processors grew about 5-15x, depending on how exactly you measure. 5-15x more power on mobile devices is simply not an option, unless we have a "new physics" kind of breakthrough in both battery and thermal technology.

Re: Show HN: Windows 98 in browser

#138
post #121

Earlier quoted context omitted.

You might think it's a great demonstration if you try it in a desktop browser. Meanwhile, on actual mobile hardware, the performance is so atrocious it's completely unusable. No knock on the implementors of course. But the idea that this demo has some deep insight about the performance of native smartphone software is just inaccurate. http://cl.ly/2O0L3t290s37

I didn't mean to compare native mobile apps to web apps (though I see now how it could be read that way). I'm talking about native software in general. I chose smartphones for the comparison because they're the most notorious about being slow, even as their hardware performance approaches what PCs were like just a few years ago. Although even some desktop apps manage to be as janky and dog slow as almost anything fro…

It's getting better (particularly on high-end phones) but single-threaded performance is still nowhere near circa-2013 desktop x86_64 (3.5ghz+ haswell). And it'll probably never catch up due to the thermal and battery life constraints.
Post reply on HN