Home
About Us
Why Choose Us
Testimonials
Courses
Upcoming Training
Services
Contact
More
Login/Register
About Us
Why Choose Us
Testimonials
Courses
Upcoming Training
Services
Contact
Login
Sign up!
+60 111 667 4727
info@timmins-consulting.com
Become an Instructor
×
Login to your account
Don't have an account?
Sign up!
Remember username
Lost password?
Log in
Operating System Essentials
Home
Courses
Embedded Linux Development
OSE
Skip to main content
Course Content
Course start date: 5/03/25
Category: Embedded Linux Development
Section outline
Select section Day 1: Introduction to Operating Systems & Process Management (7 hours)
Day 1: Introduction to Operating Systems & Process Management (7 hours)
Collapse all
Expand all
Session 1: Introduction to Operating Systems
What is an OS?
Why do we need an OS?
Core tasks performed by an OS
Types of OS & Selection Criteria
Session 2: Process Management
Process Overview & States
Process Control Block (PCB)
Process Creation & Operations
Waiting for Process Termination
Zombie & Orphan Processes
Session 3: Hands-on Lab – Creating and Managing Processes in Linux
Session 4: Case Study & Discussion (3:00 PM – 4:30 PM)
Select section Day 2: Task Management & Context Switching (7 hours)
Day 2: Task Management & Context Switching (7 hours)
Session 5: Task Management
Task Lifecycle
Creating & Deleting Tasks
Idle Tasks & Hooks
Analyzing CPU Utilization (MIPS) for a Task
Session 6: Context Switching
Task Context & Context Switching
Flow of Context Switching Between Tasks & Interrupts
Session 7: Hands-on Lab – Implementing Task Scheduling & Context Switching
Session 8: Debugging & Performance Optimization
Select section Day 3: Scheduling Policies & Memory Management (7 hours)
Day 3: Scheduling Policies & Memory Management (7 hours)
Session 9: Scheduler & Scheduling Policies
Preemptive & Non-Preemptive Scheduling
Round-Robin & Priority-Based Scheduling
Deadline Monotonic & Rate Monotonic Scheduling
Session 10: Memory Management
Memory Allocation & Management in Linux & FreeRTOS
Memory Layout of a Program: Code, Data, Stack, Heap Segments
Cache Management & Performance Considerations
Session 11: Hands-on Lab – Memory Analysis in Linux & FreeRTOS
Session 12: Case Study – Optimizing Memory for Real-World Applications
Select section Day 4: Concurrency Management & Inter-task Communication (7 hours)
Day 4: Concurrency Management & Inter-task Communication (7 hours)
Session 13: Concurrency Management
Atomic Operations & Synchronization Techniques
Mutexes & Semaphores
Deadlocks, Livelocks, and Starvation
Session 14: Inter-task Communication (ITC)
Events, Mailboxes, Queues, and Task Notifications
Waiting & Waking up Tasks Efficiently
Session 15: Hands-on Lab – Implementing Concurrency Control & ITC
Session 16: Debugging Deadlocks & Synchronization Issues
Select section Day 5: Inter-Process Communication & Final Project (7 hours)
Day 5: Inter-Process Communication & Final Project (7 hours)
Session 17: Inter-Process Communication (IPC)
Pipes & FIFOs
Message Queues & Shared Memory
Process Semaphores
Session 18: Choosing the Right IPC Mechanism
Comparison of IPC Techniques for Different Use Cases
Session 19: Hands-on Lab – Implementing IPC in Linux
Session 20: Final Project & Certification
Participants build a multitasking application with IPC & Synchronization
© 2024 Timmins Training Consulting SDN BHD. All rights reserved