计算机系统概论

1、冯诺依曼结构计算机工作原理及层次结构分析

1.1 冯诺依曼计算机的工作原理

  • 存储系统:将程序存放在计算机的存储器中(存储系统的快速构建与访问)
  • 程序控制:按指令地址访问存储器并取出指令,经译码器依次产生指令执行所需的控制信号,实现对计算的控制,完成指令的功能 (指令系统、控制器设计)

1.2 冯诺依曼计算机的组成

1.2.1 硬件系统

image-20230908085125921

  • 主机:CPU(运算器+控制器)、内存
  • 外设:输入设备、输出设备、外存储器
  • 总线:地址线、数据线、控制线

运算器

  • 算术运算:加、减、乘、除
  • 逻辑运算:与、或、非
  • 基本结构:ALU(Arithmetic Logical Unit)、寄存器、连接通路

image-20230908085649476

功能与结构的关系:指令、数据类型、性能要求 …

控制器

  • 基本功能:产生指令执行过程所需要的所有控制信号,控制相关功能部件执行相应的功能
  • 控制信号的方式:电平信号、脉冲信号
  • 产生控制信号的依据:指令、状态、时序
  • 控制信号的产生方式:微程序、硬布线

image-20230908090124095

存储器

  • 功能:存储原程序、原数据、运算中间结果
  • 工作模式: 读、写
  • 工作原理:按地址访问,读/写数据
容量地址线数量
1K10
1M20
1G30

image-20230908090856275

输入/输出设备

  • 输入设备:向计算机输入数据(键盘、鼠标、网卡、扫描仪等)
  • 输出设备:输出处理结果(显示器、声卡、网卡、打印机等)

image-20230908091432451

1.2.2 软件系统

  • 可运行的思想和内容的数字化
    • 思想:算法、规律、方法–程序表达
    • 内容:图形、图像、数据、声音、文字等被处理的对象
  • 软件的表现形式:程序与数据(以二进制表示的信息)
  • 软件的核心:算法

image-20230908091804950

类型大致分为三种:

  • 系统软件
    • 如操作系统、网络系统和编译系统
  • 支持软件
    • 开发工具、界面工具等
  • 应用软件
    • 字处理软件、游戏软件

1.2.3 硬件与软件的关系

  • 相互依存

  • 逻辑等效性

    某些功能可以由硬件实现、也可由软件实现

  • 协调发展

1.3 计算机的层次结构

image-20230908092246265

基本认识:

  • 不同用户处在不同层次
  • 不同层次具有不同属性
  • 不同层次使用不同工具
  • 不同层次的代码效率不同

概念:

  • 透明性概念

    • 本来存在的事务或属性,从某个角度去看,却好像不存在

    • 如硬件的特性对C语言程序设计者而言就具有透明性

  • 系统观

    • 当硬件结构发生变化时要想到可能对软件产生的影响

    • 不同类型的软件对硬件有不同的要求

    • 编程的CPU硬件相关性,编程应查阅对应CPU的编程手册

  • 软硬件的分界线

    • 在指令集架构层
    • 软、硬件的接口,是指令操作硬件的接口
    • 指令格式及指令的设计与硬件关联

2、计算机系统性能评价

2.1 非时间指标

机器字长:指机器一次能处理的二进制位数

  • 由加法器、寄存器的位数决定

  • 一般与内部寄存器的位数相等(字长)

  • 字长越长,表示数据的范围就越大,精确度越高

  • 目前常见的有32位和64位

    image-20230908093533996

总线宽度:数据总线一次能并行传送的最大信息位数

  • 一般指运算器与存储器之间的数据总线位数
  • 有些计算机内部与外部数据总线宽度不一致
  • 8086、80286、80386内外数据总线等宽
  • 8088、80386SX外部总线宽度8位内部总线宽度16位
  • Pentinum外总线64位、内总线32位(两条32位流水线)

image-20230908095604263

主存容量与存储带宽

  • 主存容量
    • 是指一台计算机主存所包含的存储单元总数
  • 存储带宽
    • 指单位时间内与主存交换的二进制信息量,常用单位是B/s(字节/秒)。(影响存储带宽的指标包括数据位宽和数据传输速率)

2.2 时间指标

1)主频f/时钟周期T,外频、倍率

  • 主频f(周期/秒)

    指CPU内核工作的时钟频率,即CPU内数字脉冲信号振荡的速率,与CPU实际的运算能力之间不是唯一的、直接关系

  • 时钟周期T

    也称节拍周期,是计算机中最基本的、最小的时间单位。在一个时钟周期内,CPU仅完成一个最基本的动作

  • f与T的关系

    互为倒数,f越高,T就越小(f = 100MHz时T = 10ns,f = 1GHz时T = 1ns)

  • 外频

    指CPU(内存)与主板之间同步的时钟频率

  • 倍频

    CPU主频与外频之间的倍率

主频 = 外频 × 倍频

如:Pentium 4 2.4G CPU主频

24000M = 133M(外频) × 18(倍频)

2)CPI (Clock cycles Per Instruction)

  • 执行一条指令(平均)需要的时钟周期数(即T周期的个数)

  • 单条指令CPI、一段程序所有指令的CPI、指令系统CPI等

CPI = 程序中所有指令的时钟周期之和 / 程序中指令总数

​ = ∑ \sum_{} (程序中各类指令的CPI × 程序中该类指令的比例)

  • IPC (Instruction per Clock)

    每个时钟周期内执行的指令条数(并行)

3)MIPS (Million Instruction Per Second)

  • 每秒钟CPU能执行的指令条数(单位:百万条/秒)

    MIPS = 指令条数 / (执行时间 × 10^6)

    ​ = 指令条数 /(所有指令CPU时钟周期之和 / f × 10^6)

    ​ = f /( CPI × 10^6) (全性能公式)

4)CPU时间

  • 执行一段程序所需的时间

    (CPU时间 + I/O时间 + 存储访问时间 + 各类排队时延等)

    ​ CPU时间 = 程序中所有指令的时钟周期之和 × T

    ​ = 程序中所有指令的时钟周期数之和 / f

  • 考虑CPI后的CPU时间

    CPU时间 = 总指令数 × ∑ i = 1 n \sum_{i=1}^{n} i=1n (CPI1 × ICi / 总指令数) × 时钟周期时间

​ = 总指令数 × CPI × T

  • 考虑MIPS后的CPU时间

    MIPS = 指令数量 / 执行指令的时间 × 10^6

    程序的执行时间 t = 指令数量 / MIPS × 10^6

3、计算机性能测试

3.1 目的

  • 全面了解所测试计算机的性能
  • 实时掌握计算机的工作状态
  • 为对比、评估、维护提供依据
  • ……

3.2 基本原理

  • 计算机系统中配置了大量的传感器和寄存器,系统运行的相关参数保存在对应的寄存器中
  • 测试程序通过读取对应寄存器的值获得系统运行的状况
  • 通过图形 / 数据方式显示获取的状态数值

3.3 常见的测试工具

1)CPU测试工具

  • CPUmark

    综合CPU测试,包括系统存储,浮点运算和逻辑运算;

  • SysID

    测试CPU电压,运行频率, L1、L2 Cache以及各项技术资料;

  • Hot CPU Tester

    可测试机器稳定性,尤其是超频后的稳定性,找出CPU的最高超频点或缺陷,还可检测CPU的详细性能指标并给出量化的分数值。包括「复杂矩阵」「排序算法「快速傅立叶变换」 「CPU 缓存」「内存」「硬盘」 及指令集等。另外其CPU/Mem Burn-in )还可以作为新购机时的烤机软件来使用。

2)显卡测试工具

  • 3DMark

    除衡量显卡性能外,已渐渐转变成一款衡量整机性能的软件已发行3Dmark99、3Dmark 11和The new 3DMark等近10个版本;

  • N-Bench2

    重点测试CPU以及系统图形性能;

  • FurMark

    通过皮毛渲染算法来衡量显卡的性能及其稳定性,提供了全屏/窗口、预定分辨率、基于时间或帧的测试、多种多重采样反锯齿、竞赛等多种模式。

3)硬盘测试工具

  • Hard Disk Speed

    硬盘测速软件;

  • Disk Benchmark

    通过对不同大小的数据块对磁盘读/写速度的影响检测硬盘、U盘、存储卡及其它可移动磁盘的读/写入速率;

  • iometer

    可被配置为基准测试程序的磁盘和网络I/O的负载,可测试磁盘和网络控制器的性能、总线带宽和时延等参数;

  • HDD Temperature Pro

    硬盘温度探测软件。

4)内存测试工具

  • CTSPD

    选择主板厂商及型号后可详细测试内存的信息,包括:CAS
    latency (列地址选通时延)、RAS to CAS delay(RAS到CAS的相对延
    迟时间)、RAS precharge Trp (RAS预充电时间)、DIMM内存生产
    商和DIMM编号等信息。

  • Memory Speed

    通过读写不同大小的块状数据来测试内存的性能;

  • Memory Transfer Timing Utility

    通过对源文件和目标文件进行校
    正和非校正复制,测试内存的读、写速率;

5)其他综合测试

  • 鲁大师

    国内最大的免费系统工具软件,拥有硬件检测、硬件测试、系
    统优化、节能降温、驱动安装等功能。

  • 其它测试工具:
    http://www.newsmth.net/nForum/#!article/CompMarket/523

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/103807.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Pod和容器设计模式

为什么需要Pod 一些应用的实现是需要多个进程配合完成的,由于容器实际上是一个“单进程”模型,如果在容器里启动多个进程会存在进程管理的难题。在Kubernetes里面,实际上会被定义为一个拥有四个容器的Pod。 Pod相当于进程组 Kubernetes 是…

【实训】“宅急送”订餐管理系统(程序设计综合能力实训)

👀樊梓慕:个人主页 🎥个人专栏:《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》 🌝每一个不曾起舞的日子,都是对生命的辜负 前言 大一小学期,我迎来了人生中的第一次实训…

合宙Air724UG LuatOS-Air LVGL API控件-页面 (Page)

页面 (Page) 当控件内容过多,无法在屏幕内完整显示时,可让其在 页面 内显示。 示例代码 page lvgl.page_create(lvgl.scr_act(), nil) lvgl.obj_set_size(page, 150, 200) lvgl.obj_align(page, nil, lvgl.ALIGN_CENTER, 0, 0)label lvgl.label_crea…

Mediasoup在node.js下多线程实现

mediasoup基于socket.io的交互消息来完成join-room的请求过程。Join的过程,实际就是获取stream的过程,也就是视频加载时间(video-load-speed)。在RTMP系统,视频加载时间是秒开。Mediasoup给出的第一个frame是I-frame,但由于交互的…

HTML5Plus

之前写过在 vue 中使用 mui 框架的方法,因为用 vue 开发后打包 5App 会有一些问题,所以当时用到了,最近又一次开发移动端,不同的是这次使用的是 vue3 开发的,导致之前使用的 vue-awesome-mui 依赖不能使用了&#xff0…

网络威胁防御+资产测绘系统-Golang开发

NIPS-Plus 网络威胁防御资产测绘系统-Golang开发 项目地址:https://github.com/jumppppp/NIPS-Plus NIPS-Plus 是一款使用golang语言开发的网络威胁防御系统(内置资产测绘系统) 网络威胁流量视图网络威胁详细信息浏览列表网络威胁反制探测攻…

安全模型中的4个P

引言:在安全模型中,经常会碰到PDR,PPDR,IPDRR,CARTA-PPDR等模型,其中的P,是predict?是prevent?还是protect?还是policy呢? 一、4P字典意思解释 1、predict&a…

安全运营中心(SOC)技术框架

2018年曾经画过一个安全运营体系框架,基本思路是在基础单点技术防护体系基础上,围绕着动态防御、深度分析、实时检测,建立安全运营大数据分析平台,可以算作是解决方案产品的思路。 依据这个体系框架,当时写了《基于主动…

【人月神话】深入了解软件工程和项目管理

文章目录 👨‍⚖️《人月神话》的主要观点👨‍🏫《人月神话》的主要内容👨‍💻作者介绍 🌸🌸🌸🌷🌷🌷💐💐💐&a…

Mybatis的关联关系映射以及自定义resultMap三种映射关系

目录 经典面试题: 一,关联关系映射 二,具体步骤: 总结 前言: 今天我们来学习Mybatis的关联关系映射以及自定义resultMap三种映射关系,希望这篇博客可以帮助大家的学习工作!!&…

Jdk1.7之ConcurrentHashMap源码总结

文章目录 一、常见属性1. 初始化容量2. 加载因子3. 并发级别 二、重要方法1. 构造方法2. ConcurrentHashMap#put方法2.1 ConcurrentHashMap#put#ensureSegment2.2 ConcurrentHashMap#Segment#put2.2.1 Segment#put#scanAndLockForPut2.2.2 Segment#put#rehash 3. ConcurrentHas…

机器学习前沿:改进自身缺陷,满足新战略

前机械师( 来源) 一、说明 机器学习在人工智能历史上扮演重要角色,然而,存在问题也不少。为了适应新时代和新任务,不做出重大改进是不可能的,本篇就一些突出问题和改进做出讨论。以便读者掌握未来的思路和方向。 二、机…