Skip to main content

BIM 321 - Real-Time Programming

Faculty of Engineering and Natural Sciences · Software Engineering (English) · Undergraduate

ECTS: 5 T+P+L: 2+0+1 Departmental Elective
Coordinator: Dr. Öğr. Üyesi Özgür SAĞLAM

Course Objective

This course introduces students to the fundamental problems, concepts, and approaches in the design and analysis of real-time systems. Realtime applications typically involve safety or mission critical systems where timing guarantees must be maintained. Real-time task design, dependability, communication, power and energy awareness, scheduling, and real-time control are some of the topics that will be covered. The course also presents a comprehensive description and assessment of the programming languages and operating system standards used in this domain. Particular emphasis is placed on language primitives and their role in the production of reliable, safe and dependable software.

Course Content

Programming languages intended for real time systems, Real time operating system (RTOS), scheduling, resource handling, Design and analysis of real time system software, Modelling and verification of real time systems, Reliability and fault tolerance, Interrupts, Fault recovery, Distributed real time systems, Real time communication, Real time systems for multiprocessor systems.

Course Learning Outcomes

  1. Enumerate the need and the challenges in the design of hard and soft real time systems.
  2. Recognize the characteristics of a real-time system.
  3. Compare different scheduling algorithms and the schedulability criteria.
  4. Determine schedulability of a set of periodic tasks given a scheduling algorithm.
  5. Integrate resource access mechanisms with the scheduling techniques and develop integrated schedulibility criteria.

Core Area Distribution

(48) Computing%60 (52) Engineering and Engineering Trades%40