|
|
Subscribe / Log in / New account

Ubuntu on Windows

Ubuntu on Windows

Posted Mar 31, 2016 5:27 UTC (Thu) by Cyberax (✭ supporter ✭, #52523)
In reply to: Ubuntu on Windows by roc
Parent article: Ubuntu on Windows

> 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.


to post comments

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.


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