问题描述
我想了解垃圾收集背后的理论。我如何去做呢?显而易见的答案是 - 编译器教科书......问题是,是否有必要学习词法分析,解析和其他通常在文本中垃圾回收之前的内容?
I want to learn the theory behind garbage collection. How do i go about it? The obvious answer is - a compiler textbook... The question is, is it necessary to learn lexical analysis, parsing and other stuff that usually precedes garbage collection in a text?
总之,学习垃圾收集理论的先决条件是什么?
In short, what are the prerequisites to learning about Garbage collection theory?
- 我知道解析,词法分析等的目的是什么,而不是它们如何实现。
P.S - I do know what is the purpose of parsing, lexical analysis etc. Just not how they are implemented.
推荐答案
请按顺序阅读这些文章。他们是在进步主题/难度顺序(不按时间顺序)。
Read these papers in order. They are in progressive subject matter/difficulty order (not chronological).
我上一学期参加了课程,所以我阅读了所有这些内容我不得不说我学会了我设定的学习内容!
I took the course last semester, so I read all these and I have to say I learned what I set out to learn!
- 在串行计算机上实时列出处理一个非递归列表压缩算法,Cheney,CACM,13(11) :677--678,1970.
- 基于对象生命周期的实时垃圾收集器,Lieberman& Hewitt,CACM,26(6):419-429,1983。
- 生成清除:一种无干扰的高性能存储回收算法,Ungar,第一届ACM SIGSOFT / SIGPLAN软件工程研讨会实用软件开发环境论文集,1984年,第157-167页。简单的分代垃圾收集和快速分配,Appel,Software - Practice and Experience 19(2):171-183,1989年2月。
- 基于年龄的垃圾收集,D. Stefanovic,KS McKinley,JEB Moss,面向对象编程系统,语言和应用ACM会议。 (OOPSLA),第370--381页。 Denver CO,1999年11月。
- 老在先的垃圾收集实践:在Java虚拟机中评估,D. Stefanovic,M. Hertz,SM Blackburn, KS McKinley和JEB Moss,Memory System Performance,德国柏林,第175--184页,2002年6月。
- 环绕:垃圾收集Gridlock ,SM Blackburn,R. Jones,KS McKinley和JEB Moss,ACM会议编程语言设计和实现,德国柏林,第153-164页,2002年6月。
- 一种高效的机器无关程序,用于在各种列表结构中进行垃圾收集,Schorr& Waite,CACM,10(8):501--506,1967。
- 垃圾收集压缩算法的比较,Cohen& Nicolau,ACM编程语言和系统交易(TOPLAS),第5卷,第4期,第532-553页,1983年10月。
- MC2:高性能垃圾收集内存约束环境,Sachindran,Berger& Moss,ACM Conference on Object-Oriented Programming Systems,Languages and Applications,第81-96页,温哥华,不列颠哥伦比亚省,2004年10月。 与空间效率,快速收集和Mutator性能
,Blackburn& McKinley,ACM编程语言设计和实现会议,第22-32页,亚利桑那州图森市,2008年6月。
- 高效增量式自动垃圾收集器, Deutsch& Bobrow,CACM,19(9):522-526,1976年9月。
- 超级引用计数:没有等待的快速垃圾收集,SM Blackburn和KS McKinley,Proceedings of the ACM 2003 SIGPLAN Conference on Object-Oriented Programming Systems,Languages and Applications,pp.344-359,Annehiem,CA,2003年10月。
- 循环追踪:高效的并发标记扫描周期收集,Frampton& Blackburn,2009.(提交给ISMM)
多重处理垃圾收集,Guy L. Steele,Jr.,CACM 18(9):495- 508,1975.
- 即时垃圾收集:合作练习,EW Dijkstra,L. Lamport,AJ Martin,CS Scholten和EFM Steffens,ACM Communications,21(11):966-975,November 1978.
- 正确性保持并发垃圾收集算法的推导,Vechev, Yahav和Bacon,编程语言设计和实现ACM会议,安大略渥太华,第341-353页,2006年。
- 一种低开销的实时垃圾收集器Bacon,Cheng和Rajan,ACM关于程序设计语言原理的研讨会,路易斯安那州新奥尔良,第285-298页,2003年。
- Tax花费:实时垃圾收集的民主调度,Auerbach,Bacon,Cheng,G Rove,Biron,Gracie,McCloskey,Micic和Sciampacone,ACM国际嵌入式软件大会,乔治亚州亚特兰大,第245-254页,2008年。 不合作环境,H. Boehm和M. Weiser,软件实践和经验,18(9):807-820,1988。
- 囤积:可扩展内存多任务应用程序的分配器,ED Berger,KS McKinley,RD Blumofe和PR Wilson,第九届国际编程语言和操作系统架构支持会议,剑桥,马萨诸塞州,第117-128页,2000年11月。 软木:垃圾收集语言的动态内存泄漏检测,Jump& McKinley,在提交给ACM Transactions on Software Practice&经验,2009年(缩写版本出现在2009年1月于法国尼斯举行的ACM Conference on Programming Languagesm会议上。)
- Leak Pruning ,Bond& McKinley,ACM Conference on Architecture Support for Programming Languages and Operating Systems,华盛顿特区,2009年3月。(出现)
Reclamation ,Guyer& McKinley,ACM编程语言设计和实现会议,加拿大渥太华,第364-375页,2006年6月。
- 垃圾收集可能比堆栈分配更快 ,Appel,Information Processing Letters 25(4):275-279,1987年6月17日。
- 垃圾收集优势:改善计划地点 Huang,Blackburn,McKinley ,Moss,Wang,& Cheng,ACM面向对象编程系统会议,语言,应用程序,不列颠哥伦比亚温哥华,2004年10月,第69-80页。
- 揭秘魔术:高级别低级别编程,Daniel Frampton,Stephen M. Blackburn,Perry Cheng,Robin Garner,David P. Grove,J. Eliot B. Moss& Sergey I. Salishev。 ACM虚拟执行环境国际会议,华盛顿特区,2009年3月。(出现。)
- 神话与现实:垃圾收集的性能影响,SM Blackburn ,P. Cheng和KS McKinley,ACM SIGMETRICS Conference on Measurement&建模计算机系统,第25-36页,纽约,纽约州,2004年6月。
- 统一的垃圾收集理论,Bacon,Cheng& Rajan,ACM面向对象编程,系统,语言和应用程序会议,加拿大不列颠哥伦比亚省温哥华,第50-68页,2004年。
- List processing in real time on a serial computer, Baker, CACM, 21(4) 280--294, 1978.
- A nonrecursive list compacting algorithm , Cheney, CACM, 13(11): 677--678, 1970.
- A Real-time garbage collector based on the lifetimes of objects, Lieberman & Hewitt, CACM, 26(6): 419--429, 1983.
- Generation scavenging: A non-disruptive high-performance storage reclamation algorithm, Ungar, Proceedings of the first ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments, 1984, pages 157--167.
- Simple generational garbage collection and fast allocation, Appel, Software--Practice and Experience 19(2):171-183, February 1989.
- Age-Based Garbage Collection, D. Stefanovic, K. S. McKinley, J. E. B. Moss, ACM Conference on Object-Oriented Programming Systems, Languages and Applications. (OOPSLA), pp. 370--381. Denver CO, November 1999.
- Older-first Garbage Collection in Practice: Evaluation in a Java Virtual Machine, D. Stefanovic, M. Hertz, S. M. Blackburn, K. S. McKinley, and J. E. B. Moss, Memory System Performance, Berlin, Germany, pp. 175--184, June 2002.
- Beltway: Getting Around Garbage Collection Gridlock, S. M. Blackburn, R. Jones, K. S. McKinley, and J. E. B. Moss, ACM Conference on Programming Language Design and Implementation, Berlin, Germany, pp. 153--164, June 2002.
- An efficient machine-independent procedure for garbage collection in various list structures, Schorr & Waite, CACM, 10(8): 501--506, 1967.
- Comparison of compacting algorithms for garbage collection, Cohen & Nicolau, ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 5, Issue 4, pages 532--553, October 1983.
- MC2: High-Performance Garbage Collection for Memory-Constrained Environments, Sachindran, Berger & Moss, ACM Conference on Object-Oriented Programming Systems, Languages and Applications, pp. 81-96, Vancouver, BC, October 2004.
- Immix: A Mark-Region Garbage Collector with Space Efficiency, Fast Collection, and Mutator Performance, Blackburn & McKinley, ACM Conference on Programming Language Design and Implementation, pp.22--32, Tucson, AZ, June 2008.
- An Efficient Incremental Automatic Garbage Collector, Deutsch & Bobrow, CACM, 19(9): 522--526, September 1976.
- Ulterior Reference Counting: Fast Garbage Collection without the Wait, S. M. Blackburn and K. S. McKinley , Proceedings of the ACM 2003 SIGPLAN Conference on Object-Oriented Programming Systems, Languages and Applications, pp. 344-359, Annehiem, CA, October 2003.
- Cycle Tracing: Efficient Concurrent Mark-Sweep Cycle Collection, Frampton & Blackburn, 2009. (In submission to ISMM.)
- Multiprocessing compactifying garbage collection, Guy L. Steele, Jr., CACM 18(9): 495-508, 1975.
- On-the-fly garbage collection: an exercise in cooperation, E. W. Dijkstra, L. Lamport, A. J. Martin, C. S. Scholten, and E. F. M. Steffens, Communications of the ACM, 21(11):966--975, November 1978.
- Correctness-Preserving Derivation of Concurrent Garbage Collection Algorithms, Vechev, Yahav, and Bacon, ACM Conference on Programming Language Design and Implementation, Ottawa, Ontario, pp. 341-353, 2006.
- A Real-time Garbage Collector with Low Overhead and Consistent Utilization, Bacon, Cheng, and Rajan, ACM Symposium on Principles of Programming Languages, New Orleans, Louisiana, pp. 285-298, 2003.
- Tax-and-spend: democratic scheduling for real-time garbage collection, Auerbach, Bacon, Cheng, Grove, Biron, Gracie, McCloskey, Micic, and Sciampacone, ACM International Conference On Embedded Software, Atlanta, GA, pp. 245-254, 2008.
- Garbage collection in an uncooperative environment, H. Boehm and M. Weiser, Software Practice and Experience, 18(9):807-820, 1988.
- Hoard: A Scalable Memory Allocator for Multithreaded Applications, E. D. Berger, K. S. McKinley, R. D. Blumofe, and P. R. Wilson, The Ninth International Conference on Architectural Support for Programming Languages and Operating Systems, Cambridge, MA, pp. 117--128, November 2000.
- Cork: Dynamic Memory Leak Detection for Garbage-Collected Languages,Jump & McKinley, In submission to ACM Transactions on Software Practice & Experience, 2009. (Abbreviated version appears in ACM Conference on Programming Languagesm, Nice, France, January 2009.)
- Leak Pruning, Bond & McKinley, ACM Conference on Architecture Support for Programming Languages and Operating Systems, Washington, DC, March 2009. (To appear.)
- Free-me: A Static Analysis for Individual Object Reclamation, Guyer & McKinley, ACM Conference on Programming Language Design and Implementation, Ottawa, Canada, pp. 364-375, June 2006.
- Garbage collection can be faster than stack allocation, Appel, Information Processing Letters 25(4):275-279, 17 June 1987.
- The Garbage Collection Advantage: Improving Program Locality Huang, Blackburn, McKinley, Moss, Wang, & Cheng, ACM Conference on Object-Oriented Programming Systems, Languages, & Applications, Vancouver, BC, pp. 69-80, October 2004.
- Demystifying Magic: High-level Low-level Programming, Daniel Frampton, Stephen M. Blackburn, Perry Cheng, Robin Garner, David P. Grove, J. Eliot B. Moss & Sergey I. Salishev. ACM International Conference on Virtual Execution Environments, Washington DC, March 2009. (To appear.)
- Myths and Realities: The Performance Impact of Garbage Collection, S. M. Blackburn, P. Cheng, and K. S. McKinley, ACM SIGMETRICS Conference on Measurement & Modeling Computer Systems, pp. 25--36, New York, NY, June 2004.
- A unified theory of garbage collection, Bacon, Cheng, & Rajan, ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications, Vancouver, BC, Canada, pp. 50-68, 2004.
这篇关于学习垃圾收集理论的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!