计算机硬件

操作系统与运行该系统的计算机硬件联系密切。操作系统扩展了计算机指令集并管理计算机的资源。

一、处理器

计算机的“大脑”就是CPU,它从内存中取出指令并执行之。在每个CPU基本周期中,首先从内存中取出指令,解码以确定其类型和操作数,接着执行之,然后取指、解码并执行下一条指令。按照这一方式,程序被执行完成。每一个CPU都有其一套专门指令集。Pentium和SPARC不能相互执行,所有的CPU内都有一些用来保存关键变量和临时数据的寄存器。

1、通用寄存器

用来保存变量和临时结果

2、程序员可见的专门寄存器

1)程序计数器:保存了将要取出的下一条指令的内存地址,在指令取出之后,程序计数器就被更新以便指向后继的指令。
2)堆栈指针:指向内存中当前栈的顶端。该栈含有已经进入但没有退出的每个过程的一个框架。在一个过程的堆栈框架中保存了有关的输入参数、局部变量以及那些没有保存在寄存器中的临时变量。
3)程序状态字寄存器(PSW):包含了条件码位(由比较指令设置)、CUP优先级、模式(用户态或内核态),以及各种其他控制位。在系统调用和I/O中占有很重要的地位。

流水线:取指单元->解码单元->执行单元

CPU两种模式:内核态和用户态
操作系统在内核态下运行,可以访问整个硬件;用户程序在用户态下运行,仅运行执行整个指令集的一个子集和访问所有功能的一个子集。一般而言,在用户态下有关I/O和内存保护的所有指令是禁止的,将PSW中的模式位设置成内核态也是禁止的。

二、存储器

存储器系统采用一种分层次的结构。

存储器系统的顶层是CPU的寄存器,速度较高(和CPU相似),容量较小。下一层是高速缓存,多数由硬件控制。主存被分割成高速缓存行,其典型大小为64个字节,地址0至63对应高速缓存行0,地址64至127对应高速缓存行1,以此类推。
CPU设计了两个缓存:第一级或称为L1缓存总是在CPU中,通常用来将已解码的指令调入CPU的执行引擎,对于频繁使用的数据字,多数芯片安排有第二个L1缓存。典型的L1缓存大小为16KB。第二级缓存或称为L2缓存,用来存放近来使用过若干兆字节的内存字。L1和L2缓存之间的差别在于时序,对于L1缓存的访问不存在任何延时,而L2会延时1或2个时钟周期。
存储器的再下一层是主存,是存储器系统的主力,通常称为随机访问存储器(RAM),过去称为磁芯存储器。

其他存储器
ROM(只读存储器):断电会失去“记忆”;
EEPROM(电可擦除可编程ROM)和闪存:可擦除和重写,闪存速度在RAM和磁盘之间,闪存擦除的次数过多会磨损。
CMOS:易失性,耗电低,可以存储配置参数,保持计算机当前时间和日期。

三、磁盘

磁盘是一种机械装置,它的随机访问数据时间大约慢了三个数量级。在一个磁盘中有一个或多个金属盘片,以5400,7200或10800rpm的速度旋转。
虚拟内存机制:将程序放在磁盘上,而将主存作为一种缓存,用来保存最频繁使用的部分程序。这种机制需要快速地映像内存地址,以便把程序生成的地址转换为有关字节在RAM中的物理地址,这种映像由CPU中的一个部件,称为存储器管理单元(MMU)来完成。

四、磁带

存储器体系中的最后一层是磁带,这种介质经常用于磁盘的备份,并且可以保存非常大量的数据集(现在基本使用U盘或者移动硬盘进行备份)。
磁带的最大特点是每个二进制的成本便宜,并且可移动。

五、I/O设备

I/O设备包括两个部分:设备控制器和设备本身。
控制器是插在电路板上的一块或者一组芯片,这块电路板物理地控制设备。它从操作系统接收命令,如:从设备读数据,并且处理数据。控制器的任务是为操作系统提供一个简单的接口。
实际设备的自身有个简单的接口,接口已经被标准化,使得任何一个IDE(集成驱动器电子设备)磁盘控制器就可以适应任一种IDE磁盘。

设备驱动程序:专门与控制器对话,发出命令并接收响应的软件。

将设备驱动程序装入操作系统的途径:
1. 将内核与设备驱动程序重新链接,然后重新启动系统。eg:UNIX
2. 在一个操作系统文件中设置一个入口,并通知该文件需要一个设备驱动程序,然后重新启动程序,启动的时候系统就会去寻找并装载该程序。eg:windows
3. 操作系统在运行时接受新的设备驱动程序并立即安装,无需重启。eg:热拔插设备(USB、IEEE1394设备)。

实现输入和输出的方式:
1. 忙等待:占据CPU,CPU一直轮询设备直到对应的I/O操作完成。
2. 中断:取中断->运行中断处理程序->返回到用户程序。
3. 使用特殊的直接存储器访问(DMA)芯片:控制在内存和某些控制器之间的位流,而无须持续的CPU干预。

六、总线

大型Pentium系统的结构
Pentium系统
该系统有8个总线:高速缓存、局部、内存、PCI、SCSI、USB、IDE和ISA,多数高速I/O设备采用PCI总线。
1、早期的IBM PC ISA总线:原先的IBM PC/AT总线,以8.33MHz频率运行,并行传送2字节,最大速率16.67MB/s。
2、PCI总线:66MHz频率运行,并行传送8字节,数据速率528MB/s。
3、USB(通用串行总线):将所有慢速I/O设备与计算机连接。它是一种集中式总线,采用小型四针连接器,其中两针为USB设备提供电源。
4、SCSI总线:用在高速硬盘、扫描仪和其他需要较大带宽的设备上的一种高速总线,最高达320MB/s。

即插即用:系统自动地收集有关I/O设备的信息,集中赋予中断级别和I/O地址,然后通知每块卡所使用的数值。

计算机启动过程

在每个Pentium上有一块双亲板,在板上有一个BIOS(基本输入输出系统)程序,在BIOS内有底层I/O软件,包括对键盘、写屏幕、进行磁盘I/O以及其他过程。现在这个程序放在一块闪速RAM中。
计算机启动,BIOS开始运行->检查所安装的RAM数量->扫描ISA和PCI总线找出连在上面的所有设备->记录设备->判断设备是否和上次相同,不同则更新->读取存储在CMOS存储器中的设备清单->用户可以在启动的时候进入BIOS配置清单->系统尝试启动:软盘->CD-ROM->硬盘(逐层查找,也可以自行设计顺序)->启动设备上的第一个扇区读入内存并执行(判断活动分区)->从活动分区读入第二个启动装载模块->询问BIOS获得配置信息->设备驱动程序装入内核->初始化有关表格->创建需要的任何背景进程,并在每个终端上启动登陆程序或GUI。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值