Hacker News new | past | comments | ask | show | jobs | submit login
Writing a Simple Operating System From Scratch (2010) [pdf] (bham.ac.uk)
73 points by ingve on June 5, 2016 | hide | past | web | favorite | 10 comments

A lot of this is not really relevant these days, and dates back to the 90s.

All the "fun" problems start later - kernel architecture, USB support, modern disks, multicore CPUs, network stack, all sorts of drivers, all sorts of filesystems, and by then you're barely getting started on having something more than just a hello world printed out to a screen using legacy BIOS that is starting to get phased out by now.

Then, there is the 64bit mode of the x86-64 architecture, which is a whole new can of worms.

You'll end up rewriting the whole mess a dozen of times from scratch as you learn new things and encounter new problems.

And in the end, only the knowledge gained would be of any value, since there is exactly zero use or market for a custom OS these days, even in the niches.

Source: Wrote my own OS over the last 15 years - http://orbides.org/aprom.php

The PINTOS project is another classic operating systems course. Definitely takes a fair amount of time but it is rewarding. All the material is accessible online:


Annectodical (a phonecall)

"If I shout my graphis-card WLAN and fiddle around connecting a keyboard too..."

"I need INTEL for what ?"

"What ? Heck, why you can't install an OS on computer-Hardware ?"


"Yes, ports to connect are still there..."

"Hey, when I short-circuit this - it does an reset!"

"To add a fuse ? um why not!"


:( the slides don't look finished and i can't find updated sections in later years?

You might want to have a look at the OSDev wiki [1], which is definitely more comprehensive than those notes.

[1] http://wiki.osdev.org/Main_Page

This would be a great format to tackle the more advanced stuff that I have problems learning.

A wiki isn't the best format, at least for me.

Honestly the only good wiki I've ever seen is Wikipedia, and that's only because Google exists. Wikis suffer from the most ridiculous discoverability problems. Unless you can successfully guess a page's title, find it on Google, or the wiki has good searching (many don't), I find myself clicking around random pages to see where to start.

Especially when I am dumped into a random wiki for the first time. Starting off in Minecraft years ago, people said "read the wiki first!" with no link to the first page I should read, or any successive pages. Completely useless.

Maybe I'm missing a nice table of contents that every wiki secretly has hidden away, but tables of content exist for a reason. Discoverability.

I feel the same way.

Same feels there.

Yup, I went through this book about a year ago to make a rudimentary kernel. It was great for learning purposes, but it stops right about where things get interesting (drivers of any kind). I ended up at the OSDev wiki for a lot of further work.

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