So today while I should have been doing other things, I was checking Hackaday and found this gem. Further research *coughgooglesearchcough* uncovered these two blog posts. It seems that Microsoft is creating something like a reverse wine. Instead of emulating linux, or re-implementing posix functions in windows like cygwin, this new MS project replaces linux syscalls on the fly, similar to how windows programs are run under wine. This will let you (theoretically) run any native linux program on windows, without emulation or recompilation.
So it sounds like this is either a new verison of Microsoft Services For Unix or using something like colinux but I'm a little pessimistic about this. For integration sake unless they have an X server running things like gvim and such won't work. you'd want to reimplement gksu or sudo to use the UAC dialog for security. Not to mention things like application settings, can a linux build of Firefox share the profile folder with a windows build, I doubt it. SO you'd either have two locations of applications you'd want to share settings or they do something like symlink C:\Users\Username to /home/username.

Also what about IPC, will they port their COM stuff to linux and D-Bus to windows? Will there be some fancy D-Bus translation layer?

Sure this may be better than cygwin but it still seems to me improving powershell and cmd would be better routes for Microsoft than this as its still at the end of the day a separate section or system running alongside windows it is still far from native.
Source for the following is the first linked blog post.

TheStorm wrote:
Not to mention things like application settings, can a linux build of Firefox share the profile folder with a windows build, I doubt it. SO you'd either have two locations of applications you'd want to share settings or they do something like symlink C:\Users\Username to /home/username.


The filesystem is under %APPDATA%\Local. You could symlink to a native windows application's settings, but I'm not sure why you'd want to do that. In such a case it's down to the application being compatible with itself (in Firefox's case, I suspect it would work).

Quote:
Sure this may be better than cygwin but it still seems to me improving powershell and cmd would be better routes for Microsoft than this as its still at the end of the day a separate section or system running alongside windows it is still far from native.
It's a syscall translation layer, so pretty close to native. There's clearly some amount of filesystem trickery going on, but I suspect that's about it and everything else uses the closest win32 equivalent. Consequently handling things like D-bus should be relatively easy. You have a good point with X, but on the other hand windows-native X servers already exist so you could notionally use one of those.
Tari wrote:
Source for the following is the first linked blog post.

The filesystem is under %APPDATA%\Local. You could symlink to a native windows application's settings, but I'm not sure why you'd want to do that. In such a case it's down to the application being compatible with itself (in Firefox's case, I suspect it would work).

I guess I missed that image, that does sound like it's handled fairly well. For settings I was thinking more things like gvim/vim and git and other similar tools that you might want to use from both environments.

Quote:
It's a syscall translation layer, so pretty close to native. There's clearly some amount of filesystem trickery going on, but I suspect that's about it and everything else uses the closest win32 equivalent. Consequently handling things like D-bus should be relatively easy. You have a good point with X, but on the other hand windows-native X servers already exist so you could notionally use one of those.


What I meant more by native was windows tools are all designed with windows in mind where bash and unix utilities make assumptions about more than just the FS layout. Anything more than simple bash scripts are not likely to just work and if they do there will likely be reasons it will be worse than something written for or directly ported to windows.

I guess my point is I don't see much of a huge use case that wouldn't also be solved by making powershell more user friendly and documented like they are doing with the native ssh support. Also the choice of Ubuntu for something that will likely never have anything graphical seems odd, but I'm sure there is a reason for that. It'll be interesting to see if this is a framework you can port other distro's over with.
"I see you like Linux, so I went and put some Linux in your Windows."

"I'm in ur Windowz, recompiling all ur kernelz!"
Unfortunately, bash, et. al, are only as useful as the terminal emulator hosting them, and cmd.exe is a steaming pile of manure...
The windows 10 terminal emulator is much better than previous ones. It can actually resize horizontally and whatnot.
For now, it's just a peculiar, crippled derivative of Ubuntu somewhat integrated with Windows, without direct support for GUI programs. This move wasn't made out of any kind of philanthropic aims - but as long as it doesn't negatively impact the Linux ecosystem, it's not much of a problem, I suppose Smile
elfprince13 wrote:
Unfortunately, bash, et. al, are only as useful as the terminal emulator hosting them, and cmd.exe is a steaming pile of manure...
They are working on fixing this, I'm sure this is a factor as well as the fact that OpenSSH(d) is getting a native port that will be able to run both PowerShell and CMD once logged in as well as needing to be able to display the things if you ssh from windows to something else.
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement