web server Tux - TUX web server

Il server di TUX web è un web server in-kernel per Linux sotto licenza GNU General Public License (GPL). E 'stato mantenuto da Ingo Molnar .

Esso è attualmente limitata a servire le pagine web statiche e di coordinamento tra le kernelspace moduli , userspace moduli e del server web userspace regolari demoni che forniscono contenuti dinamici. Server web userspace regolare non devono essere alterati in alcun modo per TUX per coordinare con loro. Tuttavia, il codice userspace deve usare una nuova interfaccia basata sulla tux(2)chiamata di sistema.

Le principali differenze tra TUX e altri server web includono:

  • TUX viene eseguito in parte all'interno di una versione personalizzata del kernel Linux e in parte come un demone userspace.
  • Con un grado scheda di rete , Tux consente scatter-gather DMA dalla cache della pagina direttamente alla rete.
  • TUX è in grado di servire le pagine web statiche solo.

Mentre solo essere in grado di servire le pagine web statiche potrebbe essere visto come uno svantaggio significativo, Tux ha un vantaggio significativo: è in grado di servire le pagine più velocemente rispetto ai server web tradizionali. Questo è dovuto in gran parte al suo posto direttamente all'interno del kernel, dove si può migliorare le prestazioni sfruttando strutture non sono disponibili per i server web tradizionali, che corrono al di fuori del kernel. Tuttavia, questo significa anche che TUX non genera contenuti dinamici. Perché è in esecuzione all'interno del kernel, tale contenuto dinamico non possono usufruire di funzioni che il kernel fornisce ai programmi userspace, e creerebbe enormi problemi di sicurezza.

TUX è in grado di lanciare CGI programmi per fornire contenuti dinamici. Tuttavia, CGI soffre di limitazioni significative prestazioni, quindi un sito CGI-pesante otterrebbe alcun vantaggio prestazioni usando TUX. TUX può anche reindirizzare qualsiasi richiesta che non può elaborare a un tradizionale demone server nello spazio utente web, ad esempio Apache o lighttpd . Questo permette TUX per gestire sia contenuti dinamici e gli errori in una, più veloce e più sicuro RFC maniera -correct.

TUX non è mai stata parte integrante del kernel ufficiale di Linux, anche se è stato spedito in alcune distribuzioni, in particolare Red Hat , SuSE e Fedora . E 'servito come un banco di prova (e motivazione) per molte caratteristiche che sono state integrate separatamente. Una componente importante è stato il Native POSIX Thread Library , che, con i parametri di regolazione di destra, consente ai server web in userspace per servire le pagine web ad una velocità molto vicina a quella di un server di kernelspace web come TUX ma senza i suoi limiti. Sviluppatori del kernel di base hanno inoltre sostenuto che avere un demone HTTP all'interno del kernel è pericoloso. Ad esempio, un problema comune come un buffer overflow all'interno TUX potrebbe dare un malintenzionato superutente controllo della macchina. Pertanto, è molto più sicuro di mantenere il demone HTTP interamente all'interno userspace, in cui un bug non necessariamente dare un hacker il controllo totale.

Guarda anche

link esterno