←back to thread

Ubuntu on Windows

(blog.dustinkirkland.com)
2049 points bpierre | 2 comments | | HN request time: 0.411s | source
Show context
takeda ◴[] No.11392296[source]
Surprised I don't see anyone else mentioning this.

This looks to me like typical Microsoft strategy that they utilized a lot 25 years ago.

1. when not leader in given market, make your product fully compatible with competitor

2. start gaining momentum (e.g. why should I use Linux, when on Windows I can run both Linux and Windows applications)

3. once becoming leader break up compatibility

4. rinse and repeat

Happened with MS-DOS, Word, Excel, Internet Explorer, and others.

replies(23): >>11392494 #>>11393099 #>>11393276 #>>11393408 #>>11393449 #>>11393546 #>>11393585 #>>11394255 #>>11394392 #>>11395372 #>>11395436 #>>11395525 #>>11395526 #>>11395634 #>>11395700 #>>11395784 #>>11396366 #>>11396861 #>>11397608 #>>11397942 #>>11398467 #>>11398629 #>>11403675 #
partycoder ◴[] No.11395700[source]
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

replies(1): >>11395708 #
1. creshal ◴[] No.11395708[source]
Canonical + Microsoft "including" Ubuntu = Microsoft Xenix 2016?
replies(1): >>11396439 #
2. cturner ◴[] No.11396439[source]
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.