This course is created to target engineers who aim to develop embedded systems based on the Linux operating system.
The Embedded Linux course gives a detailed overview of the internal structure and functionalities of the Linux operating system, emphasizing its usage in embedded systems, such as cars, cellphones, TVs, etc.
Through theory, practical labs, and hands-on examples, the course makes the participant familiar with:
1. The architecture of an embedded Linux system,
2. Setting up and configuring the cross-compiling environment for target embedded system,
3. Taking advantage of the open-source components for reducing development costs when implementing system features,
4. Basics of how to modify and integrate existing device drivers both with the kernel and the user-space applications,
5. How to develop and debug user-space applications in an embedded environment.
PC (recommended configuration)
8GB of RAM or more
At least Intel i7 CPU or equivalent
(Preferable) Available ethernet connection accepting Raspberry Pi on the same LAN used to connect the PC
Could be company OR
(Alternative) the available network adapter on PC with Firewall turned off for this connection (in case of Windows OS to avoid rejecting a connection to Raspberry Pi)
Note: Additional adapter (WiFi or wired) is needed for Internet connection in this case
Raspberry Pi 2b+ Toolkit (including USB2Serial and ETH cable)
CANAKIT Toolkit with accessories provided by NIT
(Preferable) Windows 10 or later
Virtualization feature enabled in BIOS
Latest Oracle VirtualBox (at least 6.1)
Ubuntu 21.04 guest OS for Virtual Machine is provided by NIT
(Alternative) Linux Ubuntu 21.04 (bare metal)
Course Typically Offered: The course gives a detailed overview of the internal structure and functionalities of the Linux operating system with emphasis on its usage in embedded systems, such as cars, cellphones, TVs, etc., and also the fundamentals for starting a project using embedded Linux, from system building to application development and basic knowledge for Linux device driver development
Prerequisites: Students should have basic programming knowledge in the C language. It is also recommended that the Advanced C course (NIT-CE-02) is already taken.
Next Step: Advanced Linux, QNX, Real-Time Programming and Operating Systems
Course Number: NIT-CE-04
Duration: 2.00 units (~20 live teaching hours, ~40 hours of individual practice and preparation work)
Offered next: Contact us!
Class type: Live Online Intensive (according to the schedule published at the beginning of the course, approximately 3x2 live classes per week)
Instructor: doc. dr Vladimir Marinković; dr Branislav Kordić
How to join: Google Meet (link will be available upon enrollment ), NIT Canvas
How to apply: Please apply by filling up the form here and we will get in touch with you as soon as possible.
Customized schedule for your company or team (call for price)
Class type: Live Online (Regular or Intensive), Live Bootcamp (Company premises)
Instructor: To be announced
For groups and organizations: please contact us directly to arrange this course according to your scheduling, needs and participant lists - via the contact form here.