this post was submitted on 02 Nov 2025
824 points (98.2% liked)

Technology

76919 readers
3540 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related news or articles.
  3. Be excellent to each other!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, this includes using AI responses and summaries. To ask if your bot can be added please contact a mod.
  9. Check for duplicates before posting, duplicates may be removed
  10. Accounts 7 days and younger will have their posts automatically removed.

Approved Bots


founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] thelittleblackbird@lemmy.world 4 points 2 weeks ago (6 children)

Ummmm sure?

I don't want to start that extremely old flame war of native VS jit code but....

Proton is not an emulation, it is a translation to native code, and while it has some drawbacks (more memory usage, more time at start up to compile things) it can unlocks a lot of potential when the hw support new capabilities, this is the reason that some dx10 games run faster on Linux...

[–] kuberoot@discuss.tchncs.de 2 points 2 weeks ago (5 children)

I might be wrong, but I don't think proton is either? It's running x86 instructions either way, wine just provides a way to load it from the windows executable and library formats, and together with proton they provide implementations of windows libraries for those executables to use.

[–] bufalo1973@piefed.social 3 points 2 weeks ago (1 children)

I guess most of the process is just using a wrapper to translate the call to a Windows library to the equivalent call to a Linux library.

[–] kuberoot@discuss.tchncs.de 2 points 1 week ago

I think most of the work is in the fact that there often isn't an "equivalent call", and it can be quite a lot of code to make it work. One funny thing is the whole esync-fsync-ntsync issue, where synchronization is done differently on Linux and on windows, and translating it was a big performance hit, and difficult to do accurately. If I understood correctly, esync, fsync and ntsync were a series of kernel patches implementing additional synchronization code in the kernel, with ntsync actually replicating the windows style.

load more comments (3 replies)
load more comments (3 replies)