II4006 Real Time Systems Syllabus:

II4006 Real Time Systems Syllabus – Anna University PG Syllabus Regulation 2021

OBJECTIVES:

 To learn real time operating system concepts, the associated issues & Techniques.
 To understand design and synchronization problems in Real Time System.
 To explore the concepts of real time databases.
 To understand the evaluation techniques present in Real Time System.

UNIT I REAL TIME SYSTEM AND SCHEDULING

Introduction– Structure of a Real Time System –Task classes – Performance Measures for Real Time Systems – Estimating Program Run Times – Issues in Real Time Computing – Task Assignment and Scheduling – Classical uniprocessor scheduling algorithms –Fault Tolerant Scheduling.

UNIT II SOFTWARE REQUIREMENTS ENGINEERING

Requirements engineering process – types of requirements – requirements specification for real time systems – Formal methods in software specification – structured Analysis and Design – object oriented analysis and design and unified modelling language – organizing the requirements document – organizing and writing documents – requirements validation and revision.

UNIT III INTERTASK COMMUNICATION AND MEMORY MANAGEMENT

Buffering data – Time relative Buffering- Ring Buffers – Mailboxes – Queues – Critical regions – Semaphores – other Synchronization mechanisms – deadlock – priority inversion – process stack management – run time ring buffer – maximum stack size – multiple stack arrangement – memory management in task control block – swapping – overlays – Block page management – replacement algorithms – memory locking – working sets – real time garbage collection – contiguous file systems.

UNIT IV REAL TIME DATABASES

Real time Databases – Basic Definition, Real time Vs General Purpose Databases, Main Memory Databases, Transaction priorities, Transaction Aborts, Concurrency control issues, Disk Scheduling Algorithms, Two– phase Approach to improve Predictability – Maintaining Serialization Consistency – Databases for Hard Real Time Systems.

UNIT V VALUATION TECHNIQUES AND CLOCK SYNCHRONIZATION

Reliability Evaluation Techniques – Obtaining parameter values, Reliability models for Hardware Redundancy–Software error models. Clock Synchronization–Clock, A Non fault– Tolerant Synchronization Algorithm – Impact of faults – Fault Tolerant Synchronization in Hardware – Fault Tolerant Synchronization in software.

OUTCOMES:

Upon completion of this course, the students should be able to:
 Apply principles of real time system design techniques to develop real time applications.
 Make use of database in real time applications.
 Make use of architectures and behaviour of real time operating systems.
 Apply evaluation techniques in application.

List of Experiments
Real Time Systems
Any ten experiments

1. Development of problem statement.
2. Preparation of Software Requirement Specification Document, Design Documents and Testing Phase related documents.
3. Develop DFD model (level-0, level-1 DFD and Data dictionary) of the project.
4. Develop Structured design for the DFD model developed.
5. Develop UML Use case model for a problem.
6 .Develop sequence diagram.
7. Develop Class diagrams
8. Preparation of Software Configuration Management and Risk Management related documents.
9. Study and usage of any Design phase CASE tool
10. Performing the Design by using any Design phase CASE tools.
11. Develop test cases for unit testing and integration testing
12. Develop test cases for various white box and black box testing techniques.
13. Use MATLAB/Simulink to Control Qball
• Safely turn on/off the qball and change the batteries,
• Establish a wireless connection between qball and workstation
• Work with Quarc and MATLAB/Simulink and compile and run models on both workstation
• and qball sides.
• Receive and monitor the sensor data on the workstation,
• Read back the joystick data on workstation
• Send command to control rotors speed .
14 .Develop socket programming class to do the following class objectives
• Establish a TCP/IP connection
• Bind to a TCP port
• Listen to connection requests
• Accept connection requests
• Receive data
• Send data
15. Develop Communication Program with Target and Display Sensors
Develop a cqstreamclient class to receive and display data of sensors of the Qball
16. Joystick Interface
• Develop a driver for joystick and build a cjoystick class
• Read back the joystick X,Y,Z and RZ data and display the data
17. Maneuver Qball by Joystick
Objectives
– Use ctimer class and cjoystick class to read back the joystick X,Y,Z and RZ data
– Develop a cqstreamsrv class to send the joystick data to qball
– Use ctimer class and cqstreamclient class to read the qball sensors and display it
– Use qball_motor_control Simulink model to send the sensors data to SPC and receive commands from SPC to control the motors speeds.

REFERENCES:

1. C.M. Krishna, Kang G. Shin, “Real-Time Systems”, McGraw-Hill International Editions, 1997
2. Philip.A.Laplante, “Real Time System Design and Analysis”, Prentice Hall of India, 3rd Edition, 2004
3. Rajib Mall, “Real-time systems: theory and practice”, Pearson Education, 2009
4. R.J.A Buhur, D.L Bailey, “An Introduction to Real-Time Systems”, Prentice Hall International, 1999
5. Stuart Bennett, “Real Time Computer Control-An Introduction”, Prentice Hall of India, 1998
6. Allen Burns, Andy Wellings, “Real Time Systems and Programming Languages”, Pearson Education, 2003.