Skip to content

The next generation Toddler, a well designed usable and portable microkernel OS

License

Notifications You must be signed in to change notification settings

zhengruohuang/toddler-ng

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

toddler-ng

The next generation Toddler

Major Goals

  • Written in C99
  • Unified boot protocol for all architectures with Device Tree support, combined with ACPI on x86 and OFW on PPC/SPARC
  • Support more architectures (ARM, PowerPC, x86, RISC-V, Alpha, SPARC, m68k) and machines (e.g., Multiple ARM boards)
  • More efficient IPC
  • Refined kernel APIs
  • Refined VFS and user model
  • Complete standard C library
  • Console, shell, and utilities
  • Run on QEMU and other emulators
  • Run on real machines

Long-term Goals

  • NetBSD as an environment system
  • X11
  • Package management system

Misc.

  • Fix up SMP support
  • x86: replace NASM assmebly with GAS on x86 and multiboot compliant
  • More architectures - OpenRISC, HPPA, SuperH, IA64, s390, VAX

Status

  • Planned = Not yet started
  • Initial = Initial exploration
  • Active = Active development
  • Current = Up to date
  • WIP = Work in progress

Targets

Target Loader HAL SMP Note
ia32-pc-multiboot Current Active Yes
amd64-pc-multiboot Current Active Yes
alpha-clipper-qemu Active Planned
armv7-raspi2-qemu Current Current Yes
aarch64v8-raspi3-qemu Current Active Minor fixes needed
mips32l-malta-qemu Current Current Yes* SMP: *-qemu_smp
mips32b-malta-qemu Current Current Yes* Minor fixes needed
mips64l-malta-qemu Current Current Yes* SMP: *-qemu_smp
mips64b-malta-qemu Current Current Yes* Minor fixes needed
powerpc-mac-qemu Current Active Minor fixes needed
powerpc64-mac-qemu Initial Planned
sparcv8-leon3-qemu Current Planned Minor fixes needed
sparcv8-sun4m-qemu Active Planned
sparcv9-sun4u-qemu Planned Planned
riscv32-virt-qemu Current Current Yes
riscv64-virt-qemu Current Current Yes
m68k-mcf5208-qemu Active Planned
sh4-r2d-qemu Active Planned
openrisc-sim-qemu Current Current Yes* SMP: *-qemu_smp
ia64-sim-ski Initial Planned
s390-virtio-qemu Planned Planned
zarch-virtio-qemu Planned Planned
hppa-sim-qemu Planned Planned
vax-sim-simh Initial Planned
  • MIPS SMP lacks GIC support
  • MIPS64 QEMU emulates using only single thread
  • OpenRISC QEMU supports up to 2 CPUs

Additional Targets

Target Status
amd64-pc-uefi Planned
aarch64v8-virt-qemu Planned
mips32l-ci20-generic Planned
mips64l-loongson3-generic Planned
powerpc-mac-g3 Planned
powerpc64-mac-g3 Planned
powerpc64-pseries-generic Planned
riscv32-sifive_u-qemu Planned
riscv64-sifive_u-qemu Planned

Kernel

Component Status
Process management Current
Page allocation Current
Object allocation Current
IPC Current
Kernel call Current
System API Current

System

Server Status
Virtual file system Active
User account Planned
Device management Active
Text UI Active
Graphics UI Planned
Driver Status
Partition Planned
File systems Active
RAM FS Active
Serial Active
Video Planned
Disk Planned
Keyboard Planned
Mouse Planned
Network Planned

Apps

App Status
Init Active
Login Planned
Shell Active

About

The next generation Toddler, a well designed usable and portable microkernel OS

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published