- UCAS course code
- HHH6
- UCAS institution code
- M20
Master of Engineering (MEng)
MEng Mechatronic Engineering
*This course is now closed for applications for 2025 entry.
- Typical A-level offer: AAA including specific subjects
- Typical contextual A-level offer: AAB including specific subjects
- Refugee/care-experienced offer: ABB including specific subjects
- Typical International Baccalaureate offer: 36 points overall with 6,6,6 at HL, including specific requirements
Fees and funding
Fees
Tuition fees for home students commencing their studies in September 2025 will be £9,535 per annum (subject to Parliamentary approval). Tuition fees for international students will be £34,000 per annum. For general information please see the undergraduate finance pages.
Policy on additional costs
All students should normally be able to complete their programme of study without incurring additional study costs over and above the tuition fee for that programme. Any unavoidable additional compulsory costs totalling more than 1% of the annual home undergraduate fee per annum, regardless of whether the programme in question is undergraduate or postgraduate taught, will be made clear to you at the point of application. Further information can be found in the University's Policy on additional costs incurred by students on undergraduate and postgraduate taught programmes (PDF document, 91KB).
Scholarships/sponsorships
For information about scholarships and bursaries please visit our undergraduate student finance pages and our Department funding pages .
Course unit details:
Concurrent Systems
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 |