this post was submitted on 24 Jan 2024
117 points (98.3% liked)

Linux

48157 readers
716 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
top 12 comments
sorted by: hot top controversial new old
[–] [email protected] 20 points 9 months ago (2 children)

I'm all in for performance improvements, hope to see this reach Proton ASAP

[–] [email protected] 18 points 9 months ago (1 children)

Windows NT Sync Driver Proposed For The Linux Kernel

[–] [email protected] 4 points 9 months ago (1 children)

Proton would still need to make use of it.

[–] [email protected] 2 points 9 months ago

yes, of course, but I was just pointing out that the proposed changes are mainly in kernel space, not in wine itself

[–] [email protected] 16 points 9 months ago

The patches are from CodeWeavers, and some of their work is cooperation with Valve, so hopefully proton gets those changes quickly. It usually takes a while before proton is based on a new wine release.

[–] [email protected] 15 points 9 months ago

This is the best summary I could come up with:


This driver would expose /dev/ntsync as a new character device for implementing some of the Windows NT synchronization primitives directly within the Linux kernel.

Elizabeth Figura of CodeWeavers who published the "request for comments" (RFC) to various Linux kernel mailing lists explained of the motivations for this synchronization primitive driver for targeting Windows NT kernel behavior: "The Wine project emulates the Windows API in user space.

One particular part of that API, namely the NT synchronization primitives, have historically been implemented via RPC to a dedicated "kernel" process.

The NT synchronization APIs are too complex to implement on top of existing primitives without sacrificing correctness.

With these "NTSYNC" kernel driver patches there are benefits to different Windows games on Wine from 21% with Metro 2033 to as much as 678% with DiRT 3!

In any event as this series is marked "RFC" and there are some open design elements to its implementation, it may take some revisions before settling down on something that could be upstreamed.


The original article contains 405 words, the summary contains 166 words. Saved 59%. I'm a bot and I'm open source!

[–] [email protected] 12 points 9 months ago

is this what used to be called winesync?

[–] [email protected] 9 points 9 months ago

Honestly this is the kind of thing we needed from React os. It would of been nice to be able to run the react is kernel in the background and then have wine make calls to it.

[–] [email protected] 6 points 9 months ago (1 children)

What happened during the DiRT 3 benchmark lol, this game easily goes above 200 fps

[–] [email protected] 9 points 9 months ago

Those benchmarks under "Upstream" does not include esync/fsync from my understanding

[–] [email protected] 3 points 9 months ago (1 children)

Is there any risk of lawsuits from Microsoft for all these?

[–] [email protected] 16 points 9 months ago* (last edited 9 months ago)

No, this kernel patch will be different to what's in Windows code. It implements what's necessary for wine to be more performant, not the actual Windows API itself.

Wine implements those Windows API/ABIs, which is legal because it's done by reverse-engineering. I believe in some countries (US?) it's also necessary for the devs to never have seen Windows code.

PS: Google v. Oracle is a US supreme court decision where Oracle lost at trying to patent Java API's.

https://en.m.wikipedia.org/wiki/Google_LLC_v._Oracle_America,_Inc.