# Why is operating system/kernel development so frowned upon?



## ImDatingJava (Jul 30, 2012)

I find it incredibly cool and exciting to be able to write and have a little BIOS chip run and execute memory to the screen written and created entirely by me. It's superb!

I don't really understand why so many "fear" OS development, Assembly, bare-bones architecture of computer systems, and the ideal of actually getting far in the task.

You can execute a 16-bit OS written in Assembly by writing and booting a small program that can be written in less than two hours! And that "program" would basically be a prototype booted to emulate the basic skeleton of a real world OS(in some very minimal form).

I have seen Assembly code, and even though it's poorly _readable_ nor _reusable _it is very efficient, convenient in some ways, and the fastest way to execute a program.

Aside from being a beginner in programming I really do aspire to write an operating system and a kernel of my own in some tangible, effective way some day.

I mean somebody had to build DOS, somebody had to build Unix, etc., etc.

If those people did these extreme things us programmers nowadays fear touching, why can't any programmers in today's world step up to the challenges?

Many people can get together and lessen the time and total work.

Let's say, _idealistically_, 25-50 people get together and fire up their computer network and computers and begin working together and testing/writing compiled code, and Assembly code as, say, an OS "skeleton prototype" in 16-bit. With the power of 25-50 people, it is *very *much possible to make a functioning mini-OS within several months that can be open-source and others can add to it.

From there on, who knows, it might be the next Unix or Windows one day.

My only wonders are simple: If there are so many expert and experienced developers out there working on game software, drivers, etc., why don't any of them dare to tackle OS development?

The money you can make from a functioning OS on the market can be an insane business opportunity.

Why don't more people honestly consider this?


----------



## Squashman (Apr 4, 2003)

Look at Linux and its struggles to really take a foothold in business and homes.

Nobody is going to even bother with a 16 bit OS anymore.


----------



## ckphilli (Apr 29, 2006)

Squashman said:


> Look at Linux and its struggles to really take a foothold in business and homes.
> 
> Nobody is going to even bother with a 16 bit OS anymore.


Additionally, the key question for me is "Why?". Not trying to stomp on your dreams ImDatingJava, but the return just isn't there in my opinion. Most of the "ground breaking" stuff I've seen is in the web arena (like Meteor, that's some cool stuff: http://meteor.com/). OS's do what we need them to, IMO. If you can't find your flavor between Windows, Mac or Linux and their numerous versions, I don't know what to say. I think the focus is off of the OS because one of the above will accomplish the task(s) to let you do the really fun part of your job.


----------



## Elvandil (Aug 1, 2003)

Because no one could write an OS even in an entire lifetime. It's not "frowned upon". It's impossible. No one would have the time to even read the code for Windows in a lifetime (or several, actually), never mind write it.


----------



## ckphilli (Apr 29, 2006)

Elvandil said:


> Because no one could write an OS even in an entire lifetime. It's not "frowned upon". It's impossible. No one would have the time to even read the code for Windows in a lifetime (or several, actually), never mind write it.


"One" being the key word I assume.


----------



## Squashman (Apr 4, 2003)

And Microsoft Research has spent years creating a development operating systems. Not sure why or why the haven't put them into the mainstream world but they have done some work on it.
Singularity
Barrelfish
Helios

And then there are the people going it alone.
SkyOS - which I think is pretty much dead now.
ReactOS - still seems to be hanging on.
Haiku - which was based on BeOS. A lot of people loved BeOS back in the day.

So if you do a little digging you can certainly find fresh new operating systems trying to be built.


----------



## ImDatingJava (Jul 30, 2012)

I don't think some of you are getting the overall message here.

TinkerNut has even written his own OS himself. Google it. 

It's certainly not impossible to make an operating system, and thinking in fear like that is what stops people from giving their all.

If you explained Microsoft Windows 98 to computer operators of computers in the 1950s they would have probably said you were insane or dreaming.

Nowadays it's the development age, from Linux(which is almost as popular as Windows/Mac) to small little apps for smart phones that pretty much anyone with some programming ability could muster up in some time. 

You gotta take my word for it ... OS design and creation isn't "out of this world," nor do you need millions of dollars and hundreds of people to initiate it.

PS: I never said make a Windows, I said make a small prototype OS and see what happens from there.
Maybe a few others will pitch in, and three years from now you might have something similiar to the Linux kernel.

Somebody had to do it then, right? And besides ... three major OS choices is nothing. With all the endless software we have, why not put more input in to the top dog software handler itself: the OS?

I mean aside from learning Assembly, processor architecture, some hardware "low-level" details, there isn't really too much more to writing a "Hello World" OS. It's a one person job.

And like every software developer ... "Hello World" aspires to be "It's a me, Mario! Hello ... *play music*."


----------



## Squashman (Apr 4, 2003)

I just listed a half dozen operating systems that have already spent many many many years in development. They haven't gone very far.

Linux isn't even as close to Market penetration as OS X is. 

It is not worth peoples time anymore. If you want to do it go nuts. Nobody is stopping you.

My personal view is that the cloud is the future and the operating system you are running on your desktop will be irrelevant.

I can even see us going back to thin clients that just boot up to a web browser and then all you have is web based apps.


----------



## Ent (Apr 11, 2009)

Possibly relevant;
Operating Systems aren't just there for desktop PCs. While by no means as glamorous as what you're envisaging, there may well be room for more specialized OSes to serve "smart" phones, fridges, cars, vacuum cleaners, et cetera.

Similarly there may be space for building a new OS if you have a niche for it to fill; of the Microsoft examples Squashman listed they're not just alternatives to Windows doing the same thing. One is unique in its work with multi-core processors, another has incredible inherent security because it's built in managed .net code. If you're not thinking of such a niche, no-one's going to take your OS over Windows or Linux (with which you can't even compete on price) when it has almost no software working with it and very limited support.


----------



## ImDatingJava (Jul 30, 2012)

I agree with all of your points, but also disagree in other ways.

What about an OS_ just for fun_?

It doesn't have to be commercial quality, and it doesn't have to 100% compete with Windows, Mac, or even Ubuntu at all.

I'm just saying that OS development IS software development, so why don't more people try to market a new idea out there that may be a _different_ flavor than Windows, Mac, etc.? Possibly a better idea.

No one's denying the difficulty, but I certainly do wonder if it's 100% legal to develop an OS from another OS and then market it for target hardware without licensing/etc.


----------



## Ent (Apr 11, 2009)

For fun, go for it. 
If you want to market something, you'll need a lot more than a one man team and a few of those would have to be lawyers.

You can't do it in Java though.


----------



## BartSibrelFan (Aug 6, 2012)

@Ent, actually, yes, you can.

It is possible to write an OS in the Java programming language.

Ever heard of Jnode? --> http://www.jnode.org/node/798

It's an OS developed primarily with Java.


----------



## Ent (Apr 11, 2009)

How can you write a full OS in a language that needs a VM? Surely the VM would need an OS to run in the first place.

I'd agree that you could write the vast majority of the software in Java.


----------



## loserOlimbs (Jun 19, 2004)

For fun... sure. But the time / man hours to make something for real use is insane! Especially when there are already great platforms with great support and reliability.

About the only place it makes any sense to write an OS from the ground up is for things like refrigerators, watches, and other little items without a common standard. Cell phones are all moving to Android or Windows Phone 7. Otherwise, no one is in a rush to build Smartphone OS whatever, because there is more to be gained by running Android and cashing in on its apps.

For the PCs, with Linux / Unix, Windows or even Apple to compete you would need not only the OS, but SKDs, libraries and base applications to attract developers to attract customers...

If you just want to play at the kernel level.... you could always grab the source for Linux, make your changes and rebuild it. Or just join Ubuntu or another community and contribute there.


----------



## GameDevelopment (Aug 8, 2012)

The OP does make a point.

Despite the insane difficulty, is most of the world just expecting Windows, Mac, Linux, Ubuntu, etc. to be the only real world operating systems?

Somebody has to add some flavor, even if it's their own, at some point.

If things didn't advance and keep coming at consumers, where would we be now? Still booting our Windows 2?

Also, I think the OP wants to make their *own* OS from scratch, not work off of a previously used kernel.

That means they intend on writing their own kernel, APIs, software, etc. from ... scratch.   

But crazier things have happened.


----------

