This advanced level course provides deeper knowledge on OSE. Unique concepts for OSE, like Board Support Package, BIOS (OSE style), TCP/IP networking support, Device Drivers (static and dynamic) and Memory Management are discussed in depth. A walk-through of the OSE architecture is included. Configuration of target system is studied, using OSE Reference System. Important advanced system calls are presented in practise and in theory.
The course includes extensive theoretical discussions on OSE but also includes a workshop that will focus on practical exercises. A target based on the powerpc architecture is available for the exercises. For some exercises the soft kernel is used.
The exercises address issues on how to use OSE components, how to configure an OSE real-time operating system, building applications utilizing different OSE components, loading applications to target, starting and debugging OSE both as a stand alone kernel and as a networked application, using one of the TCP/IP stacks for OSE. Tools such as gcc, tftp, and gdb are used.
The workshop includes the following exercises:
- Devising a device driver client
- Building a memory management application that verifies the usage of the Memory Management Unit and the memory protection models of OSE
- Adding and extending a BIOS module
- Advanced system calls applications
- Building networking applications using the standard BSD socket programming model as well as the OSE specific networking programming
- Testing the concept of load modules
- Using the File System Server
The OSE Real Time Kernel combines rich functionality with high performance and true real time behavior. It is a fully pre-emptive kernel, optimized to provide high rates of data throughput, yet compact enough for use in most embedded systems. It also includes comprehensive error handling and powerful source and application level debug features.
To deepen the knowledge on how OSE interworks with device drivers and how it traps into the supervisor mode using the BSP and BIOS concepts. Another key area is memory management, including how the memory manager works and can be deployed. The course facilitates a deeper understanding of the OSE kernel and the memory management. It also provides insight in the interworking between different components in the OSE system. The application development model using load modules is tested and discussed. Learning how to use the standard BSD socket programming model and the OSE specific networking programming, using one of the TCP/IP stacks for OSE, is included. It also teaches how to use and configure a target and some products within the OSE family. The aim is also to give an understanding of how to use OSE as a real time operating system as well as showing how to make effective use of the kernel for the target EP852.
Who should attend?
Project leaders, System designers, System programmers, Application programmers, Real-time programmers and System testers.
OSE basics and C-programming. It is strongly recommended that the student participated in an "OSE Basics" course or attained the same level of knowledge.
The course documentation is written in-house in English. The course is normally given in the English language.