• 1 Post
  • 272 Comments
Joined 1 year ago
cake
Cake day: July 30th, 2023

help-circle




  • I mean… DX 9, 10, and 11 were all released prior to Nadella being CEO/chairman.

    But in software, it’s very commonplace for library versions not to be backwards compatible without recompiling the software. This isn’t the same thing as being able to open a word doc last saved on a floppy disk in 1997 on Word 365 2024 version, this is about loading executable code. Even core libraries in Linux (like OpenSSL and ncurses) respect this same schema, and more strongly than MS.

    Using OpenSSL as an example, RHEL 7 provides an interface to OpenSSL 1.0. But 1.1 is not available in the core OS, you’d have to install it separately. 1.1 was introduced to the core in RHEL 8, with a compatibility library on a separate package to support 1.0 packages that hadn’t been recompiled against 1.1 yet. In RHEL 9, the same was true of OpenSSL 3 - a compatibility library for 1.1, and 1.0 support fully dropped from core. So no matter which version you use, you still have to install the right library package. That library package will then also have to work on your version of libc - which is often reasonably wide, but it has it limits just the same.

    Edit because I forgot a sentence in the last paragraph - like DirectX, VC++, and OpenGL, you have to match the version of ncurses, OpenSSL, etc exactly to the major (and often the minor) version or else the executable won’t load up and will generate a linking error. Even if you did mangle the binary code to link it, you’d still end up with data corruption or crashes because the library versions are too different to operate.



  • DirectX, OpenGL, Visual C++ Redist and many other support libraries in software programs typically require the same major version of the support libraries that they were shipped with.

    For DirectX, that major version is 9, 10, 11, 12. Any major library change has to be recompiled into the game by the original developer. (Or a very VERY dedicated modder with solid low level knowledge)

    Same goes for OpenGL, except I think they draw the line at the second number as well - 2.0, 3.0, 4.0, 4.1, 4.2, 4.3, 4.4.

    For VC++, these versions come in years - typically you’ll see 2008, 2010, 2013, and the last version 2015-2022 is special. Programs written in the 2013 version or lower only require the latest version of that year to run. For the 2015-2022 library, they didn’t change the major version spec so any program requiring 2015+ can (usually) just use the latest version installed.

    The one library that does weird things to this rule is DXVK and Intel’s older DX9-on-12. These are translation shim libraries that allow the application to speak DX9 etc and translate it on the fly to the commands of a much more modern library - Vulkan in the case of DXVK or DX12 in Intel’s case.

    Edited to remove a reference to 9-on-12 that I think I had backwards.




  • “broken build” here likely refers to the phrase as defined by gamers to function as synonymous to “overpowered”.

    As in, “the build is so broken you can’t/it is difficult to play against it”. This phraseology could be used by either an ally or an enemy, but it contextually changes connotation from positive for allies to negative for enemies.

    Build is often used as a shorthand for a character’s combination of items, skills, and levels (as the various games define it).



  • computergeek125@lemmy.worldtoPics@lemmy.mlWhat's on it?
    link
    fedilink
    English
    arrow-up
    4
    ·
    12 days ago

    In terms of gates - kind of. They’re relatively similar at this point.

    The major difference (to my understanding) is the difference between a flash drive, SD card, and SSD is the controller and cache.

    Flash drives and SD cards have no cache and no fancy controller. SSDs have a controller that is aware of its memory cells and can load balance them, cache data on differently configured cells (or RAM, depending on the hardware), and perform maintenance on cells the OS declares to be empty.





  • That sounds like the average megacorp terms of service these days.

    Yes, just because everyone’s doing it doesn’t mean they can’t be better. They should be better, but worldwide government regulations don’t force that (yet).

    But at some point to interact with any kind of large company, your information is going to end up crossing the path of a large company, especially one of the hyperscale cloud and connectivity providers like Microsoft, Akami, Cloudflare, Google, Amazon, etc.

    Whether businesses get copies of information is usually included in a site’s privacy policy, and if you’re curious about that list (and it’s not publicly documented), I’d hope there’s a contact to get more info about the policy (like a privacy@ email address)

    If you really want to limit your information exposure, you either have to audit everyone you do business with this way (because most large companies do this) or hire someone (or a service) to do it.

    You could also consider not interacting with large companies at all - but you’d limit yourself from part of the modern world. If that’s your game, by all means by my guest.