5.内存和磁盘的亲密关系

  • 程序存储在磁盘里,必须加载到内存中才能运行(磁盘的读取速度慢)
  • 磁盘缓存:将磁盘中读出的数据存储到内存(提高访问速度)

  • 虚拟内存(virtual memory):将磁盘的一部分作为假想的内存
  • 为实现虚拟内存,需要将实际内存和磁盘中的虚拟内存的内容进行部分置换
Windows提供了虚拟内存机制作为操作系统,虚拟内存的方法有两种:
  • 分页式:磁盘读出到内存(Page in),反之Page out(Windows采用的是分页式)
  • 分段式
    Windows在磁盘上提供了虚拟内存用的页文件(Page file),该文件大小就是虚拟内存大小,通过Windows的控制面板,可以查看和改变当前虚拟内存的设定。
    虚拟内存确实能避免因内存不足导致的应用无法启动,但往往伴随着低速的磁盘访问,应用程序的运行会变得迟钝,因此无法很好地解决内存不足的问题。

    从根本上解决内存不足有两种方法:
1. 扩大内存
2. 减小运行的应用文件:
  •  通过DLL文件实现函数共有。DLL在内存中只装载一次,可以节省有限的内存,而且可以同时为多个进程服务
  • 通过调用_stdcall来减小程序文件的大小





发布了54 篇原创文章 · 获赞 27 · 访问量 1万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 创作都市 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览