Live data from Hacker News

How Wine works 101

werat.dev

21–30 of 188 posts

Re: How Wine works 101

#21
post #6

What I'm curious about (and probably there are some good write ups about this somewhere) that how come modern Linux and modern Wine is better to run old Windows applications than modern Windows (7 to some extent but mostly 10&11). Did MS "intentionally" "left behind" certain APIs and system calls to sacrifice it for some greater good? Like I use Windows every day and have no problems at all. And I use Linux every day…

Windows APIs have a whole operating system to support, including all the new features. Microsoft rarely breaks backwards compatibility (so no 'sacrificial' APIs), but that doesn't mean there couldn't be some performance regressions or the like under newer versions. Windows went as far as changing COMMCTL32.DLL and similar just because of new Office versions.

Wine "only" has to run apps and nothing else. The older APIs are the most battle-tested and optimized. On the other hand, you may find suboptimal behavior on newer APIs that weren't exercised enough.

Re: How Wine works 101

#22
post #20
post #15

Earlier quoted context omitted.

The point of Wine is to run older Windows software. Who needs the most modern versions, just pays for MS Windows. Windows, like DOS before it, adapts to run certain apps more efficiently, to sidestep their bugs, or to fulfill their assumptions which generally do not hold. I suppose Wine does a lot of the same. It pays a lot of attention tp running old(er) popular software smoothly. I suppose Wine has more adjustments…

> The point of Wine is to run older Windows software. Is this really true? What “newer” Windows software would not run under Wine “in principle”? (And, for that matter, what older Windows software wouldn’t run on Windows itself?)

It is not true at all.

Re: How Wine works 101

#23

tl;dr: WINE can be considered to be more like an API translator. The opposite is also possible (Linux binaries on Windows), the most recent attempt being WSL from Microsoft itself, but there were a few other attempts before that: http://cowlark.com/lbw/index.html is one example I just found. ...and as an aside, the comments about the alcoholic beverage really suggest that they should've kept it named WINE (all upperc…

> the most recent attempt being WSL from Microsoft itself Worth noting that this only applies to WSL1; WSL2 works in a completely different way.

Do you have a good writeup of how WSL2 works?

Re: How Wine works 101

#25
post #15
post #6

What I'm curious about (and probably there are some good write ups about this somewhere) that how come modern Linux and modern Wine is better to run old Windows applications than modern Windows (7 to some extent but mostly 10&11). Did MS "intentionally" "left behind" certain APIs and system calls to sacrifice it for some greater good? Like I use Windows every day and have no problems at all. And I use Linux every day…

The point of Wine is to run older Windows software. Who needs the most modern versions, just pays for MS Windows. Windows, like DOS before it, adapts to run certain apps more efficiently, to sidestep their bugs, or to fulfill their assumptions which generally do not hold. I suppose Wine does a lot of the same. It pays a lot of attention tp running old(er) popular software smoothly. I suppose Wine has more adjustments…

> just pays for MS Windows.

Paying for MS Windows is not a problem. If I could just throw money at Microsoft and have all the apps I need running on Linux, I would have. I suspect many people (and specially orgs) would have done that too.

Incidentally, I have a copy of MS Windows. I just _don't want to boot Windows_

> It pays a lot of attention tp running old(er) popular software smoothly.

Nah. It pays attention to popular software, period. Because that's how contributions normally work. The more people interested, the more likely a patch will land. It can take significant effort to run some software. That takes time. By the time it's running perfectly, it's "old" software.

It just needs effort. One of the bad things about the Stadia demise is that some of the work done on the titles themselves benefit Wine. For example, Cyberpunk was perfectly playable on launch day.

Re: How Wine works 101

#26
post #23

Earlier quoted context omitted.

> the most recent attempt being WSL from Microsoft itself Worth noting that this only applies to WSL1; WSL2 works in a completely different way.

Do you have a good writeup of how WSL2 works?

It’s a vm running full blown Linux. Just tightly integrated into windows.

Re: How Wine works 101

#27
post #17
post #6

What I'm curious about (and probably there are some good write ups about this somewhere) that how come modern Linux and modern Wine is better to run old Windows applications than modern Windows (7 to some extent but mostly 10&11). Did MS "intentionally" "left behind" certain APIs and system calls to sacrifice it for some greater good? Like I use Windows every day and have no problems at all. And I use Linux every day…

MS are profit motivated (by definition) and Wine is functionality motivated (again by definition). MS are currently hell bent on getting you onto a cloud subscription for Windows as a service (WAAS) because that is their current business model. The Wine project is hell bent on delivering functionality that you want and they think you might want. Wine is less about shuffling the start menu to the middle of the taskbar…

> MS are profit motivated (by definition)

Not by definition, but by "Dodge v. Ford Motor Co." [1] the Michigan Supreme Court case that held "A business corporation is organized and carried on primarily for the profit of the stockholders."

[1]: https://en.wikipedia.org/wiki/Dodge_v._Ford_Motor_Co.

Re: How Wine works 101

#28
post #15
post #6

What I'm curious about (and probably there are some good write ups about this somewhere) that how come modern Linux and modern Wine is better to run old Windows applications than modern Windows (7 to some extent but mostly 10&11). Did MS "intentionally" "left behind" certain APIs and system calls to sacrifice it for some greater good? Like I use Windows every day and have no problems at all. And I use Linux every day…

The point of Wine is to run older Windows software. Who needs the most modern versions, just pays for MS Windows. Windows, like DOS before it, adapts to run certain apps more efficiently, to sidestep their bugs, or to fulfill their assumptions which generally do not hold. I suppose Wine does a lot of the same. It pays a lot of attention tp running old(er) popular software smoothly. I suppose Wine has more adjustments…

Basically, I don't want to run Windows. But I do want to run some current Windows software -- mostly games and design tools. I don't think I'm a major exception; I wonder if there have been any surveys. Linux users who want to run current Windows software are likely much of the user base.

Lately I've been playing a recent DirectX 11 game via Wine. Worked out of the box. I think it might be a bit slower than under Windows natively, but that's sort of moot since it hits the cap at 60 fps either way. I've used Wine regularly for about 15 years. I used to be surprised when new software (especially DX-based) worked under Wine. These days, I'm more surprised when it doesn't.

Post reply on HN