25% off all 2020 Summer Courses
Courses starting June through August 31. Discount applied at checkout. Not applicable toward Legal or Paralegal Studies courses.
Coronavirus (COVID-19) Update
All spring & summer classes are offered in a live-online format. Please check our coronavirus update page for our latest announcements.
Embedded Linux Design and Programming
This course covers the fundamentals of building and installing a custom embedded Linux for an ARM processor platform, and provides hands-on experience for creating cross-platform environments using the GNU tools. Basic concepts for designing, testing, and customizing embedded Linux will be covered, including how the Linux scheduler is implemented, and how to write Linux kernel modules and remotely debug embedded Linux applications.
- An overview of embedded and real-time systems
- Creating a cross-compiler
- Linux device tree usage
- Building and configuring a custom Linux kernel
- Building and debugging Linux application source code using a GDB debugger
- Writing kernel modules and user applications for embedded Linux using C language
- Linux sysfs interface for GPIO
- The basics of POSIX threads and the RTAI (real-time application interface) environment
Note(s): To do projects, students are expected to have access to Debian Linux on their computers. Options include VMware, Virtual Box, LiveCD, disk partition or separate drive. Instructor will not cover the Linux installation topic in class. For students needing help with Linux, "Introduction to Linux" is recommended. Students should come prepared with knowledge of the suggested prerequisites.This course requires students to purchase a board (approx. $50, not included in the tuition) to complete the assignments. Students may either use Raspberry PI 2 Model B or Raspberry PI 3 Model B or a Next Thing Co. C.H.I.P board (details to be discussed in class). Students are expected to use their own Linux-based computers to do the programming project.
Skills Needed: Working knowledge of C programming language and UNIX/Linux operating-system internals. Advanced C programming recommended.
Sections Open for Enrollment:
|Date:||Start Time:||End Time:||Meeting Type:||Location:|
|Wed, 06-24-2020||6:30 p.m.||9:30 p.m.||Live-Online||ONLINE|
|Wed, 07-01-2020||6:30 p.m.||9:30 p.m.||Live-Online||ONLINE|
|Wed, 07-08-2020||6:30 p.m.||9:30 p.m.||Live-Online||ONLINE|
|Wed, 07-15-2020||6:30 p.m.||9:30 p.m.||Live-Online||ONLINE|
|Wed, 07-22-2020||6:30 p.m.||9:30 p.m.||Live-Online||ONLINE|
|Wed, 07-29-2020||6:30 p.m.||9:30 p.m.||Live-Online||ONLINE|
|Wed, 08-05-2020||6:30 p.m.||9:30 p.m.||Live-Online||ONLINE|
|Wed, 08-12-2020||6:30 p.m.||9:30 p.m.||Live-Online||ONLINE|
|Wed, 08-19-2020||6:30 p.m.||9:30 p.m.||Live-Online||ONLINE|
|Wed, 08-26-2020||6:30 p.m.||9:30 p.m.||Live-Online||ONLINE|
Ask us any questions you may have about this course.