Shared-MemorySynchronization

上传:xjb21078 浏览: 38 推荐: 0 文件:pdf 大小:1.27MB 上传时间:2019-01-04 08:58:51 版权申诉
多核系统越来越普及,共享内存的同步性是不同于传统架构的一个新问题,本文是专门讲这方面的经典之作 Since the advent of time sharing in the 1960s, designers of concurrent and parallel systems have needed to synchronize the activities of threads of control that share data structures in memory. In recent years, the study of synchronization has gained new urgency with the proliferation of multicore processors, on which even relatively simple user-level programs must frequently run in parallel. This lecture offers a comprehensive survey of shared-memory synchronization, with an emphasis on 'systems-level' issues. It includes sufficient coverage of architectural details to understand correctness and performance on modern multicore machines, and sufficient coverage of higher-level issues to understand how synchronization is embedded in modern programming languages. The primary intended audience is 'systems programmers'—the authors of operating systems, library packages, language run-time systems, concurrent data structures, and server and utility programs. Much of the discussion should also be of interest to application programmers who want to make good use of the synchronization mechanisms available to them, and to computer architects who want to understand the ramifications of their design decisions on systems-level code. Table of Contents: Introduction / Architectural Background / Essential Theory / Practical Spin Locks / Busy-wait Synchronization with Conditions / Read-mostly Atomicity / Synchronization and Scheduling / Nonblocking Algorithms / Transactional Memory / Author's Biography an emphasis on 'systems-level' issues. It includes sufficient coverage of architectural details to understand correctness and performance on modern multicore machines, and sufficient coverage of higher-level issues to understand how synchronization is embedded in modern programming languages. The primary intended audience is 'systems programmers'—the authors of operating systems, library packages, language run-time systems, concurrent data structures, and server and utility programs. Much of the discussion should also be of interest to application programmers who want to make good use of the synchronization mechanisms available to them, and to computer architects who want to understand the ramifications of their design decisions on systems-level code. Table of Contents: Introduction / Architectural Background / Essential Theory / Practical Spin Locks / Busy-wait Synchronization with Conditions / Read-mostly Atomicity / Synchronization and Scheduling / Nonblocking Algorithms / Transactional Memory / Author's Biography
上传资源
用户评论
相关推荐