Embedded software is written to control the functionality of embedded systems as desired in a particular application. Unlike application software, embedded software has fixed hardware requirements and capabilities wherein addition of outside hardware or software is strictly controlled. Embedded software is bounded by memory and time constraints and sometimes maybe interchangeably used with firmware.
Firmware in electronic systems means the combination of memory, program code and data. The firmware contained in devices such as computers and computer peripherals, mobile phones, digital cameras and embedded systems such as traffic lights, consumer appliances etc provides the control program for the device. Non-volatile memory devices such as ROM, EPROM or Flash Memory generally holds firmware.
We have successfully worked on an array of embedded softwares and firmwares as listed below :
- Firmware development platforms — [ARM, x86, MIPS, PowerPC, DSPs, various microcontroller families]
- Real-time/Embedded OS platforms — [QNX, VxWorks, RTLinux, eCos, LynxOS, FreeRTOS, OSEK,Symbian, Windows cE/Mobile, Embedded Linux,Android, BREW, IphoneOS, BlackberryOS]
- Multimedia Codecs & Containers — [MP3, WMA, Vorbis, Speex, AMR, AC3, RealAudio,MPEG2, MPEG4/H.264, Motion JPEG2000, WMV, RealVideo,JPEG, PNG, JPEG2000, GIF, BMP,AVI, FLV, MP4, QuickTime, RealMedia, WAV]
- Wireless & Wireline protocols — [LTE, WiMax, GSM, GPRS, GPS, 3G, WiFi, EnOcean, RFID, UWB, Bluetooth, Zigbee,10/100/1000/10G Ethernet, SONET/SDH]
- Storage protocols — [Serial ATA, SAS, SCSI, RAID, ESCON, Fibre channel, iSCSI, Infiniband, Hypertransport, RapidIO, NFS/CIFS over GbE, RDMA]
- Network protocols — [TCP/IP, UDP, RTP, RTSP, Gstreamer]
- Board support packages — [Bootloaders: U-Boot/RedBoot/EBOOT, Device drivers, Protocol stacks, System interfaces, Memory, File system, Diagnostics]
- Application software development — [Specification development,GUI, Open source, custom development,Testing,Software porting, Software integration,Software re-engineering,Software testing,Platforms: Flash/Java/.Net/Ajax/Web frameworks]