6 ms·
You answered your own question the second after you asked it. Look at Linux first. Note that it happily goes from cell phones to supercomputers. The reason t
by gecko 13y ago
You answered your own question the second after you asked it.
Look at Linux first. Note that it happily goes from cell phones to supercomputers. The reason that works is because "Linux" doesn't actually that much. Really, it means the kernel and (usually) the GNU userland. (Though note that Android proves that you can swap out the entire userland and still get something that people will call Linux.) Supercomputers don't have GUIs. Desktops run X or Wayland or Mir or whatever Ubuntu is doing these days, or sometimes just Chrome. Mobiles tend to run Android, although there's also Maemo and others. Meanwhile, a supercomputer would likely have no UI at all. In all cases, when we say these devices all "run Linux", we're really referring to the driver model, the kernel, and (when applicable) the user space.
The same happens with Windows. Windows Phone 8, Windows 8, Windows Server 2012, and the Xbox One all are Windows. They all run the Windows kernel, they all have the Microsoft CLR, and they all have (a lot of) the same APIs--especially at the driver layer. But while Windows 8, Windows Phone, and Xbox all run DirectX and have GUIs, Windows Server prefers to run headless. Windows Phone 8 and Windows both use WinRT, but Windows Phone 8's UI stack is slightly different from Windows 8 proper, mostly to facilitate power consumption and allow for the wildly different form factors. Xbox pretty clearly has a lot of Win 8 UI internally, but games mostly just code against DirectX. But of course these all count as Windows, because they all are Windows. Just sliced and diced in different directions, exactly like Linux does. And unlike Linux, there's actually a lot more in common that can legitimately be shared.
I don't think unifying all the OS here is really a big deal. It's been proven to work just fine with Linux (and actually, I'd argue, with OS X, but we can save that for another time).
- astrodust 13y agoThe Linux kernel is used in a lot of different devices, this is true, but it's also a lot leaner than the Windows one. Although efforts have been made to pare down what Windows is, it's still got a footprint gigantically bigger than Linux. Where Windows can squeeze on to an ARM system, Linux runs on embedded systems that are even smaller. The thing that's the most broken about Microsoft's strategy is it's not just the kernel being thrown everywhere, but the user interface. That's the most incoherent part of their strategy. Does the accounting department need to use the same UI as the Xbox? It's so confused. OS X and iOS are similar, but not the same thing, although not as different as, say, Ubuntu is to Android. It's possible that the Ubuntu phone project might blur this distinction in time, it seems possible. What I mean mostly is that just because Windows and it's user interface can run on all these different platforms doesn't mean it's an optimal approach. Then again, Microsoft has never shied away from monoculture. They're the Monsanto of software.
- freehunter 13y agoMy Windows Phone runs faster than my Android Phone on less hardware, for one example. I also know my car runs on Windows on pretty barebones embedded hardware as well. The two OSes also have slightly dissimilar user interfaces. Windows is not Windows is not Windows in exactly the same way Linux is not Linux is not Linux.
- gecko 13y agoThe Linux kernel is used in a lot of different devices, this is true, but it's also a lot leaner than the Windows one. Although efforts have been made to pare down what Windows is, it's still got a footprint gigantically bigger than Linux. I think Windows Phone 8 shows that this is not meaningfully true anymore. There's more work to be done, but the kernel on those devices are quite minimal, happily running on underpowered ARM devices with minimal RAM, and still leaving plenty of room for apps.
- angersock 13y agoSo, the Windows kernel probably is pound-for-pound as lightweight as the Linux kernel. Whenever people talk about Windows they always drag the UI and such along, whereas with Linux they seem to merrily ignore all the chrome. Any Windows kernel folks care to confirm/deny this?
- marshray 13y agoI work at MSFT and while not involved with kernel stuff directly I interact with them from time to time. The sentiment among kernel people is they'd put the NT kernel up against Linux in efficiency any day of the week. The challenge is that it's difficult to get just the NT kernel and minimal support libraries. There was an internal project called http://en.wikipedia.org/wiki/MinWin#cite_ref-zheng2007_10-0 http://en.wikipedia.org/wiki/MinWin#cite_ref-zheng2007_10-0 Without watching the entire video, Wikipedia mentions something like a 25MB footprint for a usable NT kernel. Windows installed OS features are a lot more a' la carte these days. It annoys me that there's not a ntsd.exe or telnet.exe on every box by default, but I suppose it's worth it for the greater goal. There's a lot of focus on Windows Server Core, Hyper-V, and Azure. Cloud is bringing everybody back to thinking about OS footprint again. I think the Windows-sans-(stuff not everyone needs) approach is only going to become more normal.