《软件设计师教程》第 1 章 计算机系统知识

it2024-01-20  70

计算机系统知识

1.1 计算机系统基础知识1.1.1 计算机系统硬件基本组成1.1.2 中央处理单元1.1.3 数据表示1.1.4 校验码 1.2 计算机体系结构1.2.1 计算机体系结构的发展1.2.2 存储系统1.2.3 输入/输出技术1.2.4 总线结构 1.3 安全性、可靠性与系统性能评测基础知识1.1.1 计算机安全概述1.1.2 加密技术和认证技术1.1.3 计算机可靠性1.1.4 计算机系统的性能评价

1.1 计算机系统基础知识

1.1.1 计算机系统硬件基本组成

计算机系统是由硬件和软件组成的,它们协同工作来运行程序。计算器的基本硬件系统由运算器、控制器、存储器、输入设备和输出设备5大部件组成。运算器、控制器等部件被集成在一起统称为中央处理单元(Central Processing Unit,CPU)。CPU是硬件系统的核心,用于数据的加工处理,能完成各种算术、逻辑运算及控制功能。存储器是计算机系统中的记忆设备,分为内部存储器和外部存储器。前者速度高、容量小,一般用于临时存放程序、数据、及中间结果。而后者容量大、速度慢,可长期保存程序和数据。输入设备和输出设备合称为外部设备(简称外设),输入设备用于输入原始数据及各种命令,而输出设备则用于输出计算机运行的结果。

1.1.2 中央处理单元

中央处理单元(CPU)是计算机系统的核心部件,它负责获取程序指令、对指令进行译码并加以执行。

1、CPU的功能 程序控制:CPU通过执行指令来控制程序的执行顺序,这是CPU的重要功能。 操作控制:一条指令功能的实现需要若干操作信号配合来完成,CPU产生每条指令的操作信号并将操作信号送往对应的部件,控制相应的部件按指令的功能要求进行操作。 时间控制:CPU对各种操作进行时间上的控制,即指令执行过程中操作信号出现时间、持续时间及出现的时间顺序都需要进行严格的控制。 数据处理:CPU通过对数据进行算术运算和逻辑运算等方式进行加工处理,数据加工处理的结果被人们所利用。所以,对数据的加工处理也是CPU最基本的任务。

2、CPU的组成

CPU主要由运算器、控制器、寄存器组和内部总线等部件组成。

1)运算器 运算器由算术逻辑单元(Arithmetic and Logic Unit,ALU)、累加寄存器、数据缓冲寄存器和状态条件寄存器等组成,它是数据加工处理部件,用于完成计算机的各种算术和逻辑运算。相对于控制器而言,运算器接受控制器的命令而进行动作,即运算器所进行的全部操作都是由控制器发出的控制信号来指挥的,所以它是执行部件。

算术逻辑单元(ALU)、累加寄存器(AC)、数据缓冲寄存器(DR)、状态条件寄存器(PSW)

2)控制器 运算器只能完成运算,而控制器用于控制整个CPU的工作,它决定了计算机运行过程的自动化。它不仅要保证程序正确执行,还要能够处理异常事件。控制器一般包括指令控制逻辑、时序控制逻辑、总线控制逻辑和中断控制逻辑等几个部分。 指令控制逻辑要完成取指令、分析指令和执行指令的操作,其过程分为取指令、指令译码、按指令操作码执行、形成下一条指令地址等步骤。

指令寄存器(IR)、程序计数器(PC)、地址寄存器(AR)、指令译码器(ID)

时序控制逻辑要为每条指令按时间顺序提供应有的控制信号。总线逻辑是为多个功能部件服务的信息通路的控制电路。中断控制逻辑用于控制各种中断请求,并根据优先级的高低对中断请求进行排队,逐个交给CPU处理。

2)寄存器组 寄存器组可以分为专用寄存器和通用寄存器。运算器和控制器中的寄存器是专用寄存器,其作用是固定的。通用寄存器用途广泛并可由程序员规定其用途,其数目因处理器不同有所差异。

3、多核CPU 核心又称为内核,是CPU最重要的组成部分。CPU所有的计算、接受/存储命令、处理数据都由核心执行。各种CPU核心都具有固定的逻辑结构,一级缓存、二级缓存、执行单元、指令级单元和总线接口等逻辑单元都会有合理的布局。 多核即在一个单芯片上面集成两个甚至更多个处理器内核,其中,每个内核都有自己的逻辑单元、控制单元、中断处理器、运算单元、一级Cache、二级Cache共享或者独有,其部件的完整性和单核处理器内核相比完全一致。

1.1.3 数据表示

各种数值在计算机中表示形式称为机器数,其特点是采用二进制计数制,数的符号用0和1表示,小数点则隐含,表示不占位置。机器数对应的实际数值称为数的真值。

机器数有无符号数和带符号数之分。无符号数代表正数,在机器数中没有符号位。对于无符号数,若约定小数点的位置在机器数的最低位之后,则是纯整数;若约定小数点的位置在机器数的最高位置之前,则是纯小数。对于带符号数,机器数的最高位是表示正、负的符号位,其于则表示数值。

为了方便运算,带符号的机器数可采用源码、反码和补码等不同的编码方式,机器数的这些编码方法称为码制。

1.1.4 校验码

1.2 计算机体系结构

1.2.1 计算机体系结构的发展

1.计算机系统结构概述 1965年,阿姆达尔(G.M.Amdahl)在介绍IBM360系统指出:计算机体系结构是站在程序员的角度所看到的计算机属性,即程序员要能编写出可在机器上正确运行的程序必须了解的概念性结构和功能特性。 1982年,梅尔斯(G.J.Myers)在其所著的《计算机体系结构的进展》(Advances in Computer Architecture)一书中定义了组成计算机系统的若干层次,每一层都提供一定的功能支持它上面的一层,并把不同层之间的界面定义为某种类型的体系结构。Myers的定义发展了Amdahl的概念性结构思想,明确了传统体系结构就是指硬件与软件之间的界面,即指令集体系结构。 1984年,拜尔(J.L.Baer)在一篇题为“计算机体系结构(Computer Architecture)”的文章中给出了一个含义更加广泛的定义:体系结构由结构、组织、实现、性能4个方面组成。其中结构指计算机系统各种硬件的互联,组织指各种部件的动态联系与管理,实现指各模块设计组装完成,性能指计算机系统的行为表现。这个定义发展了Amdahl的功能特性思想。

计算机体系结构、计算机组织和计算机实现三者的关系: (1)计算机体系结构(Computer Architecture)是指计算机的概念性结构和功能属性。 (2)计算机组织(Computer Qrganization)是指计算机体系结构的逻辑实现,包括机器内的数据流和控制流的组成以及逻辑设计等(常称为计算机组成原理)。 (3)计算机实现(Computer Implementation)是指计算机组织的物理实现。

2.计算机系统结构分类 (1)从宏观上按处理机的数量进行分类,分为单处理机、并行处理机与多处理系统和分布式处理系统。 (2)从微观上按并行程度分类,由Flynn分类法、冯泽云分类法、Handler分类法和Kuck分类法。

3.指令系统

一个处理器支持的指令和指令的字节级编码称为其指令集体系结构(Instruction Set Archiecture,ISA),不同的处理器族支持不同的指令集体系结构,因此,一个程序被编译在一种机器上运行,往往不能在另一台机器上运行。

1)指令集体系结构的分类 (1)操作数在CPU中的存储方式,即操作数从主存中取出后保存在什么地方。 (2)显示操作数的数量,即在典型的指令中有多少个显示命名的操作数。 (3)操作数的位置,即任一个ALU指令的操作数能否放在主存中,如何定位。 (4)指令的操作,即在指令集中提供哪些操作。 (5)操作数的类型与大小。 2)CISC和RISC

3)指令的流水处理

4.阵列处理机、并行处理机和多处理机

并行性包括同时性和并发性。其中,同时性是指两个或者两个以上的事件在同一时刻发生,并发性是指两个或者两个以上的事件在同一时间间隔内连续发生。

从计算机信息处理的步骤和阶段的角度看,并行处理可分为如下几类。 (1)存储器操作并行。 (2)处理器操作步骤并行(流水线处理机)。 (3)处理器操作并行(阵列处理机)。 (4)指令、任务、作业并行(多处理机、分布式处理机、计算机网络)。

1)阵列处理机 阵列处理机将重复设置的多个处理器单元(PU)按一定方式连成阵列,在单个控制部件(CU)控制下,对分配给自己的数据进行处理,并行的完成一条指令所规定的操作。这是一种单指令流多数据流计算机,通过资源重复实现并行性。

2)并行处理机 SIMD和MIMD是典型的并行处理机,SIMD有共享存储器和分布存储器两种形式。

3)多处理机 多处理机系统是由多台处理机组成的系统,每台处理机有属于自己的控制部件,可以执行独立的程序,共享一个主存储器和所有外部设备。它是多指令多数据流计算机。在多处理系统中,机间的互连技术决定了多处理机的性能。多处理机之间的互连要满足高频带、低成本、连接方式的多样性以及在不规则通信情况下连接的无冲突性。

4)其他计算机 集群一般是指连接在一起的两个或多个计算机(节点)。集群计算机是一种并行或者分布式处理系统,由很多连接在一起的独立计算机组成,像一个单集成的计算机资源一样协同工作,主要用来解决大型计算问题。计算机节点可以是一个单处理器或多处理器的系统,拥有内存、I/O设备和操作系统。连接在一起的计算机集群对用户和应用程序来说像一个单一的系统,这样的系统可以提供一种价格合理的且可获得所需性能和快速而可靠的服务的解决方案。

1.2.2 存储系统

1.2.3 输入/输出技术

1.2.4 总线结构

1.3 安全性、可靠性与系统性能评测基础知识

1.1.1 计算机安全概述

计算机安全是一个涵盖非常广的课题,即包括硬件、软件和技术。又包括安全规划、安全管理和安全监督。计算机安全可包括安全管理、通信与网络安全、密码学、安全体系及模型、容错与容灾、涉及安全的应用程序及系统开发、法律、犯罪及道德规范等领域,

1、计算机的安全等级 计算机系统中的三类安全性是指技术安全性、管理安全性和政策法律安全性。但是,一个安全产品的购买者如何知道产品的设计舒服符合规范。是否能解决计算机网络的安全问题,不同组织机构各自制定了一套安全评估准则。一些重要的安全评估准则如下: (1)美国国防部和国家标准局推出的《可信计算机系统评估准则》(TCSEC)。 (2)加拿大的《可信计算机产品评估准则》(CTCPEC)。 (3)美国制定的《联邦(最低安全要求)评估准则》(FC)。 (4)欧洲英、法、德、荷四国国防部门信息安全机构联合制定的《信息技术安全评估准则》(ITSEC)该准则事实上已成为欧盟各国使用的共同评估标准。 (5)美国制定的《信息技术安全通用评估准则》(简称CC标准),国际标准组织(ISO)与1996年批准CC标准以ISO/IEC 15408—1996名称正式列入国际标准系列。

其中美国国防部和国家标准局推出的《可信计算机系统评估准则》TCSEC/TDI将系统划分为4组7个等级。

组安全级别定义1A1可验证安全设计。提供B3级保护,同时给出系统的形式化隐秘通道分析、非形式化代码一致性验证2B3安全域。该级别的TCB必须满足访问监控器的要求,提供系统恢复过程B2结构化安全保护。建立形式化的安全策略模型,并对系统内的所有主体和客体实施自主访问和强制访问控制B1标记安全保护。对系统的数据加以标记,并对标记的主体和客体实施强制存取控制3C2受控访问控制。实际上是安全产品的最低档次,提供受控的存取保护,存取控制以用户为单位C1只提供了非常初级的自主安全保护,能实现对用户和数据的分离,进行自主存取控制,数据的保护以用户组为单位4D最低级别,保护措施很小,没有安全功能

1.1.2 加密技术和认证技术

1.1.3 计算机可靠性

1.1.4 计算机系统的性能评价

最新回复(0)