Embedded Linux Courses
Implementing an embedded system in Linux for the first time presents difficult challenges for developers, even those who are already familiar with the more traditional PC-hosted Linux distributions. For developers entirely new to Linux, there are additional learning hurdles to jump.
In fact, embedded and real time Linux systems development requires a far deeper knowledge of Linux and its associated tools than is needed by mainstream IT developers. It is often necessary to work at the device driver and kernel level, and, usually, it is necessary to jettison non-essential kernel features to minimise the memory footprint.
Some applications may make it necessary to create and boot from a flash-memory-based file system, or over the network. When working with custom boards it will, typically, be necessary to create a custom boot loader, or build a board support package, or write some pieces of the application in assembler. Developers may need to become proficient in developing concurrent programming and inter-process communication mechanisms and effective use of multi-threading.
The available of low cost embedded Linux platforms such as, for example, the RaspberryPi and the BeagleBone Black have prompted many companies to use these as a starting point for various projects and products. What were originally boards designed for teaching and experimentation have become end components in their own right. There are also companies that specialise in manufacturing boards precisely to serve as building blocks for developing industrial and medical applications, such as for example, the various ARM processor based embedded modules developed by Toradex.
To meet more specific training needs, FTT can provide customised applied programming courses including covering in greater detail topics such as USB device driver programming, CAN bus programming, and graphical device interface programming. Custom training can be cost-effective for groups as small as four. Please call us to discuss your requirements.