0

My question is: as i am a software developer, I am curious if there is such thing as an operating system that someone has mabey created that is blank, as in, it boots up from the boot sector, kernel, etc, but just doens't load to anything, so that you can put your own programs on there, like your own file explorer, browser that you made. I understand if such a thing does not exist, and IF so mabey you could point me to some web resources/ tutorials that could help me in the creation of my own OS, to do all this.

  • You might want to check out embedded operating systems. If I understand your question right, you want a system, which only boots into the kernel, preferably a micro kernel and then stops. From that baseline, you want to decide yourself, which additional features you add. Windows CE platform builder allowed you to build such minimal configurations. QNX can be configured in such a way as well. Then there is Greenhills integrity line of OS, which you could consider, just to name a few. – BitTickler Apr 07 '16 at 21:49
  • thank you i will check that out – Barry Wizard Apr 07 '16 at 21:50
  • Maybe this question is a duplicate of [Minix vs Linux for Learning Operating System Design?](http://stackoverflow.com/questions/8254966/minix-vs-linux-for-learning-operating-system-design). – cwschmidt Apr 07 '16 at 21:52
  • Me, personally, I am curious now, how far you could strip down a freebsd to a bare minimum.... – BitTickler Apr 07 '16 at 21:52
  • interesting idea, im not even sure how i would strip one down though. :P – Barry Wizard Apr 07 '16 at 21:54
  • @BarryWizard In the usual way: Lots of coffee, lots of pizza, lots of time, lots of focus and some virtualization tech (e.g. virtual box). Then start to work and try to get bootloader and kernel to compile without much else...only to see then that a shell and a file system would be nice to have... ;) – BitTickler Apr 07 '16 at 21:56
  • yes ok thanks for the advice – Barry Wizard Apr 07 '16 at 22:10

1 Answers1

2

[..] it boots up from the boot sector, kernel, etc, but just doens't load to anything [..]

One rather less known possibility might be to use rump kernels. Basically, they allow you to select some drivers, a generic micro (nano? exo?) kernel and your application(s) and mix it together into a bootable system.

You could also look at some hobby OS projects to get the "lowlevel details" sorted out for you, perhaps contribute some drivers. Such systems - because usually very small sized - can be easily modified (given the code is not a complete mess).

You could also look at NetBSD and try to strip that down to what you need. Bonus here is the very well written code of most of it.

Though ...

[..] so that you can put your own programs on there, like your own file explorer, browser that you made [..]

... that sounds like you would have more fun building e.g. a Linux distribution. The basic step could be to just get the Linux kernel, build a (static) application and set this as init. Or you could have a look at Linux From Scratch for a more systematic approach.

Daniel Jour
  • 15,896
  • 2
  • 36
  • 63
  • rump kernels hey.. that looks like a good possible solution. I'll have a play around with them, and then i might mark this as the answer when i get back, it looks quite promising. – Barry Wizard Apr 08 '16 at 23:08
  • 1
    thanks for your answer, it was the solution that i needed (rump kernels) – Barry Wizard Apr 09 '16 at 14:17
  • Seems rump kernels are derived from NetBSD code base. As such my curiosity in my comments to the question is satisfied ;) – BitTickler Apr 13 '16 at 12:35