第一章 计算机系统概述
来源:互联网 发布:光荣的愤怒 知乎 编辑:程序博客网 时间:2024/05/13 09:46
第一章 计算机系统概述
1、基本构成
处理器:控制计算机的操作,执行数据处理功能
存储器:存储数据和程序,此类存储器通常是易失的
输入/输出部件:在计算机与外部环境之间移动数据,如硬盘
系统总线:为处理器、内存和输入/输出模块间提供通信的设施
2、微处理器的演变过程
微处理器 —->多核微处理器 —–>片上系统
3、指令的执行
处理器执行的程序是由一组保存在存储器中的指令组成的;
处理器从存储器中一次读取一条指令,然后执行每条指令;
取到的指令被放置在处理器的一个寄存器中->指令寄存器。
开始——>取下一条指令——>执行指令——>停止(如图1.2)
4、中断
所有计算机都提供了允许其他模块(IO,存储器)中断处理器正常处理过程的机制。
当外部设备做好服务的准备时(即当它准备好从处理器接受更多的数据时),该外部设备的IO模块给处理器发送一个中断请求信号。这是处理器会做响应,暂停当前程序的处理,专区处理服务于特定IO设备的程序,这个程序成为中断处理程序。在对该设备的服务响应完成后,处理器恢复原先的执行.
保存被中断程序的所有状态信息并在以后恢复这些信息,这是十分重要的。因为中断并不是程序调用的一个例程,它可以再任何时候发生,因而可以再用户程序执行过程中的任何一点上发生,他的发生是不可预测的。
多个中断时,第一种方法是当正在处理一个中断时,禁止再发生中断;第二种方法是定义中断优先级,允许高优先级的中断打断低优先级的中断
下面中断的定义来自百度百科:
*中断的定义:*CPU在执行一个程序时,对系统发生的某个事件(程序自身或者外界因素)做出的一种反应:CPU暂停正在执行的程序去处理该事件,处理完该事件后,到适当时候返回断点,继续完成被打断的程序。
中断 = 中断响应 + 中断处理
5、存储器的层次结构
设计目标:多大的容量?多快的速度?多贵的价格
存储器的层次结构:寄存器-》高速缓存-》内存-》磁盘-》磁带
高速缓存:处理器执行指令的速度显然受到存储周期(从存储器中读一个字或写一个字到存储器中花费的时间)的限制,解决方法是利用局部性原理,即在处理器和内存之间提供一个容量小而速度快的存储器,成为高速缓存
6、针对IO操作的三种方式:
可编程IO-》处理器给相应IO模块发送命令,IO模块执行请求的动作,它并不进一步通知处理器,尤其是他并不中断处理器。因此处理器在执行IO指令后,还要定期检查IO模块的状态,以确定IO操作是否完成;
中断驱动IO-》由处理器给IO模块发送IO命令,然后处理器继续做其他一些有用的工作。当IO模块准备好与处理器交换数据时,它将打断处理器的执行并请求服务。处理器和前面一样执行数据传送,然后恢复处理器以前的执行过程;
直接内存存取-》当处理器要读或写一块数据时,它给DMA模块产生一条命令,发送以下信息(是否请求一次读或写,涉及的IO设备的地址,开始读或写的存储器单元,需要读或写的字数),之后处理器继续其他工作。处理器吧这个操作委托给DMA模块,由该模块负责处理。DMA模块直接与存储器交互,这个过程不需要处理器参与。当传送完成后,DMA模块发一个中断信号给处理器。因此只有在开始传送和传送结束时处理器才会参与。
7、多处理器和多核计算机组织结构
每条指令时以操作序列(取指,去操作数,执行操作,存储结果)的方式执行的
三种最流行的通过复制处理器提供并行性的手段:对称多处理器,多核计算机,集群
- 第一章计算机系统概述
- 第一章 计算机系统概述
- 第一章 计算机系统概述
- 操作系统 第一章 计算机系统概述
- 【连载】计算机组成原理 --- 第一章计算机系统概述
- 计算机系统概述
- 计算机系统概述
- 计算机系统概述
- 计算机系统概述-计算机系统层次结构
- 第一章 计算机系统浏览
- 第一章:计算机系统的基本知识
- 第一章 计算机系统漫游
- 深入理解计算机系统 第一章
- 读书笔记----第一章:计算机系统漫游
- 第一章 计算机系统概论
- 第一章.《计算机系统漫游》
- CSAPP第一章-计算机系统漫游
- 第一章 计算机系统概论
- Jedis 与 ShardedJedis 设计
- 研究spring原理的心得
- Android学习相关
- scikit-learn:4.8. Transforming the prediction target (y)
- Button自定义状态背景
- 第一章 计算机系统概述
- ahu355
- 19 个 Android 开发工具
- Hadoop WordCount源码解读
- 怪盗基德的滑翔翼
- 调试JMeter的JAVA sampler
- ARM嵌入式linux系统学习之裸机(一)
- Implement Stack using Queues && Implement Queue using Stacks (LeetCode)
- POJ1945 Power Hungry Cows (BFS)