• kevincox@lemmy.mlM
    link
    fedilink
    arrow-up
    18
    ·
    edit-2
    6 months ago

    For software to run on a computer it needs to speak the computer’s “language”. This is typically called “machine language” but differs across different hardware. For example most modern Intel and AMD processors speak x86_64. This language has ways to express different operations such as “add these two numbers” or “put this CPU core into a low power mode”. This is the fundamental way that software works, but running in this language.

    There are languages that are completely different, such as ARM which is very common on mobile devices and is the language used by Apple’s new M chips. These have basically nothing in common with x86_64.

    These languages also evolve over time. For example x86_64 is a significant extension to the older x86 language. For the most part this is fine, it is like the CPU now knows more words, if you use those new words the new CPU will understand them, but older CPUs won’t.

    RISC-V is a new machine language. What makes it interesting is that it is a free and open specification. This means that anyone can create a new RISC-V CPU, unlike x86_64 where you need to buy a license from Intel or ARM where you need to buy a license from the ARM corporation. Most people think that this openness has major benefits, for example now anyone can create a new processor which may be better, rather than having innovation being stifled by licensing costs (if you can even get a license) or needing to create their own machine language and require huge amounts of effort to migrate software to it.

    Note: It is important not to confuse “machine language” with “programming language”. When people write software they very rarely write code in machine language directly. Usually they use a programming language which is then converted into the machine language of the CPU it will run on.

  • aluminium@lemmy.world
    link
    fedilink
    arrow-up
    17
    arrow-down
    3
    ·
    edit-2
    6 months ago

    A CPU instruction set that is governed by the RISC V International organization, a nonprofit organization which also holds all the RISC V related trademarks.

    It has nothing to do with open source really, it is a open standard that anyone can create compatible products for and those products can also be sold commercially.

    Really the difference is that the organization verifying your that your CPU correctly follows the instruction set so you can sell it as such, has no profit motive, unlike ARM or Intel/AMD who either outright block any meaningful competition in the case of x86 or want a nice share of the money your gonna make in the case of ARM. Not to mention that ARM and Intel/AMD sell their own CPUs, so there is a big conflict of intressts going on.

    • davel [he/him]@lemmy.ml
      link
      fedilink
      English
      arrow-up
      10
      arrow-down
      1
      ·
      6 months ago

      It has nothing to do with open source really

      Only if you think that open hardware and open software are totally unrelated things, but most open hardware people and open software people think that they are related things.

      • aluminium@lemmy.world
        link
        fedilink
        arrow-up
        10
        ·
        edit-2
        6 months ago

        No, open source means that its public HOW something is done, down to every single line of code (along a lot of other things when it comes to licensing, redistribution, … but thats not the main point)

        With a open standard its public WHAT something is doing, but HOW its achieved can be public or not.

        To give you a example, HTML is a open standard for displaying Webpages. Somewhere its defined that when a <button> element is found, the browser has to render a button which looks a certain way behaves a certain way when interacting with the mouse, keyboard, javascript, css … . This is WHAT your browser needs to do.

        But HOW you do it is up to each browser. Do you use the CPU or GPU to render it? Do you first draw the border, then the text or the other way around? It doesn’t matter to the standard as long as the end result complies with the spec.

        With open source browsers like chromium and firefox it is public HOW they are implementing this feature, down every line of code.

        With a proprietary browser like Internet Explorer which follows (or rather followed) the same open standard nobody knows HOW they are implementing it. We only know that the end result is adhering to the HTML Standard.

        The hardware equivalent it would be someone releasing the exact schematics of for example a RISC V CPU where somebody could see HOW they implement the specifications of the Architecture and where someone could without much hassle go to a Manufacturer and get the chip into production or make modifications.

  • kernelle@lemmy.world
    link
    fedilink
    arrow-up
    4
    ·
    6 months ago

    When you put all the five year olds on earth in one room, every one of you would be able to compare two blocks, a rod and a ball. Depending on how you were thought you either pass the rod along or the ball. Then some very smart people came up with special ways to do very hard maths using those blocks.

    Now, in the olden days they kept the way they thought those kids a secret. But we knew what the results were, so we could all do much harder math then we could do in our heads. So while the other adults knew how to pack you all closer together and needed new ways to do even harder math, there was a group of good people who didn’t really like all the secrecy and thought that they were doing it way to complicated but couldn’t do anything about it.

    Like it always is, years went by and the world changed, they kept making up new rules on how the blocks should be passed around so it became slower. Those good people then decided we should be simplifying, to make it faster yet again! “And no more secrecy!” - They said. “So everyone can build their own mini five year old sweat shops and it would cost significantly less then it does now!”

  • wiccan2@lemmy.world
    link
    fedilink
    arrow-up
    3
    arrow-down
    1
    ·
    6 months ago

    So the main part of a computer that controls everything has a specific set of things it can do. Imagine that each of these things can be triggered by a button on a control panel.

    Every company making this part of the computer has their own set of things and layout for the buttons to trigger them and you have to pay them money to learn what the things are and how to press the buttons.

    RISC-V offers a set of things and a button layout that the community can freely see and use.

    In this example a computer program is just the list of instructions saying which buttons to press in what order.

  • Kidplayer_666@lemm.ee
    link
    fedilink
    arrow-up
    3
    arrow-down
    4
    ·
    6 months ago

    An open source architecture that implements a reduced instruction Set, in order to simplify design and cut costs. Still in its infancy