Hacker Newsnew | past | comments | ask | show | jobs | submit | whobre's favoriteslogin

Raymond Chen’s blog posts are one of the best things coming out of Microsoft.

As a Unix person for decades, for me it’s great to see his incredibly experienced and insightful view on software development in general and specifically OS development at Microsoft and to read about his experience with all these nice processor architectures no longer supported by NT.


I think a more interesting article on S3 is "Building and operating a pretty big storage system called S3"

https://www.allthingsdistributed.com/2023/07/building-and-op...


Nice piece -- it's very good on the early history.

It does, however, totally omit much of the later development.

When Caldera released the source code, it also released the unfinished GEM/XM, a multitasking version.

http://www.deltasoft.com/news.htm

https://lunduke.substack.com/p/freegemxm-the-open-source-ver...

Another version was X/GEM on FlexOS, DR's multitasking RTOS line, and at least some forms of UNIX.

http://bitsavers.informatik.uni-stuttgart.de/pdf/digitalRese...

FlexOS eventually evolved into IBM 4680 OS:

https://en.wikipedia.org/wiki/FlexOS#4680_OS

And that into IBM 4690 OS:

https://en.wikipedia.org/wiki/4690_Operating_System

Later sold as Toshiba 4690 OS.

This supports a GUI, which I think is based on X/GEM, as well as TCP/IP networking, app development in Java, and more. It was sold until about 10 years ago.

I don't think I've ever seen a screenshot.

There have also been interesting later FOSS developments.

On the ST platform, TOS + GEM evolved in multiple directions. Some were proprietary, such as MagiC.

https://en.wikipedia.org/wiki/MagiC

A FOSS one became MiNT, which is sometimes called FreeMINT.

https://en.wikipedia.org/wiki/MiNT

This became the basis of TOS 4, so Mint is Not TOS was redefined to mean Mint is Now TOS.

There's a complete distro of FreeMINT with the TeraDesk multitasking desktop, called AFROS. It targets a FOSS ST emulator called ARANyM:

https://aranym.github.io/

https://aranym.github.io/afros.html

https://github.com/ragnar76/afros

Some very minimal firmware to emulate just enough of TOS to boot the MINT replacement OS was developed, called EmuTOS.

This eventually grew into a very complete FOSS clone of TOS+GEM, called EmuTOS:

https://emutos.sourceforge.io/

It even supports some Amiga hardware now!

There's a 4min demo here:

https://www.youtube.com/watch?v=-kYr5ftxyTA

EmuTOS went from a stub ROM that just reproduced something analagous to the kernel of MS-DOS to a full graphical OS, using the PC GEM source code that Caldera made GPL.

So there is a lovely full circle here, where the ST version continued for years after Windows killed off the PC version, but then the PC version got open-sourced and was used to revive and modernise the ST version in the 21st century.

There's been a lot more GEM-related development in the last decade or two than you'd expect. This makes me happy.


Ha! I came to say exactly the same! I (my dad) had a PC1512, CGA with B/W screen. It came with a serial mouse that we only took out of the box when we used GDE. I have to say we didn't use it much, as we were used to DOS and the "I boot the computer and directly run the application/game I want to use".

My dad used Lotus 1-2-3 a lot (I guess that it was v2.2 or so in the Amstrad).


If you use it rarely, I can high recommend the excellent QuickEMU [0]

Any VM is just a `quickget ubuntu 24.04` and `quickemu --vm ubuntu-24.04.conf` away. The conf file is just a yaml that is very readable and can give you more cores/ram/disk easily. Just run `quickget` to get a list of OS's to download.

[0] https://github.com/quickemu-project/quickemu


Thought this was the perfect place to share a project I've been working on for a few years: https://asm-editor.specy.app

It's an interactive online IDE for many assembly languages, currently M68K, MIPS, RISC-V and X86 (I need to improve X86). It has a ton of features that are made to teach assembly programming, and it can be embedded in other websites.


It was forcibly funded as part of a consent decree from the US government that allowed AT&T to continue as a monopoly as long as they invested a percent of their yearly revenue (or profit? I forget) in research. AT&T, having no interest in changing their incredibly profitable phone network, then proceeded to do fundamental research, as required as a condition of their monopoly.

Decades later, AT&T was broken up into the baby bells and the consent decree was removed at that time. Bell Labs' fate was then sealed - it no longer had a required legal minimum funding level, and the baby bells were MBA-run monstrosities that were only interested in "research" that paid dividends in the next 6 months in a predictable fashion.

The funding model is an integral part of the story.


TLDR: "Good" can mean "Holy". That's it.

This is a weird article. If you bail early, at least now you know the answer to the question.


Seems like the author really wants to build a search engine and not use something that exists already.

This post https://www.parse.ly/lucene/ provides a great insight into the value of file system use when writing inverted indices that perform well.


Jasmin is something like this. It is essentially a high-level assembler, will handle register allocation (but not spills) for you, has some basic control flow primitives that map 1-to-1 to assembly instructions. There is also an optional formal verification component to prove some function is equivalent to its reference , is side-channel free, etc.

[1] https://github.com/jasmin-lang/jasmin/wiki


Windows 2 can be run on modern hardware using DosBox[0]. If like me your old install media is deep in an attic somewhere, you can still get them from lovely archive.org[1].

[0]: https://www.dosbox.com/wiki/Software:Windows2x

[1]: https://archive.org/details/windows2x


6502 and 680x0 were just a delight. I learned C (and later C++) solely because I couldn’t escape x86 anymore and hated assembly on those chips.

Still do, really, though I’m decades beyond wanting to write anything in assembly now.


The map overview is so well done. The comments are so nice and thoroughly explaining what is stored in which register and what's being manipulated.

I wish all codebases were like this. This must have taken months to document it.

[1] https://elite.bbcelite.com/c64/articles/map_of_the_source_co...

[2] https://elite.bbcelite.com/c64/main/subroutine/tactics_part_...


Well if OS2 had succeeded we would have PC's controlled by the OG evil tech monopoly which have had their business dealings in far worse things (https://en.wikipedia.org/wiki/IBM_and_the_Holocaust) than microsoft ever did.

I also came across FORTH through hacker news. I ended up developing a compiler that can translate FORTH into C.

For the interested reader:

https://github.com/loscoala/goforth

It was a great experience and I can only recommend trying to develop a programming language yourself.


And here's my tutorial FORTH, based upon a thread from hacker news:

https://github.com/skx/foth

Forth is always appealing, whether literally, or in puns.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: