CANARY
Alpha

NATALIZIOOS Development History

Dal bootloader 512B all'OS con browser HTTP β€” ogni versione, ogni screenshot, tutto da QEMU reale

56
Versioni
58
Screenshot QEMU
2/ver
Boot + Feature
v0.2.1.5.9b
Ultima CANARY
v0.0.0
asm
v0.0.5
shell
v0.1.0
stable
v0.1.9.3
freeze
v0.2.0.3
800Γ—600
v0.2.1.4
term_*
HPE
series
v0.2.1.5.9
browser

πŸ§ͺ MyOS v0.0.x β€” Dal bootloader al kernel C

512 byte NASM β†’ Protected Mode β†’ shell β†’ VFS β†’ filesystem persistente ATA

v0.0.0Bootloader 512 byte β€” NASM puroApr 2026Alpha
  • Primo file: boot.asm β†’ .img (512 byte esatti)
  • Stampa via BIOS INT 10h in real mode 16-bit
  • Nessun kernel C β€” puro assembly
Schermata di boot
Schermata di boot
v0.0.1Messaggi colorati al bootApr 2026Alpha
  • Testo colorato via BIOS VGA
  • Cancellazione schermo, posizionamento cursore
Boot con colori
Boot con colori
v0.0.2Stage2 + GDT + Protected Mode 32-bitApr 2026Alpha
  • Stage1 carica Stage2 da disco (INT 13h)
  • GDT minimale (code + data 32-bit flat)
  • Salto in Protected Mode β€” addio real mode
Protected Mode attivo
Protected Mode attivo
v0.0.3Primo kernel C freestandingApr 2026C
  • kmain() in C con GCC -m32 -ffreestanding
  • VGA text driver: vga_putchar/vga_printf
  • Linker script kernel.ld
Primo C kernel β€” version
Primo C kernel β€” version
v0.0.4IDT + PIC + Timer + TastieraApr 2026C
  • IDT completa (256 entry), PIC 8259 remappato
  • PIT timer a 100Hz β€” timer_get_ticks()
  • Keyboard PS/2 β€” primo input interattivo
Tastiera funzionante β€” help
Tastiera funzionante β€” help
v0.0.5Prima shell interattivaApr 2026C
  • Readline con echo e backspace
  • Comandi: clear, help, version, echo, reboot
  • Architettura shell_command_t β€” base di tutto
Prima shell β€” help
Prima shell β€” help
v0.0.6PMM + Heap + PaginazioneApr 2026C
  • Physical Memory Manager bitmap (frame 4KB)
  • Heap allocator (kmalloc/kfree)
  • Paginazione x86 identity map 64MB
mem β€” statistiche heap/PMM
mem β€” statistiche heap/PMM
v0.0.7Multitasking cooperativoApr 2026C
  • task_t con context switch pushad/popad
  • task_yield(), task_create(), task_exit()
  • Demo: due task in parallelo
tasks β€” processi attivi
tasks β€” processi attivi
v0.0.8VFS + RamFS + comandi filesystemApr 2026C
  • VFS layer con ops virtuale (read/write/finddir/create)
  • RamFS in-memory con pool nodi statici
  • ls, cat, mkdir, touch, rm, pwd, cd
ls + cat β€” VFS in-memory
ls + cat β€” VFS in-memory
v0.0.9ATA driver + N.A.T.FS persistenteApr 2026C
  • Driver ATA PIO lettura/scrittura settori
  • N.A.T.FS: filesystem persistente su disco
  • natfs_sync() β€” dati sopravvivono al reboot
ls β€” file su disco reale
ls β€” file su disco reale
v0.1.0Sistema stabile β€” refactor + boot animationApr 2026Stable
  • Moduli separati, sistema utenti base (root/user)
  • PCI enumeration, Mouse PS/2
  • Boot animation con barre di progresso
sysinfo β€” info sistema
sysinfo β€” info sistema

πŸ“¦ NATALIZIOOS v0.1.x β€” Rebranding e maturitΓ 

Rinominato NATALIZIOOS. Shell avanzata, N.A.T.FS, multi-utente, ELF loader, preemption.

v0.1.1Rebranding NATALIZIOOS β€” nuova identitΓ Apr 2026Stable
  • MyOS β†’ NATALIZIOOS ufficialmente
  • Logo ASCII, tema verde/cyan HPE iLO
  • natalizioos.h come header centrale
version + about β€” nuovo nome
version + about β€” nuovo nome
v0.1.2Shell avanzata β€” history, TAB, pipe, 30+ cmdApr 2026Stable
  • History con frecce su/giΓΉ, tab completion
  • Pipeline: cmd1 | cmd2, alias, variabili env
  • 30+ comandi attivi
help β€” 30+ comandi
help β€” 30+ comandi
v0.1.3Editor nano-like + script engineApr 2026Stable
  • Editor full-screen CTRL+S/CTRL+X
  • Script .nat eseguibili dalla shell
  • Permessi UNIX-style, comando man
editor full-screen aperto
editor full-screen aperto
v0.1.4Syscall + ELF32 loader + Ring3 baseApr 2026Stable
  • Tabella syscall INT 0x80
  • ELF32 loader: elfrun dal filesystem
  • Ring3 sperimentale con rientro via syscall
elfinfo β€” ELF loader info
elfinfo β€” ELF loader info
v0.1.5Stabilizzazione + selftest automaticoApr 2026Stable
  • Fix double-free heap, fix keyboard overflow
  • selftest: diagnostica automatica di tutti i moduli
  • CTRL+C interrompe il comando corrente
selftest β€” diagnostica automatica
selftest β€” diagnostica automatica
v0.1.6Multi-utente + sudo + /etc/sudoersApr 2026Stable
  • useradd, userdel, passwd, login, logout
  • sudo con /etc/sudoers (visudo per editarlo)
  • whoami, id, users, su
users β€” lista utenti sistema
users β€” lista utenti sistema
v0.1.7PCI avanzato + hwinfoApr 2026Stable
  • PCI enumeration: vendor ID, device ID, classe
  • sysinfo con CPUID, memoria, PCI devices
  • hwinfo: report hardware dettagliato
hwinfo β€” report hardware
hwinfo β€” report hardware
v0.1.8N.A.T.FS v2 + journaling minimaleApr 2026Stable
  • Superblock, inode table, data blocks
  • Journaling minimale per recovery post-crash
  • mkfs, fsinfo, df
fsinfo β€” statistiche filesystem
fsinfo β€” statistiche filesystem
v0.1.9Multitasking preemptivo + schedulerApr 2026Stable
  • Preemption via timer IRQ0
  • Scheduler round-robin con priority
  • tasks, sleep N, task_kill(pid)
tasks β€” processi preemptivi
tasks β€” processi preemptivi
v0.1.9.1Fix preemption + stack isolationMag 2026Stable
  • Fix crash: stack kernel isolato per ogni task
  • TSS aggiornato ad ogni context switch
  • ringtest1/2/3 per verifica ring protection
tasks β€” dopo fix preemption
tasks β€” dopo fix preemption
v0.1.9.2Boot selector F1/F11Mag 2026Stable
  • F1: text mode, F11: boot menu
  • ESC per recovery al boot
  • Architettura dual-mode: text + graphic
help β€” pre-freeze v0.1.x
help β€” pre-freeze v0.1.x
v0.1.9.3Ultima VERIFIED β€” freeze pre-refactorMag 2026Stable
  • Ultima v0.1.x β€” marcata VERIFIED nel multiboot
  • Fix minori shell, pulizia warning compilatore
  • Base certificata per ciclo v0.2.x
uname + uptime β€” stato finale
uname + uptime β€” stato finale

πŸ”§ v0.2.x β€” Ring3 + Framebuffer + Layer term_*

Ring3 vero, framebuffer 800Γ—600, gfxshell grafica, cross-mode API.

v0.2.0ELF32 completo + fondamenta ring3Apr 2026Stable
  • ELF32 loader: Ehdr, Phdr, Shdr completi
  • elfrun/elftest dal filesystem
  • Strutture per processi user reali
elfinfo + elftest in azione
elfinfo + elftest in azione
v0.2.0.1Ring3 + TSS + page fault handlerApr 2026Stable
  • GDT con segmenti user ring3
  • TSS inizializzato (ltr), page fault handler
  • iret a ring3 funzionante
ringtest β€” salto ring3
ringtest β€” salto ring3
v0.2.0.2Memory isolation β€” PAGE_USER rimossoApr 2026Stable
  • Page directory per processo
  • PAGE_USER rimosso da kernel pages
  • User-mode stack a 0xBFFFF000
mem + pagecheck β€” memory isolation
mem + pagecheck β€” memory isolation
v0.2.0.3Framebuffer 800Γ—600 β€” primo boot graficoApr 2026Stable
  • Driver VESA 800Γ—600Γ—32bpp
  • Font bitmap 8Γ—16, gconsole con scrolling
  • Prima gfxshell su framebuffer
gfxshell grafica 800Γ—600
gfxshell grafica 800Γ—600
v0.2.1Ring3 completo + gfxshell + gfxloginApr 2026Stable
  • Ring3 con syscall INT 0x80 da userspace
  • gfxshell su framebuffer, gfxlogin grafico
  • Due kernel: graphic e text mode
sysinfo in gfxshell grafica
sysinfo in gfxshell grafica
v0.2.1.1Memory isolation completa + MMAPApr 2026Stable
  • Page directory isolata al 100% per processo
  • SYSCALL_MMAP per pagine userspace
  • Fix context switch atomico CR3+ESP0
tasks in gfxshell
tasks in gfxshell
v0.2.1.1.1gfxshell β€” primi 10 comandiApr 2026Stable
  • 10 comandi wired in gfxshell
  • Dispatch separato dalla tabella text mode
  • Help screen grafico colorato
help in gfxshell v1
help in gfxshell v1
v0.2.1.1.7gfxshell stabile β€” 100+ comandiApr 2026Stable
  • 100+ comandi attivi in gfxshell
  • Help screen completo aggiornato
  • Risolti tutti i warning di compilazione
help β€” 100+ comandi attivi
help β€” 100+ comandi attivi
v0.2.1.2Boot animation HPE completaApr 2026Stable
  • Barre di caricamento verdi HPE style
  • Step boot visibili con watermark versione
  • Logo NATALIZIOOS ASCII animato
version post-boot animation HPE
version post-boot animation HPE
v0.2.1.3Stabilization + selfdiagMag 2026Stable
  • selfdiag: esegue tutti i comandi automaticamente
  • Fix vga_printf in pmm.c e heap.c
  • Pulizia dead code accumulato
selfdiag in esecuzione
selfdiag in esecuzione
v0.2.1.3.1Icone bitmap + file listing visualeMag 2026Stable
  • fb_icons.c: rendering icone 16Γ—16 su fb
  • File listing con icone: file/dir/exe
  • Colori distinti per tipo di file
ls con icone bitmap
ls con icone bitmap
v0.2.1.3.2gfxmini + gfxconsoleMag 2026Stable
  • gfxmini: finestra terminale su framebuffer
  • gfxconsole interattiva con scrollback
  • gfxtxt: visualizzatore testo con colori
gfxmini in azione
gfxmini in azione
v0.2.1.3.3Lab Mode β€” ambiente sperimentaleMag 2026Stable
  • labmode: comandi sperimentali isolati
  • elfrun, gfxconsole, ringtest, pagecheck solo qui
  • Riavvio obbligatorio per uscire
labmode attivato
labmode attivato
v0.2.1.3.5Mouse driver + click handlingMag 2026Stable
  • Mouse PS/2 completo: movimento + click
  • Cursore grafico 16Γ—16 su framebuffer
  • Scroll wheel support
sysinfo con mouse attivo
sysinfo con mouse attivo
v0.2.1.3.6Freeze pre-HPE β€” base stabile certificataMag 2026Stable
  • Release di freeze per serie HPE
  • Cursore stabile, nessun leak noto
  • KERNEL_SECTORS=512 definitivo
ls β€” filesystem in gfxshell
ls β€” filesystem in gfxshell
v0.2.1.4Layer term_* β€” API cross-modeMag 2026Stable
  • drivers/term.c: term_puts/printf/set_color/get_cursor
  • Redirect automatico a vga_* o gconsole_*
  • Foundation per conversione vga_* β†’ term_*
sysinfo via term_* cross-mode
sysinfo via term_* cross-mode
v0.2.1.5Boot grafico unico β€” base HPE seriesMag 2026Stable
  • Boot diretto in modalitΓ  grafica HPE
  • bootanim-classic preservato come comando
  • Base pulita per serie HPE feature
help β€” shell HPE grafica pronta
help β€” shell HPE grafica pronta

🟑 HPE Series v0.2.1.5.x CANARY

Feature diagnostiche HPE iLO/ProLiant. Dati reali, dual bundle text + graphic.

v0.2.1.5.1NATMemory β€” HPE memory diagnostic v1Mag 2026CANARY
  • Primo dual bundle CANARY (graphic + text)
  • natmemory layout: mappa fisica RAM colorata
  • Stage2 a 4 chunk (256KB max kernel)
natmemory layout β€” mappa RAM
natmemory layout β€” mappa RAM
v0.2.1.5.1.1NATMemory step 1-2 β€” pattern+walking bitMag 2026CANARY
  • natmemory test: 0xAA/0x55/0xFF/0x00
  • natmemory walk: walking bit test
  • Barre di progresso durante test
natmemory test in esecuzione
natmemory test in esecuzione
v0.2.1.5.1.2NATMemory step 3 β€” address testMag 2026CANARY
  • natmemory addr: ogni indirizzo legge se stesso
  • Rilevazione conflitti di indirizzo
  • Report con indirizzo esatto errori
natmemory addr β€” address test
natmemory addr β€” address test
v0.2.1.5.1.3NATMemory step 4 β€” heap stressMag 2026CANARY
  • natmemory heap: 1000 cicli alloc/free
  • Rilevazione memory leak e double-free
  • Statistiche frammentazione heap
natmemory heap β€” stress test
natmemory heap β€” stress test
v0.2.1.5.1.4NATMemory step 5 β€” page integrityMag 2026CANARY
  • natmemory page: verifica P/RW/US bits
  • Controlla ogni PTE nella page directory
  • Rileva pagine corrotte o flag errati
natmemory page β€” page integrity
natmemory page β€” page integrity
v0.2.1.5.1.5NATMemory step 6 β€” GUI HPE SmartMemoryMag 2026CANARY Β· HPE
  • natmemory show: dashboard 4 riquadri HPE
  • Physical, Virtual, Heap, Stack
  • natmemory all: tutti gli step in sequenza
natmemory show β€” GUI HPE
natmemory show β€” GUI HPE
v0.2.1.5.2SmartStor β€” ATA S.M.A.R.T. realeMag 2026CANARY Β· HPE
  • ATA SMART cmd 0xB0: attributi reali
  • Temperatura, ore, settori riallocati
  • N/A dichiarato esplicitamente per QEMU
smartstor gui β€” ATA S.M.A.R.T.
smartstor gui β€” ATA S.M.A.R.T.
v0.2.1.5.3ServerCfg β€” HPE Server ConfigurationMag 2026CANARY Β· HPE
  • Menu HPE iLO style: Network, Storage, Power, Security
  • Valori da hardware reale (CPUID, PCI)
  • Navigazione frecce + INVIO
servercfg β€” menu HPE server
servercfg β€” menu HPE server
v0.2.1.5.4SmartArray β€” HPE RAID controllerMag 2026CANARY Β· HPE
  • Simulazione HPE Smart Array controller
  • PCI enumeration per dispositivi storage
  • Dashboard: array, dischi, controller
smartarray gui β€” HPE RAID
smartarray gui β€” HPE RAID
v0.2.1.5.5SecureStart β€” boot integrity 8 checkMag 2026Stable Β· HPE
  • 8 check: IDT, GDT, CR0, PMM, paging, stack, heap, versione
  • Report OK/WARN/FAIL per ogni check
  • Prima versione con bundle STABLE
securestart β€” 8 integrity check
securestart β€” 8 integrity check
v0.2.1.5.5-CANARYSecureStart CANARY + GUI dashboardMag 2026CANARY Β· HPE
  • Build CANARY con GUI dashboard SecureStart
  • Inizio sistema dual-bundle ufficiale
  • Watermark versione in ogni GUI
securestart GUI β€” CANARY build
securestart GUI β€” CANARY build
v0.2.1.5.6SeaOfSens β€” sensori reali text modeMag 2026CANARY Β· HPE
  • CPUID, MSR, PMM, ATA, PCI β€” dati reali
  • 4 sezioni: CPU, Memory, Storage, System
  • N/A dichiarato per temp/fan/volt su QEMU
seaof β€” dashboard text mode
seaof β€” dashboard text mode
v0.2.1.5.6-CANARYSeaOfSens CANARY β€” GUI HPE iLOMag 2026CANARY Β· HPE
  • seaof gui: dashboard HPE iLO pieno schermo
  • Barre grafiche CPU, memoria, storage
  • Q=exit, R=refresh, watermark versione
seaof gui β€” HPE iLO dashboard
seaof gui β€” HPE iLO dashboard
v0.2.1.5.7DynPower β€” ACPI + CPU power managementGiu 2026CANARY Β· HPE
  • RSDPβ†’RSDTβ†’FADT (ACPI completo)
  • CPUID leaf 6: DTS, Turbo, HWP flags
  • MSR 0x198/0x1B0 β€” frequenza e P-state
dynpower gui β€” HPE Power
dynpower gui β€” HPE Power
v0.2.1.5.8RestAPI + NATTour β€” UART + wizardGiu 2026CANARY
  • uart.c: COM1 polling 38400 8N1
  • restapi.c: JSON (ping/version/uptime/exit)
  • tour.c: wizard 8 slide typewriter effect
restapi β€” JSON su COM1
restapi β€” JSON su COM1
NATTour β€” wizard slide 1
NATTour β€” wizard slide 1
v0.2.1.5.9NATBrowser A β€” browser HTML locale (VFS)Giu 2026CANARY
  • Parser HTML: h1/p/b/a href single-pass
  • Word-wrap via term_get_cursor cross-mode
  • FIX CRITICO: heap_init() mancante nel boot grafico
help β€” versione 0.2.1.5.9
help β€” versione 0.2.1.5.9
browser demo β€” HTML locale
browser demo β€” HTML locale
NATALIZIOOS Development Wiki β€” 56 versioni, 58 screenshot da QEMU reale β€” Giugno 2026
Γ—