Using QEMU to Get Started with Embedded LinuxStatus: Available Now
Getting started with embedded Linux can be a daunting task due to the inherent complexity of the Linux kernel; it can also be costly, since generally any sort of driver development and testing requires hardware. QEMU can serve as an alternative to allow engineers to get started with embedded Linux with minimal cost.
In this workshop, Mohammed Billoo will walk through what QEMU is and the different workflows that it enables, with hands-on demonstrations that attendees can follow along. Demonstrations will include setting up QEMU to emulate an ARM-based machine on a x86-based host PC and launching into a terminal, using QEMU to step through the Linux kernel, and developing and testing a simple device driver with device emulation in QEMU.
This workshop has the following prerequisites:
- Install Ubuntu >= 18.04 on your PC (either on bare-metal or as a VM):
- Install qemu-system-arm (sudo apt-get install qemu-system-arm)
- Install your favorite text editor (e.g. nano, vim)
- Clone the buildroot repository on your Ubuntu installation by executing the following from the command line: $> git clone git://git.buildroot.net/buildroot
- Clone the qemu repository on your Ubuntu installation by executing the following from the command line: $> git clone --depth 1 --branch v6.2.0 https://github.com/qemu/qemu.git
- Clone the Linux kernel repository on your Ubuntu installation by executing the following from the command line: $> git clone --depth 1 --branch v5.17 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Using Visual Trace Diagnostics to Evaluate Linux User space and Kernel space ImplementationsStatus: Available Now
Developing performant implementations for Linux-based embedded systems can be difficult, due to the sheer complexity of the Linux kernel and the volume of processes and applications that generally exist on a Linux-based embedded system. For kernel space implementations, such as kernel modules, it is important to leverage the appropriate interfaces to the kernel and pay careful attention to the hardware interface. For user space applications, performance is key to ensure that the application can scale without substantial rework.
Software tracing can be an invaluable tool to ensure that an implementation is performant. It enables a developer to identify any anomalies that may exist while the system is running. While there exist numerous open-source utilities that can provide textual cues towards the performance of the implementation, they are generally not amenable to quickly identify any clear issues, due to the way the human brain operates.
Visual trace diagnostics can significantly reduce the time to identify anomalies in a Linux-based implementation. It leverages software tracing, but presents data in a manner that is easily consumed by the human brain. This results in quickly identifying and rectifying anomalies in an implementation.
Join Mohammed Billoo as he explores the different facets of visual trace diagnostics. His talk will consist of hands-on demonstrations that show the different elements of capturing and analyzing software traces on a Linux-based embedded system, in both user space and kernel space.
Live Q&A - Using Visual Trace Diagnostics to Evaluate Linux User space and Kernel space ImplementationsStatus: Available Now
Live Q&A with Mohammed Billoo for the theatre talk titled Using Visual Trace Diagnostics to Evaluate Linux User space and Kernel space Implementations
Yocto Project Hands-On with ToradexStatus: Available Now
If you don't already have an account on the Embedded Online Conference platform, you can register here and gain free access to this webinar.
It may be difficult for novice to intermediate Linux users and developers to get a fundamental understanding of the "Yocto Project", as it doesn't necessarily follow the same paradigms as traditional software development. Additionally, System on Module (SoM) vendors, such as Toradex, may apply their own customizations to the Yocto Project as part of their Board Support Package (BSP) that may require some additional understanding.
In this webinar, we will take a hands-on look at the Yocto Project and how to get a BSP up and running.
Attendees will learn:
- The paradigm of the Yocto project
- The mindset that an engineer should have when working with a BSP based on Yocto
- The organization and structure of the BSP provided by Toradex.
- Best practices engineers should follow when customizing a vendor-provided BSP to fit their custom hardware
This webinar will focus heavily on demos and examples targeting a Toradex Verdin iMX8M Mini on a Dahlia carrier board.
Live Q&A with Mohammed Billoo - Yocto Project Hands-On with ToradexStatus: Available Now
Live Q&A with Mohammed Billoo about the free webinar titled 'Yocto Project Hands-On with Toradex'
Getting Linux To Run On Your Custom Board (2020)Status: Available Now
The ability of silicon vendors to pack more components and capability into a single silicon die has allowed these System On Chips (SoCs) to support Linux. In turn, developers have been able to quickly migrate their application to be deployed "to the edge" without significant rework. The main objective of this session is to provide embedded systems engineers an overview on the steps necessary to get Linux running on a custom board, issues they may face, and how to debug these issues. This session will provide an introduction to Linux and its value in embedded systems, and how it differs from "traditional" Linux that runs on desktops. This session will also discuss how Linux differs from other embedded software paradigms, such as "bare-metal" and RTOS-based application development.