今天,上了大型数据库,了解了mapreduce等等概念,下午学了C#编程语言,tmd不知道是不是软件的问题,继承窗口后的控件怎么也改不了属性。每日必学的软考,以下为笔记:
计算机结构
主机:主存储器,CPU(运算器,控制器)
运算器:计算方面
控制器:指令的控制
计算机体系结构分类 -- Flynn
单指令流单数据流 :控制器:一个 处理器:一个 代表:单处理器系统
单指令流多数据流 :控制器:一个 处理器:多个 代表:阵列处理器 特性:各处理器以异步的形式处理一条数据
多指令流单数据流 :控制器:多个 处理器:一个
多指令流多数据流 :控制器:多个 处理器:多个 代表:集群,多处理器系统
CISC与RISC 指令系统类型
CISC(复杂):数量多,使用频率差别大,可变长格式,可支持多种寻址方式,研制周期长
RISC(精简):数量少,使用频率差别小,固定格式,寻址方式支持少,优化编译,大量运用了寄存器,效率极高(现在使用占比大)
流水线
程序执行时多条指令重叠进行操作的一种准并行实现技术(取指,分析,执行)
流水线周期为执行时间最长的一段,
流水线计算公式:
理论公式:(t1 + t2 +....+ tk) + (n-1) * 流水线周期
实践公式: (k + n -1)*流水线周期
流水线吞吐率: 单位时间处理指令的条数 = 指令条数/流水线处理时间 最大为流水线周期的倒数
流水线的加速比:不使用流水线的执行时间/流水线的执行时间 (越高越好)
流水线的效率:n个任务占有的时空区/k个流水线的总时区(面积比)每个阶段时间一样效率最高
层次化存储结构

Cache
概念:工作于CPU和内存之间,用于提高CPU数据输入输出,改变系统性能(通过局部性原理)
:t1:Cache的存储周期时间,t2:主存的存储周期时间 h:Cache的访问命中率(就是CPU一下子可以在Cache中找到的概率)
Cache + 主存的周期:t3 = h * t1 + t2 * (1-h)
局部性原理:
时间局部性:例如对for循环进行处理
空间局部性:例如数组的一个元素的临近
工作集理论:进程运行时被频繁访问的页面集合(将访问多的存起来,一段时间清楚)
主存 --- 分类
随机存储器
只读存储器
主存 --- 编址
进行计算