Description

It can boot up from udisk/floppy. It was consider as a operation system, but it's so stupid as a OS. I use it to practice x86_64 platform system programming. I hope it will be used in commercial, but it always be use to stoudy/learn. please install it into KVM(I have a script to run it in KVM env).

Key technical

  • X86_64 boot up
  • X86_64 memory management
  • X86_64 interrupt management
  • X86_64 VGA display
  • X86_64 BIOS routine

Practice

  • QEMU
  • GNU Toolchian(linker and loader)
  • C, Assembly Language (AT&T)

Github

https://github.com/wjn740/hypervisor_last

Looking for hackers with the skills:

bare-metal x86

This project is part of:

Hack Week 13 Hack Week 14 Hack Week 15 Hack Week 16 Hack Week 17 Hack Week 18 Hack Week 19

Activity

  • almost 5 years ago: coolgw joined this project.
  • almost 5 years ago: ematsumiya liked this project.
  • over 5 years ago: joeyli liked this project.
  • over 5 years ago: yaoxu joined this project.
  • over 5 years ago: jnwang added keyword "x86" to this project.
  • over 5 years ago: jnwang added keyword "bare-metal" to this project.
  • over 5 years ago: aburlakov joined this project.
  • over 5 years ago: aburlakov liked this project.
  • about 7 years ago: ArchLinux liked this project.
  • almost 8 years ago: mbrugger liked this project.
  • almost 8 years ago: cachen liked this project.
  • over 8 years ago: ZRen liked this project.
  • about 9 years ago: jnwang started this project.
  • about 9 years ago: jnwang liked this project.
  • about 9 years ago: jnwang originated this project.

  • Comments

    • jnwang
      over 8 years ago by jnwang | Reply

      In HackWeek14, I want to finish implement of Memory probe.

    • jnwang
      about 7 years ago by jnwang | Reply

      In HackWeek 16, there are three objects: 1. make the project is run-able on opensuse42.3. 2. Investigate Clocks, Timers and Counters. 3. E820 Memory Detect (optional for volunteers).

    • jnwang
      over 6 years ago by jnwang | Reply

      In HackWeek 17, I plan to add a console for it. The console can accept input from keyboard. and give some response on the screen.

      • jnwang
        over 6 years ago by jnwang | Reply

        Sorry, The input come from serial console, and the output also from serial console.

    • aburlakov
      over 5 years ago by aburlakov | Reply

      Hi James, you project looks very interesting! I'd like to take part in in next HackWeek.

    • jnwang
      over 5 years ago by jnwang | Reply

      In HW 18, serial console development as a main target.

    • jnwang
      almost 5 years ago by jnwang | Reply

      Hi guys, Hackweek 19 is coming. This time we will work on MMU enable - Paging. It should be a magical feature on x86 platform. @aburlakov and @coolgw will join in next week. so looking forward to your amazing achievement.

    Similar Projects

    iSCSI integration in Warewulf by ncuralli

    Description

    This Hackweek project aims to enhance Warewulf’s capabilities by adding iSCSI support, enabling both remote boot and flexible mounting of iSCSI devices within the filesystem. The project, which already handles NFS, DHCP, and iPXE, will be extended to offer iSCSI services as well, centralizing all necessary services for provisioning and booting cluster nodes.

    Goals

    • iSCSI Boot Option: Enable nodes to boot directly from iSCSI volumes
    • Mounting iSCSI Volumes within the Filesystem: Implement support for mounting iSCSI devices at various points within the filesystem

    Resources

    https://warewulf.org/

    Steps

    • add generic framework to handle remote ressource/filesystems to wwctl [ ]
    • add iSCSI handling to wwctl configure [ ]
    • add iSCSI to dracut files [ ]
    • test it [ ]


    Extending KubeVirtBMC's capability by adding Redfish support by zchang

    Description

    In Hack Week 23, we delivered a project called KubeBMC (renamed to KubeVirtBMC now), which brings the good old-fashioned IPMI ways to manage virtual machines running on KubeVirt-powered clusters. This opens the possibility of integrating existing bare-metal provisioning solutions like Tinkerbell with virtualized environments. We even received an inquiry about transferring the project to the KubeVirt organization. So, a proposal was filed, which was accepted by the KubeVirt community, and the project was renamed after that. We have many tasks on our to-do list. Some of them are administrative tasks; some are feature-related. One of the most requested features is Redfish support.

    Goals

    Extend the capability of KubeVirtBMC by adding Redfish support. Currently, the virtbmc component only exposes IPMI endpoints. We need to implement another simulator to expose Redfish endpoints, as we did with the IPMI module. We aim at a basic set of functionalities:

    • Power management
    • Boot device selection
    • Virtual media mount (this one is not so basic add-emoji )

    Resources