Poedu_计算机基础_lesson04_20160830_磁盘

问题:
  1.存储程序方式是指的什么
  2.如何通过内存来提高磁盘的访问速度
  3.Windows为例,他为了节约内存用了哪些手段


1.存储数据的部件:(存储介质)
      1)寄存器   :CPU内部 速度最快 ,数量少
      2)内存:速度中等,数量中等
   
( 内存地址不代表内存)
      3)磁盘:慢速、容量大、价格低
  

速度顺序:从上到下

容量顺序:从下到上



2.存储式计算机数据的流动方向:硬盘->内存->寄存器


3.磁盘缓存:提高数据从硬盘到内存的效率 ( 内存当磁盘用)


历程:

嫌弃磁盘读取速度不够快 

  =>解决方法: 磁盘缓存:在CPU读取硬盘数据的同时,硬盘将数据同样传送到内存中,下次CPU访问该数据的时候直接就从内存读取,速度会有提升

=> 导致内存不够用

  =>解决方法:虚拟内存(在磁盘中划出一块区域用于程序的加载)

  =>例:在加载程序的时候,会出现“Loading”提示,期间计算机内部可能在发生page in以及page out的操作,即内存中的数据与缓存在磁盘中的数据进行置换


4.节约硬盘的编程方式:
  1)函数共用 (动态链接库)
  2)被调用方清理栈
  3)数据压缩

      RLE压缩法(AAAALLLL=A4L4) 

=> 图像、EXE的压缩,但是无法很好的压缩文本

对于文本:采用哈夫曼算法( 可逆算法 ):

       =>找频率

=>频率高的用短bit表示

 =>例如文本中出现'C' 100次,‘D’ 10次 。可以用01代表'C'  ,用10代表‘D’

     =>计算:一个字母占1个字节,1字节=8bit。那么原文中‘C’应该占用:8*100=800字节,压缩过后,用01替代'C',那么需要的空间是:2bit*100=200字节,节省出了600字节的空间

=>频率高的用短bit表示,而频率低的用长bit表示,即有可能出现6bit表示一个字母的情况,这时候因为该字母出现的少,所以更能节省空间


5.概念补充:一簇=一个扇区=512byte ==>最小单位

=>即使只 存了2byte的数据 也同样会占512byte

       =>注意:一簇里面不能装两个不同的文件

    =>即:不能把两个不同文件的数据写入同一个扇区

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值