Singapore University of Social Sciences

Fundamentals of Concurrent Systems (ICT331)

Synopsis

This course introduces you to the basic ideas in concurrent systems. It discusses the basic hardware and software for such systems and examines the nature of a concurrent process as well as multi-threading with a programming language. The course will also look into inter-process communications as concurrent processes inter among themselves. In particular, it will consider the important issue of accessing shared data.As this is a practical course, it will use Java, a programming language commonly used in the industry, for investigating topics such as multi-threading and accessing shared data

Level: 3
Credit Units: 5
Presentation Pattern: Every January

Topics

  • The nature of concurrent systems
  • Hardware and software support for concurrent systems
  • The concept of a process and concurrent processes
  • The fundamentals of distributed systems
  • Basic inter-process communications
  • Accessing shared data and shared implementations

Learning Outcome

  • Illustrate what is a concurrent system
  • Differentiate among concurrent, potentially concurrent and non-concurrent systems
  • Appraise the role of hardware and operating systems in concurrent processing
  • Discuss the characteristics and issues involved in distributed processing
  • Show the concurrent processing issues for shared memory systems
  • Construct programs involving multi-threading and synchronised concurrent processes
Back to top
Back to top