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
asm
v0.0.5
shell
shell
v0.1.0
stable
stable
v0.1.9.3
freeze
freeze
v0.2.0.3
800Γ600
800Γ600
v0.2.1.4
term_*
term_*
HPE
series
series
v0.2.1.5.9
browser
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
v0.0.1Messaggi colorati al bootApr 2026Alpha
- Testo colorato via BIOS VGA
- Cancellazione schermo, posizionamento cursore
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
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
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
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
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
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
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
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
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
π¦ 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
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
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
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
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
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
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
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
v0.1.9Multitasking preemptivo + schedulerApr 2026Stable
- Preemption via timer IRQ0
- Scheduler round-robin con priority
- tasks, sleep N, task_kill(pid)
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
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
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
π§ 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
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
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
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
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
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
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
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
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
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
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
v0.2.1.3.2gfxmini + gfxconsoleMag 2026Stable
- gfxmini: finestra terminale su framebuffer
- gfxconsole interattiva con scrollback
- gfxtxt: visualizzatore testo con colori
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
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
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
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
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
π‘ 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
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
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
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
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
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
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.
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
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
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
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
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
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
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
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
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
browser demo β HTML locale
NATALIZIOOS Development Wiki β 56 versioni, 58 screenshot da QEMU reale β Giugno 2026