# SYSLINUX

SYSLINUX è una suite di programmi boot loader da MBR per PC IBM, per avviare i computer con kernel Linux.
È stata creata da Hans Peter Anvin, ed è composta da diversi programmi separati, il più noto dei quali è ISOLINUX.

## Componenti

I programmi che la compongono sono:
* il SYSLINUX vero e proprio, utilizzato per l'avvio dischi con file system FAT (come i floppy disk e drive USB).
* ISOLINUX, utilizzato per avviare i file systems CD-ROM ISO 9660.
* ISOHYBRID (a partire dalla version 7.32 di ISOLINUX) utilizzato per rendere avviabili files immagine .iso da supporti rimovibili USB (es. chiave USB) di distribuzioni gnu/linux
* PXELINUX, utilizzato per l'avvio da un server di rete utilizzando il Preboot Execution Environment (abbrev. PXE)
* EXTLINUX, utilizzato per il boot da filesystem Linux di tipo ext2/ext3/ext4 o Btrfs.
* MEMDISK, utilizzato per avviare i sistemi operativi più vecchi, come MS-DOS dai predetti supporti. La suite prevede anche la presenza di due menù di sistema separati e un ambiente di sviluppo per i moduli aggiuntivi.

## Caratteristiche
### SYSLINUX

SYSLINUX non viene normalmente utilizzato per l'avvio completo installazioni di Linux dal momento che esso non è normalmente installato su file system FAT. Invece, è spesso usato per i dischi floppy di avvio o di soccorso, dischi live USB, o altri sistemi di avvio. ISOLINUX viene generalmente utilizzato sulle distribuzioni Linux che prevedono l'avvio del sistema operativo in sessione Live CD e CD di installazione avviabili.
Per quanto riguarda l'avvio da CD-ROM, l'estensione El Torito consente di avviare in due modalità differenti:
* Modalità di emulazione Floppy: le informazioni di avvio vengono memorizzate in un file immagine di un disco floppy formattato FAT che viene poi caricato dal CD e si comporta come un disco floppy virtuale. Questa modalità è quella propriamente utilizza da SYSLINUX.
* Nessuna modalità di emulazione: le informazioni di avvio sono memorizzate direttamente sul CD (non in un'immagine floppy). Questa modalità utilizza ISOLINUX.
La scelta tra queste due modalità è utile, dal momento che ISOLINUX è vulnerabile ad un bug del BIOS, per questo motivo, è utile per poter avviare con SYSLINUX. Questo colpisce soprattutto i computer costruiti prima del 1999 e, di fatto, per i computer moderni non la modalità di emulazione è in genere il metodo più affidabile.

### ISOLINUX

ISOLINUX viene utilizzato per la creazione di immagini per l'utilizzo di dischi live. Oggi è molto diffusa la creazione di dischi live su supporto USB, ciò ha consentito inoltre la creazione e la diffusione di distribuzioni GNU/Linux come Slax che consentono agli utenti di provare Linux con completa interattività e modifiche permanenti, senza dover installare sul proprio disco rigido. Isolinux nelle versioni più recenti consente la creazione delle cosiddette "immagini ISO ibride", che permette di utilizzare sia l'estensione El Torito e i record di avvio MBR HDD in un'immagine ISO, facendo sì che gli utenti possano utilizzare una singola immagine caricandola e su un CD/DVD, e su una drive USB.

### PXELINUX

PXELINUX viene utilizzato in combinazione con una ROM compatibile con PXE su una scheda di rete. L'ambiente PXE utilizza DHCP o BOOTP per abilitare il networking TCP/IP basico, poi scarica un programma di bootstrap via TFTP. Questo programma di bootstrap carica e configura un kernel secondo le direttive che sono anche scaricate dal server TFTP. In genere, PXELINUX viene utilizzato per le installazioni Linux da un server di rete centrale o per l'avvio workstation diskless.

### EXTLINUX

EXTTLINUX viene in genere utilizzato come un general-purpose bootloader, simile a LILO o GRUB. Dalla versione 4 di Syslinux, esso è stato incorporato in SYSLINUX.

## Hardware Detection Tool (HDT)

Dalla versione 3.74, Syslinux include anche il programma Hardware Detection Tool (HDT). Esso è un modulo Syslinux com32 che visualizza informazioni di basso livello per qualsiasi sistema x86 compatibile. Esso fornisce sia una riga di comando e di un semi-grafico modalità di menu per la navigazione. Esso è disponibile come file com32, come ISO avviabile, e come disco floppy d'avvio da 2.88 Mb.