- Student Records
Programme & Unit Catalogues

 

Learning Partnerships, Unit Catalogue 2009/10


AS30210: Multi-tasking systems

Click here for further information Credits: 6
Click here for further information Level: Honours
Click here for further information Period: This unit is available in...
Semester 1 at City of Bath College
Semester 1 at Weston College
Semester 1 at Wiltshire College
Click here for further information Assessment: CW 70%, EX 30%
Click here for further informationSupplementary Assessment: Like-for-like reassessment (where allowed by programme regulations)
Click here for further information Requisites:
Description: Aims:
To explore the nature of concurrency, parallelism and inter-process communication and their role in practical computing applications.

Learning Outcomes:

* An understanding of the nature of concurrency and parallelism and the theoretical and practical issues associated with each;
* An understanding of inter-process communication in both shared and non-shared memory spaces.

Skills:
Intellectual: (T and A) Develop knowledge for analysing and managing concurrent processing and parallelism.
Professional: (F and A) Gain an insight into the relationship between the needs of systems and the potential problems in coding them leading to an ability to decide on the nature of system problems.
Practical: (T and A) Design and programming for the implementation of concurrent and parallel systems.
Key: (F and A) Planning, designing and communication.
(T: Taught, F: Facilitated, A: Assessed).

Content:

* Process management: the concept of a process and the scheduling of several processes. Operations on processes and the cooperation needed between processes.
* Concurrent threads: programming multithreaded systems.
* Concurrency v parallelism: the differences and similarities.
* Multi-processor, multi-core processors and programming for parallel processes.
* Operating systems and concurrent process. CPU context switching. Scheduling - heavy weight and light weight threads. Scheduling and real time systems. Critical sections and atomic actions.
* Operating systems for multi processors systems and parallel processes.
* Inter-process communication and process synchronization. Shared memory and low level synchronization primitives. High level language synchronization mechanisms. Resource allocation, deadlock and starvation
* Distributed communication (non-shared memory). High level language mechanisms such as sockets and Remote Method Invocation (RMI-Java).
NB. Programmes and units are subject to change at any time, in accordance with normal University procedures.