|
|
Subscribe / Log in / New account

Ubuntu on Windows

Ubuntu on Windows

Posted Mar 30, 2016 19:11 UTC (Wed) by ssmith32 (subscriber, #72404)
In reply to: Ubuntu on Windows by rsidd
Parent article: Ubuntu on Windows

So the inverse of wine? (But in kernel space)

Trying to think of a catchy acronym...

wile ?

(Windows is not a linux emulator?)

I used my windows wiles to run wily werewolf on windows?


to post comments

Ubuntu on Windows

Posted Mar 31, 2016 0:00 UTC (Thu) by asaz989 (guest, #67798) [Link] (4 responses)

Sounds like it.

And if I may digress, the fact that it's possible to write Wine is user space is a credit to the Windows ecosystem. They clearly thought long and hard about backwards compatibility before putting together the win32 API, and made userspace programs go through a shared library rather than directly making syscalls. The intention was to make it easier for Microsoft itself to swap out the kernel (which they have done), but the ability for third parties to swap in *nix has been a happy side effect.

Ubuntu on Windows

Posted Mar 31, 2016 5:20 UTC (Thu) by roc (subscriber, #30627) [Link] (3 responses)

WINE would have been just as easy to write, or easier, if Windows offered stable syscall APIs. Linux already supports a variety of syscall personalities and WINE would have implemented another one.

Not having a documented, stable syscall interface means that many tools (e.g. strace, rr) are difficult or impossible to support on Windows.

Ubuntu on Windows

Posted Mar 31, 2016 5:27 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link] (2 responses)

> WINE would have been just as easy to write, or easier, if Windows offered stable syscall APIs.
It does. It's called "native API" and is fairly compact and is extremely stable.

There were projects to add native Windows "syscalls" to Linux: https://en.wikipedia.org/wiki/Longene - not many people are interested in it, though.

> Not having a documented, stable syscall interface means that many tools (e.g. strace, rr) are difficult or impossible to support on Windows.
Way back before Docker, brave people from Parallels wrote container support for Windows: https://virtuozzo.com/support/pcw/ - without getting access to Windows source code, btw.

They did it by providing a thin layer above the native API and running multiple userspaces on top of it.

Windows kernel is pretty neat, although it's showing its age.

Ubuntu on Windows

Posted Mar 31, 2016 18:40 UTC (Thu) by xilun (guest, #50638) [Link] (1 responses)

I don't think the NT API is particularly stable. At least not at binary level http://j00ru.vexillium.org/ntapi_64/ and probably also not at source level.

Ubuntu on Windows

Posted Mar 31, 2016 19:26 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link]

It is stable. Windows still supports several implementations of the USB stack, just because some drivers depend on a 17-year-old first stab at USB support.

Things do break from time to time, but MS actually cares about old drivers and system software.

It's much easier in Windows, as it's built on top of a "message passing". Almost all operations involve sending a uniformly formatted "message" (IRP) which can pass through multiple layers that can filter and/or modify it. So as long as the message format is preserved, keeping the compatibility is doable (not simple, but doable).

Linux kernel API is completely ad-hoc so it simply can't achieve the same stability level. The flip side is much better performance and maintainability.

Ubuntu on Windows

Posted Mar 31, 2016 21:03 UTC (Thu) by Seegras (guest, #20463) [Link]

Yes, this is totally Wile. E. Coyote.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds