This course targets engineers who aim to develop either embedded systems or traditional PC platforms based on the Linux operating system, and specifically those who tend to develop or improve device drivers in the Linux kernel.
- Linux introduction
- Linux Kernel overview
- Compiling and booting Linux
- Building Linux-based embedded system
- Driver Development and debugging
- Linux device model (Platform devices; Device Tree; Interface in user space, I2C API; Pin-multiplexing;)
- Kernel framework (The principle of kernel frameworks, The input subsystem)
Requirements
Hardware: A working computer (recommended configuration 8GB RAM or more, at least Intel i7 CPU or equivalent), Raspberry Pi 2b+ Toolkit including Nintendo Nunchuck joystick.
Software: Windows 10 or later, Virtualization feature enabled in BIOS, Latest Oracle VirtualBox (at least 6.1), Virgine installation
Prior knowledge: Students should have a basic knowledge of the C programming language. The recommendation is that the Embedded Linux course is already taken.