Principles of event-driven systems, review of computer organization; parallel and serial interfaces; programmable timer; I/O methods; polling and interrupts. Real-time kernels. Critical design consideration: concurrency, dead lock, synchronization. Maintaining and improving system performance. Programming exercises in low and high level languages. Prerequisite(s): PLT 2004.Lectures three hours a week, tutorial/Laboratory two hours a week.