‹ BackHN Continuity

Thread

FTL: A new operating system for clouds

202 points · 77 comments · romac

  1. comboy · · focus · HN ↗
    I just make agents generate assembly for my app and my hardware and boot directly into that.
    1. rfgplk · · focus · HN ↗
      Is this written in jest? Because it&#x27;s very likely where the future of computing is heading. See <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=kZRE7HIO3vk" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=kZRE7HIO3vk; a lot of people were nagging on Casey because he implied that software was more efficient back when everyone &quot;wrote their own kernel&quot; and how &quot;impossible it would be today&quot;. He even mentions how awesome it could be if every game came with it&#x27;s own bootable USB. Now back then it truly was unthinkable, but today we&#x27;re edging ever closer to that reality.

      For instance, I have a working microkernel written in a Lisp dialect for embedded devices. Compiled to native machine code. 100% LLM generated. ~70k loc. In benchmarks it outperforms most other embedded kernel projects by a significant margin. And it only took around ~$1500 in tokens (API costs all included).

      1. smokel · · focus · HN ↗
        A problem with this approach is that it would put a large burden on the application developer (or development system) to support other devices (or services) than initially planned.

        Of course, it would be possible to add new drivers only when necessary, but that would also allow for security problems.

        So, in theory it might work, but in practice it would require quite a bit of thought.

        1. 3eb7988a1663 · · focus · HN ↗
          Now that we are out of the Cambrian explosion of computing hardware - are drivers such a concern anymore? Is there any chance we start consolidating on a few core interfaces?

          I know nothing of hardware, but as far as I know, my keyboard and mouse work everywhere because there is a formal specification on how human interface devices are supposed to operate.

          There are probably good (and anti-competitive) reasons for why hardware still needs bespoke drivers, but from the outside, it seems like something we could address. I have no interest in loading your artisanally crafted Wifi driver.

          1. unsnap_biceps · · focus · HN ↗
            As AI reduces the cost for writing closer to the metal, it&#x27;s also reducing the cost for creating new metal to target. I suspect we&#x27;ll see an explosion in new hardware as it&#x27;s cheaper and easier to design custom solutions.
          2. PunchyHamster · · focus · HN ↗
            If you&#x27;re writing for VM and don&#x27;t need stuff like GPUs, you can.

            For actual real hardware, not really

            1. mikepurvis · · focus · HN ↗
              GPUs, wifi, power&#x2F;thermal management, firmware. Especially in portable computing there is still a huge amount of hardware support surface area to contend with.
          3. mikepurvis · · focus · HN ↗
            Game consoles worked a lot like this until around the PS3 era, where the disc&#x2F;cartridge the game came on was shipping binaries for everything including all the hardware support.

            This led to some hilarious implementation shenanigans for the Wii as a transitional console, where the Home button pause screen is not in fact a task switch to some underlying console OS but rather a piece of the SDK that is separately-delivered from each individual game.

            ref. <a href="https:&#x2F;&#x2F;www.copetti.org&#x2F;writings&#x2F;consoles&#x2F;wii&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.copetti.org&#x2F;writings&#x2F;consoles&#x2F;wii&#x2F;

        2. mejutoco · · focus · HN ↗
          You could use a library as a base.
        3. johannes1234321 · · focus · HN ↗
          There are&#x2F;were approaches around in kernels like includeos, which promised to do as little as possible before hading control to you. So not everybody has to create their own driver&#x27;s etc, but you get a bootable executable for your application.

          Includeos in particular then went towards being a complete &quot;application server&quot; and apparently failed to gain a business as Docker became successful.

          <a href="https:&#x2F;&#x2F;includeos.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;includeos.org&#x2F;

          1. alex7o · · focus · HN ↗
            Stuff like u images still do that but allow you to bundle your existing software so you don&#x27;t have to rewrite everything to run on it. The cool thing is that you can freeze at a syscall&#x2F;hypervisor call like accept. And have very fast response times from cold
        4. pjmlp · · focus · HN ↗
          Welcome to the days of 8 and 16 bit home computing, before WinTel with Windows 95 took over almost everything else.
      2. killerstorm · · focus · HN ↗
        When AI proves theorems, it uses divide-and-conquer approach just as humans - it breaks a big theorem into lemmas and tackles lemmas one by one.

        An alternative approach where it is just one big-ass logical expression is just not better.

        Same thing with code, I think - you need some intermediate results like a calling convention, helper subroutines, etc.

        A sufficiently powerful AI can do compilation &quot;mentally&quot; - i.e. producing machine code conforming to a specific calling convention. It can also decompile machine code. But you, obviously, don&#x27;t gain anything doing it this way, if there&#x27;s one-to-one correspondence between high-level code and machine code. You might as well just write high-level code.

        I really hope that software becomes more efficient. But I don&#x27;t think that it can only be done by generating machine code directly.

      3. teddyh · · focus · HN ↗
        &gt; He even mentions how awesome it could be if every game came with it&#x27;s own bootable USB. Now back then it truly was unthinkable,

        Not only was it thinkable, it was common: &lt;<a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;w&#x2F;index.php?title=List_of_self-booting_IBM_PC_compatible_games&amp;oldid=1367389021" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;w&#x2F;index.php?title=List_of_self-boot...&gt;

      4. sroerick · · focus · HN ↗
        Can you share a link to this? This aligns with my interests. Me and the homies love lisp machines
      5. pjmlp · · focus · HN ↗
        That is my vision as well, independently of how it turns out to our profession, I see the future being what was previously attempted with 4 GLs, CASE tooling, RUP and co.

        However you have something wrong there.

        Back then it was the way, we had fully bootable games on floppy disks and tapes that took over the whole computer, and that was also the console programming model for a long time.

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.