Home Consultancy Training Software

 

 

Course Syllabus
LynxOS Programming

This Course is intended for programmers who wish to write POSIX compliant programs which interface with the LynxOS kernel through the system call interface. All the real-time features are covered including a section on Basic Device Driver writing.

 

* Introduction - Facilities and Concepts
* Input and Output - Low level I/O; read, write, open, close
- The standard I/O library
- File status and fcntl
- File locking; advisory and mandatory
- Standard I/P and O/P; getchar and putchar
- Devices and the ioctl call
- Scatter/Gather and asynchronous I/O
- Directories management
* Processes - Description of a process, creation with fork
- Running programs with exec
- Command line arguments and environment variables
- Waiting for processes, altering process attributes/priorities
- Real and effective users
* Posix Threads - Creation, termination, scheduling
- Thread synchronisation, mutexes and condition variables
* Pipes - Description, creation, use for process communication
- Pipes and the standard I/P and O/P, the dup system call, FIFO's
* Signals and Events - Normal usage, catching, use as a communications method
- Managing signals and signal sets
- Interval timers
* Posix IPC - Message Queues, Shared memory, Semaphores
* Device Driver Basics - Principles, construction, dynamic & static linking
- Entry points, support routines, system semaphores

 

Notes

  1. Participants receive copies of all slide material.
  2. A comprehensive list of exercises is provided along with worked solutions.
  3. The Course is regularly updated to include new material.
  4. Emphasis on different aspects will change according to the participants interests.
  5. The Course is applicable to all versions of LynxOS.
  6. Since some of the exercises (eg. Device Driver writing) are potentially anti-social, it is recommended that each student is provided with their own system.
  7. A knowledge of programming in C and a basic knowledge of Unix/LynxOS are prerequisites for this course.
  8. The length of the Course is normally five days.