2013-04-30 21 views
11

Sto facendo un progetto in linguaggio C eseguito su un target con sistema operativo vxWorks. vorrei correre il mio codice su PC anche per due motivi:Simulazione del target su PC

  1. La HW della destinazione non è ancora disponibile, e voglio iniziare a testare il mio SW.
  2. Anche quando il target sarà pronto, sarà più facile per me eseguire test e simulazioni su un PC.

C'è qualche modo interessante per farlo?

Grazie.

+3

Normalmente è possibile utilizzare il target del simulatore (vxsim) per questo. Inoltre, se il tuo target è compatibile con x86, puoi avviare in rete il tuo PC su vxworks ma una possibilità è che il kernel non abbia la corretta configurazione/driver per funzionare correttamente sul tuo PC. Sono stato in grado di eseguire anche un kernel vxworks all'interno della macchina VirtualBox. Ma comunque, vxsim è un modo consigliato di andare. – Archie

risposta

6

sono disponibili tre opzioni:

  1. Utilizzare i VxWorks Simulator (vxsim) - è parte del Workbench e si può accedere come un vero e proprio bersaglio
    • Pro:
      • Facile da usare
      • integrato nel banco da lavoro
      • funzionalità di debug e un buon controllo del sistema
      • non ha bisogno di ulteriori hardware
      • Documentazione (Controllare la guida dell'utente Wind River VxWorks Simulator)
    • Contro:
      • Non il vero e proprio sistema di destinazione (Ma questo è un condizionatore per tutti i punti qui)
  2. Utilizzare un macchina x86 e scarponi es.tramite ftp
    • Pro:
      • È possibile verificare il boot via rete e la rete
    • Contro:
      • Il sistema può mancanza di driver
      • possibile, si modificare il kernel
      • debug non è buono come vxsim
      • La differenza per il vostro obiettivo può essere davvero grande
  3. Utilizzare un virtuale Maschine
    • Pro:
      • Gira su stesso PC - senza ulteriori hardware necessario
      • possibile testare diversi bootloader
    • Contro:
      • Non è possibile simulare la CPU di destinazione, ecc
      • Una VM non è il modo migliore per test VxWorks

Come Archie, ti consiglio il VxWorks Simulator.

+0

Ehi, Ho usato le prime opzioni. Poiché ho un RTP e una libreria condivisa per testare su VxWorks Simulator, ho avuto qualche problema a eseguirlo su vxsim. Qual è il problema è un buon cheat sheet in workbench: Help-> Cheat sheet-> Wind River Workbench-> Imposta un RTP VxWorks con una libreria condivisa. L'unica cosa che dovevo fare è di placcare il mio * .so e libc.so.1 nella stessa posizione con RTP.vxe. – Alex

1

Un terzo modo è di astrarre HW e OS in un livello separato nell'architettura dell'applicazione e fornire sia una versione per PC che VxWorks di questo livello.

questo è piuttosto costosa, naturalmente, ma avrà altri vantaggi, vale a dire l'isolamento dal fornitore di instabilità (come quando il supporto OSP è stato fermato anni fa ...) Si potrebbe anche spingere in direzione di una bella, architettura a livelli .