GuardBSD Logo

GuardBSD

Rust Multi-Microkernel OS • Capability Security • Production-Ready

licensebuildreleaseplatformfosdem

GuardBSD Documentation

Boot, Shell, and Storage

Boot pipeline, shell usability, filesystems, and disk/storage story.

GuaBoot — 100% BSD Bootloader

No GRUB. No Multiboot. Only BSD.

BIOS → guaboot1 (512B) → guaboot2 (~32KB) → Long Mode → kernel.elf
UEFI → guaboot.efi (~50KB) → kernel.elf
  • BIOS + UEFI
  • 64-bit native
  • ELF64 PT_LOAD
  • E820 / UEFI memory map
  • BootInfo (FreeBSD-compatible)
  • Serial debug (COM1)
  • ~2,650 lines (C + ASM)
RDI = 0x42534447 ("GBSD")
RSI = *BootInfo

gsh — Full-Featured Shell (zsh-level)

$ zfs create tank/data
$ ls | grep txt > result.txt
$ sleep 10 &
$ jobs; fg %1
$ alias ll='ls -la'
$ greet() { echo "Hi, $1"; }; greet World
  • History: ↑↓, Ctrl+R, !123
  • Job Control: &, fg, bg, jobs
  • Pipes: |, >, >>, <, 2>
  • Scripts: #!/usr/bin/gsh
  • Tab Completion: commands, paths, variables

Filesystems

FeatureGuardFSGuardZFS
JournalingYesYes (TXG)
SnapshotsYesYes
CompressionYes (LZ4)Yes (LZ4)
PoolNoYes
RAID-ZNoYes (Z1/Z2)
Self-HealingNoYes (SHA-256)
Code~3.2K LOC1.5K LOC
zfs create tank/data
mkfs.guardfs /dev/disk0p2
mount -t guardfs /dev/disk0p2 /mnt

Disk & Storage

  • 23 partition types: FAT, NTFS, ext4, FreeBSD, HFS+, GPT, EFI
  • Swap: up to 4, swapon 0, auto-detection
  • ATA: LBA48, PIO, IDENTIFY
  • Cache: 128 × 4KB, LRU, write-back
Partition 1: Linux Swap - 2048 MB [Swap]
Partition 2: GuardZFS - 20480 MB
PreviousPage 2 of 4Next
GuardBSD Documentation - Winter Saga