Simulation environments for development before hardware is available

Can someone suggest some simulation environments for developing embedded Linux systems before a hardware target is available? I haven't selected the target's CPU type. But eventually, the target will have a text display and IP/TCP stacks.

Thanks, Eugene

Reply to
eugyang
Loading thread data ...

hi Eugene, U can go for User mode Linux which is simulation of Linux over a linux machine.visit:

formatting link

U can even go for Vmware which is a simulator aga> Can someone suggest some simulation environments for developing

Reply to
krishna

[snip]

UML won't emulate a different CPU from it's host system, and probably wouldn't give the OP the environment he needs

IIRC, VMWare is limited to certain CPU types (mostly Intel) and certain OS guests The OP could go with the QEMU emulator

formatting link
which emulates about 6 different CPUs (Sparc x 2, Mips, Arm, PowerPC, Intel),

NB, any virtualization solution will offer only a limited emulated hardware platform. If the OP's hardware target (NIC, video, serial, USB, hd controller, etc) differs from the virtualization environment, he will have to accomodate the low level differences when he finally ports to the real device.

HTH

--
Lew
Reply to
Lew Pitcher

Reply to
krishna

In a project I worked on, we started to implement the application on a Linux host and tested it on the host as well. The software architecture was organized in modules with well defined interfaces (which is a good idea for most software projects), and typically there would be one module in user space to deal with every specific hardware (for example, one CAN communication module to take care of the CAN communication, etc.; there was also a kernel driver for it, but typically there is some specific handling of every piece of hardware in user space as well). For the host environment, we replace those hardware-specific modules by simpler modules using the hardware that we had on the host (like replacing the CAN communication by TCP/IP - module that we needed for TCP/IP communication with other units anyway). The important point was that the replacing modules needed to provide the same interface as the real ones. This allowed us to test all the application logic in the host environment, with all it means (easier debugging, etc.). In parallel, when the hardware became available, we ported what was already working on the host to the target.

That required careful project planning but it worked well for us.

Regards,

Alain Mosnier

Reply to
Alain Mosnier

Reply to
yamanc

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.