Linux |
Installing, programming and writing drivers
Industrial applications are more and more often performed using an embedded version of Linux.
In addition, the very specific environment in which run these systems sometimes make it necessary to adapt the Linux installation to the hardware environment.
Ac6-training trainings not only teach you how to build applications on embedded Linux, but also how to adapt the operating system to your hardware or environment when the need arises.
You can see detailed course descriptions of the various trainings by using the above navigation bar. You can also click on course identifiers in the following course briefs hereafter.
Main Courses
Installing Linux on an embedded system is a common yet often difficult task. Many Open Source tools are supposed to make things easier, but must be properly controlled to obtain satisfactory results.
This training presents you the most common of these tools (crosstool-NG, buildroot, OpenEmbedded, Yocto, System Workbench for Linux ...) and how to use them.
The problems due to porting the u-boot bootloader and implementing a Linux BSP are also discussed as well as a porting methodology.
Installing Linux on an embedded system is a common yet often difficult task. Ac6 System Workbench was designedis to make things easier and to be easily extended.
This training presents you the architecture and needs of an Embedded Linux platform and explains how to build it using Sysetm Workbench for Linux.
The problems due to porting the u-boot bootloader and implementing a Linux BSP are also discussed as well as a porting methodology.
Installing Linux on an embedded system is a common yet often difficult task. The Yocto project is meant to make things easier, but must be properly controlled to obtain satisfactory results.
This training presents you the architecture and needs of an Embedded Linux platform and explains how to build it using Yocto.
The problems due to porting the u-boot bootloader and implementing a Linux BSP are also discussed as well as a porting methodology.
This course covers the various techniques needed to write Linux (2.6 and 3.x) drivers, bus management (PCI. ..), hot-plug and auto-configuration of devices as well as the specific problems due to multi-core and advanced processors.
This course presents the various solutions for a real-time Linux and the tools to measure real-time performances
This course delves into the concepts of Linux drivers interaction with power management features of the Linux kernel.
This course details the Linux driver model, the USB hotplug and power management architecture to write USB host (client) drivers as well as gadget drivers.
This course covers the installation and use of Qt to make embedded GUIs
Installing Linux on an embedded system is a common yet often difficult task. The Yocto project is meant to make things easier, but must be properly controlled to obtain satisfactory results.
This training presents you the architecture of Yocto and how to parameterize it to fit your needs.
This course expects you to already know how to build a Linux platform using Yocto (see our Y1 - Yocto Project Development course)
This course is the combination of the Y1 - Yocto Project Development course and Y2 - Yocto Project Expert course; it is intended for engineers that need to fully understand the Yocto build environment and be able to tailor it to their needs.
Additional Courses
Installing Android on a new platform is a complex process; you need to port first the Linux kernel then install the Android platform. Even if using an existing Android Open Source Platform, the process to create an usable image is quite complex. This course will explain all the required steps, from building the kernel and the platform from source code to tailoring the boot process and creating test applications.
Android was designed to allow quickly creating powerful and ergonomic interfaces for embedded, resource constrained, systems; however, due to th elimitations of the underlying hardware, Android applications are totally different from standard applications. This course will explain how they are structured and how Android allows to combine portability and performance in applications.
Installing Android on a new platform is a complex process requiring a deep understanding of the internals of the Android frameworks and the Hardware Abstraction Layer.
This course explains how the frameworks are structured and can be adapted to a platform on which a basic Android port already exist.
New industrial systems need sophisticated and ergonomic user interfaces. Building these with traditional GUI toolkits may be cumbersome and difficult. Android may simplify these tasks, allowing industrial application developers to benefit from the tools developped for consumer electronics devices.
Real-time and embedded code, especially targetting multicore processors, cannot be effectively tested; it must be validated before coding. This training help you master mutitask and real-time programming of multi-core processors, understanding how to effectively solve problems using the primitives provided by the underlying Operating System.
Installing Linux on an embedded system is a common yet often difficult task. Ac6 System Workbench was designedis to make things easier and to be easily extended.
This training presents you the architecture of Ac6 System Workbench and how to parameterize it to fit your needs.