« BackHypervisor in 1k Lines1000hv.seiya.meSubmitted by lioeters 4 days ago
  • arghwhat 3 days ago

    This is a cool intro to how virtualization instructions work, but people need to understand that it is not revolutionary simplicity or anything like that. It's just a a cool tech demo lacking all the important bits of a modern hypervisor required to make it practical, like paravirtualized drivers for example.

    Same when someone claims to have written an OS in 1000 lines and all it does is get you to real mode with VGA graphics and an interactive (but useless) prompt.

    (Note that you can benefit from virtualization technology in specialized scenarios outside common hypervisors, but that's not really what's being demoed here.)

    • ge96 3 days ago

      Any thoughts on OsakaOS

      • arghwhat 3 days ago

        That it's fine to do things just to have fun an mess around, but thats all there is to it. It's not even an OS at the current state.

        Other small OS's are actually OS's and can be impressive efforts. Sometimes they bring new concepts or paradigms, but that itself is rarely more than a curiosity without impact. Still fun though, at the very least for the authors.

    • nighthawk454 4 days ago
      • userbinator 4 days ago

        See also https://ionescu007.github.io/SimpleVisor/ in around 500 lines of C.

        • notorandit 4 days ago

          That's not risc-v, though.

          • notorandit 2 days ago

            Why demoting? It Is x86-64 only!

        • chubot 4 days ago

          Hm I would like to see this in C rather than Rust. And I wonder if you can run the 1000 line OS in C along with the 1000 line hypervisor

          It would be nice to see a demo!

          • courtcircuits 4 days ago

            This repo seems to handle VM exits and memory initialization : https://github.com/soulxu/kvmsample/blob/master/main.c

            I'd say it's a good place to start !

            • LiamPowell 4 days ago

              How do you define an OS? You can write an EFI "OS" that prints "Hello, world" in approximately 5 lines.

              • spongebobism 3 days ago

                It's a bit more than that.

                > We'll implement basic context switching, paging, user mode, a command-line shell, a disk device driver, and file read/write operations in C.

                see https://1000os.seiya.me/en/

                • dark-star 3 days ago

                  that's not an OS, that's an EFI application

              • giveita 3 days ago

                Why does it need qemu? Isn't it a qemu?

                • ahakki 3 days ago

                  I guess because it's a risc-v hypervisor and the author expects you to run it on an x86 machine.

                  • giveita 3 days ago

                    Thanks. Good use of a turtle. (Turtles all the way down)

                • curtisszmania 3 days ago

                  [dead]

                  • TacticalCoder 3 days ago

                    [dead]