13-Concurrency - 13. Concurrency 13.1 Introduction...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
ICS 313 - Fundamentals of Programming Languages 1 13. Concurrency 13.1 Introduction ± Concurrency can occur at four levels: ` 1. Machine instruction level ` 2. High-level language statement level ` 3. Unit level ` 4. Program level ` Because there are no language issues in instruction and program-level concurrency, they are not addressed here ± The Evolution of Multiprocessor Architectures ` Late 1950s - One general-purpose processor and one or more special- purpose processors for input and output operations ` Early 1960s - Multiple complete processors, used for program-level concurrency ` Mid-1960s - Multiple partial processors, used for instruction-level concurrency ` Single-Instruction Multiple-Data (SIMD) machines. The same instruction goes to all processors, each with different data - e.g., vector processors ` Multiple-Instruction Multiple-Data (MIMD) machines - Independent processors that can be synchronized (unit-level concurrency)
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
ICS 313 - Fundamentals of Programming Languages 2 13.1 Introduction (continued) ± A thread of control in a program is the sequence of program points reached as control flows through the program ± Categories of Concurrency ` Physical concurrency - Multiple independent processors (multiple threads of control) ` Logical concurrency - The appearance of physical concurrency is presented by time-sharing one processor
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 4

13-Concurrency - 13. Concurrency 13.1 Introduction...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online