Poedu_计算机科学导论_Lesson04_磁盘与节约内存的方式

 

 

-磁盘缓存

磁盘缓存是指第一次读取磁盘数据时将磁盘中的数据加载到使用数据的地方然后同时将数据加载到内存中,当第二次使用数据时

 

会直接到内存中读取。这样能很大程度解决磁盘速度慢的问题。现如今浏览器,数据库,服务端中大量使用这种技术。

 

-虚拟内存

将磁盘中的一部分划分出来当作内存来使用,这就是虚拟内存。

 

而CPU只能执行物理内存中的数据,当CPU需要执行虚拟内存中的数据时,两者会通过两种方式(分页式,分段式)来进行数据的置换。

 

  • 分段式:将数据根据种类分解成N段,物理内存中只使用需要的段,其余的段存在虚拟内存中。
  • 分页时:数据做成一致的大小,以页为单位,来进行物理内存与虚拟内存的置换(pagein,pageout)。

 -节约内存的编程方式

 

  • 函数共用

     通过DLL(动态链接库)来达到节约内存的作用。

 

  • 被调用方清理栈

    因栈需要存储一些临时使用的值,当一个函数调用完后会进行栈的清理。

    函数的调用有两种方式,stdcall和其他方式。其他方式的调用代码下方需一个addesp.8来进行栈的清理。stdcall会在被调用方的底部生成addesp.8,stdcall可以更加的节约内存,如今默认的都是stdcall。

  • 数据压缩

   数据压缩有很多算法,例如RLE,哈夫曼,RICE,以这些算法来达到我们节约磁盘的效果,压缩算法分为可逆与不可逆。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值