计算机组成的学习

    xiaoxiao2021-03-25  150

    冯诺伊曼结构

    计算机由五大组成部分构成:

    运算器+控制器(CPU),存储器(内存),输入设备,输出设备

    数据和指令以二进制形式,不加区分的存放在存储器中

    下图是工作原理

    cpu是不管内存中存储的数据是值或是地址的,cpu工作时只是从内存中取出一条指令执行,然后再取一条指令执行

    在物理层面,计算机的各个部件是以以下的形式连接在一起的

    各部件之间要传输的数据都是靠I/O总线来进行传输的

    cpu在执行指令的过程是流水线的操作 可以简单的分为三个步骤:取指,译码,执行

    cpu自身就分为3个区域:区域1就负责取指,取指后交给区域2,区域2将获取的指令译码,完成后交给区域3执行,就这样指令源源不断的进入cpu中得到了执行

    cpu的执行速度是非常非常快的,比内存和硬盘开好几个数量级

    为了直观的看出速度的差别,图片制作者将cpu执行一次的时间规定为1s,内存执行一次就为6min,磁盘读取一次的时间为1~12个月

    时间上的差距是非常非常大的

    计算机内各部件之间速度不匹配的问题是计算机系统的核心问题

    解决方法有两种:

    1.提升硬盘等设备的速度,使之和cpu匹配

    现阶段不可能

    2.承认局限,但充分压榨cpu的能力,让cpu"忙死"

    将原来的同步操作变成异步操作

    将程序的顺序执行变成并发执行

    增加中间层

    将计算机比喻为餐馆

    如果是同步的操作,那餐馆一次只能接待一个人,执行效率太慢

    局部性原则:

    –时间局部性:是指如果程序中的某条指令一旦执行,则不久之后该指令可能再次被执行;如果某数据被访问,则不久之后该数据可能再次被访问。 –空间局部性:是指一旦程序访问了某个存储单元,则不久之后。其附近的存储单元也将被访问。

    •当CPU要读取一个数据时,首先从CPU缓存中查找,找到就立即读取并送给CPU处理; •没有找到,就从速率相对较慢的内存中读取并送给CPU处理,同时把这个数据所在的数据块调入缓存中,可以使得以后对整块数据的读取都从缓存中进行,不必再调用内存 学自:“码农翻身”微信公共号

    转载请注明原文地址: https://ju.6miu.com/read-11657.html

    最新回复(0)