Length: 2 Days
Embedded Linux System Overview Training
Embedded systems can be found in more and more devices. Linux as a free operating system is also becoming more and more important in embedded applications.
The Linux kernel is a small and special code which is the core component of Linux OS and is an intermediary layer between the hardware and the software. Its purpose is to pass application requests to the hardware and to act as a low-level driver to address the devices and components of the system. It is fully developed in C language and file system architecture. Moreover, it has different blocks which manage various operations.
The Linux kernel can run on many different computer architectures, most of which are quite popular in the embedded world. All of the base packages allowing the OS to perform the basic tasks are suitable for cross-compilation, therefore Linux can be as pervasive as microcontrollers and Systems on Chip (SoCs).
Linux is the operating system of choice for many embedded systems such as media players, tablets, smartphones and PDAs. Linux is preferred due to its low cost, ease of customization and the fact that it has already been ported to custom-purpose microprocessors.
Google’s Android, for example, is based on a modified Linux kernel and released under an open source license. This allows manufacturers to modify it to suit their particular hardware. Maemo, BusyBox, Mobilinux and Debian are other examples of embedded Linux open-source operating systems.
The advantages of embedded Linux over proprietary embedded operating systems include multiple suppliers for software, development and support. Also, there’re are no royalties or licensing fees.
Additionally, the embedded Linux system is considered a stable kernel with the ability to read, modify and redistribute the source code.
The technical disadvantages include a comparatively large memory footprint (kernel and root filesystem), complexities of user mode and kernel mode memory access and a complex device drivers framework.
The future of embedded Linux systems would appear to be on the upswing. Embedded Linux consistently ranks among the top operating systems used in embedded system design. And, with the mushrooming of the Internet of Things (IoT) massive connectivity, the ability of Linux to serve multiple roles should prove vital in supporting diverse needs at each layer of the IoT application hierarchy.
Embedded Linux System Overview Training Course by Tonex
Embedded Linux System Overview training course gives you a solid understanding of Linux kernel and libraries and utilities for embedded applications. Learn about tools and techniques to develop an embedded Linux device. The use of Linux in embedded products has increased in recent years, with Linux now being used in many consumer electronic devices, medical devices, wearable gadgets and military applications.
Upon completion of the course the attendees will have a good understanding of:
- Explore the Linux kernel architecture
- Increase your understanding of real-time and embedded systems
- Gain essential knowledge of Linux embedded systems design and programming
- Gain practical knowledge of how to adapt the kernel to a custom embedded application
- Understand the concepts of task scheduling and synchronization, resource management, inter-task communications, and interrupt handlers.
- Learn how to populate libraries and application user-spaces for embedded systems
- Learn how to program a Linux embedded device
- Learn about HAL (Hardware Abstraction Layer)
- Gain practical knowledge of how to write MIPI-based embedded Linux device drivers for camera (CSI-2) and display (DSI)
Introduction to Embedded and Real-Time Systems
- Overview of Embedded systems market
- Introduction to Linux Kernel Architecture
- Introduction to Kernel Programming
- Kernel Configuration, Compilation and Booting
- Introduction to Embedded Linux environment
- Why Use Embedded Linux?
- Using Linux for your embedded system
- Real-Time Extensions
- Overview of Embedded Android
Embedded Linux Platform Specification
- Small footprint Embedded Linux versions
- Software and hardware requirements
- A minimal Embedded Linux system needs
- Embedded Linux system essential elements
- Real-time Embedded Linux applications
- Hardware platform options
- Example Multicomponent System
- Design and Implementation Methodology
Anatomy of an Embedded Linux System
- Boot Loader
- Root File System
- Your Application
- Configuring the Software Environment
- Target Emulation and Virtual Machines
- Why Target Emulation?
- Starting Your Project
- Getting Linux for Your Board
- Booting the Board
- Configuring the Application Development Environment
Building Embedded Linux Systems
- Real Life and Embedded Linux Systems
- Basic Concepts
- Target Hardware
- Development Environment
- System Design Hardware Support
- Processor Architectures
- Development Tools
- Kernel Considerations
- Root Filesystem Content
- Storage Device Manipulation
- Root Filesystem
- Networking Services
- Debugging Tools
- Configuration procedures
- Target Root Filesystem
- Monitoring and Debugging
- Writing MIPI-based Device Drivers
- CSI-2 and DSI device drivers for embedded Linux
- Mentor Embedded Linux Development Platform Overview
- Set-up and configure development environments to build Linux-based devices
Embedded Linux System Overview Training