2011-08-20 15 views
6

Questa domanda è esercitarsi sugli hacker del kernel Linux: In genere, è meglio testare/giocare con le modifiche/hack del kernel di Linux in un ambiente virtualizzato.Ambiente virtuale per Linux Kernel hacking

  1. Quale ambiente virtuale utilizzi per testare i tuoi hack?
  2. Come si crea un file system minimalista (con utilità di base) da utilizzare con l'ambiente. Se stai usando un filesystem readymade, che cosa stai usando?
  3. euristica utili che fate con il vostro ambiente (come l'installazione di un nuovo kernel, la condivisione di file, ecc?

prega di fornire una procedura passo-passo per impostare l'ambiente, se possibile. Una raccolta di queste informazioni Non sembra disponibile in rete.

Grazie.

+0

QEMU + Configurazione completamente automatizzata di Buildroot: https://github.com/cirosantilli/linux-kernel-module-cheat –

risposta

0

attualmente sto usando un Fedora 14 VM in esecuzione in QEMU/KVM su un host Fedora 14 per il mio sviluppo driver di rete. io uso un abbastanza standard l'installazione con i pacchetti di sviluppo software, oltre a qualsiasi strumento web o di rete (es. wi ricondizionamento) potrebbe essere utile per l'attività. Generalmente installo una console seriale sulla VM e la monitoro con minicom sull'host - questo mi aiuta a catturare le tracce dello stack quando inseguo un bug. Di solito ho il mio ambiente di origine e modifica sulla macchina host con i file su un file system NFS che la VM monta - in questo modo non devo continuare a copiare i file da e verso la VM. Con l'host che esegue la stessa versione del kernel, posso compilare rapidamente il driver sull'host multicore e testarlo nella VM.

1

Diverse persone utilizzano configurazioni diverse, non credo che ci sia una risposta vera.

Attualmente utilizzo VirtualBox come Hypervisor con un file system creato con Buildroot.

Oltre alle altre macchine virtuali (kvm, qemu, vmware, ecc.) Si può anche usare la modalità utente Linux per ottenere lo stesso effetto se l'hacking si trova nei livelli più "logici" del kernel.