Bachelor of Engineering (BEng)

BEng Electrical and Electronic Engineering

*This course is now closed for applications for 2025 entry.

  • Duration: 3 years
  • Year of entry: 2025
  • UCAS course code: H600 / Institution code: M20
  • Key features:
  • Scholarships available
  • Accredited course

Full entry requirementsHow to apply

Course unit details:
Concurrent Systems

Course unit fact file
Unit code EEEN30141
Credit rating 10
Unit level Level 3
Teaching period(s) Semester 1
Available as a free choice unit? No

Overview

This unit will cover the following topics:

(1) How autonomous peripherals improve CPU efficiency.

(2) The meaning parallel and time-slice concurrency.

(3) Programs, processes, and threads.

(4) How operating systems create concurrent systems.

(5) Problems with concurrent algorithms and the coding methods to solve them.

(6) Message passing methods.

(7) Other operating system methods, including memory, file and device management.

Pre/co-requisites

Unit title Unit code Requirement type Description
Microcontroller Engineering II EEEN20011 Pre-Requisite Compulsory

Aims

The topic of Concurrent Systems is about operating systems and the method of creating threads of code. This enables programs to be run at the same time, and enables algorithms to be parallelised to run much faster. We will look at how an operating system kernel facilitates concurrent systems through CPU scheduling and how we can write code to parallelise our software. We will use C++ in this unit, but the code is similar in other languages.

Learning outcomes

ILO 1: Explain the issues inherent in multi-threaded programs

ILO 2: Describe message parsing and its applications

ILO 3: Analyse how an operating system provides thread scheduling

ILO 4: Describe what makes a concurrent system

ILO 5: Develop concurrent programs in C++

Teaching and learning methods

21 Lectures, 1 Introductory Lab, 5 Worked Tutorial Sheets (online).

Assessment methods

Method Weight
Other 20%
Written exam 80%

Coursework:

2 Blackboard tests - 30 Minutes each

Write a concurrent program in C++ to implement a given specification. - 10 hours

The coursework forms 20% of the unit assessment.

Feedback methods

.

Recommended reading

C++ Concurrency in Action: Practical Multithreading, Anthony Williams, 2012

-covers the first part of the course.

Operating Systems : A Modern Perspective, G. Nutt

3rd edition, Addison-Wesley, 2003

-covers the second part of the course.

Study hours

Scheduled activity hours
Lectures 18
Practical classes & workshops 3
Tutorials 14
Independent study hours
Independent study 65

Teaching staff

Staff member Role
Frank Podd Unit coordinator

Return to course details