Operating Systems of the Future
An anonymous reader writes: "'Imagine computers in a group providing disk storage for their users, transparently swapping files and optimizing their collective performance, all with no central administration.' Computerworld is predicting that over the next 10 years, operating systems will become highly distributed and 'self-healing,' and they'll collaborate with applications, making application programmers' jobs easier."
What happens when some user click on a VBS script ?
I image great horrors as the whole cluster goes down in a mass emailing.
/satterth
Being called a dork on Slashdot must be like being called the retard in special ed.
Tanenbaums Amoeba is way ahead of the game then.
I'm so sick and tired of what the next 10 years will bring us. Howabout OSes that dont crash? How about hardware that won't lock up your computer? How about open standards, a generally more cautious approach to computing that will allow us to stabilize the developments that occur? Nah .. of course not. Lets take this overly complicated not-so-realiable thing and throw a transparent layer of 'self-healing' autonomy to it. I know thats what I've been looking for ... yet another reason why I have to explain to my boss that computers ain't perfect. I can hear him now: "But they're supposed to heal themselves! Why didn't the OS dial up our energy provider and ask why the power went out?!"
"Old man yells at systemd"
IMHO, future operating systems will tend to something like the ErOS operating system . This OS is based on multiple tiny extremely reliable components, within a strong capability model to provide a high level of security.
It's definitely a good approach, although ErOS is still quite experimental yet.
{{.sig}}
Grumble, grumble...
The target environment for [Microsoft's] Farsite is an organization in 2006 with 100,000 computers, 10 billion files and 10 petabytes (10,000TB) of data.
Surely there will be major scalability problems with something like this, a la Gnutella?
The potential pitfalls of 100,000 computers trying to access each other across the same network gives me headaches just thinking about it.
So, Bill is finally going to release a version of windows that will automatically simulate pressing ctrl-alt-delete when it blue screens.
Many people would say it's MS's customers that have been fault tolerant.<rimshot!>
VAX Clusters.
I predict that there will never be a revolutionary new operating system until we break free of the chains imposed by Posix compliance. Until then, we're stuck with files that have to be streams of bytes, ugo-style permissions, non-wandering processes, incompatable RPC calls, &c.
And the real pain is there have been OS'es that have had simple & elegant solutions to problems that are hard under unix (Aegis, Multics, VMS, TOPS, ...) that were pushed aside by the steamroller that is Unix.
But to be fair, many of the forgotten O/S's are now forgotten because they weren't as general purpose as Unix. Unix is the great compromise. But it's hard to strive for the best when you've already accepted compromise.
Farsite, while ingenious, looks more like a fantastic file storage system than anything else. Is it possible that they've tweaked the UI that most of us are accostomed to the point where any more upgrades are aesthetic, feature or reliability driven, and aren't fundamental improvements on the current desktop analogy?
Will the majority of the computer using populace still be double clicking, dragging and dropping, and 'opening' folders and hard drives 10, 15 years from now?
Could be. Could be.
Alcohol, Tobacco and Firearms should be the name of a store, not a government agency.
Oh great. It's already impossible to find a job with my measly bachelor's degree and now I have self-healing computers to look forward to. I should studied accounting...
I don't need a self-healing computer nearly as much as I need a self-painting house and a self-mowing lawn. And my wife could sure as heck use a self-fueling car.
Don'cha just love it when people "predict" what's already nearly available? And without even mentioning its existence in the article.
And don'cha just love it when MS "predicts" that they'll "inovate" by duplicating it under the MS banner?
Anybody care to "predict" the havoc that might insue when such OS's gain wide public use? I'd be leery of using such even in my isolated from the internet home network until it was proven to be absolutely secure, something today's less interactive computer nets can't even manage.
I'm happy that people are looking forward to, and researching, the future.
Would it hurt if a few people spent a bit more time making the present work worth a shit?
KFG
The bad side, which is closer to reality, is that a computer company working in an "extend our existing market" mode will find find it irresistable to tie new things tightly to the innards of what already been deployed. That's a great way to ensure that you inherit security flaws from whatever old model you had, however good the theory of your new system is.
Let me see if I've got this straight:
/. story about Microsoft getting legal permission to take over your computer, as part of a EULA.
1.
2. ComputerWorld story that includes a line about how Microsft sees the computer of the future as one giant logical system with many small partitions.
Is anyone else joining the dots like I am?
668: Neighbour of the Beast
I assume Microsoft will be releasing the source code and freely distributing Farsite so I support this project.
How about getting rid of IRQ's on the PC platform!
How about getting rid of drive letters in Windows/Dos and having mount points!
How about a better drive interface than the stupid IDE interface. (Macs did it right with SCSI, but now to be "cheap" they do it too [sigh])
And for self healing? If Windows is still around and the predominant OS, I'll pass on the "self healing" - it'll be more like "death-without-dignity." Remember NT 4 SP 6? [Shivver] I don't want MS "self-healing" my machine!
In fact, I don't think I want anyone self healing my machine until software is lots more robust than it is now. At least when I apply patches to my machine and notice that something isn't working right, I know I _just_ patched it, so it might be the patch. With someone else applying patches without my knowing, I would be screwed!
Yeah, all those "wonderful things are just around the corner" articles are neat, but I would truly be happy with some "incremental" changes.
Lets forget "visionary" for a while and just fix the crap that's broken right now! Pleeeeease!
Cheers!
Farsite
Butler Lampson, for papers on Byzantine reliability, mostly based on the work of
Leslie Lamport
http://www.computerworld.com/computerworld/records /images/story/Farsite.gif
Was it just me or does the notion of a "Centralized file server" NOT sound like distributed computing to you?
Not being in possesion of any moderator points I am forced to respond to your comment....
If you were to have read the caption on the image, you would see that it says Logically: a centralized file server, but then it goes on to say Physically distributed among clients.
When I want your opinion I will beat it out of you.
...operating systems...and they'll collaborate with applications...
Windows Inheritance: "Psst. You crouch behind j.user's legs and I'll give him a push."
Clippy 5000: "OK"
*SHOVE*-splat!
Software: "Have a nice trip? See you next Fall! Muahaha!"
--
"Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
"Imagine computers in a group providing disk storage for their users, transparently swapping files and optimizing their collective performance, all with no central administration."
Whoever thought up this pipe dream apparently doesn't understand the Zeroth Law of Network Security: If you want information to be secure, DON'T PUT IT ON THE FUCKING NETWORK!
Seriously! As if most business OSes don't default to the least-secure settings already! Why would you want to run important apps on a system where the default is to share anything and everything with any computer in listening distance?
This OS is based on multiple tiny extremely reliable components
Unfortunately that doesn't necessarily make the OS itself reliable. The emergent behaviour of a system is different from the behaviours of its components.
After all, all software is based on multiple tiny extremely reliable components (F00F and FDIV bugs aside)-- the processors op-codes -- and look how flakey most software is.
Sure, you've got to start with reliable components, but you have to combine them in just the right way, too.
-- Alastair
...there won't be much drastic change from now till the next 18 years. For evidence of this, look at the Apple Lisa. The Lisa had windows, icons, a menubar, a WYSIWYG interface, and a mouse. Today's computers are little more than a glorified Lisa interface, whether they are running Mac OS X or Windows XP (I know because I run both.) Like the Lisa, todays computers still crash and still corrupt themselves. I doubt that this could be easilly changed in the next five, ten, or even fifteen years.
I'll believe the distributed file-storage myth when I see it. To me, it sounds as if it would hog bandwidth, just like gnutella does. I don't see any change coming in the way I store files on my computer. It's fast, effecient, and hasn't needed a change.
SysAdmins need not quit their day-jobs. As long as Microsoft is providing this technology, you can be sure that it will run into snags and security vulnerabilities. Increased complexity = increased vulnerability.
...and that's all I've got to say about that
What was they hype ten years ago? Twenty?? Then, why am I still using UNIX??? And why is UNIX still the most powerful OS commonly used????
I think there hasn't been a new idea widely used in computing since the '70s! What gives?
Healthcare article at Kuro5hin
The first statement above makes perfect sense if you consider the second as axiomatic. However, the people working on these types of systems don't accept that axiom. Instead, they believe that cryptography-based security is just as strong as physical security...the odds that someone will factor a couple of hundred-digit numbers (or accomplish some equally difficult mathematical feat) are no higher than that they'll break into your home/office and steal your hardware. If they're right then there should be no problem with storing your files on some Iowa farmhand's computer (so long as you also have other replicas elsewhere for availability purposes), because Iowa Farmboy still can't access or modify your data without the right keys.
That's a big "if" you say. Well, yes it is. But if you want to make an argument that hardware security is the only real security, you'll need to show that cryptographically based systems aren't as secure as skilled and experienced implementors of such systems seem to think. Good luck.
Slashdot - News for Herds. Stuff that Splatters.
My strong belief is that the best "predictions" occur when you find something in use today - only too expensive for the home user - and "predict" it will be ubiquitous within a few years. So here are my completely predictable predictions.
Notice how all of my predictions sort-of exist already. This is what makes predictions so easy.
And if you believe this piece of dross, read their predictions from ten years ago.
'Nuff said.
MSBPodcast.com The opinions expressed here are my own. If you don't like 'em... Think up your own stuff.
Eros components arent just small and work exactly as documented like your assembly example- that would be enough if every programmer were an anal retentive computer scientist maybe.
in eros everything is orthogonally persistant meaning that every object, without doing anything on its own, has it's state saved by the system.
the other neat feature that makes it more reliable even in the face of bad application level code is that instead of access list based security ala unix, there are fine grained permissions called capabilites that govern what any object may do to any other.
these features coupled with transparent distribution could guarantee that even if the terminal in front of you is struck by lightning you'll be able to move to the nearest working one and pick up *exactly* where you left off!
check it out- there are a lot of kewl os level ideas that could make life better if adopted by more mainstream oses.
Sure, you've got to start with reliable components, but you have to combine them in just the right way, too.
First off, we should learn a lesson from biology. The bee, for example, has about a million interconnected neurons. Yet the bee's highly sophisticated behavior is extremely robust and efficient. How does nature do it? The answer has to do with parallelism and expectations.
1. Parallel processing insures that signals are not delayed, i.e., their relative arrival times are guaranteed to be consistent.
2. Expectations are assumptions that neurons make about the relative order of signal arrival times.
We can emulate the robustness of nature by first realizing that computing is really a genus of a species known as signal processing. We can obtain very high reliability by emulating the parallelism of nature and enforcing a program's expectations about the temporal order of messages: no signal/message should arrive before its time. The use of stringent timing constraints will ensure that interactions between multiple tiny modules remains consistently robust. Enforcement should be fully automated and an integral part of the OS.
Of course, this is only part of it. The other constraints (e.g., the use of plug-compatible links, strong typing, etc...) are known already. No message should be sent between objects unless first establishing that plugs are connected to compatible sockets, i.e., that they must be of the same type.
The most problematic aspect of computing, IMO, is that it is currently based on the algorithm. Problem is that algorithms wreak havoc in process timing and the end result is unreliability. The algorithm should not be the basis of computing. To ensure reliability, computing should be based on signal processing. Algorithms should only be part of application design, not process design. Just one man's opinion.