摘要
Agesen,O.、Detlefs,D.、Garthwaite,A.、Knippel,R.、Ramakrishna,Y.S.和White,D.,1999年。 一种有效的元锁,用于实现无处不在的同步。 在面向对象编程、系统、语言和应用会议上(OOPSLA’99,丹佛,科罗拉多州)。 纽约ACM出版社,207--222。]] 谷歌学者 数字图书馆 Aiken,A.、Fähndrich,M.和Levien,R.,1995年。 更好的静态内存管理:改进基于区域的高阶语言分析。 SIGPLAN编程语言设计与实现会议(PLDI’95,加利福尼亚州拉荷亚)。 ACM出版社,纽约州纽约市,174-185。]] 谷歌学者 数字图书馆 Aldrich,J.、Chambers,C.、Sirer,E.G.和Eggers,S.1999。 用于消除Java程序中不必要同步的静态分析。 静态分析研讨会(SAS'99,意大利威尼斯)。 《计算机科学讲义》,第1694卷。 施普林格出版社,德国柏林,19-38.]] 谷歌学者 数字图书馆 培根,D.F.1997。 快速高效地优化静态类型的面向对象语言。 博士论文。 加利福尼亚大学伯克利分校 谷歌学者 数字图书馆 Bacon,D.F.、Konuru,R.、Murthy,C.和Serrano,M.1998年。 瘦锁:Java的Featherweight同步。 《ACM SIGPLAN’98编程语言设计与实现会议论文集》(PLDI’98,加拿大蒙特利尔)。 ACM出版社,纽约州纽约市,258--268。]] 谷歌学者 数字图书馆 Birkedal,L.、Tofte,M.和Vejlstrup,M.,1996年。 通过区域表示推理,从区域推理到冯·诺依曼机器。 第23届ACM SIGPLAN-SIGACT编程语言原理研讨会(POPL'96,佛罗里达州圣彼得堡海滩)。 ACM出版社,纽约州纽约市,171-183。]] 谷歌学者 数字图书馆 Blanchet,B.1998年。 逃逸分析:正确性证明、实现和实验结果。 第25届ACM SIGACT-SIGPLAN编程语言原理研讨会(POPL'98,加利福尼亚州圣地亚哥)。 ACM出版社,纽约州纽约市,25-37。]] 谷歌学者 数字图书馆 Blanchet,B.1999年。 面向对象语言的转义分析。 JavaTM应用程序。 在面向对象编程、系统、语言和应用会议上(OOPSLA’99,丹佛,科罗拉多州)。 ACM出版社,纽约州纽约市,20-34。]] 谷歌学者 数字图书馆 Blanchet,B.2000年。 逃生分析。 ML和JavaTM应用程序。 埃科尔理工学院博士论文。]] 谷歌学者 Bogda,J.和Hölzle,U.1999。 删除Java中不必要的同步。 在面向对象编程、系统、语言和应用会议上(OOPSLA’99,丹佛,科罗拉多州)。 ACM出版社,纽约州纽约市,35-46。]] 谷歌学者 数字图书馆 Carr,S.、McKinley,K.S.和Tseng,C.-W.1994年。 用于改进数据局部性的编译器优化。 第六届编程语言和操作系统体系结构支持国际会议(ASPLOS’94)。 ACM出版社,纽约州纽约市,252--262。]] 谷歌学者 数字图书馆 Chase,D.R.1988年。 存储分配优化的安全注意事项。 《SIGPLAN’88编程语言设计与实现会议论文集》(PLDI’88,佐治亚州亚特兰大)。 ACM出版社,纽约,NY,1-10。]] 谷歌学者 数字图书馆 Choi,J.-D.、Gupta,M.、Serrano,M.、Sreedhar,V.C.和Midkiff,S.,1999年。 Java转义分析。 在面向对象编程、系统、语言和应用会议上(OOPSLA’99,丹佛,科罗拉多州)。 ACM出版社,纽约州纽约市,1-19。]] 谷歌学者 数字图书馆 库索特P.和库索特R.,1977年。 抽象解释:通过构造或近似不动点对程序进行静态分析的统一格模型。 第四届美国计算机学会编程语言原理年会会议记录(加利福尼亚州洛杉矶)。 ACM出版社,纽约州纽约市,238-252。]] 谷歌学者 数字图书馆 库索特P.和库索特R.,1979年。 程序分析框架的系统设计。 第六届美国计算机学会编程语言原理研讨会会议记录(德克萨斯州圣安东尼奥)。 ACM出版社,纽约州纽约市,269--282。]] 谷歌学者 数字图书馆 Cytron,R.、Ferrante,J.、Rosen,B.K.、Wegman,M.N.和Zadeck,F.K.,1991年。 有效计算静态单赋值表和控制依赖图。 ACM事务处理。 程序。 语言系统。 13,4(10月),451--490。]] 谷歌学者 数字图书馆 Dean,J.、Grove,D.和Chambers,C.1995年。 使用静态类层次分析优化面向对象程序。 第九届欧洲面向对象编程会议论文集。 计算机科学讲义,第952卷。 施普林格-弗拉格,德国柏林,77-101。]] 谷歌学者 数字图书馆 Deutsch,A.1990年。 在高阶函数规范中确定动态分配数据的生存期和别名。 在第17届ACM SIGACT-SIGPLAN编程语言原理研讨会上。 (加利福尼亚州旧金山)。 ACM出版社,纽约州纽约市,157-168。]] 谷歌学者 数字图书馆 Deutsch,A.1994年。 硬膜外可能-谎言指针分析:超越k限制。 《SIGPLAN’94编程语言设计与实现会议论文集》(PLDI’94,佛罗里达州奥兰多)。 ACM出版社,纽约州纽约市,230-241。]] 谷歌学者 数字图书馆 Deutsch,A.1997年。 关于逃逸分析的复杂性。 在第24届ACM SIGACT-SIGPLAN编程语言原理年度研讨会上(POPL'97,法国巴黎)。 ACM出版社,纽约州纽约市,358--371。]] 谷歌学者 数字图书馆 Diniz,P.C.和Rinard,M.C.1998年。 锁粗化:消除自动并行化的基于对象的程序中的锁开销。 J.平行分布计算。 49、2(3月)、218--244。]] 谷歌学者 数字图书馆 Fitzgerald,R.、Knoblock,T.B.、Ruf,E.、Steensgaard,B.和Tarditi,D.2000年。 Marmot:一个针对Java的优化编译器。 柔和。 实际。 专家。 30,3(3月),199--232.]] 谷歌学者 数字图书馆 Gay,D.和Steensgaard,B.2000。 基于对象程序的快速转义分析和堆栈分配。 《编译器构造》,第九届国际会议,CC’2000,D.A.Watt,Ed.计算机科学讲义,第1781卷。 施普林格-弗拉格,德国柏林,82-93。]] 谷歌学者 数字图书馆 Harrison,W.1989年。 Scheme程序的程序间分析和自动并行化。 J.Lisp符号。 计算。 2, 176--396.]] 谷歌学者 Hederman,L.1988年。 使用引用计数分析编译时间垃圾收集。 德克萨斯州休斯顿莱斯大学Rice COMP TR88-75技术代表 谷歌学者 Horwitz,S.、Demers,A.和Teitelbaum,T.1987年。 数据流分析的一种有效的通用迭代算法。 学报信息24,6,679--694。]] 谷歌学者 数字图书馆 Hudak,P.1986年。 引用计数的语义模型及其抽象(详细摘要)。 1986年ACM LISP和函数编程会议记录(马萨诸塞州剑桥)。 ACM出版社,纽约州纽约市,351--363。]] 谷歌学者 数字图书馆 Hughes,S.1992年。 高阶函数语言的编译时垃圾收集。 J.逻辑计算。 2, 4, 483--509.]] 谷歌学者 交叉引用 Inoue,K.、Seki,H.和Yagi,H.1988年。 分析功能程序以检测运行时垃圾单元。 ACM事务处理。 程序。 语言系统。 10月4日(10月),555--578。]] 谷歌学者 数字图书馆 Jones,N.D.和Muchnick,S.1982年。 使用递归数据结构进行过程间数据流分析和程序的灵活方法。 在第九届ACM SIGACT-SIGPLAN编程语言原理研讨会上(新墨西哥州阿尔伯克基)。 ACM出版社,纽约州纽约市,66-74。]] 谷歌学者 数字图书馆 麦克道尔,C.E.,1998年。 减少Java中的垃圾。 ACM Sigplan非。 第33、9(9)、84至86页。]] 谷歌学者 数字图书馆 Mohnen,M.1995年。 通过高阶遗传分析有效利用闭包。 静态分析研讨会(SAS’95)。 《计算机科学讲义》,第983卷。 施普林格出版社,德国柏林,261-278。]] 谷歌学者 数字图书馆 Mohnen,M.1995年b。 针对任意数据结构的高效编译时垃圾收集。 在编程语言实现和逻辑编程研讨会(PLILP’95)上。 计算机科学讲义,第982卷。 施普林格·弗拉格,德国柏林,241-258。]] 谷歌学者 数字图书馆 Muller,G.、Moura,B.、Bellard,F.和Consel,C.1997年。 Harissa:一个灵活高效的Java环境,混合了字节码和编译代码。 在第三届Usenix面向对象技术和系统会议上(COOTS’97)。 俄勒冈州波特兰,1--20。]] 谷歌学者 数字图书馆 Onodera,T.和Kawachiya,K.,1999年。 使用双模场锁定对象的研究。 在面向对象编程、系统、语言和应用会议上(OOPSLA’99,丹佛,科罗拉多州)。 ACM出版社,纽约州纽约市,223--237。]] 谷歌学者 数字图书馆 Park,Y.G.和Goldberg,B.1992年。 对列表进行转义分析。 《ACM SIGPLAN’92编程语言设计与实现会议论文集》(PLDI’92,加利福尼亚州旧金山)。 ACM出版社,纽约州纽约市,116-127。]] 谷歌学者 数字图书馆 钱,Z.1998。 用于对象、方法和子程序的JavaTM虚拟机指令的正式规范。 《Java(tm)的形式语法和语义》,J.Alves-Foss,Ed.计算机科学讲义,第1523卷。 施普林格-弗拉格,德国柏林。]] 谷歌学者 数字图书馆 Ruf,E.2000年。 有效删除Java的同步。 在ACM SIGPLAN 2000编程语言设计与实现会议(PLDI'00,加拿大温哥华)上。 ACM出版社,纽约州纽约市,208-218。]] 谷歌学者 数字图书馆 Ruggieri,C.和Murtagh,T.P.,1988年。 动态分配对象的生存期分析。 第15届ACM SIGACT-SIGPLAN编程语言原理研讨会会议记录(POPL'88,加利福尼亚州圣地亚哥)。 ACM出版社,纽约州纽约市,285--293。]] 谷歌学者 数字图书馆 Serrano,M.和Feeley,M.,1996年。 存储使用分析及其应用。 1996年,ACM SIGPLAN功能编程国际会议(ICFP,宾夕法尼亚州费城)。 ACM出版社,纽约州纽约市,50-61。]] 谷歌学者 数字图书馆 Shivers,O.1988年。 方案中的控制流分析。 《SIGPLAN’88编程语言设计与实现会议论文集》(PLDI’88,佐治亚州亚特兰大)。 ACM出版社,纽约州纽约市,164-174。]] 谷歌学者 数字图书馆 Tofte,M.和Talpin,J.-P.1993年。 多态类型语言中的堆栈分配理论。 丹麦哥本哈根哥本哈根大学计算机科学系技术代表93/15 谷歌学者 Weiss,M.等人,1998年。 TurboJ:Java字节码到本机编译器。 嵌入式系统语言、编译器和工具研讨会论文集。 计算机科学讲义,第1474卷。 施普林格-弗拉格,德国柏林,119-130。]] 谷歌学者 数字图书馆 Whaley,J.和Rinard,M.,1999年。 Java程序的组合指针和转义分析。 在面向对象编程、系统、语言和应用会议上(OOPSLA’99,丹佛,科罗拉多州)。 ACM出版社,纽约州纽约市,187-206。]] 谷歌学者 数字图书馆
建议
动态编译和反优化环境中的逃逸分析 VEE’05:第一届ACM/USENIX虚拟执行环境国际会议记录 在面向对象的编程语言中,对象被称为 逃跑 如果其他方法或线程也可以访问它,则创建它的方法或线程。 知道哪些对象没有转义可以让编译器执行攻击性。。。 实际逃生分析:它们有多好? VEE’07:第三届虚拟执行环境国际会议论文集 为编译并行程序而开发的一个关键分析是 线程转义分析 (以下简称 逃逸分析 ),它确定在多个线程中访问哪些对象,以及程序中的哪些引用是。。。