Alpha CANARY

NATALIZIOOS Development History

Dal bootloader 512B NASM al browser HTTP β€” ogni versione con screenshot QEMU reali

56
Versioni
58
Screenshot QEMU
v0.2.1.5.9b
Ultima CANARY
v0.0.0
asm
v0.0.5
shell
v0.0.9
NatFS
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 β†’ ATA/NatFS persistente

v0.0.0Bootloader 512B β€” NASM puroApr 2026Alpha
  • Primo file: boot/boot.asm β†’ .img (512 byte esatti)
  • Stampa via BIOS INT 10h in real mode 16-bit
  • Nessun kernel C β€” puro NASM assembly
Boot β€” BIOS POST + avvio MBR
Boot β€” BIOS POST + avvio MBR
v0.0.1Messaggi colorati al bootApr 2026Alpha
  • Testo colorato via BIOS VGA
  • Cancellazione schermo, posizionamento cursore
  • Primo CHANGELOG.md del progetto
Boot β€” messaggi colorati
Boot β€” messaggi colorati
v0.0.2Stage2 + A20 + GDT + Protected ModeApr 2026Alpha
  • Stage1 (512B) carica Stage2 via INT 13h
  • Linea A20 abilitata
  • GDT 32-bit flat β€” salto in Protected Mode
Boot β€” Protected Mode attivo
Boot β€” 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
version + help β€” primo C kernel
version + help β€” primo C kernel
v0.0.4IDT + PIC 8259 + Timer + TastieraApr 2026C
  • IDT 256 entry, PIC 8259 remappato
  • PIT 100Hz β€” timer_get_ticks()
  • Keyboard PS/2 β€” primo input interattivo
help β€” tastiera funzionante
help β€” tastiera funzionante
v0.0.5Prima shell interattivaApr 2026C
  • Readline con echo + backspace
  • Comandi: clear, help, version, echo, reboot
  • Architettura shell_command_t β€” base di tutto
help β€” prima shell attiva
help β€” prima shell attiva
v0.0.6PMM + Heap + PaginazioneApr 2026C
  • Physical Memory Manager bitmap (4KB frames)
  • 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 in esecuzione
tasks β€” processi in esecuzione
v0.0.8VFS + RamFS + comandi filesystemApr 2026C
  • VFS layer con ops virtuale
  • 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 ATA
  • natfs_sync() β€” dati sopravvivono al reboot
ls β€” file su disco reale
ls β€” file su disco reale
v0.1.0Sistema stabile β€” refactor completoApr 2026Stable
  • Moduli separati, sistema utenti base
  • PCI enumeration, Mouse PS/2
  • Boot animation con barre di progresso
sysinfo β€” info sistema completa
sysinfo β€” info sistema completa

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

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

v0.1.1Rebranding NATALIZIOOSApr 2026Stable
  • MyOS β†’ NATALIZIOOS ufficialmente
  • Logo ASCII, tema verde/cyan HPE iLO
  • natalizioos.h come header centrale
version + about β€” identitΓ  NATALIZIOOS
version + about β€” identitΓ  NATALIZIOOS
v0.1.2Shell avanzata β€” 30+ comandiApr 2026Stable
  • History frecce su/giΓΉ, tab completion
  • Pipeline cmd1|cmd2, alias, variabili env
  • 30+ comandi attivi
help β€” 30+ comandi disponibili
help β€” 30+ comandi disponibili
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 β€” file aperto full-screen
editor β€” file aperto full-screen
v0.1.4Syscall INT 0x80 + ELF32 loaderApr 2026Stable
  • Tabella syscall INT 0x80
  • ELF32 loader: elfrun dal filesystem
  • Ring3 sperimentale
elfinfo β€” ELF loader in azione
elfinfo β€” ELF loader in azione
v0.1.5Stabilizzazione + selftestApr 2026Stable
  • Fix double-free heap, fix keyboard overflow
  • selftest: diagnostica automatica di tutti i moduli
  • CTRL+C interrompe il comando
selftest β€” diagnostica automatica
selftest β€” diagnostica automatica
v0.1.6Multi-utente + sudoApr 2026Stable
  • useradd, userdel, passwd, login, logout
  • sudo con /etc/sudoers (visudo)
  • 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 completo
hwinfo β€” report hardware completo
v0.1.8N.A.T.FS v2 + journalingApr 2026Stable
  • Superblock, inode table, data blocks
  • Journaling minimale per recovery
  • mkfs, fsinfo, df
fsinfo β€” statistiche filesystem
fsinfo β€” statistiche filesystem
v0.1.9Multitasking preemptivoApr 2026Stable
  • Preemption via timer IRQ0
  • Scheduler round-robin con priority
  • tasks, sleep N, task_kill(pid)
tasks β€” processi preemptivi attivi
tasks β€” processi preemptivi attivi
v0.1.9.1Fix preemption + stack isolationMag 2026Stable
  • Fix crash: stack kernel isolato per task
  • TSS aggiornato ad ogni context switch
  • ringtest1/2/3 per verifica ring
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 β€” versione pre-freeze
help β€” versione pre-freeze
v0.1.9.3VERIFIED β€” freeze pre-refactorMag 2026Stable
  • Ultima v0.1.x β€” marcata VERIFIED
  • Fix minori shell, warning risolti
  • Base certificata per ciclo v0.2.x
uname + uptime β€” stato finale v0.1.x
uname + uptime β€” stato finale v0.1.x

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

Ring3 vero, gfxshell grafica, gfxlogin, cross-mode API.

v0.2.0ELF32 completo + ring3Apr 2026Stable
  • ELF32 loader: Ehdr, Phdr, Shdr completi
  • elfrun/elftest dal filesystem
  • Strutture per processi user reali
elfinfo + elftest
elfinfo + elftest
v0.2.0.1Ring3 + TSS + page faultApr 2026Stable
  • GDT con segmenti user ring3
  • TSS inizializzato (ltr)
  • Page fault handler + iret a ring3
ringtest β€” salto in ring3
ringtest β€” salto in ring3
v0.2.0.2Memory isolation completaApr 2026Stable
  • Page directory per processo isolata
  • PAGE_USER rimosso da kernel pages
  • User-mode stack a 0xBFFFF000
mem + pagecheck β€” isolamento
mem + pagecheck β€” isolamento
v0.2.0.3Framebuffer 800Γ—600 β€” primo 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 + gfxshell + gfxloginApr 2026Stable
  • Ring3 con syscall INT 0x80
  • gfxshell su framebuffer, gfxlogin grafico
  • Due kernel: graphic e text
sysinfo in gfxshell grafica
sysinfo in gfxshell grafica
v0.2.1.1Memory isolation 100% + MMAPApr 2026Stable
  • Page directory isolata al 100%
  • SYSCALL_MMAP per pagine userspace
  • Context switch atomico CR3+ESP0
mem in gfxshell
mem in gfxshell
v0.2.1.1.1gfxshell β€” 10 comandiApr 2026Stable
  • 10 comandi wired in gfxshell
  • Dispatch separato dalla tabella text
  • Help grafico con colori
help β€” 10 comandi (fase iniziale)
help β€” 10 comandi (fase iniziale)
v0.2.1.1.7gfxshell β€” 100+ comandiApr 2026Stable
  • 100+ comandi attivi in gfxshell
  • Help screen completo aggiornato
  • Tutti i warning di compilazione risolti
tasks β€” 100+ comandi attivi
tasks β€” 100+ comandi attivi
v0.2.1.2Boot animation HPEApr 2026Stable
  • Barre di caricamento verdi HPE style
  • Step boot visibili con watermark
  • 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 auto
  • 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 listingMag 2026Stable
  • fb_icons.c: icone 16Γ—16 su fb
  • File listing con icone per tipo
  • Colori distinti file/dir/exe
ls β€” file listing con icone
ls β€” file listing con icone
v0.2.1.3.2gfxlogin grafico + cursoreMag 2026Stable
  • Login grafico con cursore lampeggiante
  • gfxlogin: autenticazione visuale
  • Cursore animato sulla schermata di login
Boot screen β€” gfxlogin v0.2.1.3.2
Boot screen β€” gfxlogin v0.2.1.3.2
v0.2.1.3.3Shell grafica MINIMag 2026Stable
  • gfxmini: shell grafica compatta
  • Keyboard non-blocking in gfxshell
  • labmode per comandi sperimentali
Boot screen β€” gfxshell MINI v0.2.1.3.3
Boot screen β€” gfxshell MINI v0.2.1.3.3
v0.2.1.3.5Mouse driver completoMag 2026Stable
  • Mouse PS/2: movimento + click + scroll
  • Cursore grafico 16Γ—16 su framebuffer
  • Click detection in gfxshell
hwinfo β€” hardware con mouse attivo
hwinfo β€” hardware con mouse attivo
v0.2.1.3.6Freeze pre-HPE β€” base certificataMag 2026Stable
  • Release freeze per serie HPE
  • Cursore stabile, nessun leak noto
  • KERNEL_SECTORS=512 definitivo
diskinfo β€” storage in gfxshell
diskinfo β€” storage in gfxshell
v0.2.1.4Layer term_* β€” API cross-modeMag 2026Stable
  • drivers/term.c: term_puts/printf/set_color
  • Redirect auto a vga_* o gconsole_*
  • Foundation per vga_* β†’ term_*
sysinfo via term_* cross-mode
sysinfo via term_* cross-mode
v0.2.1.5Boot grafico unico β€” HPE readyMag 2026Stable
  • Boot diretto in modalitΓ  grafica HPE
  • bootanim-classic preservato come comando
  • Base pulita per serie HPE
help β€” shell HPE pronta
help β€” shell HPE pronta

🟑 HPE Series v0.2.1.5.x CANARY

Feature diagnostiche HPE iLO/ProLiant con dati hardware reali. Dual bundle text+graphic.

v0.2.1.5.1NATMemory β€” diagnostic v1Mag 2026CANARY
  • Primo dual bundle CANARY (graphic+text)
  • natmemory layout: mappa fisica RAM
  • 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+walkingMag 2026CANARY
  • natmemory test: 0xAA/0x55/0xFF/0x00
  • natmemory walk: walking bit test
  • Progress bar durante i test
natmemory test in esecuzione
natmemory test in esecuzione
v0.2.1.5.1.2NATMemory step 3 β€” address testMag 2026CANARY
  • natmemory addr: ogni addr legge se stesso
  • Rilevazione conflitti di indirizzo
natmemory addr β€” test indirizzi
natmemory addr β€” test indirizzi
v0.2.1.5.1.3NATMemory step 4 β€” heap stressMag 2026CANARY
  • natmemory heap: 1000 cicli alloc/free
  • Rilevazione leak e double-free
natmemory heap β€” stress test
natmemory heap β€” stress test
v0.2.1.5.1.4NATMemory step 5 β€” page integrityMag 2026CANARY
  • natmemory page: P/RW/US bits per ogni PTE
  • Rileva pagine corrotte o flag errati
natmemory page β€” integritΓ  pagine
natmemory page β€” integritΓ  pagine
v0.2.1.5.1.5NATMemory step 6 β€” GUI HPE SmartMemoryMag 2026CANARY+HPE
  • natmemory show: dashboard 4 riquadri
  • Physical, Virtual, Heap, Stack colori
  • natmemory all: tutti gli step in sequenza
natmemory show β€” GUI HPE SmartMemory
natmemory show β€” GUI HPE SmartMemory
v0.2.1.5.2SmartStor β€” ATA S.M.A.R.T.Mag 2026CANARY+HPE
  • ATA SMART cmd 0xB0: attributi reali
  • Temperatura, ore, settori riallocati
  • N/A dichiarato 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 ConfigMag 2026CANARY+HPE
  • Menu HPE iLO: Network, Storage, Power
  • Valori da hardware reale (CPUID, PCI)
  • Navigazione con frecce + INVIO
servercfg β€” menu HPE server
servercfg β€” menu HPE server
v0.2.1.5.4SmartArray β€” HPE RAIDMag 2026CANARY+HPE
  • Simulazione HPE Smart Array
  • PCI enumeration per 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
securestart β€” 8 integrity check
securestart β€” 8 integrity check
v0.2.1.5.5-CANARYSecureStart CANARY + GUIMag 2026CANARY+HPE
  • Build CANARY con GUI dashboard SecureStart
  • Inizio sistema dual-bundle ufficiale
securestart CANARY β€” GUI dashboard
securestart CANARY β€” GUI dashboard
v0.2.1.5.6SeaOfSens β€” sensori reali textMag 2026CANARY+HPE
  • CPUID/MSR/PMM/ATA/PCI β€” dati reali
  • 4 sezioni: CPU, Memory, Storage, System
  • N/A dichiarato per temp/fan/volt 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
seaof gui β€” HPE iLO dashboard
seaof gui β€” HPE iLO dashboard
v0.2.1.5.7DynPower β€” ACPI + CPU powerGiu 2026CANARY+HPE
  • RSDPβ†’RSDTβ†’FADT (ACPI completo)
  • CPUID leaf 6: DTS, Turbo, HWP
  • MSR 0x198/0x1B0 β€” frequenza e P-state
dynpower gui β€” HPE Power dashboard
dynpower gui β€” HPE Power dashboard
v0.2.1.5.8RestAPI + NATTourGiu 2026CANARY
  • uart.c: COM1 polling 38400 8N1
  • restapi.c: JSON (ping/version/uptime/exit)
  • tour.c: wizard 8 slide typewriter
restapi β€” JSON listener COM1
restapi β€” JSON listener COM1
NATTour β€” wizard slide 1
NATTour β€” wizard slide 1
v0.2.1.5.9NATBrowser A β€” HTML locale (VFS)Giu 2026CANARY
  • Parser HTML single-pass (h1/p/b/a href)
  • Word-wrap cross-mode via term_*
  • FIX CRITICO: heap_init() mancante boot grafico
help β€” versione 0.2.1.5.9
help β€” versione 0.2.1.5.9
browser β€” pagine HTML locali
browser β€” pagine HTML locali
NATALIZIOOS Development Wiki β€” 56 versioni, 58 screenshot QEMU β€” Giugno 2026
Γ—