[1]LAMPORT L. How to make a correct multiprocess program execute correctly on a multiprocessor[J]. IEEE Transactions on Computer, 1997, 46(7): 779-782.[2]LOMET D B. Process structuring, synchronization, and recovery using atomic actions[C]// Proceedings of ACM Conference on Language Design for Reliable Software. New York, USA: ACM, 1977:128-137.[3]HAMMOND L, CARLSTROM B D, WONG V, et al. Programming with transactional coherence and consistency [J]. ACM SIGOPS Operating System Review, 2004, 39(11):1-13.[4]MOORE K E, BOBBA J, MORAVAN M J, et al. LogTM: Log based transactional memory[C]// Proceedings of the 12th International Symposium on High-Performance Computer Architecture. Piscataway: IEEE Press, 2006:227-238.[5]ANANIAN C S, ASANOVIC K, KUSZMAUL B C, et al. Unbounded transactional memory[C]// Proceedings of the 11th International Symposium on High-Performance Computer Architecture. Piscataway: IEEE Press, 2005: 316-327.[6]SCOTT M L, Rochester software transactional memory [EB/OL]. [2013-02-15]. http:// www.cs.rochester.edu/research/synchroization/rstm.[7]FELBER P, FETZER C, RIEGEL T. Dynamic performance tuning of word-based software transactional memory[C]// Proceedings of the 13th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, New York: ACM, 2008:237-246.[8]HERLIHY M, LUCHANGCO V, MOIR M, et al. Software transactional memory for dynamic-sized data structures[C]// Proceedings of the 21st Annual Symposium on Principles of Distributed Computing. New York: ACM, 2003: 92-101.[9]SHAVIT N, TOUITOU D. Software transactional memory[C]// Pro-ceedings of the 14th Annual ACM Symposium on Principles of Distributed Computing, New York: ACM, 1995: 204-213.[10]HERLIHY M. Wait-free synchronization [J]. ACM Transactions on Programming Languages and Systems, 1991, 13(1): 124-149.[11]FRASER K. Practical lock-freedom [D]. Cambridge: University of Cambridge, 2003.[12]HERLIHY M, LUCHANGCO V, MOIR M. Obstruction-free synchronization: double-ended queue as an example[C]// Proceedings of the 23rd International Conference on Distributed Computing Systems. Washington, DC: IEEE Computer Society, 2003: 522-529.[13]HARRIS T, FRASER K. Language support for lightweight transactions[C]// Proceedings of the 18th Annual ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications. New York: ACM, 2003:388-402.[14]SCHERER W N III, SCOTT M L. Advanced contention management in dynamic software transactional memory[C]// Proceedings of the 24th Annual ACM Symposium on Principles of Distributed Computing. New York: ACM, 2005: 240-248.[15]SPEAR M F, DALESSANDRO L, MARATHE V J, et al. A comprehensive strategy for contention management in software transactional memory[C]// Proceedings of the 14th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming. New York: ACM, 2009: 141-150.[16]SPEAR M F, MARATHE V J, SCHERER W N III, et al. Conflict detection and validation strategies for software transactional memory[C]// Proceedings of the 20th International Conference on Distributed Computing. Berlin: Springer, 2006: 179-193.[17]彭林,谢伦国,张小强.事务存储系统[J].计算机研究与发展,2009,46(8):1386-1398.[18]SCOTT M L. Sequential specification of transactional memory semantics[EB/OL]. [2012-12-25]. http://www.cs.purdue.edu/homes/jv/events/TRANSACT/slides/scott.pdf.[19]简捷.基于软件内存事务的高性能服务器设计[D].成都:电子科技大学,2009.[20]JOHNSON F R, STOICA R, ALIAMAKI A, et al. Decoupling contention management from scheduling [J]. ACM SIGARCH Computer Architecture News, 2010, 30(1):117-128. |