计算机系统基础
大约 6 分钟约 1707 字
计算机系统概述

计算机组成结构

存储系统
层次化存储结构

Cache
- Cache的功能:提高CPU数据输入输出的速率,突破冯诺依曼瓶颈,即CPU与存储系统间数据传送带宽限制
- 在计算机的存储系统体系中,Cache是访问速度最快的层次
- Cache对程序员来说是透明的
- 使用Cache改善系统性能的依据是程序的局部性原理
- 时间局部性:指程序中的某条指令一旦执行,不久以后该指令可能再次执行,典型原因是由于程序中存在着大量的循环操作
- 空间局部性:指一旦程序访问了某个存储单元,不久以后,其附近的存储单元也将被访问,即程序在一段时间内所访问的地址可能集中在一定范围内,其典型情况是程序顺序执行
- 工作集理论:工作集是进程运行时被频繁访问的页面集合

磁盘基本结构与存取过程

存取时间 = 寻道时间 + 等待时间,寻道时间是指磁头移动到磁道所需的时间;等待时间为等待读写的扇区转到磁头下方所用的时间
读取磁盘数据的时间应包括以下三个部分
- 找磁道的时间
- 找块(扇区)的时间、即旋转延迟时间
- 传输时间
磁盘移臂调度算法
先来先服务(FCFS)

最短寻道时间优先(SSTF)

扫描算法(SCAN)
循环扫描算法(SCSAN)
操作系统
进程管理
概念
进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。它由程序块、进程控制块(PCB)和数据块三部分组成
PCB:是进程存在的唯一标志。内容包含进程标识符、状态、位置信息、控制信息、队列指针(链接同一状态的进程)、优先级、现场保护区等
进程与程序
进程与程序的区别:进程是程序的一次执行过程,没有程序就没有进程
程序是一个静态的概念,而进程是一个动态的概念,它由创建而产生,完成任务后因撤销而消亡;进程是系统进行资源分配和调度的独立单位,而程序不是
进程与线程
进程的2个基本属性:可拥有资源的独立单位;可独立调度和分配资源的基本单位

状态

同步与互斥

- 临界资源:进程间需要互斥方式对其进行共享的资源,如打印机、磁带机等
- 临界区:每个进程中访问临界资源的那段代码成为临界区
- 信号量:是一种特殊的变量
前趋图

死锁
进程管理是操作系统的核心,但如果设计不当,就会出现死锁问题。如果一个进程在等待一件不可能发生的事,则进程就死锁了。而如果一个或多个进程产生死锁,就会造成系统死锁

银行家算法
分配资源的原则
- 当一个进程对资源的最大需求量不超过系统中的资源数时可以接纳该进程
- 进程可以分期请求资源,但请求的总数不能超过最大需求量
- 当系统现有的资源不能满足进程尚需资源数时,对进程的请求可以推迟分配,但总能使进程在有限的时间里得到资源
存储管理
页式存储
将程序与内存均划分为同样大小的块,以页为单位将程序调入内存

- 优点:利用率高,碎片小,分配及管理简单
- 缺点:增加了系统开销;可能产生抖动现象
段式存储
按用户作业中的自然段来划分逻辑空间,然后调入内存,段的长度可以不一样

- 优点:多道程序共享内存,各段程序修改互不影响
- 缺点:内存利用率低,内存碎片浪费大
段页式存储
段式与页式的综合体。先分段,再分页。1个程序由若干个段,每个段中可以由若干页,每个页的大小相同,但每个段的大小不同

- 优点:空间浪费小、存储共享容易、存储保护容易、能动态连接
- 缺点:由于管理软件的增加,复杂性和开销也随之增加,需要的硬件以及占用的内容也有所增加,使得执行速度大大下降
文件管理
索引文件结构

位视图

性能
性能指标
性能调整

阿姆达尔解决方案

性能评价方法
- 时钟频率法:以时钟频率高低衡量速度
- 指令执行速度法:以机器运算速度的单位是MIPS
- 等效指令速度法:通过各指令在程序中所占比例进行计算得到的
- 数据处理速率法:PDR值的方法来衡量机器性能,PDR值越大,机器性能越好
- 综合理论性能法:CTP用MTOPS表示。CTP的估算方法是,首先算出处理部件每个计算单元的有效计算率,再按不同字长加以调整,得出计算单元的理论性能,所有组成该处理部件的计算单元的理论性能之和即为CTP
- 基准程序法:把应用程序中用得最多,最频繁的部分核心程序作为评估计算机系统性能的标准程序,称为基准测试程序。基准程序法是目前一致承认的测试系统性能的较好方法

性能评估
- 在Web服务器测试中,反映其性能的指标主要有:最大并发连接数、响应延迟和吞吐量等
- 常见的Web服务器性能评测方式有基准性能测试、压力测试和可靠性测试
系统监视
进行系统监视通常有3种方式:一是通过系统本身提供的命令,如UNIX/Linux系统中的W、ps、last,Windows中的netstat等;二是通过系统记录文件查阅系统在特定时间内的运行状态;三是集成命令、文件记录和可视化技术的监控工具,如Windows的Perfmon应用程序