view cart | home | contact us | search

[NWV_416] OS Execution Environment: An Introductory Workshop *NEW*

Printer-friendly PDF version

Increasingly, telecom equipment is controlled by software running in an operating system on a dedicated microprocessor. Technical support personnel must be familiar with basic embedded software concepts in order to debug problems within a carrier network. This class begins with foundations of how programs execute in a multi program operating system. Specific examples of program execution are given with the Linux operating system. The class also advances to cover concepts of software virtualization. Students will perform hands-on exercises within Linux as the host and guest operating system. They will create, debug and delete application programs, virtual machines, and Docker containers. There will be detailed discussions of program compilation, linking, and interpretation as well as concurrency and interrupt latency issues. The goal is to instill in the student a set of experiences and intuitions which will help provide software technical support in the carrier context.

Learning Objectives

After completing this course, the student will be able to:
• Compare software compilation and interpretation processes
• List steps in software lifecycle: coding, compilation, loading, execution
• List steps and potential problems in interrupt handling
• Describe potential problems with memory management
• Differentiate between heavy weight (VMWare) and light weight (container) virtualization
• Debug software problems with network packet capture tools
• Isolate problem source to hardware, host operating system, or guest operating system

Intended Audience

This course is for technical support professionals who need to gain familiarity with the embedded software execution and operating system concepts as well as hypervisors, and virtual machines. No programming experience is required.

Suggested Prerequisites

• Exploring the Linux Command Line (Instructor Led)
• Exploring OpenStack Workshop (Instructor Led)

Course Length

3 days

Course Outlines / Knowledge Knuggets

1. “Hello World”, a Single Program
1.1. Compile or interpret
1.2. Loading and execution
1.3. Hardware sockets, cores, registers
1.4. Pointers and memory management
1.5. Source, library, package management
1.6. Interrupts and Async programming
Exercise or Demo: Students debug C and Python program errors

2. “Hello World” in a Multi Program World
2.1. Operating system initialization
2.2. Kernels and schedulers
2.3. Concurrency and semaphores
2.4. Logical and physical addresses
2.5. Desktop vs. realtime software
Exercise: Students debug a critical region locking problem.

3. “Hello World” in the Network
3.1. Sockets – network and domain
3.2. Clients and servers
3.3. Network and device addressing
3.4. Remote procedure calls (RPCs)
3.5. TCP/UDP and ports
3.6. IP tables, routes, firewalls
Exercise: Students add/remove IP table rules

4. “Hello World” in a Physical World
4.1. Abstraction and device independence
4.2. Drivers and device model
4.3. Path from application to device
4.4. DMA and CPU offloading
Exercise: Students debug network connectivity with ping/Wireshark

5. “Hello World” in a Broken World
5.1. Debug philosophy and techniques
5.2. Well known software bugs
5.3. Debug console and logs
5.4. Monitoring tools Elk Stack and Prometheus
Exercise: Students search logs with tail –f

6. “Hello World” in Virtual Worlds
6.1. Virtualization and NFV
6.2. VMware and KVM
6.3. Path from guest application to hardware
6.4. Optimizations for virtualization
6.5. Virtualization issues and concerns
6.6. VM VS container virtualization
Exercise: Students create Virtual Machines with KVM

------------------------------------
WHY CUSTOMERS LOVE OUR ELEARNING:

- Self-paced, animated, and interactive

- $150/each course for 6 month license

- Immediate online access upon purchase

- Flexible way to take training at any hour

- Online training transcript available

- Electronic certificates at completion


- Full list of courses at
  www.awardsolutions.com/elearning.pdf

CONTACT US

For any additional questions,
please contact Mr. Rod Marckese
at +1-972-664-0727 x246 or
public.training@awardsolutions.com

Award Solutions, Inc.    2100 Lakeside Blvd., Suite 300, Richardson, TX    Contact Us 
© 2016 Award Solutions, Inc. All rights reserved.