【系统架构设计师】计算机系统基础知识 03

系统架构设计师 - 系列文章目录

01 系统工程与信息系统基础

02 软件架构设计

03 计算机系统基础知识


文章目录


前言

国家软考 《系统架构设计师》第二版(即最新版本) 学习笔记


提示:以下是本篇文章正文内容,下面案例可供参考

一、计算机系统概述

计算机系统包含【硬件】和【软件】;【软件】包含【系统软件】和【应用软件】

1.计算机组成

2.存储系统

中央处理器(CPU,Central Processing Unit)

  • **时间局部性:**指程序中的某条指令一旦执行,不久以后该指令可能再次执行,典型原因就是由于程序中存在着大量的循环操作。
  • 空间局部性:指一旦程序访问了某个存储单元,不久以后,其附近的存储单元也将被访问,即程序在一段时间内所访问的地址可能集中在一定的范围内,其典型情况是程序顺序执行。
  • 工作集理论:工作集是进程运行时被频繁访问的页面集合。

二、操作系统 ★★★★

操作系统(OS,Operating System)

  • 管理系统的硬件,软件,数据资源
  • 控制程序运行
  • 人机之间的接口
  • 应用软件与硬件之间的接口
  • 进程管理
  • 存储管理
  • 文件管理
  • 作业管理
  • 设备管理
分类 特点
批处理操作系统 单道批:一次一个作业入内存,作业由程序,数据,作业说明书组成。 多道批:一次多个作业入内存;特点:多道,宏观上并行微观上串行
分时操作系统 采用时间片轮转的方式为多个用户提供服务,每个用户感觉独占系统。 特点:多路性,独立性,交互性和及时性
实时操作系统 实时控制系统和实时信息系统 交互能力要求不高,可靠性要求高(规定时间内响应并处理)
网络操作系统 方便有效共享网络资源,提供服务软件和有关协议的集合。 主要的网络操作系统有:Unix,Linux和Windows Server
分布式操作系统 任意两台计算机都可以通过通信交换信息 是网络操作系统的更高级形式,具有透明性,可靠性和高性能等特性
微机操作系统 Windows:图形用户界面,多任务,多线程操作系统 Linux:多用户,多任务,多线程和多CPU的操作系统
嵌入式操作系统 运行在智能芯片环境中 特点:微型化,可定制(针对硬件变化配置),实时性,可靠性,易移植性

1.进程管理

进程与线程的概念

程序计数器,寄存器,栈指针是不能共享的

临界资源:各进程间需要互斥方式对其进行共享的资源。(进程中访问临界资源的那段代码成为临界区)

PV操作:

信号量:是一种特殊的变量

  • 信号量可以标识资源数量
  • 信号量为负数时话可以标识排队进程数

P是荷兰语的Passeren(申请资源),V是荷兰语的Verhoog (释放资源)

死锁:四大条件:环路等待,互斥,保持和等待,不剥夺

预防死锁:打破四大条件

死锁避免:有序资源分配法,银行家算法

2.存储管理

1.页式存储

页式存储:将长须与内存均划分为同样大小的块,以页为单位将程序调入内存。

高级程序语言使用逻辑地址;运行状态,内存中使用物理地址。

逻辑地址=页号+页内地址

物理地址=页帧号+页内地址

优点:利用率高,碎片小,分配及管理简单

缺点:增加了系统开销;可能产生抖动现象

2.段式存储

段式存储:按用户作业中的自然段来划分逻辑空间,然后调入内存,段的长度可以不一样

优点:多道程序共享内存,各段程序修改互不影响

缺点:内存利用率低,内存碎片浪费大

3.段页式存储

段页式存储:段式与页式的综合体。先分段,再分页。一个程序有若干个段,每个段中可以有若干个页,每个页面的大小相同,但每个段的大小不同。

优点:空间浪费小,存储共享容易,存储保护容易,能动态连接。

缺点:由于管理软件的增加,复杂性何开销也随之增加,需要的硬件以及占用的内存也有所增加,使得执行速度大大下降。

3.磁盘管理

存取时间=寻道时间+等待时间

寻道时间:指磁头移动到磁道所需要的时间

等待时间:为等待读写的扇区转到磁头下方所用的时间

读取磁盘数据的时间应包括以下三个部分:

1.找磁道的时间

2.找块(扇区)的时间,即旋转延迟时间

3.传输时间

读取算法:

  • 先来先服务(FCFS)
  • 最短寻道时间优先(SSTF)
  • 扫描算法(SCAN)
  • 循环扫描(CSCAN)算法

三、文件系统 ★★

1.文件

文件(File)是具有符号名的,在逻辑上具有完整意义的一组相关信息项的集合,例如:一个源程序,一个目标程序,编译程序,一批待加工的数据何各种文档等都可以各自组成一个文件。

一个文件包括文件体和文件说明。

文件体是文件真实的内容;文件说明是操作系统为了管理文件所用到的信息,包括文件名,文件内部标识,文件类型,文件存储地址,文件长度,访问权限,建立时间和访问时间等(如文件详情)

文件类型:

  1. 按文件的性质和用途分类可将文件分为系统文件,库文件和用户文件
  2. 按信息保存期限分类可将文件分类临时文件,档案文件和永久文件
  3. 按文件的保护方式分类可将文件分为只读文件,读/写文件,可执行文件和不保护文件
  4. Unix系统将文件分为普通文件,目录文件和设备文件(特殊文件)

索引文件结构(必考)

四、系统性能 ★

分类 指标
硬件 计算机 时钟频率(主频),运算速度与精度,内存的存储容量,存储器的存取周期,数据处理速率PDR,吞吐率,各种响应时间,各种利用率,RASIS特性,平均故障影响时间,兼容性,可扩充性,性能价格比
硬件 路由器 设备吞吐量,端口吞吐量,全双工线速转发能力,丢包率,时延,时延抖动,VPN支持能力,端口硬件队列数,基于Web的管理,网管类型等
硬件 交换机 交换机类型,配置,支持的网络类型,最大ATM端口数,支持协议和标准
硬件 网络 设备级性能指标,网络级性能指标,应用级性能指标,用户级性能指标,吞吐量
硬件 操作系统 系统的可靠性,系统的吞吐率(量),系统响应时间,系统资源利用率,可移植性
硬件 数据库管理系统 衡量数据库管理系统的主要性能指标包括数据库本身和管理系统两部分,有:数据库的大小,数据库中表的数量,单个表的大小,表中允许的记录(行)数量,单个记录(行)的大小,表上所允许的索引数量,数据库所允许的索引数量,最大并发事务处理能力,负载均衡能力,最大连接数
硬件 Web服务器 最大并发连接数,响应延迟,吞吐量
方法 描述 特点
始终频率法 以时钟频率高低衡量速度 仅考虑CPU
指令执行速度法 表示机器运算速度的单位是MIPS 仅考虑CPU
等效指令速度法 (吉普森混合法) 通过各类指令在程序中所占的比例(W)进行计算得到的。 仅考虑CPU,综合考虑指令比例不同的问题
数据处理速率法 (PDR) PDR值的方法来衡量机器性能,PDR值越大,机器性能越好。 PDR=L/R 仅考虑CPU+存储
综合理论性能法 (CTP) CTP用MTOPS表示。CTP的估算方法是:首先算出处理部件每个计算单元的有效计算率再按不同字长加以调整,得出该计算单元的理论性能,所有组成该处理部件的计算单元的理论性能之和即为CTP。 仅考虑CPU+存储
基准程序法 把应用程序中用得最多、最频繁的那部分核心程序作为评估计算机系统性能的标准程序称为基准测试程序(benchmark)。 综合考虑多部分,基准程序法是目前一致承认的测试系统性能的较好方法。

【测试精确度排名】:真实的程序 > 核心程序 > 小型基准程序 > 合成基准程序

**Dhrystone基准程序:**它是一个综合性的整数基准测试程序,是为了测试编译器和CPU处理整数指令和控制功能的有效性,人为地选择一些典型指令综合起来形成的测试程序。

Linpack基准程序:它是国际上最流行的用于测试高性能计算机系统浮点性能的测试。

**Whetstone基准程序:**它是用Fortran语言编写的综合性测试程序,主要由执行浮点运算、功能调用、数组变址、条件转移和超越函数的程序组成。

SPEC基准程序:一种是测试计算机完成单项任务有多快,称为速度测试;另一种是测试计算机在一定时间内能完成多少项任务,称为吞吐率测试。

TPC基准程序:TPC(TransactionProcessingCouncil,事务处理委员会)基准程序用以评测计算机在事务处理、数据库处理、企业管理与决策支持系统等方面的性能。该基准程序的评测结果用每秒完成的事务处理数TPC来表示。

TPC-A基准程序规范用于评价在OLTP环境下的数据库和硬件的性能;

TPC-B测试的是不包括网络的纯事务处理量,用于模拟企业计算环境;

TPC-C测试的是联机订货系统(在线事务处理);

TPC-D、TPC-H和TPC-R测试的都是决策支持系统,其中TPC-R允许有附加的优化选项;

TPC-E测试的是大型企业信息服务系统。

TPC-W是基于Web 应用的基准程序,用来测试一些通过Internet进行市场服务和销售的商业行为,所以TPC-W可以看作是一个服务器的测试标准。

Web服务器的性能评估

  • 在Web服务器的测试中,反映其性能的指标主要有:最大并发连接数、响应延迟和吞吐量等
  • 常见的Web服务器性能评测方法有基准性能测试、压力测试和可靠性测试

系统监视

进行系统监视通常有3种方式:一是通过系统本身提供的命令,如UNIX/Linux系统中的W、ps、last,Windows中的netstat等;二是通过系统记录文件查阅系统在特定时间内的运行状态,三是集成命令、文件记录和可视化技术的监控工具,如Windows的Perfmon应用程序。

您的赞赏将是我继续更新的动力,欢迎赞赏!!!

相关推荐
J老熊9 小时前
JavaFX:简介、使用场景、常见问题及对比其他框架分析
java·开发语言·后端·面试·系统架构·软件工程
架构师Wu老七1 天前
【软考】系统架构设计师-信息系统基础
系统架构·软考·系统架构设计师·信息系统基础
程序员JerrySUN1 天前
熟悉的 Docker,陌生的 Podman
linux·docker·容器·系统架构·podman
张彦峰ZYF3 天前
DDD领域应用理论实践分析回顾
分布式·架构·系统架构·软件工程
爪哇学长5 天前
JavaFX 与其他图形库的详细比较:现代架构与性能优势
java·架构·系统架构
J老熊5 天前
RabbitMQ 在 Java 和 Spring Boot 中的应用详解
java·开发语言·spring boot·后端·系统架构·rabbitmq·java-rabbitmq
架构师Wu老七6 天前
【软考】系统架构设计师-计算机系统基础(4):计算机网络
计算机网络·系统架构·软考·系统架构设计师
银帅183350309716 天前
系统架构设计师论文
系统架构·论文笔记
架构师Wu老七6 天前
【软考】系统架构设计师-计算机系统基础(2):操作系统
系统架构·操作系统·软考·系统架构设计师
银帅183350309716 天前
2012年下半年试题一:论基于架构的软件设计方法及应用
架构·系统架构·论文笔记