Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Some brief history refresher:

Apple + Microsoft "collaborating" on Macintosh software = Windows

IBM + Microsoft "collaborating" on OS/2 = the NT kernel, Windows NT

Sybase + Microsoft "collaborating" on Sybase SQL server = MS SQL Server

Sun + Microsoft "embracing" Java = .NET Framework



Canonical + Microsoft "including" Ubuntu = Microsoft Xenix 2016?


I think it would be difficult to do a full unix experience on the Windows kernel because the forking will never be as fast. I'm not going to cite facts, so be dubious of this, but let me try to explain.

There's lots of layers within the Windows kernel. They give a lot of functionality, and from many perspectives are superior to unix. For example, it would be far easier to write a massive and robust and sensible init system on top of Executive Services than it is on top of unix. But, I can't see how they get the extra functionality except by introducing larger overhead for things like forking. And certainly in my previous experience of NT, forking has been incredibly slow.

Everything-is-a-file is much talked about with regard to unix. But fast forking is far more significant. Apache happened because of fast forking. Shell pipes assume fast forking. The way that you write shell scripts assumes fast forking. One of the reasons that cygwin has never felt right to me is because the forking is sluggish. I don't think that's cygwin's fault, I think it comes from the design of the Cutter kernel.

The hybrid they're offering here is probably the sweet spot - getting the strenghts of Windows, but getting access to a full unix layer.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: