• MajorHavoc@programming.dev
      link
      fedilink
      arrow-up
      39
      ·
      edit-2
      3 months ago

      It’s a joke… Probably.

      I don’t have a confirmed case of Linux running without a traditional CPU, but I wouldn’t bet $20.00 against it existing

      There’s plenty of devices out there that do some kind of computation and don’t have anything we would recognize at a traditional CPU. Such devices are becoming rare, because CPUs are so dang cheap, now.

      Most of those run binary compiled from custom C code or even directly from Assembly.

      But, if someone was going to run an alternative program on one of those devices, there’s a very good chance they would install Linux (heavily customized) on it first.

      Source: I’ve completed parts of Linux from Scratch. It was eye opening to realize the places that a true Linux expert could get it to run. Every single part of Linux is truly optional, to someone who knows that they’re doing.

      • leisesprecher@feddit.org
        link
        fedilink
        arrow-up
        11
        ·
        3 months ago

        Those are still CPUs. Microcontrollers have CPUs, and those are the smallest units that can actually run code in a meaningful way.

        However, Linux needs an MMU as far as I know, so you won’t see Ubuntu boot on an esp32, even though it does have a CPU.

        • MajorHavoc@programming.dev
          link
          fedilink
          arrow-up
          17
          ·
          edit-2
          3 months ago

          Those are still CPUs. Microcontrollers have CPUs, and those are the smallest units that can actually run code in a meaningful way.

          If the whole board is the CPU, we typically don’t call it a CPU. (The C is for Central.) There’s very few left, but there’s still hardware out there, running code, that could be called CPU-less.

          I do take your point that it’s down to pendantic wording, at that point. Something very like a CPU, that most of us are going to just call a CPU, is going to be present.

          However, Linux needs an MMU as far as I know, so you won’t see Ubuntu boot on an esp32, even though it does have a CPU.

          Yeah. There’s certainly an argument to be made that whatever is left is not really the Linux Kernel anymore, after modifying it enough to run CPU-free. But I suppose it’s still more fair to call it Linux, than not to, at that point.

          • leisesprecher@feddit.org
            link
            fedilink
            arrow-up
            7
            ·
            3 months ago

            Microcontrollers aren’t “the whole board”, following that definition, an SoC wouldn’t have a CPU either.

            MCs require support components. Clocks, power converters, level shifters, modem, etc. You’ll hardly wire a barrel plug and a servo directly to a DIP (though that would be pretty cool).

      • uis@lemm.ee
        link
        fedilink
        arrow-up
        10
        ·
        3 months ago

        but I wouldn’t bet $20.00 against it existing

        Good. Because if Linux can run on RV32I, then it can run on this.

        Every single part of Linux is truly optional, to someone who knows that they’re doing.

        Today for shits and giggles I ran Xonotic as init process. It had trouble with hardware acceleration, so I ran simple bash script that mounted /proc and /sys and then launched xonotic instead.

    • uis@lemm.ee
      link
      fedilink
      arrow-up
      11
      ·
      edit-2
      3 months ago

      You can install it on tplink router. So it is optional as you can see. Ir maybe this

      • Quatlicopatlix@feddit.org
        link
        fedilink
        arrow-up
        2
        ·
        3 months ago

        It literally says “32 bit RISC-V homemade CPU out of discrete components”.

        I dont know how you would stretch the definition of cpu in form of discrete components but yea current processors also stray from the definition of a alu and a control unit and registers since people call the different cores cpus. But even a Mikrocontroller has a all that.

        You need a cpu to run linux. If you just want to rin a “program” you can do that with logic gates and no alu or control unit but that would limit the form of your program to exactly that circuit.

        • uis@lemm.ee
          link
          fedilink
          arrow-up
          1
          ·
          3 months ago

          Ok, we will have to wait for compute in RAM to run Linux