Windows Is Dead – Long Live Midori?
parvenu74 writes "A story from Infoworld is suggesting that the days of Windows are numbered and that Microsoft is preparing a web-based operating system code-named Midori as a successor. Midori is reported to be an offshoot of Microsoft Research's Singularity OS, an all-managed code microkernel OS which leverages a technology called software isolated processes (SIPs) to overcome the traditional inter-thread communications issues of microkernel OSes."
web-based == subscription model.
12:50 - press return.
It doesn't...they are describing a thin client. While I agree that thin clients are nice in a lot of situations, there is no way in hell I would use a thin client as my primary OS. And I will not use a thin client at all (well, outside of a corporate/work environment anyway) unless *I* control the server for it. If I want to put a couple thin client terminals around my house that run off my Linux server, fine. I'm curious how they think a thin client will work as a primary OS anyway. It won't...you have to have SOME OS on the computer. And I really don't think anyone is going to be using PXE over the internet.
I hope you're being sarcastic, because Midori is just a feminine Japanese name meaning green.
rehab is for quitters
No, she's an anime character!
"16MB (fuck off, MiB fascists)" - The Mighty Buzzard
The Eee and its ilk have shown that people are willing to buy Windowsless boxes, which is an affront to Microsoft's business model. You have to wonder if Midori is a "plan B" to allow them to continue to get revenue from Linux users. Alan, Bob and Clarence may well be willing to pay $10 a month for "Windows access" on their Eees if it lets them use Office, and this way Microsoft have a guaranteed revenue stream whatever OS people actually buy with their machine. Especially if it's agressively marketed and bundled.
No kidding!!! What do you say at this point?
This probably means that M$ is going to add a bunch of proprietaries to Javascript through IE and start adding language features to make a proprietary platform. Even so more, probably access to the win32 api via javascript. Even more so, probably JITed c#, wait.. wasn't java supposed to do this?
This is almost exactly the same thing, in spirit at least, as Inferno (http://www.vitanuova.com/inferno/), which started in 1995 and has been under continuous development since. Managed kernel, runs on real hardware, uses software isolation between managed threads... oh, and has code flying, for real, right now. :)
Anarchy$ dd if=/dev/random of=~/.signature bs=120 count=1
It seems that every ten years, someone re-invents the thin client.
First it was dumb terminals connected to a mainframe, then to a serial port box so one can connect to a UNIX box.
Then came XStations which used various (direct, indirect, broadcast) forms of XDMCP to find a host to download microcode and run apps from.
Then, it was JavaStations where people talked about fast broadband access to stuff on the ISP's server, and not to worry about all their private documents being stored offsite.
This just seems like more of the same, perhaps an offshoot of cloud computing. It will work for a couple niches here and there, but as a whole, Net based operating systems will fail, as people want to keep their stuff private on their own systems.
Same disadvantages apply. Security of stored files for example -- I trust my external TrueCrypt encrypted drive that uses both a long passphrase and a set of keyfiles a lot more to securely store my Word documents than I do some random ISP's computer.
"Midori" is Japanese for "green". It is also a common female first name.
I don't know how either would apply to an OS, unless it has some connection to this.
Prov 9:8 Do not rebuke mockers or they will hate you; rebuke the wise and they will love you.
Brian Madden is either talking about something else, or he's confused by references to hypervisors elsewhere. Midori will run under Hypervisors... but as one possible deployment of the OS, not as an essential part of the system. Singularity is more like ".NET" taken to the next level, with the entire OS running without hardware memory protection (let alone hypervisors), so it can run anywhere... even as a module inside another application... without any specific hardware support.
The ideal situation is to have the CPU execute the managed bytecodes nativly essentially handling all the isolation in hardware.
With 64-bit addressing there is a huge huge opportunity for hardware support of packed data structures or hardware based compression.
With native execution and some form of data packing there may actually be the possibility of fast execution, reasonable memory use and a more forgiving managed environment.
Now if only we can do something about exception handling essentially goto statements and allowing assured execution of functions can't fail (for example _everything_ shouldn't have to allocate memory) unless the cpu/northbridge melts it would interest me.
I think there is a basic opportunity for new directions...
More intelligence in the CPU - offload higher level instructions
Generic hardware interfaces - DMA, out of order/scatter gather, queues, interrupt handling..etc. Hardware includes interface specification in its firmware...think bluetooth like hardware profiles.
But the devils in the details and there are reason zillions of hours of time have been spent on todays computers. If you can get rid of all legacy software and hardware concerns... there is a lot of opportunity..given how cheap hardware is and how flexable source code is or can be made to be via an automated process a totally new direction might both be affordable and worth trying.
...but that it is based on a new programming model. Many ideas are coming from the programming languages research community. All code will be type-safe and memory-safe. Interaction with the OS and other processes will make much more use of immutable data structures. Concurrency will be pervasive. It will be like one giant Erlang environment.
I mention America specifically as a generic example that everyone understands for one reason. "Unlimited Internet Bandwidth". This type of a model (even if it is a model where MOST of the OS is on current hardware but then randomly checks the internet for it's main "modular" pieces, vs having it all on the Hard Drive as we current do) cannot work well because other countries actually have to pay for speicifc amounts of bandwidth.
And even now, I've read random articles talking about ISPs (in america) which are considering moving to the "Pay for Bandwidth Tiers" models. WTF is the point of getting an OS that eats up all of your bandwidth just to stay turned on and be running a screen saver? It would need to randomly connect out and update things after all...
Some might argue that this is already being done, and that "caching" would solve the problem ... except that caching would negate the whole purpose of an online-OS (it needs to always have the latest thing to work well). Currently windows ALREADY connects out and randomly checks things and uses bandwidth, but it's NOT downloading entire modules as something like that would require.
Sorry, but if I lived somewhere with Pay-As-You-Go internet (I'm considering moving to Australia) I sure as hell wouldn't pay more money to an ISP on a monthly basis just so that I can use the "latest and greatest" windows.
I think you're just trying to be confontational.
Yes Windows XP still has its problems, but it is quite stable if you're not stupid about it.
I keep my work machine up for weeks at a time, hibernating about twice a week during that and I have never had problems. Some things start going a little weird at times, like I recently silently lost my sound device after an up times of 35 days.
I have 3 home machines, one is a windows xp media centre machine hosting 1.5TB of data, movies and music that I share and stream out to the other 2. The "server" stays up for weeks at a time with nary a problem. Heck the mythTV box (standard install and nothing else) that hooks into my TV has memory issues if I leave it up for longer than about 8 hours. Upon normal boot it can play a high-def (720p) movie streamed across my home network just fine. After about 9 hours, it has trouble playing a 320x240 video clip without stuttering. (It has 2GB memory, E6550 core 2 duo). I suppose its entirely possible that I need to tweak some configuraton, but I didn't have to do that for the windows machines.
The other machine (a small windows xp media centre laptop I move around the house) stays on or in and out of hibernation for weeks at a time. It always comes back and chugs along with no problems. I often fall asleep and wake up to it playing along just fine; sometimes it stays playing for a day or two at a time with no problems (the stereo sleep timer is on so I usually forgot to turn the computer off, until I notice it is on).
At work, I administer about 400 windows xp machines. I can go through our help logs over the past 3 and count the number of blue screens on one hand. The number of times windows has screwed up by itself, the user hasn't done something stupid or installed some crap that screwed it up, is about 43 for the last 3 years. And over half of those coincidently happened whenever we got a power bump through the building. Notebooks on docking stations always have trouble with power bumps.
Yes its anecdotal, but Windows has progressed nicely enough that it handles itself well enough.
Of course whether you count viruses and potential security problems directly against Microsoft or not will change that.
Anyone remember Cairo? ;-)
Never ascribe to malice that which is adequately explained by incompetence.
I can say that I've encountered a BSOD in XP but it must have been less than a dozen times spread across 5 years and over 80 computers.
Agreed and in my case it can almost always be invariably traced back to either:
1) bad network drivers, particularly wifi
2) bad video drivers
3) faulty ram
4) faulty hard drive
I've had linux kernel panics about as often, and for generally the same reasons.
And when Windows crashes for those reasons people still blame Windows not the drivers/hardware.
Midori is being designed in such a way that components of the OS communicate with each other in a location independent manner. API calls to a local machine are no different than API calls to a remote machine.
This strikes me as being similar to a design goal shared by Plan 9, and its spiritual descendant Inferno, both of which were based around the 9P protocol.
The "cue the foo posts in 3, 2, 1..." posts will commence with no subsequent foo posts in 3, 2, 1...