• casual_turtle_stew_enjoyer@sh.itjust.works
    link
    fedilink
    arrow-up
    39
    ·
    9 months ago

    deep inhale

    WINE IS NOT AN EMULATOR

    It is a translation layer. All it’s doing is intercepting syscalls embedded in the executable process by presenting what looks like an interface for the kernel it is trying to call, but is actually a translation layer to the true host kernel, mapping the Windows syscalls to their near-equivalent for the Linux kernel. This differs from emulation as the calls are being translated at a higher level whereas emulators translate the low level machine code sent to the processor.

    So Proton and Wine essentially just pretend to be the core Windows processes and services a Windows environment provides to applications. It’s a Windows interface to a Linux kernel on the backend. And virtually every syscall on Linux will always be faster than on Windows/NT. So you get faster syscall responses with a neglible and wholly insubstantial added overhead that I would reckon is hard to quantify because it is in fact so damn small that the only way I can think of to observe it is to attach a debugger, which slows down the application process notably so that human’s can peer into the execution stack.

    TL;DR: no, Windows applications have theoretically been faster on Linux than they ever were on Windows since Wine’s inception.

    • WaxedWookie@lemmy.world
      link
      fedilink
      arrow-up
      12
      ·
      9 months ago

      I think you mean:

      Wine is not an emulator ^is ^not ^an ^emulator ^^is ^^not ^^an ^^emulator ^^^is ^^^not ^^^an ^^^emulator ^^^^is ^^^^not ^^^^an ^^^^emulator ^^^^^is ^^^^^not ^^^^^an ^^^^^emulator ^^^^^^…

    • really did not expect today to be my turn to recite the infamous WINE homily. Whoever sends out the t-shirts, I’m a men’s x large, hopefully there are still some of that size unclaimed

      • Jayjader@jlai.lu
        link
        fedilink
        English
        arrow-up
        4
        ·
        9 months ago

        In case you’re unaware, the “deep inhale” is because that phrasing is historically tied to the WINE project, as per their website (winehq.org):

        Wine (originally an acronym for “Wine Is Not an Emulator”)

        And at this point it’s like a 10-year old meme (if not 20) to bring it up when someone may seem unaware of the distinction between emulation and what Wine does.

        It is a bit tired of a reference, and I imagine somewhat off-putting of a response to receive when you don’t know the reference yourself. The acronym is in the spirit of the GNU one (“GNU’s Not Unix”), and as the other commenters have explained the fact that wine does something different than emulation is very relevant when you get into the nitty-gritty details, so it has extra sticking power in terms of memes in linux/foss communities.

        • This exactly. I’d had a long day and never before had the opportunity to be first in a thread to reply with “Wine Is Not an Emulator”, so I got over-excited and typed that all out so I could get that sweet dopamine rush.