Transcription of Concurrency: An Introduction
{{id}} {{{paragraph}}}
26 Concurrency: An IntroductionThus far, we have seen the development of the basic abstractionsthat theOS performs. We have seen how to take a single physical CPU and turnit into multiplevirtual CPUs, thus enabling the illusion of multiple pro-grams running at the same time. We have also seen how to create theillusion of a large, privatevirtual memoryfor each process; this abstrac-tion of theaddress spaceenables each program to behave as if it has itsown memory when indeed the OS is secretly multiplexing addressspacesacross physical memory (and sometimes, disk).In this note, we introduce a new abstraction for a single running pro-cess: that of athread. Instead of our classic view of a single point ofexecution within a program ( , a single PC where instructions are be-ing fetched from and executed), amulti-threadedprogram has more thanone point of execution ( , multiple PCs, each of which is being fetchedand executed from).
In this note, we introduce a new abstraction for a single running pro-cess: that of a thread. Instead of our classic view of a single point of execution within a program (i.e., a single PC where instructions are be- ... gramming did for processes across programs; as a result, many modern server-based applications (web servers, database ...
Domain:
Source:
Link to this page:
Please notify us if you found a problem with this document:
{{id}} {{{paragraph}}}