The University of Nottingham HomepageThe University of Nottingham HomepageSchool of Computer Science Homepage

G53SRP - System and Realtime Programming 2009/10

Notices

General feedback on coursework and exam performance for 2009/10: g53srp-0910-feedback.pdf


Module-related pages

Topics

Course Notes

  1. Introduction: intro.ppt / g53srp-intro-6up.pdf
    See also Burns & Wellings chapter 1, and Wellings chapter 1. F22 Ariane 5
  2. Concurrent Programming with Java Threads: javathreads.ppt / g53srp-javathreads-6up.pdf
    Code samples: Print10Test.java
    Exam questions: 2004/5 Qn. 3, 2003/4 Qn 3
  3. Java Concurrency 1: Synchronisation: javaconcurrency1.ppt / g53srp-javaconcurrency1-6up.pdf
    Code samples: MethodNoSyncTest, MethodSyncTest, StaticMethodNoSyncTest, StaticMethodSyncTest, BlockSyncTest, BlockSyncTest2
  4. Java concurrency 2: wait & notify: javaconcurrency2.pptg53srp-javaconcurrency2-6up.pdf
    Code Samples: InfiniteBuffer, InfiniteBufferTest, ReaderWriterLock, ReaderWriterLockTest
    Exam questions: 2008/9 Qn. 1, 2005/6 Qn. 3 [partial solution - local access only; ignore incorrect capitalisation due to Word], 2004/5 Qn 4 (a)-(c), 2003/4 Qn 1 (b), (c), 2002/3 Qn 5
  5. Java clocks and time: clocksandtime.ppt / g53srp-clocksandtime-6up.pdf
    Code samples: BusyDelay, SleepDelay, ClockGranularity, DriftingClockSleepAbsoluteDelaySleepTimeUnitsDelay, TimedWait, TimerClock, DriftingTimerClock
    Exam questions: 2005/6 Qn. 2, 2003/4 Qn 1 (a), 2002/3 Qn 4
  6. Introduction to Real Time Scheduling: realtimescheduling.ppt / g53srp-realtimescheduling-6up.pdf
  7. Introduction to the Real Time Specification for Java: rtsjintro.ppt / g53srp-rtsjintro-6up.pdf
    RTSJ Javadocs (local access only)
  8. RTSJ Clocks and Time: rtsjclocksandtime.ppt / g53srp-rtsjclocksandtime-6up.pdf
    Code samples: RTClock, RTSleep
  9. Realtime Threads (part I): realtimethreads.ppt / g53srp-realtimethreads-6up.pdf
    Code samples: HelloScheduler, HelloRealtimeThread, NRTPriority (/MyTimedTask), RTPriority, HelloPeriodicThread
    Exam questions: 2008/9 Qn. 2
  10. RTSJ Asynchronous Events: asyncevents.ppt / g53srp-asyncevents-6up.pdf
    Code samples: HelloAsyncEventHandler, HelloAsyncEventHandler2, SlowAsyncEventHandler, AperiodicAsyncEventHandler, SporadicAsyncEventHandler, HelloOneShotTimer, HelloOneShotTimer2, HelloPeriodicTimer, HelloPeriodicTimer2, DisablePeriodicTimer, HelloPOSIXSignalHandler, HelloBoundAsyncEvent
    Exam questions: 2008/9 Qn. 3, 2008/9 Qn. 5 (c)
  11. RTSJ Deadlines and cost: rtsjdeadlineandcost.ppt / g53srp-rtsjdeadlineandcost-6up.pdf
    Code samples: HelloDeadlineMissHandlerHelloSchedulePeriodicDeadlineMissAsyncEventHandler, HelloCostOverrunHandler [Note: doesn't detect over-run on archer]
    Exam questions: 2008/9 Qn. 2 (b)
  12. Feasibility Analysis: feasibility.ppt / g53srp-feasibility-6up.pdf
    Exam questions: 2008/9 Qn. 4, 2005/6 Qn. 1, 2004/5 Qn. 2, 2003/4 Qn.2, 2002/3 Qn. 3
  13. Resource sharing: resourcesharing.ppt / g53srp-resourcesharing-6up.pdf
    Exam questions: see 12 (Feasibility analysis)
  14. RTSJ Memory Areas and Parameters: memoryareas.pptg53srp-memoryareas-6up.pdf
    Exam questions: 2008/9 Qn. 2 (c)
  15. Hardware interfacing: hardware.ppt / g53srp-hardware-6up.pdf
    Appendix A: RS-232 serial / UART - an example of I/O interfacing.
    Exam questions: 2008/9 Qn. 5, 2004/5 Qn. 1 (but would be done in terms of RTSJ RawMemoryAccess and AsyncEvent/Handler); see also 2003/4 Qn. 4, 2003/3 Qn. 1 (we have not considered OS device drivers, but might interface to the same device(s) using RTSJ).
  16. Please check before lecture(s)

Coursework

See G53SRP_coursework.html due Friday 11th December 2009. Submit electronically using cw.

Exercises

Please check before lecture(s)

Java (on the command line)

Threads

Concurrency (1)
Concurrency (2)

Java clocks and time

RTSJ

RTSJ clocks and time

RTSJ realtime threads

RTSJ asynchronous events

RTSJ deadline and cost

Resource sharing

Memory areas and parameters

Hardware:

Chris Greenhalgh
Last updated: 2009-11-19