当前位置:主页 > 科技论文 > 计算机论文 >

Python虚拟机内存管理的研究

发布时间:2017-09-09 14:46

  本文关键词:Python虚拟机内存管理的研究


  更多相关文章: Python 虚拟机 内存管理 贪心策略 实证研究 垃圾回收 优化


【摘要】:动态语言的简洁性,易学性缩短了软件开发人员的开发周期,所以深受研发人员的喜爱。其在机器学习、科学计算、Web开发等领域都有广泛的应用。在众多的动态语言中,Python是用户数量较大的动态语言之一。本文主要研究Python对内存资源的管理。Python开发效率高,但是运行效率常为人诟病,主要原因在于一切皆是对象的语言实现哲学导致在某些基本类型上的设计比较臃肿。在一切皆是对象的哲学基础上,Python虚拟机将所有的对象分成非容器对象和容器对象,两种对象都是基于内存池进行管理。操作系统提供的库函数malloc是一个通用的内存管理方案,有很多的局限性:碎片问题、效率问题、内存泄露和悬挂指针,所以Python虚拟机在malloc基础上采用池化的内存解决方案和自动内存管理。本文详细的解读了Python虚拟机的非容器对象和容器对象池化内存管理方案,基于引用计数的垃圾回收机制及其循环垃圾回收模块。之后本文阐述了Python虚拟机在非容器对象内存池管理算法上存在内存强占和碎片的缺陷并提出了一种基于贪心策略的内存申请和释放的算法。最后,针对非容器对象在开源的实验平台Unladen-Swallow上验证本文方法在Web应用领域的高效性。针对循环引用的问题,本文进行了关于Python虚拟机内存使用的实证研究,选取了六种不同的Python项目,并获取这六种不同的开源项目运行过程中的动态信息。实验的数据显示,循环垃圾出现频率不高。传统的基于TD算法的循环垃圾检测算法需要扫描候选集三次,而一种轻量级的循环垃圾回收算法只需扫描一次,但是其完备性不足。本文采用轻量级垃圾回收技术和传统的TD算法相结合的算法并充分考虑了Python循环垃圾回收的特点对循环垃圾回收算法进行了优化并进行了实验验证。
【关键词】:Python 虚拟机 内存管理 贪心策略 实证研究 垃圾回收 优化
【学位授予单位】:南京大学
【学位级别】:硕士
【学位授予年份】:2014
【分类号】:TP302
【目录】:
  • 摘要5-7
  • ABSTRACT7-11
  • 第一章 引言11-15
  • 1.1 研究动因11-12
  • 1.2 研究现状12-13
  • 1.3 本文工作13-14
  • 1.4 论文结构14-15
  • 第二章 Python的内存管理15-26
  • 2.1 非容器对象的管理15-17
  • 2.1.1 非容器对象内存池15-16
  • 2.1.2 非容器对象内存池特征分析16-17
  • 2.2 容器对象的管理17-20
  • 2.2.1 Arena17-18
  • 2.2.2 Pool18-19
  • 2.2.3 Block19-20
  • 2.2.4 释放算法20
  • 2.3 Python的垃圾回收机制20-25
  • 2.3.1 引用计数垃圾回收机制21-22
  • 2.3.2 Python解决循环引用的算法22-25
  • 2.4 本章小结25-26
  • 第三章 Python内存管理的实证研究26-32
  • 3.1 问题的提出26-27
  • 3.2 实验设计27-29
  • 3.3 实验结果29-30
  • 3.4 实验数据分析30-31
  • 3.5 本章小结31-32
  • 第四章 非容器对象管理的优化以及其应用32-39
  • 4.1 Python的Web应用32
  • 4.2 非容器对象管理优化32-34
  • 4.2.1 Python VM非容器对象管理算法的缺陷33
  • 4.2.2 基于贪心的非容器对象管理算法33-34
  • 4.3 贪心式内存管理模型特征分析34-35
  • 4.4 实验35-38
  • 4.4.1 实验对象35-36
  • 4.4.2 实验综述36
  • 4.4.3 实验结果及分析36-38
  • 4.6 本章小结38-39
  • 第五章 循环垃圾回收器优化39-53
  • 5.1 基本概念描述39-41
  • 5.2 轻量级的循环垃圾回收算法41-46
  • 5.2.1 计算图41-42
  • 5.2.2 伪代码42-44
  • 5.2.3 LWCC算法的缺陷44-46
  • 5.3 Python循环垃圾回收算法优化46-50
  • 5.3.1 Python循环垃圾回收算法46-48
  • 5.3.2 一种LWCC和TD混合的循环垃圾回收算法48-49
  • 5.3.3 算法的正确性说明49-50
  • 5.4 实验50-52
  • 5.5 本章小结52-53
  • 第六章 总结与展望53-55
  • 6.1 工作总结53-54
  • 6.2 未来工作54-55
  • 参考文献55-59
  • 附录 攻读硕士学位期间发表论文情况59-60
  • 致谢60-61

【相似文献】

中国期刊全文数据库 前10条

1 姚竞;;面向项目的“Python程序设计”教学实践与研究[J];福建电脑;2009年07期

2 透明;;关于Python[J];程序员;2002年03期

3 王宁,汪飞星;基于Python开发气象服务器运行系统界面[J];微机发展;2003年07期

4 汤韬;;Python库简介[J];程序员;2006年06期

5 高昂;;Python近况全接触[J];程序员;2009年04期

6 郭芬;刘明;;Python垃圾收集器原理研究及应用[J];信息技术;2009年07期

7 王丽;;Python的元类编程研究[J];电脑编程技巧与维护;2011年06期

8 李爱宁;唐勇;孙晓辉;刘昕彤;;基于Python语言的3DES算法优化[J];计算机系统应用;2011年08期

9 曾浩;;Python在其它语言中的应用研究[J];大众科技;2012年07期

10 鞠文飞;曾智锐;;使用Python开发跨平台的单词助记程序[J];电脑编程技巧与维护;2012年24期

中国重要会议论文全文数据库 前5条

1 ;Development of Python-based ArcGIS Tools for Spatially Balanced Forest Sampling Design[A];Information Technology and Computer Science—Proceedings of 2012 National Conference on Information Technology and Computer Science[C];2012年

2 伊鹏跃;于哲峰;汪海;;基于Abaqus/Python的三维复合材料层压板有限元建模参数化开发[A];第17届全国复合材料学术会议(复合材料结构设计与性能表征分论坛)论文集[C];2012年

3 黄佳聪;高俊峰;;基于Python编程语言的空间动态模型集成[A];自然地理学与生态安全学术论文摘要集[C];2012年

4 于文丽;;基于Python的空间自相关模式研究[A];中国地理学会百年庆典学术论文摘要集[C];2009年

5 郭霞;关志东;刘遂;陈萍;刘佳;王欣晶;邱太文;;基于Python的Abaqus二次开发在层压板修理模拟中的应用[A];计算机辅助工程及其理论研讨会2013(CAETS2013)论文集[C];2013年

中国重要报纸全文数据库 前6条

1 高寿福;无所不能的灵蛇——Python[N];中华读书报;2001年

2 ·特约作者 邹肇辉;BT编程的王者[N];电脑报;2005年

3 易水;IT新词集锦(403)[N];计算机世界;2004年

4 本报记者 蒙克;颠覆传统数据库的“玩具”[N];网络世界;2009年

5 ;Ruby on Rails[N];计算机世界;2006年

6 周蓉蓉;中低端Unix直指Linux[N];计算机世界;2006年

中国硕士学位论文全文数据库 前10条

1 周健;Python虚拟机内存管理的研究[D];南京大学;2014年

2 胡忠帅;基于Python的企业安全漏洞管理方法研究[D];北京邮电大学;2015年

3 王国强;基于Python的SDG-HAZOP软件中推理规则问题的研究[D];北京化工大学;2009年

4 邝洪胜;基于Python的电商导购APP设计与实现[D];华南理工大学;2015年

5 李悦;基于Python+Tkinter的Linux GUI辅助管理工具的设计与实现[D];吉林大学;2009年

6 赵强;用于PCB版图审查的Python脚本子系统设计与实现[D];西安电子科技大学;2014年

7 赵明洪;Python程序设计题的查重研究[D];新疆农业大学;2015年

8 曹明君;基于Visual Studio与Python平台开发有限元分析结果自动后处理系统[D];青岛理工大学;2015年

9 王健;Python插件在CG制作管理中的应用[D];南京理工大学;2008年

10 张正阳;基于Python的户外通讯设备连接关系的挖掘研究[D];苏州大学;2015年



本文编号:821066

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/821066.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户773bc***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com