Chapter 1 Introduction: Examples and requirements
Objectives
To define concurrent systems in an intuitive way. To give examples of different kinds of concurrent system. To discuss their essential properties and establish requirements for their design.
Points to emphasise
- Point out the rate of development of technology in the past and projected for the next 40 years (the working life of the students). Computer scientists have to build software systems that exploit technology.
- The requirements for implementing the various types of concurrent system have a great deal in common although the systems may vary considerably in applications and scale. The summary of requirements in Section 1.5 are referred to throughout the book.
- Real-time doesn’t necessarily mean very fast.
- Point out the differences between emerging multimedia real-time systems and classic process control systems. The two applications share the distinction between synchronous and asynchronous events. A lot of research is happening in this area and operating system design is moving this way.
Possible difficulties
There is a lot of material in Chapter 1. The aim is to draw on the experience and prior study of the audience, and suggest where we are heading, rather than teach these things for the first time.
Teaching hints
- It may be useful to show Figures 1.11 and 1.12 early to show "where we are heading".
- The introduction should give the feeling that the topic is up-to-date and exciting. A long description should be avoided and interaction, drawing on the students’ experience, should be used if possible. The instructor may have other examples that the students already know from other courses. Examples of disasters are often useful or of financial transactions. The students should feel that they want to know about this area and should know about it because it is central.
- At this stage, the discussion of operating systems is in very general terms. It is best not to spend too long on them here but to give the introduction to OS concepts later, with Chapter 2.
- The idea is not to teach Section 1.3 in detail as this is the subject matter of AR7. The material is summarised here to show its relevance. It might be covered briefly in lectures or be left for private reading.
- This generation of students may be able to think parallel quite naturally. Don’t assume that older computer scientists’ serial view of how things are done is held by the students.