Python并行编程中文版

SISD

  • single CPU处理器架构
  • 对于每一个CPU时钟按照Fetch:CPU从一片内存区域中获得数据和指令. Decode: CPU对指令进行解码 . Excute:执行, 将结果保存在另一个寄存器中
  • 在计算机中寄存器最快, 内存次之, 硬盘最慢
  • 同样是晶体管存储设备, 为什么寄存器比内存更快?
  • 1.距离不同, 但不是主要因素, 内存离CPU比较远, 所以要耗费更长的时间读取.
  • 2.硬件设计不同, iphone5s为例, CPU为A7, 寄存器有60000多位, 而内存是1GB约为80亿位, 意味着高性能, 高成本的设计可以用在寄存器上, 但是放在内存中, 没耗电一点点机会被放大80亿倍.
  • 工作方式不同: 寄存器的工作方式简单, 只有两步:1.找到相关位 2.读取这些位
  • 内存的工作方式就复杂很多
  • 先找到数据的指针, 指针可能放在寄存器内, 将指针送往内存管理单元, 由MMU将虚拟内存地址翻译成实际的物理地址
  • 将物理地址送往内存控制器, 由内存控制器找出该地址在哪一根内存插槽上.
  • 确定在哪一个内存块上, 从该块读取数据
  • 数据先送回内存控制器, 再送回CPU然后开始使用
  • ROM : 只读存储器, 通常是在硬件上集成的可读芯片, 作用是识别与控制硬件.只能读取, 不能写入.ROM在断电时仍然可以保存数据
  • RAM : 随机存储器, 断电后数据丢失.RAM有两大类, 一种为静态RAM当数据存入其中后不会消失.SRAM, 是目前最快的存储设备.但是价格昂贵可以用作CPU的一级缓冲, DRAM是动态RAM必须在一段时间不断刷新才能保持其中的数据.计算机的内存就是DRAM
  • 计算机的硬件的执行逻辑
  • cpu主要就是处理各种指令,运算, 跳转, 存取内存之间, 这些数据指令一般存在RAM中, cpu必须将RAM中的指令和数据取到cpu中的各种寄存器指令才能执行.指令的地址存储在指针寄存器中, 而数据可以放在通用寄存器.cpu中还有很多其他寄存器, 控制cpu的各种功能, 汇编语言就是操作这些寄存器,完成运算任务.
  • 现代的高性能cpu内部都会有缓存, 一般分为指令缓存和数据缓存
  • ROM很多, pc主板上的rom芯片,关机后数据不丢失, 开机先运行bios程序完成硬件的配置检查, 将磁盘的第一个扇区中的操作系统的引导程序装入内存.然后跳转到引导程序.引导程序会将操作系统存储在磁盘上的内核装入内存,最后执行内核程序.内核加载文件系统, 执行gui程序就看到pc界面了
  • 推荐书籍: 深入理解计算机系统
发布了140 篇原创文章 · 获赞 53 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_44291044/article/details/104622047