内存抖动
来源:互联网 发布:linux c书籍 编辑:程序博客网 时间:2024/04/29 20:39
内存抖动(memory thrashing)
现代操作系统都有一个叫虚拟内存的概念。操作系统如果只使用物理内存作为可用内存的话,会很受限制。于是就提出一种以廉价硬盘代替昂贵内存的方法,“扩充”可用内存。
于是,就在硬盘上划出一部分硬盘空间用来暂时存放内存数据。当系统进程发现物理内存不够了,就在内存空间上找一些不活跃的进程,把它占用的内存复制到硬 盘上,空出来的内存就可以重新使用了。而这时内存被空出来的进程并不知道其实他们其实已经被停下来了。当这些被停下来的进程重新激活,就需要再找一块不那 么活跃的进程占用的内存空间,把它们的内存拷出来,把原来硬盘上的数据再拷回去。
假如内存相对应用程序要求严重不足,就会导致这种数据的内存/硬盘频繁切换,反而占用了大量CPU时间,而其实这些CPU时间应该是用来运行程序的。按我的理解,这应该就是抖动了吧。
页面的频繁更换,导致整个系统效率急剧下降,这个现象称为内存抖动。
抖动一般是内存分配算法不好,内存太小引或者程序的算法不佳引起的页面频繁从内存调入调。
比如:
在用页式管理的操作系统中,可供程序用的内存大小为3页,采用最近最久未使用的算法或者先进先出的算法分配内存,请求调用页面的顺序为:1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4.。。。。。。。。。。。
这样的话,每一次cpu要调用数据或者程序时数据或程序所在的页都不知内存中,都要和外存对换页。这就是抖动!
转链接:http://qing.blog.sina.com.cn/2161971512/80dd113833002j7a.html
0 0
- 内存抖动
- 内存抖动
- 内存抖动
- 内存抖动
- 什么是内存抖动
- 避免发生内存抖动
- 内存抖动和内存泄漏
- Android内存基础——内存抖动
- 抖动
- 内存管理和页抖动(pagethrashing)
- 意外的内存分配:JIT编译抖动
- Android 内存抖动 性能分析 <10>
- 内存抖动,以及观测内存的状态的工具分析
- Android之内存泄露、内存溢出、内存抖动分析
- Android 内存优化系列笔记(一)内存抖动
- 一篇关于_安卓内存抖动的文章
- 内存优化 . 内存泄露 内存溢出 内存抖动 分析与解决.android stido 工具
- Android App卡顿慢优化之解决内存抖动及内存泄漏
- Cannot reduce the visibility of the inherited method from 编译错误
- android 图片音乐下载
- iOS/iPhone 程序文件目录结构以及启动流程
- iosk开发结构
- cocos2d-x 源码分析 : Ref (CCObject) 源码分析 cocos2d-x内存管理策略
- 内存抖动
- 安卓文件IO部分,东抄西抄来的
- Ardunio mpu6050 dmp 数据通过串口实现与matlab(mac)实时绘图 学习过程 【2014-9-7】
- 指针的引用——在函数中的巧妙应用
- 安卓Tab导航的两种方式
- 关于mindmanager报错的解决方案
- Fedora 20升级内核后VirtualBox不能正常使用的问题
- How I Met Your Mother
- 软链接与硬链接的区别