Not one of the "base it on Linux or BSD" comments gets it. This whole thing is MSR saying, "look, we got it wrong, and so did everyone else. It's not just about one computer anymore."
Sure, they're fixing up the way system resources are exposed and planning to make the whole OS more fault tolerant, but the key takeaway is that the whole OS is network aware. Apps can discover storage, processors, memory, and other resources on the local trusted network, and use them without caring at all that they might be on different machines.
Try getting a single apache or IIS instance to run on 50 servers in a cluster, without writing all of the distribution logic in the application. Sure you could separately configure a local instance on each node, and set up file syncronization or network storage, and...
Why federate your database when you could just add another node to the OS cluster, thereby increasing the resources available to the single DB instance?
The goal is to get all the infrastucture work for free.
I hope someone, anyone, can pull this off. As a developer of a distributed app, let me tell you, the bar right now is WAY too high, and current operating systems, be they Windows or Linux are not up to the task.
Not only that, but Singularity allows fine-grained security along the lines of capabilities. (Arguably Erlang has something like capabilities baked in as well.) This is the way security should have been done for internet-connected end-user controlled computers. What we have now is security meant to be managed by super-knowledgeable super-users.
Nope, that's it. Erlang is designed for cluster environments, and the cookie method is lightweight and good enough for that sort of environment.
If you want better security, unfortunately you have to roll it yourself. You could write a message router that tunnels Erlang messages over TCP, and apply some sort of authentication process to that.
Erlang applications that are exposed to the Internet do not allow Erlang connections from the outside, but rather implement a custom socket protocol and only use Erlang distribution internally.
I hear that they're planning on adding better security in future versions, but I don't know any details about that.
Try getting a single apache or IIS instance to run on 50 servers in a cluster
WHY???? the whole point of the web server is to be a stateless middleware broker. do these fifty servers now have one virtual port 80? do all fifty need to be restarted on a config change? the premise of one web server running on a cluster makes no sense
i can saturate an outbound gb ethernet connection with apache on one box. what are the other 49 supposed to be doing????
Vista took 6 years starting out as a "complete rewrite" with ambitious features that were pared away one by one to leave little more than a facelift for Windows XP. Don't get me wrong - I hope Microsoft is able to pull this off - but I don't hold out high hopes.
why do you "hope they pull it off"? their time has passed. none of their own users at home or in business are even interested in products past xp. they don't represent a positive force in the market, they continue to cling to dead ideas like drm...i'm not sure at all why anyone other than employees or shareholders would be cheering for them.
I'm cheering for them because I enjoy developing on their hardware, and I hate programming for the PS3.
Also, relax. It'd be great if an OS team made something that was technically interesting. Everyone, regardless of whether or not you use their implementation, benefits from their research.
Wait a minute, why do you accuse the poster of flamebaiting? I just read all his posts - he's speaking his mind using logic. Please quote him on what you consider flamebait within his posts, otherwise YOU are the one flaming now . . .
I've been confused about why anyone, especially in the (relatively enlightened) programmer crowd, would want Microsoft to succeed at just about anything anymore.
Haven't they tried their darndest to prove they really are evil quite a few times already?
They've basically held back the development of the Internet for many years now, and were most likely planning some kind of world-wide DRM-enslavement with Vista.
If Vista doesn't add much compared to XP, why would you suppose it took such a long time to develop?
OOXML? -Bribing countries/companies to let it pass, anyone?
There was a time when IBM was the evil empire. For all we know it will be Apple next, with some sort of thin client lock-in based on safari and itunes.
Genuine innovation is a good thing even when it comes from unpopular origins.
Reminds me of a discussion I read a while back about a power struggle in Microsoft between the 'backwards compatible' group mentality and the 'reinvent the wheel to be better at whatever cost' group mentality.
It seems to me the 'reinvent the wheel to be better at whatever cost' is winning (and indeed during that discussion they were in the early stages of winning), but that Microsoft's reputation as a whole keeps going down since that time.
People used to like windows because it just worked, and ran all their favorite software. The more they make it harder for people to do that, the more Apple and Linux will continue to eat their lunch.
Well, I think until fairly recently the backwards compatible group had it right. Windows had way too much going on in the corporate world to even consider it. But now in the era of (relatively) good virtualization and lots of cool web apps running on a nearly ubiquitous internet, the other group's argument has gotten a lot stronger. That's sort of the catch-22 for Microsoft though, because the exact same arguments make OSX an option for more users.
I think MS is a little behind on this, but only a little. Still I hope they don't ditch the Windows brand name, it's clearly one of the most successful of all time. Isn't midori a watermelon liqueur?
That remains to be seen. Web-based Office competitors have been underwhelming, both in terms of quality and uptake, and nobody's sure what if anything MSFT is doing there. It's a fallacy (though a very common one among the tech-savvy) to act as if web-based Offices pose any threat at all. They may, of course, but there's no sign of that yet.
Also virtualization isn't about Microsoft's products, they'll just write new ones for any new OSes. It's about the legacy code businesses everywhere run on.
Web-based Office competitors have been underwhelming
time and the trends are on their side. google docs shows the possibility. once web systems evolve to better handle these type of apps, the advantage will play to them more and more
Yeah, that's what everyone's been saying for about 3 years now. It's what a lot of people say about every technology, including the 99% that don't catch on. It's so cliche as to be meaningless.
I'm not sure what you mean by "web systems", but if you mean browsers/standards they're moving at far too slow pace to assume any impact at all on anything ever. And even if they advance, there's a lag until people adopt them. A large percentage of people still use IE6, so any business model built on "web systems" unavailable until IE9 is so far off as to be not worth discussing.
Yeah, that's what everyone's been saying for about 3 years now. It's what a lot of people say about every technology, including the 99% that don't catch on. It's so cliche as to be meaningless.
its not a cliche. people are making real money. microsoft should be concerned
Microsoft is coasting on past momentum at this point.
And between them, Apple and the swarm of open source operating systems have nibbled away a couple of extremely key markets. Name me a field where intense concentrated utilisation of computing resources happens in a mostly Windows environment. Most of the industrial computing environments run on some form of free unix-like OS for some very good reasons. And industrial computing (whether Google, Amazon, rackspace or what have you) is the growth segment of the technology industry at this time.
Windows may own the desktop still, but the desktop is a relatively saturated segment of the market. And most of the sales are replacements, not new seats.
And please don't just dismiss me as a Microsoft hater, I know some very smart people who work there and I do not underestimate the capability or creativity that can come out of the company when it comes down to the wire. But as one of the people I know there said to me a couple of years back "Inside microsoft there are about a hundred world class software companies, most of which are working against each other."
let me know when people stand in line for three hours to get a windows mobile phone. tell me the next time a wall street trading house does a re-architect and move to windows
I think that is more of a cult of personality issue. The iPhone is a great product, but waiting in line for hours for it is more of a super-fan thing to do. I saw the papers and the articles so I know it happened, but I sure don't know anyone who waited in line. A lot of people also wait in lines for video games and movie tickets but they are not the masses, they are the hardcore fringe fans.
I had to wait in line because I'd just gotten back from Asia and wasn't about to sign a 3-year BlackBerry contract when I could wait a couple weeks for the iPhone -- so by the time it arrived, I needed a phone badly.
In front of me were a couple of teenyboppers with no idea what the iPhone even cost (and didn't much care, their parents picked up the tab). Behind me was a DJ who knew every tidbit of iPhone gossip imaginable, definitely a hard-core Apple fan.
That the teenyboppers showed up tells me that it is something more than just a "cult of personality" that attracts Apple fans. It hits consumer culture in just the right spot to be a mass market hit.
There's a middle ground: build a new OS and provide backwards compatibility using virtualization (closer to Solaris Zones). It could work like the Coherence feature in Parallels VM for the Mac, but be embedded in the OS. If you double-click an app that requires WinXP, it launches it within a Zone containing an XP compatible environment and displays the GUI natively on your desktop.
OpenSolaris is failing for reasons other than technology. They do not actually want it to be open source, they just want to snow people who don't know better that it is open source. If it was open source, why not make it gplv2 and make it compatible with Linux? OpenSolaris needs hardware drivers, Linux would beneifit from ZFS. In the end Sun would gain a LOT more than they would give up. But instead it is gplv3, there is nothing to share with other projects, and they don't receive many patches. So it is DOA.
The article seems to indicate that this is something being done by Microsoft Research (MSR). In that case, there's no telling when it will be done, or if it is, whether it will even be used for a commercial version of Windows. MSR works more or less independently from the business divisions of the company.
Of course, if things turn out really well and there is a strong business case then there is every reason to think it would be adopted. But what clearly won't happen is what people are prediction (hoping?) elsewhere in this thread, that work will be poured into this and the ambitiousness of this project will cause Windows to be delayed. If this never sees the light of day than the actual Windows team will just keep on chugging along at whatever their plan A is.
Nice to see something positive mentioned about the project. As hackers, it's our job to cheer on projects like this and not focus on the parent company.
Basing it on another OS would negate one of the key aspects of their strategy - making it difficult to migrate software from their OS. Microsoft only wins if its body of software is Windows-specific and if porting or making it less-specific is a pain.
I believe Singularity enforces application security by validating the safety of the application code. This is completely different from the security mechanisms of Windows and Unix, which are based on protecting memory and separating the kernel and applications with a carefully checked interface. I doubt that much existing OS code would be useful for the new OS.
Singularity is really exciting. There are some big potential efficiency gains with this kind of OS. The biggest one is in reducing the number of context switches performed by the computer. A context switch is when the OS replaces the CPU's registers, saving the current values and reading in new ones. This takes time and can push application data out of the cache. With current OS's, every kernel call results in two expensive context switches. One to enter kernel mode and another to return to the application. In Singularity, an application's call into the OS shouldn't require a context switch.
I think they'll do it this time. They'll get the legacy stuff in a "blue box" (or was it yellow box) the same way that Mac OSX did. If they can make Office work, that's game, set, and match.
Look, the OSVs only choices are Windows and Ubuntu. Ain't no one going to try to sell Ubuntu to Enterprise Rent A Car (pick your old school, massive install of choice).
I think that we're all dismissing just how seriously game changing this might be. Microsoft has a bunch of really smart people sitting in Research working on this stuff.
Just think how cool this will be if they make a jump like the one that Apple made from OS 9 to OS X, and Apple made that jump with far less resources.
I personally don't see a desktop OS being "game changing" at this point anymore. We've pretty much figured out what we're going to be using desktop and laptop computers for by now.
But you're right in so far that Microsoft's all-important "legacy" stuff is by now so old it can easily be run in virtualization or even in emulation, so they're probably on the right track.
Are you implying that there isn't any game-changing areas of an OS anymore?
What about the WIMP (windows, icons, menus, pointer) interface?
What about cloud computing (as stated in the article)?
What about the future of the internet (call it web 3.0 or whatever)?
Looking at the timeline of operating systems and "game changing" improvements, I would imagine that it will continue to grow exponentially as it has been for the last ~30 years. Microsoft, Apple and Linux all have a great chance in contributing to these advances.
The jump from OS 9 to OS X did not happen when Apple nearly went under. It happened after sales had picked up again with the release of the iMac and similar hardware. Of course Apple at the time was nowhere near as profitable as it is today, but saying it "nearly went under" is an exaggeration. That happened in the years before Jobs returned and in the first two years or so of his return.
It's easy to think all companies rely on apache on Linix as you do. However, in the "real world" a bazillion companies depend on Windows to run stuff. And a lot of those companies depend on the software that was built for windows 3.1, NT, 2000 and XP. Not the latest and greatest. As such, MSFT has to maintain backward compatibility. If they start screwing with corporate customers and backwards compatibility they're going to have the department of justice so far up their asses...well you get the picture.
Windows runs the world. I'm sorry I know the internet is hosted on a lot of Linix servers but in small, medium and large businesses there a LOT of windows servers keeping everything running.
in theory, this sounds pretty good. a from-the-ground-up os rewrite could be really good, taking the realities of the current computing landscape into account. nobody has greater resources to make this happen than microsoft.
alas, this is microsoft we're talking about. so the first version will be called "my little operating system" or something, and they'll find plenty of ways to screw it up.
but what is the problem they are solving ?? the network stack of freebsd (for example) is perfectly adequate for saturating any modern outbound connection under heavy concurrent load. unless you grow the pipe bigger than the device can fill it, better networking software is just an academic exercise. and its not like freebsd is standing still.
if i were msft, i would just take freebsd7, graft a win32 managed runtime on to it, call it mibdori and ship it
The problem that Singularity attempts to solve is keeping the OS from collapsing under its own weight as it grows. (Sound familiar?) Faster, more reliable code that can evolve quickly.
c'mon, man. you know microsoft can't do that. they're MICROSOFT. even if this were the best technical choice to make, they would never do it. the negative publicity would kill them.
the problem they are solving is that windows, as it currently exists, is dragging around 20 years of cruft. the weight of all that cruft is slowly strangling microsoft to death. they can do it now, or they can do it later, but sooner or later, windows will have to be scrapped and replaced with something else altogether.
look what a great move it was for apple. painful in the short-term, big win in the long-term.
There's been an internal war of sorts within MS for years about this. They have had a long history of patching their own libraries and their own SO to fix bugs in software like SimCity... yes, they put special-case custom code in their own software to fix bugs in other companies' software. It was all in the interest of backward compatibility.
It was also short-sighted; that's not a sustainable way to go forward, because every one of those custom patches increases the maintenance overhead of your code, and it's not already stellar quality code, you're going to be in trouble... and MS was the epitome of the sweatshop, so there's no way that they had much if any good code floating around there.
Lately however, the other side has been gaining ground, leading to things like dotNET. They've willingly sacrificed backward compatibility in so far limited ways, which is a start in the right direction, IMO.
Since this project is in MS Research, it has a shot, but I suspect that if it were part of the standard development process at MS, it would take 90+ years, based on the story of the guy that wrote the start menu for Vista...
I think you're right; no matter what they do with the brand, I agree about windows. I don't think that they have as much time as they'd like, especially if Apple decides to get aggressive and teams up with Dell or PowerNotebooks or Boxx and starts expanding its OS marketing to take on Vista directly...
c'mon, man. you know microsoft can't do that. they're MICROSOFT. even if this were the best technical choice to make, they would never do it. the negative publicity would kill them.
i agree, eating that much crow would be impossible for them...but the reality is they are dining on crow now anyway. MSFT is drifting in the 25-27 range. this stock has gone from just a sideways bet to a decliner. they don't have time. in five years if they don't put a "grand slam" product on the market, the stock is going to 15. i hate apple but i will grant steve jobs this - he found a product to completely dominate his revenues in five years with the iphone.
It goes along the following lines: The only good thing about MS Win. are the ubiquitous driver support and secondly their programming API (since 90% of the desktop code + office + ... etc... depend on those APIs). However the rest (ie. the kernel, the gui, especially the kernel) suck. Therefore, the right thing to do is to trash the kernel and just use something else. It would be pretty easy for MS to write a compatibility layer for their drivers to say... the linux kernel (if we don't care about drivers, I would actually use FreeBSD as it is more stable and secure). Since, their compatibility layer does not include any major portion of the kernel and can be considered a separate module under the GPL (Nvidia and ATI do something like this already so it works), they can lock up the source to their pleasure and charge $150/license from us (and like $3/license from Dell et al.) and still make their nice cushy profits. Think ndiswrapper on steroids. You plug in the compat layer, point it to the Win32 drivers and magic: devices work. This works for MS. As shown, they still geto to make their cushy profits and get their lock in monopoly. If they do the same to their APIs on the app side, they can control the office market as well. It works for all those servers and stuff because they get to use the FreeBSD kernel with all the stability and server goodness that comes with it and it works for me because i take the compat layer, stick FreeBSD on top of it and happily go on bash-ing away this time with full driver support.
Furthermore, the compat layer and API layers are relatively thin with (hopefully) none of the really complex stuff like VM management, file systems, and CPU schedulers so it should be much much easier for MS to push out good code (they could even cut down their development budget and make even more money). Happy faces all around.
music to my ears as a free software zealot. microsoft is going off to build an os "done right"...where have we heard that before??
wait for the concessions and half-baked reversals. they're obsessing with a whole new kernel, that will likely be the first decision to get dumped as they watch MSFT drift down to 18 with no new product on deck to rally sales.
then having ditched the "rewrite" plan, they will spend a year spinning their wheels trying to locate the best two or three ideas from midori to graft on to vista, people might just jump to mobile platforms full-time, or the console market might start seriously eating into pc sales, or everyday people start using ubuntu, etc etc etc.
the market just isn't going to stand still for five years while microsoft tries to relearn how to build big systems. microsoft is chasing google, they are chasing apple, they are chasing oracle, they are chasing nintendo, they are chasing linux....
its going to be fun watching this company feign relevance while going the way of DEC
Personally I think it's surprising they haven't decided to build on top of FreeBSD or Linux yet. Apple saved so much time and and resources by doing this with OS X.
Of course at some point someone is going to invent something better than Unix. Who knows, maybe it will be Microsoft (haha... you never know). But I think they would ultimately stand to be more successful if they didn't have to keep reinventing TCP/IP stacks and filesystems and could focus on something a little higher level.
Well, the biggest misconception about MacOS X is that it was built on top of FreeBSD. It's actually built on top of Mach that they perfected at NeXT (Avie Tevanian was one of the creators of Mach at CMU). FreeBSD was added as one of the sublayers.
They need to hurry up, otherwise there won't be any developers left to try the new thingie out, only 60+ old ex-taxi drivers who position their monitors facing a corner, fire up an anti-virus in "perpetual disk scan mode" and fall asleep in front of "SQL Query Designer" inside of Visual Studio awaiting for 5:00PM to go home.
Not one of the "base it on Linux or BSD" comments gets it. This whole thing is MSR saying, "look, we got it wrong, and so did everyone else. It's not just about one computer anymore."
Sure, they're fixing up the way system resources are exposed and planning to make the whole OS more fault tolerant, but the key takeaway is that the whole OS is network aware. Apps can discover storage, processors, memory, and other resources on the local trusted network, and use them without caring at all that they might be on different machines.
Try getting a single apache or IIS instance to run on 50 servers in a cluster, without writing all of the distribution logic in the application. Sure you could separately configure a local instance on each node, and set up file syncronization or network storage, and...
Why federate your database when you could just add another node to the OS cluster, thereby increasing the resources available to the single DB instance?
The goal is to get all the infrastucture work for free.
I hope someone, anyone, can pull this off. As a developer of a distributed app, let me tell you, the bar right now is WAY too high, and current operating systems, be they Windows or Linux are not up to the task.
[Edit: slashes caused unintentional italics]