杂谈——对计算机组成原理的一些思考

先来了解一下什么是闪存:本质是区别就是------断电后是否数据是否保存。

计算机组成原理的本质是做什么?数据处理,计算机所有操作所有都是围绕数据(或者可以理解为0,1),可以分为两大个方面:

1、数据存储:数据存储依赖于增删改查操作得以实现,而存储的物理介质依赖于磁介质(你也可以粗略理解为磁盘)

2、数据传输:数据传输依赖于总线(数据总线、地址总线、控制总线),而总线或者说数据传输的物理介质依赖于导线/半导体

说到存储,先说一下数据存储的介质有哪些:磁盘(持久化)、内存(中介)、CPU(高速缓存),重点说一下磁盘:

磁盘靠什么存储信息?磁盘表面的磁颗粒对外显正负极(0,1由此而来);磁盘区域是怎么划分的呢?众所周知——磁面、磁道,扇区;磁道宽度和什么有关呢?总线(32位/64位)每个扇区的大小是多少呢?默认4KB(这个是可调的,最常见的内存划分,格式化的时候,4K对齐熟悉吧,对就是这样的)

那为什么是4KB呢?

一方面,如果是4B,那么每个扇区是需要存地址的吧,一个4B,那它所对应的地址存储所占的内存比本身还大,已经失去了它本身的意义,就好比你要建一个目录,目录索引比内容还多(目录占4页,内容只有一页),那目录还有什么用呢?你直接看一页内容不就行了;

另一方面,如果是400KB,那一个磁盘块就这么大,你存一个文件100KB,那后面的300KB只能浪费掉,分配是按磁盘块为单位分的。

所以,太大不行,太小也不行,所以经过前辈不断的实践、测试,找出了这么一个折中的方案,目的只有一个,希望磁盘读取信息的速度更快一些——一方面让扇区的地址存储小一些,另一方面也要兼顾磁盘块的空间不过与浪费

我们都知道数据在计算机中是这样传输的:

                                                      

那为啥它不拿磁盘数据直接攻CPU呢?我们假设直接这样攻,CPU内存是很少的,因为它的主要作用是计算,计算速度是放在第一位的,这就限制了它的内存只有必要的寄存器组(后来也加了高速缓存L1\L2\L3这些)

磁盘内存多,但读取是要靠移动磁头来获取数据的,而机械移动的速度是很慢很慢的,这就造成了发送和接收数据速度不匹配的问题,即磁盘一下拿了很多数据给CPU,但CPU每次只能拿很少的数据,CPU很快就计算完了,再拿就又要到磁盘中取,但这个速度差是非常大的,万倍以上的数量级,即CPU工作一年,要等磁盘数万年,是不是很大的浪费;

为了缩小这个差距,提升效率,引入内存作为中间介质,缓存数据,内存数据传输是通过电信号来传输的,速度自然比磁盘快了许多,这时它的速度差少了两个数量级,在百倍上;

当然而后为了优化,在内存和CPU 之间也采取以上的这种模式,在CPU上加高速缓存L1,L2,L3,现在CPU的利用率大概控制在了20%左右,那什么情况下CPU会打满呢?即短指令的执行,比如64位的指令,包含8个8位的短指令,那CPU就计算八次相当于,CPU使用率就上去了。

 

对于总线,总结几个注意的点吧

  1. 各个元器件之间也是有各自相连接的处理器的,CPU是中央处理器,但不是唯一处理器
  2. 总线为什么用高低电压表示0,1?零电压不行吗?零电压在断路的时候分不出来
  3. 电路控制靠的不是我们书上学的电路开关,靠的是半导体控制电路
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值