Difference between revisions of "Networking With Xinu"

From Embedded Xinu
Jump to navigation Jump to search
(New page: Category:Teaching With Xinu Category:Student Built Xinu == Overview == Having students build their own Xinu is one of the potential tracks presented for a professor that is [[T...)
 
Line 4: Line 4:
 
Having students build their own [[Xinu]] is one of the potential tracks presented for a professor that is [[Teaching With Xinu]].
 
Having students build their own [[Xinu]] is one of the potential tracks presented for a professor that is [[Teaching With Xinu]].
  
Students will learn to extend an operating system by adding kernel level and user level applications. Given a functional Embedded Xinu operating system the students will have to understand and manipulate existing operating system code to create additional operating system features. To add more applications to the operating system students will have to understand the interactions between the program in design and the operating system's device and kernel interaction calls. Programming for embedded devices allows students to engage in development on small resource constrained environments. Through extending the existing Embedded Xinu operating system a student learns to use and understand code not written by the student and develops advanced operating system concepts.
+
A networking course incorporating Embedded Xinu can have students build a networking functionality into Embedded Xinu over the period of the course. Courses may vary in starting point; some choosing to use a core Embedded Xinu release and having students build the entire network stack and ethernet driver. While others may choose an Embedded Xinu release with the ethernet driver available so that the students can concentrate on other parts of the network stack. Network stack implementation assignments for students can parallel various networking lectures that traverse the stack over the course of the semester, terminating in the students implementing an application that uses the developed network stack.
  
 
== Course Outcomes ==
 
== Course Outcomes ==

Revision as of 08:19, 12 December 2008

Overview

Having students build their own Xinu is one of the potential tracks presented for a professor that is Teaching With Xinu.

A networking course incorporating Embedded Xinu can have students build a networking functionality into Embedded Xinu over the period of the course. Courses may vary in starting point; some choosing to use a core Embedded Xinu release and having students build the entire network stack and ethernet driver. While others may choose an Embedded Xinu release with the ethernet driver available so that the students can concentrate on other parts of the network stack. Network stack implementation assignments for students can parallel various networking lectures that traverse the stack over the course of the semester, terminating in the students implementing an application that uses the developed network stack.

Course Outcomes

Potential Course Structure

An course using the below course outline or something similar will introduce students to some fundamental and advanced concepts of operating systems combined with the development in a resource constrained environment.

Course Outline
Week Topics Assignments
01 C (basics) and OS Structures, Processes C Basics
02 C (functions, control flow) and Processes
03 C (pointers, arrays, structs) and Threads C Structs and Pointers
04 CPU Scheduling Synchronous Serial Driver
05 CPU Scheduling
06 Process Synchronization Context Switch and Non-Preemptive Scheduling
07 Deadlocks Priority Scheduling and Process Termination
08 Main Memory and Virtual Memory
09 File System Interface Preemption and Synchronization
10 File System Implementation
11 Mass-Storage Structure Delta Queues
12 I/O Systems Heap Memory
13 Protection, Security and Distributed System Structures Asynchronous Device Driver
14 Distributed System Structures
15 Distributed File Systems Ultra-Tiny File System
Books