HOME

Alessandro OS

v0.1 — Bootloader Base (Deprecato)

Prima versione ufficiale del progetto Alessandro OS.

Caratteristiche Principali

Bootloader Assembly x86 puro
• 512 byte esatti (MBR)
• Real Mode 16-bit
• Gestione stack e registri
• Pulizia schermo via BIOS INT 10h
• Stampa banner personalizzato
• Firma magica 0xAA55 corretta

Struttura del Progetto

File / CartellaDescrizione
bootloader/boot.asmBootloader principale (512 byte)
build/File compilati (.bin e .img)
MakefileSistema di compilazione e avvio QEMU

Come Eseguire

sudo apt install nasm qemu-system-x86
make
make run
        

Obiettivo di questa versione: Creare un bootloader funzionante e bootabile come base solida per lo sviluppo successivo.

Prossimi Sviluppi Pianificati

  • v0.2 — Protected Mode 32-bit + GDT
  • v0.3 — Kernel in C + IDT
  • v0.4 — Driver tastiera e VGA avanzato
  • v0.5 — Gestione memoria e filesystem custom
  • v1.0 — Shell interattiva completa
Alessandro OS - History

v0.1 — v0.2 • Bootloader Base (Deprecato)

Prime versioni ufficiali di Alessandro OS. Focus sulla creazione di un bootloader stabile e bootabile.

Caratteristiche Principali

Bootloader Assembly x86 (512 byte)

• Real Mode 16-bit
• Azzera registri e configura stack
• Pulizia schermo e stampa banner personalizzato
• Gestione interrupt BIOS (INT 10h)
• Firma MBR 0xAA55 corretta
• Immagine floppy 1.44MB bootabile su QEMU

Mappa della Memoria (Real Mode)

0x0000 - 0x03FF   → IVT (BIOS)
0x7C00 - 0x7DFF   → Bootloader Alessandro OS (512 byte)
0x7E00 - 0x9FFF   → Memoria libera (per kernel futuro)
0xA000 - 0xBFFF   → Video Memory (VGA)
        

Come Compilare ed Avviare

sudo apt install nasm qemu-system-x86
make
make run
        

Prossimi Passi (Roadmap dal progetto)

FaseObiettivo
Fase 2Protected Mode 32-bit + GDT
Fase 3Kernel minimale in C
Fase 4Driver tastiera (PS/2) e VGA
Fase 5Gestione memoria + AlessandroFS
Fase 6Processi, scheduler e syscall
Fase 7Shell interattiva completa
Alessandro OS - History

v0.1 • v0.2 • v0.3 — Bootloader Base (Deprecato)

Prime fasi del progetto Alessandro OS. Creazione di un bootloader stabile scritto in Assembly x86 puro.

Caratteristiche Tecniche

• Bootloader MBR da 512 byte esatti
• Real Mode 16-bit
• Azzera registri di segmento e configura stack
• Pulizia schermo e stampa banner carattere per carattere
• Gestione interrupt BIOS (INT 10h)
• Firma magica 0xAA55 corretta
• Immagine floppy 1.44MB bootabile su QEMU

Mappa della Memoria (Real Mode 16-bit)

0x0000 - 0x03FF   → IVT (Interrupt Vector Table - BIOS)
0x0400 - 0x04FF   → BIOS Data Area
0x7C00 - 0x7DFF   → Bootloader Alessandro OS (512 byte)
0x7E00 - 0x9FFF   → Memoria libera (per kernel futuro)
0xA000 - 0xBFFF   → Video Memory VGA
        

Compilazione e Avvio

sudo apt install nasm qemu-system-x86
make          # Compila boot.asm → boot.bin + immagine floppy
make run      # Avvia su QEMU
        

Roadmap di Sviluppo

FaseObiettivoStato
v0.1 - v0.3Bootloader Base (Real Mode)Completata (Deprecata)
Fase 2Protected Mode 32-bit + GDTPianificata
Fase 3Kernel minimale in CPianificata
Fase 4Driver tastiera PS/2 e VGAPianificata
Fase 5Gestione memoria + AlessandroFSPianificata
Fase 6Processi, scheduler e syscallPianificata
Fase 7Shell interattiva completaPianificata
Alessandro OS - History

v0.1 — v0.4 • Bootloader Base (Deprecato)

Prime fasi del progetto Alessandro OS. Sviluppo del bootloader fondamentale scritto in Assembly x86 puro.

Caratteristiche Principali

• Bootloader MBR da esattamente 512 byte
• Real Mode 16-bit
• Azzera registri di segmento e configura stack
• Pulizia schermo e stampa banner personalizzato
• Gestione interrupt BIOS (INT 10h)
• Firma magica 0xAA55 corretta
• Immagine floppy 1.44MB bootabile su QEMU

Mappa della Memoria (Real Mode 16-bit)

0x0000 - 0x03FF   → IVT (Interrupt Vector Table - BIOS)
0x0400 - 0x04FF   → BIOS Data Area
0x7C00 - 0x7DFF   → Bootloader Alessandro OS (512 byte)
0x7E00 - 0x9FFF   → Memoria libera (per kernel futuro)
0xA000 - 0xBFFF   → Video Memory VGA
        

Compilazione e Avvio

sudo apt install nasm qemu-system-x86
make          # Compila → boot.bin + alessandroos.img
make run      # Avvia su QEMU
        

Roadmap di Sviluppo (dal progetto)

FaseObiettivoStato
v0.1 — v0.4Bootloader Base (Real Mode 16-bit)Completata (Deprecata)
Fase 2Protected Mode 32-bit + GDTPianificata
Fase 3Kernel minimale in CPianificata
Fase 4Driver tastiera PS/2 e VGAPianificata
Fase 5Gestione memoria + AlessandroFSPianificata
Fase 6Processi, scheduler e syscallPianificata
Fase 7Shell interattiva completaPianificata
Alessandro OS - History

v0.1 — v0.5 • Bootloader Base (Deprecato)

Fasi iniziali del progetto Alessandro OS. Sviluppo e raffinamento del bootloader fondamentale in Assembly x86 puro.

Caratteristiche Tecniche Principali

• Bootloader MBR da esattamente 512 byte
• Real Mode 16-bit
• Inizializzazione registri di segmento e stack
• Pulizia schermo e stampa banner personalizzato
• Gestione interrupt BIOS (INT 10h)
• Firma magica 0xAA55 corretta
• Immagine floppy 1.44MB bootabile su QEMU

Mappa della Memoria (Real Mode 16-bit)

0x0000 - 0x03FF   → IVT (Interrupt Vector Table - BIOS)
0x0400 - 0x04FF   → BIOS Data Area
0x7C00 - 0x7DFF   → Bootloader Alessandro OS (512 byte)
0x7E00 - 0x9FFF   → Memoria libera (per kernel futuro)
0xA000 - 0xBFFF   → Video Memory VGA
        

Compilazione e Avvio

sudo apt install nasm qemu-system-x86
make
make run
        

Roadmap di Sviluppo

Versione / FaseObiettivoStato
v0.1 — v0.5Bootloader Base (Real Mode 16-bit)Completata (Deprecata)
Fase 2Protected Mode 32-bit + GDTPianificata
Fase 3Kernel minimale in CPianificata
Fase 4Driver tastiera PS/2 e VGAPianificata
Fase 5Gestione memoria + AlessandroFSPianificata
Fase 6Processi, scheduler e syscallPianificata
Fase 7Shell interattiva completaPianificata
Alessandro OS - History

v0.1 — v0.6 • Bootloader Base (Deprecato)

Prime versioni del progetto Alessandro OS. Sviluppo iterativo del bootloader fondamentale scritto in Assembly x86 puro.

Caratteristiche Tecniche Principali

• Bootloader MBR da esattamente 512 byte
• Real Mode 16-bit
• Azzera registri di segmento e configura stack
• Pulizia schermo e stampa banner personalizzato
• Gestione interrupt BIOS (INT 10h)
• Firma magica 0xAA55 corretta
• Immagine floppy 1.44MB bootabile su QEMU

Mappa della Memoria (Real Mode 16-bit)

0x0000 - 0x03FF   → IVT (Interrupt Vector Table - BIOS)
0x0400 - 0x04FF   → BIOS Data Area
0x7C00 - 0x7DFF   → Bootloader Alessandro OS (512 byte)
0x7E00 - 0x9FFF   → Memoria libera (per kernel futuro)
0xA000 - 0xBFFF   → Video Memory VGA
        

Compilazione e Avvio

sudo apt install nasm qemu-system-x86
make
make run
        

Roadmap di Sviluppo

VersioneObiettivoStato
v0.1 — v0.6Bootloader Base (Real Mode 16-bit)Completata (Deprecata)
Fase 2Protected Mode 32-bit + GDTPianificata
Fase 3Kernel minimale in CPianificata
Fase 4Driver tastiera PS/2 e VGAPianificata
Fase 5Gestione memoria + AlessandroFSPianificata
Fase 6Processi, scheduler e syscallPianificata
Fase 7Shell interattiva completaPianificata
Alessandro OS - History

v0.1 — v0.7 • Alessandro OS Personal Edition (Deprecato)

Evoluzione del progetto Alessandro OS dal bootloader base fino alla shell interattiva completa.

Versioni Principali

• v0.1 – v0.6: Bootloader Assembly x86 puro (512 byte), Real Mode, Protected Mode, GDT, IDT, driver VGA e tastiera
• v0.7: Shell interattiva completa (`alex>`), filesystem AlessandroFS, heap allocator, comandi avanzati

Funzionalità raggiunte in v0.7

ComponenteDescrizione
BootloaderAssembly x86 puro, caricamento kernel da disco
KernelProtected Mode 32-bit, IDT, interrupt handling
DriverVGA testo 80x25, tastiera PS/2 con Shift
MemoriaHeap allocator First Fit (kmalloc/kfree)
FilesystemAlessandroFS custom (inode, bitmap, blocchi dati)
ShellPrompt `alex>`, comandi: help, ls, cat, touch, write, rm, mem, echo, clear...

Changelog Principale

VersioneNovità Principali
v0.7Shell interattiva completa, history comandi, AlessandroFS maturo
v0.6Filesystem custom AlessandroFS
v0.5Heap allocator (kmalloc) con coalescing
v0.4IDT, interrupt, timer PIT, driver tastiera
v0.3Kernel in C, VGA driver
v0.2Protected Mode 32-bit + GDT
v0.1Bootloader Assembly 512 byte

Roadmap Futura (pianificata)

  • Multitasking e scheduler
  • Userspace e syscall
  • Supporto file system più avanzato
  • Driver disco ATA completo
  • Versione stabile Personal Edition
Alessandro OS - History

v0.1 — v0.8 • Alessandro OS (Deprecato)

Evoluzione del progetto Alessandro OS dal bootloader base fino al Boot Selector con due edizioni (Personal + Business).

Stato Attuale del Progetto (v0.8)

• Boot Selector all'avvio (premi 1 o 2)
• **Alessandro OS Personal Edition** v0.8: Shell completa, AlessandroFS, heap allocator, tastiera migliorata
• **Alexsander OS Business Edition** v0.0.5.0: Mockup grafico con watermark, shell ALEXSHELL

Changelog Principale

VersioneNovità Principali
v0.8Boot Selector, Business Edition mockup, fix tastiera Personal Edition
v0.7Shell interattiva completa (Personal Edition)
v0.6Filesystem custom AlessandroFS
v0.5Heap allocator kmalloc / kfree
v0.4IDT, interrupt, timer e tastiera
v0.3Kernel in C + VGA driver
v0.2Protected Mode 32-bit + GDT
v0.1Bootloader Assembly 512 byte

Architettura Attuale (v0.8)

  • Boot Selector: Scelta tra Personal Edition e Business Edition
  • Personal Edition: Shell avanzata, filesystem, heap, comandi completi
  • Business Edition: Mockup grafico enterprise-style con watermark
Alessandro OS - History

v0.1 — v0.9 • Alessandro OS (Deprecato)

Evoluzione completa del progetto Alessandro OS, dal semplice bootloader fino al sistema multi-OS con Boot Selector avanzato.

Stato Attuale (v0.9)

• Boot Selector dettagliato con 4 sistemi operativi
• Alessandro OS Personal Edition v0.8
• Alexsander OS Business Edition v0.0.5
• NatalizioOS Server Textual v0.2.1.3.3
• NatalizioOS Server Graphical v0.2.1.3.4
• Supporto multi-disco in QEMU

Changelog Principale

VersioneNovità Principali
v0.9Boot Selector con 4 OS, NatalizioOS Textual + Graphical, multi-disco QEMU
v0.8Boot Selector base + Business Edition mockup
v0.7Shell interattiva completa (Personal Edition)
v0.6Filesystem AlessandroFS
v0.5Heap allocator kmalloc
v0.4IDT, interrupt, timer e tastiera PS/2
v0.3Kernel in C + driver VGA
v0.2Protected Mode 32-bit + GDT
v0.1Bootloader Assembly 512 byte

Architettura v0.9

  • Boot Selector: Scelta tra 4 sistemi operativi all'avvio
  • Personal Edition: Shell avanzata, filesystem, heap
  • Business Edition: Mockup enterprise con watermark
  • NatalizioOS: Versioni Textual e Graphical
Alessandro OS - History

v0.1 — v0.10 • Alessandro OS (Deprecato)

Evoluzione completa del progetto Alessandro OS, dal bootloader singolo fino al sistema multi-OS con Boot Selector avanzato.

Stato Attuale (v0.10)

• Boot Selector rinominato **"BOOT SELECTOR SYSTEM OPERATING V0.1"**
• 4 sistemi operativi compilati da sorgente in un'unica immagine
• Alessandro OS Personal Edition v0.8
• Alexsander OS Business Edition v0.0.5.1
• NatalizioOS Server Textual v0.2.1.3.4
• NatalizioOS Server Graphical v0.2.1.3.5
• Makefile unificato per compilare tutto

Changelog Principale

VersioneNovità Principali
v0.10Fix generali su tutti gli OS, Boot Selector rinominato, compilazione unificata
v0.9Boot Selector con 4 OS (Personal, Business, NatalizioOS Textual + Graphical)
v0.8Boot Selector base + Business Edition mockup
v0.7Shell interattiva completa
v0.6Filesystem AlessandroFS
v0.5Heap allocator kmalloc/kfree
v0.4IDT, interrupt, timer e tastiera
v0.3Kernel in C
v0.2Protected Mode 32-bit + GDT
v0.1Bootloader Assembly 512 byte

Architettura v0.10

  • Boot Selector: Menu unificato per scegliere tra 4 sistemi operativi
  • Personal Edition: Shell avanzata, filesystem, heap
  • Business Edition: Mockup enterprise con watermark
  • NatalizioOS: Versioni Textual e Graphical server
Alessandro OS - History

v0.1 — v0.11 • Alessandro OS (Deprecato)

Progetto Alessandro OS — Evoluzione dal semplice bootloader fino a un ambiente multi-sistema con Boot Selector avanzato.

Stato Attuale (v0.11)

• Boot Selector "BOOT SELECTOR SYSTEM OPERATING V0.2"
• 4 sistemi operativi compilati da sorgente in un'unica immagine
• Alessandro OS Personal Edition v0.9 (shell avanzata con nuovi comandi)
• Alexsander OS Business Edition v0.0.5.2
• NatalizioOS Server Textual v0.2.1.3.6
• NatalizioOS Server Graphical v0.2.1.3.7 (shell grafica espansa a 80+ comandi)

Changelog Principale

VersioneNovità Principali
v0.11Fix generali, espansione comandi NatalizioOS Graphical, nuovi comandi Personal Edition (time, date, mkdir, mv, cp, color...)
v0.10Fix generali su tutti gli OS, Boot Selector rinominato
v0.9Boot Selector con 4 OS + NatalizioOS Textual e Graphical
v0.8Boot Selector base + Business Edition mockup
v0.7Shell interattiva completa
v0.6Filesystem AlessandroFS
v0.5Heap allocator kmalloc/kfree
v0.4IDT, interrupt, timer e tastiera
v0.3Kernel in C
v0.2Protected Mode 32-bit + GDT
v0.1Bootloader Assembly 512 byte

Architettura del Progetto

  • Boot Selector: Menu unificato per scegliere tra 4 sistemi operativi
  • Personal Edition: Shell avanzata, filesystem, heap, comandi estesi
  • Business Edition: Mockup enterprise con watermark e shell dedicata
  • NatalizioOS: Versioni Textual e Graphical server con shell condivisa