2. and 3. year engineering students in Information Technology.
The students shall learn:
1. Principles, methods and programming technics of realtime programming.
2. To develop real-time applications in a modern programming environment
3. To program "embedded systems".
1. Interrupt system and asynchroneous events.
Tasks. Multitasking. Reentrant programs. Stack and local variables. Task states and queues. Task priority, "context switching" and synchronism.
2. Internal resources and resource allocation: Semaphore, flag, mailbox and message queue. Dynamic memory.
3. Interaction with external processes: Timer, I/O-ports, serial communication etc.
4. Concurrent programming in Java. Real-time specification for Java. RTSJ.
5. Programming of "embedded systems".
Class lectures 6 hours weekly.
Computer lab 4 hours weekly.
Student project in groups of 2-3 students.
The course includes a mandatory project in groups of 2-3 students. The project shall lead to the development of a complete realtime application by using the tools governed by the course. The project is the basis for the evalution of the course.
The evaluation is based on: The realisation of the project with final project report..
Project presentation with oral examination.
Both the project and the oral examination must be successfully completed to fulfill the course.