Linked by Thom Holwerda on Sat 15th May 2010 19:23 UTC
OSNews, Generic OSes There's one complaint we here at OSNews get thrown in our faces quite often: what's up with the lack of, you know, operating system news on OSNews? Why so much mobile phone news? Why so much talk of H264, HTML5, and Flash? Where's the juicy news on tomorrow's operating systems? Since it's weekend, I might as well explain why things are the way they are. Hint: it has nothing to do with a lack of willingness.
Thread beginning with comment 424811
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE: Comment by mtzmtulivu
by kaiwai on Sun 16th May 2010 04:45 UTC in reply to "Comment by mtzmtulivu"
kaiwai
Member since:
2005-07-06

The operating system space is a matured space and the world seem to be settling in to the three systems(Macwinilux), nothing new is coming on this front.


I'd argue it is Macwinnix because although Linux is the most visible *NIX out there, it would also be correct to note that pretty much every 'new' operating system today is a variation of *NIX rather than a totally new idea form the ground up or at least a clone of a not very well known operating system. For some reason, something that confuses me, you never see a group stating the intention on creating a desktop operating system and have it based upon OpenVMS for some reason.

What one ends up having is a variation of *NIX's out there versus Windows rather than a collection of distinctively different operating systems. It is kind of depressing, therefore, that there is this push to keep re-implementing *NIX when there are possibly better operating systems to clone such as Plan9, OpenVMS or maybe a hybrid operating system that takes the best from each operating system which is what appears that DragonFlyBSD has done ;)

Reply Parent Score: 2

RE[2]: Comment by mtzmtulivu
by Neolander on Sun 16th May 2010 08:48 in reply to "RE: Comment by mtzmtulivu"
Neolander Member since:
2010-03-08

/begin rant

I'd argue it is Macwinnix because although Linux is the most visible *NIX out there, it would also be correct to note that pretty much every 'new' operating system today is a variation of *NIX rather than a totally new idea form the ground up or at least a clone of a not very well known operating system.

I agree with you. Unix vs VMS's and DOS's ugly grandson is boring. I agree that UNIX was a cool OS back on its days, and certainly still is for servers, but it's not meant to be a desktop operating system nor is not good at it.

UNIX is an OS family where the preferred data type in system calls is char*, which was not designed with multitasking in mind at all, whose standard GUI structure is horrible (a single app can take down everything by crashing), and for which "event-driven", "pop-up threads" and "asynchronous" are scary words which only get rarely used...

Things are no better in the Windows side. Sure, it's finally stable, but
-The kernel is horribly bloated. In fact, the whole OS suffers from an insane bloat level.
-Everything is still pixel-based
-Just every driver installation CD sees some obvious need to reinvent standard controls and break interface consistency
-There's still a lot of silly popups.
-A web browser is used to render every single system windows, in order to justify its infamous presence.
-When you want to install an app, you still have to give full admin rights to an untrusted "setup.exe" program.

And so on... In fact, Windows could be a good OS, provided that it did not bear the Win9x legacy and had a simpler kernel structure. But it does bear this legacy, and unless a complete rewrite occurs someday it will bear it forever.

I know, I know, desktop is not everything. But that's because things are pretty much mature on the server side. Sometimes, we get a new filesystem, yeah. A 10% performance increase. Or a compatibility layer which allows running apps from os Y on top of os Z with "almost no performance loss". And then life goes on. Revolutionary changes in the server area are planned with the advent of distributed operating systems which just about every computer science lab has a team working on. To the contrary, the desktop is still very immature, but does not get attention anymore.

That's why I'm working on a desktop operating system project. I try to prove that some real evolutions are still possible in that area. But it won't be ready tomorrow. And it could never be ready at all, even though articles like this are encouraging me to go further and prove that the desktop still has something to say.

The fact is, at the moment, I've got nothing that's worth showing. Only some written doc (targeted user experience and kernel design) and a code which turns multiboot data into something useful and arch-independent, and which *almost* turns long mode on. Until I get a fully working µkernel, there's nothing interesting here. And until I get some usable GUI running on top of it, there's nothing worth showing here at OSnews.

It'll take a year or two, at least, before I get a stable GUI, if I take the time to write clean code (which I want to do). Hence, at the moment, I can only agree with this article : it's sad that OS development is so out of fashion, especially in the desktop area, and that people now learn C# and Java instead of C++ and C. But well... If you want this to change, change it yourself ;)

/end rant

Edited 2010-05-16 09:03 UTC

Reply Parent Score: 1

RE[3]: Comment by mtzmtulivu
by kaiwai on Sun 16th May 2010 11:11 in reply to "RE[2]: Comment by mtzmtulivu"
kaiwai Member since:
2005-07-06

I agree with you. Unix vs VMS's and DOS's ugly grandson is boring. I agree that UNIX was a cool OS back on its days, and certainly still is for servers, but it's not meant to be a desktop operating system nor is not good at it.


Yeap but it amazes me why we as a people keep gravitating back to UNIX as if it were the pinnacle of perfection when in reality it was a piece of GET (Good Enough Technology) where superior alternatives have been provided since. OpenVMS - why hasn't anyone re-implemented OpenVMS in pure C99? then there is the UNIX route, ok there are some great ideas - so why not embrace Plan9? sure the licence might not be to everyones taste but why hasn't anyone implemented Plan9 in a LGPL and run with many of these ideas that were laid out? it is as almost we have legions of programmers who go into a parking lot looking for a get away car and of all the cars they could take - they choose the lada.

UNIX is an OS family where the preferred data type in system calls is char*, which was not designed with multitasking in mind at all, whose standard GUI structure is horrible (a single app can take down everything by crashing), and for which "event-driven", "pop-up threads" and "asynchronous" are scary words which only get rarely used...


You can multitask in a way, load something and then push it to the background ;) I'd say to be more correct the method of input wasn't conducent to a single end user multitasking - X11 was a nice idea but it was never fully standardised thus you end up with the situation we have today with two desktops that are each horrible in their own unique way.

Things are no better in the Windows side. Sure, it's finally stable, but
-The kernel is horribly bloated. In fact, the whole OS suffers from an insane bloat level.
-Everything is still pixel-based
-Just every driver installation CD sees some obvious need to reinvent standard controls and break interface consistency
-There's still a lot of silly popups.
-A web browser is used to render every single system windows, in order to justify its infamous presence.
-When you want to install an app, you still have to give full admin rights to an untrusted "setup.exe" program.

And so on... In fact, Windows could be a good OS, provided that it did not bear the Win9x legacy and had a simpler kernel structure. But it does bear this legacy, and unless a complete rewrite occurs someday it will bear it forever.


What Microsoft Windows reminds me of is a person who throws things against a wall until they find something that'll stick and then run with it or they have a good idea but never following it through to the logical conclusion. Take the registry, nice idea conceptually but when implemented there were no instructions as so far as how developers should use it and for times when they shouldn't use it. The net result - a good idea that should have worked in principle ends up getting used and abused to the point that it becomes the single vector for legions of people to spew hatred against. An otherwise innocuous operating system feature at the centre of discourse surrounding "what does Windows suck".

As for the res, what Microsoft need to do is provide a single interface for accessing each device. There is should be no reason for Intel or Lenovo to bundle custom interfaces and other widgets with their computers when the bundled interface should work nicely. Same can be said for scanners - there should be no reason for HP to provide a 200MB download just so someone can scan a damn picture - the only thing provided should be 5MB worth of drivers with the functionality being provided by the operating system through a set of built in tools.

Then there is the low levels of the operating system which always seems to me like a knee jerk reaction against UNIX rather than an operating system designed a certain way because it was the superior way of doing something. Decisions being made for political rather than technical decisions, focusing on delivering features rather than asking the question how that particular addition fits into the larger system itself. For example, when ActiveX was posed, why didn't anyone think about the larger implications of such a decision? how about the giving everyone admin privileges in Windows 2000 for the sake of compatibility - why didn't they tell developers during development to test their software with the most restrictive setting so then it would work with Windows 2000 users being setup in limited user mode?

End of the day, however, Microsoft has made their decision and it has little impact upon me given that I am not exposed to using their software other than what I purchase from their MacBU. In the end Mac OS X might not be perfect but at least fundamentally the issues are simply matter of fixing up bugs rather than fundamental structural issues - see Windows and shatter attack.

Reply Parent Score: 1

RE[3]: Comment by mtzmtulivu
by righard on Sun 16th May 2010 11:48 in reply to "RE[2]: Comment by mtzmtulivu"
righard Member since:
2007-12-26

I don;t know how long you're working one your OS, but if your still struggling with long mode a might suggest doing things the other way around...

First write your OS inside another host OS, it can still be as original and exiting as you want. You can still create your own memory management-, treading- systems etc. But this way you can focus on the exiting parts of an OS instead of writing boring video drivers which probably have become obsolete once you finished them and won't be new and exiting anyway.

Once this is done you can always create a micro kernel that removes the need for a host OS.

This is the way I'm creating my hobby OS.

Reply Parent Score: 3

RE[3]: Comment by mtzmtulivu
by ricegf on Sun 16th May 2010 11:49 in reply to "RE[2]: Comment by mtzmtulivu"
ricegf Member since:
2007-04-25

"UNIX ... was not designed with multitasking in mind at all"

Not sure where you heard this (or maybe the message is getting garbled in transit?). Unix was the unexpected offspring of Multics - both were essentially *mainframe* operating systems that were built from the ground up to not only multitask, but also to handle multiple users as well.

Unix (via its second cousin Linux) scaled down from the big iron to servers, desktops, phones, embedded devices and watches; Windows scaled up from the microcomputer to servers, picking up multitasking (but still not good multi-user) along the way. (Mac OS/X is Unix with a proprietary shell; it could probably scale, too, if Apple let it out of its ivory tower.)

The rest of your rant is pretty much in sync with my 33 years experience, though. (Gads, where did the time go!?!)

Writing a new OS is harder than you think - Gnu Hurd has been in development for 20 years now, and they still don't have a beta release. And that's with backing from a major organization, FSF, where the kernel is a pretty visible initiative.

But please don't let that discourage you. Linus Torvolds was a hobbyist once, too, but I hear his little project - "nothing big and professional like gnu" - has done OK. Yours can, too!

Reply Parent Score: 2

RE[3]: Comment by mtzmtulivu
by WereCatf on Sun 16th May 2010 12:31 in reply to "RE[2]: Comment by mtzmtulivu"
WereCatf Member since:
2006-02-15

I don't really have much to say about the rest of your comment, but this exerpt baffles me... UNIX and all of its derivates were specifically designed with multi-user environments in mind as they were meant for use in supercomputers.

And you can't really design a multi-user system without designing multitasking along.

which was not designed with multitasking in mind at all

Reply Parent Score: 3

RE[3]: Comment by mtzmtulivu
by vodoomoth on Sun 16th May 2010 14:55 in reply to "RE[2]: Comment by mtzmtulivu"
vodoomoth Member since:
2010-03-30


That's why I'm working on a desktop operating system project. I try to prove that some real evolutions are still possible in that area. But it won't be ready tomorrow. And it could never be ready at all, even though articles like this are encouraging me to go further and prove that the desktop still has something to say.

The fact is, at the moment, I've got nothing that's worth showing. Only some written doc (targeted user experience and kernel design) and a code which turns multiboot data into something useful and arch-independent, and which *almost* turns long mode on. Until I get a fully working µkernel, there's nothing interesting here. And until I get some usable GUI running on top of it, there's nothing worth showing here at OSnews.

It'll take a year or two, at least, before I get a stable GUI, if I take the time to write clean code (which I want to do).

@Neolander: I am more than willing to contribute to your project. Do you have a thread on some forum or a Sourceforge page started ?

Unless such a thing exists and I'm not aware of it, I think OSNews should have a forum were topics could be forked from the news. It's quite frustrating (I repeat, "unless it already exists") that comments cannot be posted on articles that are more than five days old. I'm referring specifically to the article where there was a link to Kroc's vision of what the dream OS would be (user and task-centric, no branding, no bloated apps like iTunes; that's IIRC). Back to the topic at hand, the reasons why we don't see the silhouette of a real "revolution" necessarily comprise these two:

1- some paradigms have emerged as the best. Specifically thinking of preemptive CPU time-sharing techniques. Although I recall (probably 4 months max) reading an article about a member of Microsoft's OS core team pointing out the need to rethink how the processor is used (wrt system space and user space) due to old designs applying to more recent multiple-core architectures. I think OS originality comes from design decisions or orientations; the rest is just accessory. None of this exists today: the file system explorers on Windows and Ubuntu look like twins of Finder, with more options, true, but still clones.

2- As I've pointed out in another article about Ubuntu 10.04, all OSes I've tried (all Windows except 7, MacOS 10.5 and 10.6, Linux - at various times in the past 13 years but it's never looked mature enough for my taste, except Kubuntu 10.04) suck and deserve a good "zéro pointé" (meaning zero plus half of zero) spoken out loud and clear for all that's related to speed.

In an OS, speed and user-experience (not the geek, the lay user, like any grandmother) should be the only design concerns. Any current OS on a current machine should ideally start in less than 15 seconds. Applications should launch and be usable in 2 seconds. Just as snappy as uTorrent on Windows or the new Opera 10.53 on MacOSX when loading a page on a good broadband connection. Anything longer than that on today's computers is either badly crafted or inherently flawed design-related (is that correct English ?).

Another thing to avoid as much as possible: drivers... The situation with Windows is just insane and ludicrous: plugging the same USB device in four distinct ports installs the device driver 4 times!

My advice for your project: before heading into code, choose your design goals clearly; in all cases strive to keep things: 1- minimal, 2- extensible and 3- easily configurable by average Joe. There's no point in having 60+ processes (current Vista) when the system has started after 3 minutes+ of painful loading and the user hasn't launched a single program yet. I understand having to wait longer when more options are on, I don't understand having to wait that long when I just want to retrieve some info from some text file or browse the web.

Reply Parent Score: 1