Announcement

Collapse
No announcement yet.

Steam On Linux Use Ticked Higher In May, 25% Of Linux Gamers Are Using The Steam Deck

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #51
    Originally posted by Weasel View Post
    I'm a C/C++ software dev (my fucking job) and I'm semi familiar with the Linux kernel, loader, and the Wine code.
    Who the hell are you again?
    Yeah, you. You're the fanatic with zero facts. Where's your freaking proofs for anything you've said to back it up? You've said NOTHING to ever back up your claims.
    Yeah, the caller is userspace. So a loader that calls a system call is still a userspace library dumbass. i.e. Wine can do it just as well as your fucking "magical" native loader ld-linux.so.
    Look at the fucking source code under Wine's tree in the directory called loader. It's not even huge. You can read it and comprehend it in an hour, even if you're not very experienced with C. There's nothing magic there. No CPU emulation or any hacks.
    Or keep living in delusion because you're like a religious nutjob who clings to bullshit beliefs instead of facts.
    Once you've read that piece of code, come back and tell me what part of it is non-native. I want to know.
    Userspace. (the kernel passes it back to the registered userspace handler, this happens in any OS)
    Actually daemons can do that, yeah. (system services in Linux land, btw they're userspace).
    Task scheduler is typically userspace daemon.
    Signals are sent by the kernel but Windows does not have the Unix concept of signals so that's irrelevant here.
    IPC is just system calls done from userspace. It's nothing less "native" than calling a memory mapper API (allocator in low level terms). Are you saying memory allocation is special and non-native?
    You're not special. I respect your (non-technical) contributions of bug reports, but your ego is through the roof.
    Sometimes it's time to admit you have no fucking idea of what you're talking about to people more qualified than you. Grow up.
    avis​/Birdie is known for extrem Hostility agaist the Open-Source community and no one knows why he is like this.

    but as i unterstand this topic anti-cheat with linux or any other Operating System is technically obsolete because modern
    modern artificial intelligence tools could detect any kind of cheat on the server side.

    any kind of successfull cheat like Aim-Bot would in the end benefit the cheater means better scores means more kills less deaths and better kill/death radio and so one and so one. this means if a artificial intelligence anti-cheat tool would observe the statistical data it could always proof that this gameplay is not "normal" and a ban would be automatically the case.

    this fact alone could make any anti-cheat compatibility problem with linux obsolete and if successfully implemented it would end the age of cheating in computer games.

    you just need to perform deep learning on a lot of gamers who are known not to cheat that should not be a problem and then anything what ends up with different data than that is automatically banned.

    such AI tools maybe would not work instandly and need to oberse you a longer time but it could be painfull for cheaters lose paid accounts and so one.
    Phantom circuit Sequence Reducer Dyslexia

    Comment


    • #52
      Originally posted by Weasel View Post
      ...
      A metric ton of Win32 API calls have no direct alternatives in POSIX and Linux specific syscalls (though Wine strives to be POSIX compatible). I'd even venture to say the vast majority of them and Wine does a metric ton of work to make those calls run in Linux. If that's not emulation/translation/whatever, then yes, I'm a fucking moron. You've won the argument. Take a cookie and be happy.

      Originally posted by Weasel View Post
      Look at the fucking source code under Wine's tree in the directory called loader. It's not even huge. You can read it and comprehend it in an hour, even if you're not very experienced with C. There's nothing magic there. No CPU emulation or any hacks.
      I've never meant CPU emulation. The hell are you dragging this completely unrelated point to our argument for the second time now?? I perfectly know what [CPU] "emulation" is, and we're not dealing with it here. It's not limited to CPU translation either, in fact CPU emulation is exceedingly rare because it's super ineffective. What people usually mean by emulation is normally OS emulation within the same CPU uArch, aka ISA (whoa, did you know I know such words?) - VirtualBox, kvm, VMWare WS/ESXi, etc. But Win32 API is completely alien to Linux and forever will be. No amount of weaseling is going to change it.

      Remember how you claimed that Direct3D is more native (no, you just said "it is native") to Linux than it is to Windows. Another piece of pristine baloney. I wonder why DXVK is ~100KLOC if Direct3D in Linux is so fucking native.

      Wine is over SIX MILLION lines of code, that's how Win32 API is native to Linux. Just don't tell this to Alexandre Julliard - he'll have a heart attack.

      Originally posted by Weasel View Post
      system services in Linux land, btw they're userspace
      OMG, you just cannot stop insulting me. You probably believe that I think that if something runs in ... background and it's "system" it's running at ring level 0 (whoa, did you know I know such words?). You really think I'm a dumb fuck. That's just utter cringe.

      The truth is you love baloney, admit it.

      And "I have no fucking idea what I'm talking about", you're right.

      And lastly you just cannot stop insulting me and throwing a ton of ad hominem at me. You know when people do that? It's when they have no arguments. God, you've completely lost it, you never had a single rebuttal and you simply started being aggressive and using a hella lot of swear words. Yeah, that made you "right". Congratulations.
      Last edited by avis; 04 June 2023, 07:58 PM.

      Comment


      • #53
        qarium

        It's astonishing how you've been lying about me and defaming me non-stop for a couple of years now. A person who's "extrem Hostility agaist the Open-Source community" (even heard of spell checking?) has done 1000 times more for Linux and Open Source that you'll ever do.

        Also, would be great if you showed a single actual community project where I've been caught being "hostile". No, the Phoronix comments section is not a "community" - it's a cesspool of hatred towards everything that's not open source. Most people here openly hate Microsoft and Windows. Yet here we are discussing ways to run Windows software under Linux. Don't you think it's a little bit insincere maybe? No?

        Comment


        • #54
          Originally posted by avis View Post
          First things first, what "VAC documents"? URL please. Authored by Valve please.
          Its not a public url. VAC does have signature lists and how to abstract and list the contents the signature list is also on sites how to bipass VAC.(basically how to know if your cheat has been added to VAC detection by watching the VAC signature list) Yes the signature lists has entries for what type each signature is and when it was added. Does include flags for what feature the hypervisor detected by signature has. This is documented just not in a easy to access location.

          Originally posted by avis View Post
          https://www.google.com/search?q=CSGO+VAC+hypervisor finds nothing, nada, zero, zilch.
          This found nothing because its not how it done.

          GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.

          Take this party they are selling a hypervisor solution to defeat particular anti-cheat solution not to cheat a particular game.

          Game Cheat development is a multi billion dollar industry.
          So how this works.
          Person developing a cheat for a game goes and buys anti-cheat bypass solution this include hypervisors yes like the github that party doing hypervisor will do custom code. the packaged up cheat given to parties to sell.
          This is not a new path either this started being well known in 2017.

          Think about when you bought a game did it bother to tell that it was made with X version of MSVC of course not. Cheat developed for CSGO using a hypervisor to defeat VAC detection is not going to mention it is description it using a hypervisor. Customer wants to know what cheats the cheat allows and that it so called undetectable not the finer details how it done.

          Vacnet was developed for CSGO in 2018 for server side detection of cheating.

          There is VAC that like anti-virus runs on client computer using signature lists to detect stuff that should not be there this includes a huge number of hypervisors.
          Vacnet runs server side looking for actions a human could not or should not be performing. Like tracking target though a wall kind of gives away that you have wall hacks. Hypervisor does not help against Vacnet.



          Comment


          • #55
            Originally posted by avis View Post
            A metric ton of Win32 API calls have no direct alternatives in POSIX and Linux specific syscalls (though Wine strives to be POSIX compatible).
            There is a problem here.

            NTDLL is not part of Win32. Win32 does not have syscalls and that is by design.

            Originally posted by avis View Post
            Wine is over SIX MILLION lines of code, that's how Win32 API is native to Linux. Just don't tell this to Alexandre Julliard - he'll have a heart attack.
            No you need to speak to Alexandre.

            Win32 API can in fact be done Linux as native as windows.



            Windows Native API is not Win32. Applications can use Windows Native API and Win32 API at same time. Just like you can us windows NT os/2 and posix subsystems and windows native API at the same time.

            Wine implements Win32 API and sections of Windows Native API and sections of windows 9x API/ABI.

            avis this is one of those fun things. Win32 is technically not native to MS Windows and win32 was designed not to be native from day one. No matter the platform Win32 is a big complex abstraction layer. Remember how back in time you had Windows Nt and Windows 95 with totally different kernels running win32 applications. Really win32 on Linux by wine is really no different to Win32 on Windows Nt based or 9x based OS.

            Yes there are a lot of cases in the win32 API/ABI where windows NT kernel designs(as you find in windows 11/12) don't line up because it functionality from 9x. So yes a metric ton of stuff that does not line up with win32 no matter the platform because it is abstraction layer.

            Windows has a Native API get use to. Every version of Windows has a native API. 9x and NT native API is very different. Win32 was designed that Microsoft could change kernel designs any time they want to while hopefully not breaking too many applications.
            Last edited by oiaohm; 05 June 2023, 12:52 AM.

            Comment


            • #56
              Aren't you exhausted from playing with the terms?

              Microsoft is the only entity in this universe that
              • Develops Win32 API
              • Has all the documentation for Win32 API
              • Knows all the quirks of Win32 API calls (and there are a ton of them and those are often not publicly documented)
              • Knows how Win32 API calls must interact with the system (that's also too often not documented)
              • Knows all the hidden Win32 API calls (game developers and specially anticheat applications love to use them for some reasons)
              No one bloody cares if there are "redirections", "abstraction layers", etc. etc. etc. I was not talking about that for Christ's sake! You seem to love to see what you want and rush to argue with that like there's no tomorrow.

              Linux/POSIX:
              • Wine is a reverse engineering project for Win32 based on public documentation with all the issues stated above.
              • Wine tries to emulate/translate/map (whatever you wanna call it) Win32 API calls as best as it can under a whole different API call system but that's not always as effective and fast and often results in an undefined behavior (Google for err:ntdll:RtlpWaitForCriticalSection - you'll find literally tens of thousands of pages).
              "Native" bloody API to Linux. Just like Direct3D. That's just laughable.

              Wine loader, my ass. A few lines of code they said:
              Code:
              ls -la wine-8.9/dlls/ntdll/loader.c
              -rw-rw-r--. 1 root root 165749 May 26 20:23 wine-8.9/dlls/ntdll/loader.c
              The Linux kernel executes PE files directly they said.

              No one seems to be even remotely embarrassed.
              Last edited by avis; 05 June 2023, 06:55 AM.

              Comment


              • #57
                Originally posted by avis View Post
                A metric ton of Win32 API calls have no direct alternatives in POSIX and Linux specific syscalls (though Wine strives to be POSIX compatible). I'd even venture to say the vast majority of them and Wine does a metric ton of work to make those calls run in Linux. If that's not emulation/translation/whatever, then yes, I'm a fucking moron. You've won the argument. Take a cookie and be happy.
                "A metric ton" of Win32 API calls have no need to ever interact with the unix system in the first place. They're fully implemented by Wine in the fucking DLL directly. How many times must I say this?

                Excluding drivers (which are kernel-mode on Windows as well, so they're special in Wine also), the DLLs that have unixlib components are about a dozen. All others are pure DLL files just like on Windows.

                Here's an example: XAudio, which is implemented using PE FAudio on Wine (which btw is a static library and fully userspace with no Unix interaction), has no unix components or calls to unix libraries. Well, unix libraries will still be involved lower level when it calls into the APIs that use the driver (like mmdevapi), but that's standard stuff: software is built on layers. Same on Windows.

                All the XAudio API is implemented in pure DLL files (many of them, versioned, to match Windows' model). It's just a fucking library, like any Linux library.

                In fact, kernel32 or even kernelbase on Windows are not special, they're just libraries. Standard libraries. The magic happens down the layers, deeper, into ntdll. That's where the syscalls happen. kernel32 is just a "compatibility" library built on top of lower level library like ntdll. This is on Windows. And Wine follows this model as well.

                Likewise DXVK is not magic. It translates D3D11 into Vulkan. But by itself, it's a pure DLL file. It works on Windows if you want to, since Windows supports Vulkan too. The "non-native" part happens in the Vulkan driver, which is much lower level than DXVK.

                Microsoft already implement DirectDraw on top of newer D3D. I expect Microsoft to implement D3D11 on top of D3D12 in the far future, just for compatibility, when D3D11 drivers will be gone. It's the same with DXVK. It's not any less "native".

                WTF is your problem?

                Originally posted by avis View Post
                I've never meant CPU emulation. The hell are you dragging this completely unrelated point to our argument for the second time now?? I perfectly know what [CPU] "emulation" is, and we're not dealing with it here. It's not limited to CPU translation either, in fact CPU emulation is exceedingly rare because it's super ineffective. What people usually mean by emulation is normally OS emulation within the same CPU uArch, aka ISA (whoa, did you know I know such words?) - VirtualBox, kvm, VMWare WS/ESXi, etc. But Win32 API is completely alien to Linux and forever will be. No amount of weaseling is going to change it.

                Remember how you claimed that Direct3D is more native (no, you just said "it is native") to Linux than it is to Windows. Another piece of pristine baloney. I wonder why DXVK is ~100KLOC if Direct3D in Linux is so fucking native.

                Wine is over SIX MILLION lines of code, that's how Win32 API is native to Linux. Just don't tell this to Alexandre Julliard - he'll have a heart attack.
                Linux userland libraries are native to you, right? Those are millions of lines of code too, or maybe even more, inside of those libraries. Why is Wine less native?

                Does that make them more native than Wine? Why?

                Wine is mostly a collection of compatibility libraries, a loader for the libraries' format (PE), and some non-native parts, but those are few as I said. That's why you can fucking do 32-on-64 these days, because the amount of modules that need to care about this is in the few tens at most, while it has hundreds otherwise. Those 32-bit DLLs you built never interact with any 64-bit shit. All of their fucking implementation is inside of themselves.


                Have you looked at a "native" game on Linux? The executable is like 60 MB. Even on Windows. Can you imagine how much code that is? And you think Wine has a lot of code? Amount of code has nothing to do with it being native or not. For you, if it doesn't use standard Linux libraries, it's not "native", whatever the fuck that means.

                So games are not native on Windows either, considering they ship tens of DLLs and libraries and are insanely large executables!!! That means they ship a lot of "non native" code and don't use the Windows API enough!!! Case closed.
                Last edited by Weasel; 05 June 2023, 09:38 AM.

                Comment


                • #58
                  Originally posted by avis View Post
                  qarium
                  It's astonishing how you've been lying about me and defaming me non-stop for a couple of years now. A person who's "extrem Hostility agaist the Open-Source community" (even heard of spell checking?) has done 1000 times more for Linux and Open Source that you'll ever do.

                  you have a lot of logical fallacies here in your text.
                  you claim i "lie" but i am known to be a perfectly honest and truth loving person and i only did write what i think is the truth.
                  this is by definition not a lie. maybe i do not know the truth and maybe what i said is not the truth but this is by definition not a lie because i am myself i believe that it is the truth. see thats logic at its best and you do not unterstand any logic.
                  I think most of the people in this forum believe that you can not be defamed because you do this to yourself.

                  "even heard of spell checking?"
                  well if thats your argument? i have Dyslexia and i always use spell checking does not cut it for you. thats not a secret.

                  "has done 1000 times more for Linux and Open Source that you'll ever do.​"

                  I doubt that​... you always claim you did bugreports and this makes you a holy saint but if you search for my nicknames i also did do bugreports and helped to solve some of them. i do have life-time phoronix premium and i did send additional to that a lot of money to phoronix.com and also i do many stuff to support open-source in general.

                  "A person who's "extrem Hostility agaist the Open-Source community" (even heard of spell checking?) has done 1000 times more for Linux and Open Source that you'll ever do.​"

                  its a logical fallacy you claim you can not be hostil agaist the opensource community because you do "1000 times more" than me for opensource... well thats a logical fallancy because you are the absolut proof that this is possible.
                  you can life a open hostility agaist opensource and also do a lot for opensource.
                  nothing could proof that this both charateristics of you can not exist at the same time.

                  Originally posted by avis View Post
                  Also, would be great if you showed a single actual community project where I've been caught being "hostile". No, the Phoronix comments section is not a "community" - it's a cesspool of hatred towards everything that's not open source. Most people here openly hate Microsoft and Windows. Yet here we are discussing ways to run Windows software under Linux. Don't you think it's a little bit insincere maybe? No?


                  Yes i do hate Microsoft and Windows and i also claim it is the Civil Duty of any human to do so. because what they did to humanity in the past.

                  and i want microsoft to "die" and you claim to run windows software under linux contradicts this thats wrong microsoft and windows will only "die" if opensource/linux becomes better at running windows software than windows does this will make sure windows dies and microsoft dies.

                  "Don't you think it's a little bit insincere maybe? No?"

                  absolutly not. if opensource and linux does not becomes better at running windows apps than windows itself then microsoft and windows will never die and they deserve to die because of this linux needs to run windows software better than microsoft windows.

                  "the Phoronix comments section is not a "community" - it's a cesspool of hatred towards everything that's not open source​"

                  this is a very good thing. i support this.
                  Phantom circuit Sequence Reducer Dyslexia

                  Comment


                  • #59
                    Originally posted by avis View Post
                    Microsoft is the only entity in this universe that
                    • Develops Win32 API
                    • Has all the documentation for Win32 API
                    • Knows all the quirks of Win32 API calls (and there are a ton of them and those are often not publicly documented)
                    • Knows how Win32 API calls must interact with the system (that's also too often not documented)
                    • Knows all the hidden Win32 API calls (game developers and specially anticheat applications love to use them for some reasons)
                    There is a few problems here. Microsoft is not the only party that develops Win32/Win64. The source code of Windows is licensed out to governments and other parties who are able to submit corrections back to Microsoft. So not everything in Win32 is Microsoft idea. This leads to the next problem. Microsoft does not have all the documentation about win32 API because they did not develop everything.

                    avis did not out cross you mind that anti-cheat developers have access to windows source code and submit alterations upstream into Windows. There is a reason why anticheat developers know about lots of not well documented functions because they wrote them.

                    The reality is there no entity in the universe that has the following.
                    1) all the documentation of the Win32 API
                    2) Knows all the quirks of Win32 API
                    3)Knows all the hidden API calls fully.
                    4)Knows how Win32 API must interact with the system.
                    This does explain some of Microsoft major update screw ups like triggering massive self deletes of file systems.

                    Microsoft is the maintainer and the largest developer of Windows but they are not the only developer. The license of windows source code means you can built testing build but you cannot production use it or sell it if you are not Microsoft.

                    avis sorry you just presumed a stack of things that are not fact.

                    err:ntdll:RtlpWaitForCriticalSection << attempting to make me laugh. That not win32.

                    That a driver issue that can happen under windows. Not all anti-cheat drivers like being run by winedevice in userspace. Also the RtlpWaitForCriticalSection is what you see a lot when new version of MS windows releases and someone tries running a game that anticheat has not updated to support that version of Windows.

                    Sorry undefined behavior that not "err:ntdll:RtlpWaitForCriticalSection" that err is exactly to windows documentation behavior with wine. Its not exactly helpful error with windows or wine as both windows and wine equals lot of debugging to try to work out what gone wrong.

                    Comment


                    • #60
                      Originally posted by some_canuck View Post
                      [insert comment about never seeing the survey on linux]
                      I just got the survey last week, it does happen lol

                      Comment

                      Working...
                      X