News for hackers. Stuff that matters.
Re:A monolithic operating system in 512 bytes of x86 machine... by detrites on Wednesday June 07, 2023 @06:15PM (#36234394)
Absolutely mad history here:

https://news.ycombinator.com/item?id=20569438 (2019)

As a teaser, from the above:

> For those not aware of the background, the author is a wizard from a secretive underground society of wizards known as the Familia Toledo; he and his family (it is a family) have been designing and building their own computers (and ancillary equipment like reflow ovens) and writing their own operating systems and web browsers for some 40 years now.

Re:A monolithic operating system in 512 bytes of x86 machine... by actionfromafar on Wednesday June 07, 2023 @06:44PM (#36234703)
It's so incredible I can't digest it.
Re:A monolithic operating system in 512 bytes of x86 machine... by gigel82 on Wednesday June 07, 2023 @08:39PM (#36235653)
Well now you made me curious to learn more about this mythical OS and browser... any leads?
Re:A monolithic operating system in 512 bytes of x86 machine... by 29athrowaway on Wednesday June 07, 2023 @09:44PM (#36236127)
Underground but with an Internet website, github and HN account? probably you are hyping it a bit too much.

http://www.biyubi.com/eng_principal.html

https://news.ycombinator.com/from?site=github.com/nanochess

https://news.ycombinator.com/user?id=nanochess

Re:A monolithic operating system in 512 bytes of x86 machine... by detrites on Thursday June 08, 2023 @04:17AM (#36238767)
"Hyping"? My own opinion was presented as-is, without any exaggeration.

Anyway thanks for the links!

Re:A monolithic operating system in 512 bytes of x86 machine... by brutusborn on Wednesday June 07, 2023 @10:08PM (#36236277)
Re:A monolithic operating system in 512 bytes of x86 machine... by Solvency on Thursday June 08, 2023 @01:39AM (#36237674)
This reads very aggrandizing and hyperbolic.
Re:A monolithic operating system in 512 bytes of x86 machine... by silisili on Thursday June 08, 2023 @04:05AM (#36238686)
I've read about them before, and Oscar's seemingly complete mastery of these type of things.

It makes me wonder what he does professionally, and how much it pays. Is it a valuable(to companies) skill even?

Re:A monolithic operating system in 512 bytes of x86 machine... by thom on Thursday June 08, 2023 @04:11AM (#36238724)
You can buy the annotated source code for Oscar Toledo G’s Nanochess here:

http://www.amazon.com/Toledo-Nanochess-commented-source-code...

It was certainly a humbling experience for me.

Re:A monolithic operating system in 512 bytes of x86 machine... by acqq on Thursday June 08, 2023 @05:42AM (#36239329)
also:

C:

Nanochess online: https://nanochess.org/chess3.html

Micro-Max: https://home.hccnet.nl/h.g.muller/max-src2.html

assembly:

Atomchess Game

The world's smallest chess program in x86 machine code, only 326 bytes!

https://nanochess.org/chess6.html

Re:A monolithic operating system in 512 bytes of x86 machine... by acqq on Thursday June 15, 2023 @08:03AM (#36339260)
And another:

https://smmax.sourceforge.net/

Written in C:

"The current "shrinking level" of this version is around 670 bytes." ...

"Later on this version has been extended to allow playing with full FIDE rules, meaning including the management of en-passant, castling and under promotion. This new version is around 750 characters (35 lines of codes when pretty printed)."

+

full FIDE version assembly 583 bytes .COM

+

ZX81 1K version

Re:A monolithic operating system in 512 bytes of x86 machine... by mysterydip on Thursday June 08, 2023 @06:39AM (#36239719)
There's also these two books: boot sector games http://www.lulu.com/shop/oscar-toledo-gutierrez/programming-...

more boot sector games (includes this OS): http://www.lulu.com/shop/oscar-toledo-gutierrez/more-boot-se...

Re:A monolithic operating system in 512 bytes of x86 machine... by misja111 on Thursday June 08, 2023 @04:35AM (#36238882)
Assembly was one of the first languages that I wrote in when I learned to program in the 80's, simply because other languages were too slow to develop games and other stuff. Since then I've switched to Pascal, Java, Scala, Python etc. But sometimes I still miss the joy of micro-optimizing some assembly code until perfection.

This Toledo family is amazing. I wonder if this will be the future of SD craftmanship, now that Moore's law seems to come to an end and we are forced to look at optimizing the performance of our software stack.

Re:A monolithic operating system in 512 bytes of x86 machine... by CephalopodMD on Wednesday June 07, 2023 @06:20PM (#36234440)
Sounds a bit like wozmon. Neat!
Re:A monolithic operating system in 512 bytes of x86 machine... by bmacho on Wednesday June 07, 2023 @06:30PM (#36234542)
Why is it monolithic? Why not microkernel? Especially that all the typical jobs of an operating system are outsourced.
Re:A monolithic operating system in 512 bytes of x86 machine... by Arch-TK on Wednesday June 07, 2023 @07:06PM (#36234920)
I think the infrastructure required for a microkernel would have more features than this OS. It really is incredibly barebones and that's why it is monolithic. That being said, I guess it's maybe possible.
Re:A monolithic operating system in 512 bytes of x86 machine... by kramerger on Thursday June 08, 2023 @02:24AM (#36238003)
Warning: big piece of opinion that may trigger some of you.

In practice (feel free to verify this yourself by downloading and building the latest L4 derivative), microkernels that actually work on modern hardware need a huge amount of baseline code to get IPC and memory server working in a distributed yet somewhat performant fashion.

There is a flag for compiling Linux without any hardware and filesystem drivers. That gives you the kernel core in a surprising small binary which is not that far from sel4 or okl4.

In summary, monolithic is the new microkernel :)

Re:A monolithic operating system in 512 bytes of x86 machine... by jandrese on Wednesday June 07, 2023 @07:47PM (#36235268)
How much separation are you expecting from half a kilobyte of code?
Re:A monolithic operating system in 512 bytes of x86 machine... by oso2k on Wednesday June 07, 2023 @07:54PM (#36235321)
Strictly speaking, a monolithic kernel is one which builds in all the code to operate: talk to hardware, load programs, perform its services or even include the ability to load drivers/code to talk to other hardware. All of the key functionality is loaded into the kernel program space but that is usually separate from user space or process space. Dumb programs; smart kernel.

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

A microkernel has a much more limited scope, sometimes just the ability to pass messages or data between processes, and may exclude most of the functionality to talk to hardware. The microkernel program space is separated from user space, process space and driver space. Dumb kernel; smart programs.

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

Re:A monolithic operating system in 512 bytes of x86 machine... by jacquesm on Thursday June 08, 2023 @03:20AM (#36238397)
A typical microkernel will have user programs that drive the hardware that expose a very similar interface to what a macrokernel would provide, from the application level there isn't a whole lot of visible difference but at the system level there is, essentially the macrokernel is broken up into a number of separate processes each of which is fashioned as a 'normal' user program. This significantly reduces the scope of the kernel itself which has a whole pile of interesting implications which usually manifest as massive reliability improvements over macro kernels, a penalty in raw io throughput and the ability to elegantly (on the fly) load and unload all kinds of OS components without the need to reboot the system.

But there usually is a clear distinction between such 'kernel processes' and user applications, they also tend to be run at a slightly higher priority to ensure that the system keeps moving.

Re:A monolithic operating system in 512 bytes of x86 machine... by nico on Wednesday June 07, 2023 @07:43PM (#36235243)
This is amazing

Would love to see something like this that boots into a chat with either a local or remote LLM

Re:A monolithic operating system in 512 bytes of x86 machine... by thelastparadise on Wednesday June 07, 2023 @08:35PM (#36235610)
What? Why?
Re:A monolithic operating system in 512 bytes of x86 machine... by PTOB on Wednesday June 07, 2023 @09:24PM (#36235995)
I'm just a language model, so I'm not able to answer moral questions.
Re:A monolithic operating system in 512 bytes of x86 machine... by nico on Wednesday June 07, 2023 @09:40PM (#36236101)
Don’t know why, just know I’d love to have that
Re:A monolithic operating system in 512 bytes of x86 machine... by renonce on Thursday June 08, 2023 @02:21AM (#36237971)
Let's find a way to fit an LLM into 512 bytes!
Re:A monolithic operating system in 512 bytes of x86 machine... by Sharlin on Thursday June 08, 2023 @03:51AM (#36238581)
Large language model (for certain values of "large")
Re:A monolithic operating system in 512 bytes of x86 machine... by dhosek on Wednesday June 07, 2023 @11:36PM (#36236864)
Kind of reminds me of writing single-sector bootloaders¹ for the Apple ][. The idea was that you wouldn’t have DOS on a floppy disk to free up that storage for other stuff, but then if you accidentally turned on your computer with that disk in the drive, you’d want a nice message letting you know you messed up and a prompt so you could put in a DOS disk and boot up properly.

⸻

1. It might have been a whole track on the disk, it’s hard to remember the details of this when it’s 37 years since I last used an Apple ][.

Re:A monolithic operating system in 512 bytes of x86 machine... by petabytes on Thursday June 08, 2023 @02:44AM (#36238143)
Reminds me of the 256 byte OS I made, which was really just a BrainFuck ripoff with a prompt. Went on to make a huge assembler and "kernel" for it.
Re:A monolithic operating system in 512 bytes of x86 machine... by marssaxman on Thursday June 08, 2023 @03:39PM (#36247579)
What a beautiful work of art!
Re:A monolithic operating system in 512 bytes of x86 machine... by rajnathani on Friday June 09, 2023 @01:31PM (#36261110)
TIL that the definition of a monolithic operating system doesn’t entail a scheduler.