计算机组成原理基础


计算机组成原理基础

语言是用来沟通的,程序员与计算机进行沟通就需要通过编程语言进行沟通。编程语言并不能直接操纵硬件,而是运行在操作系统上,由操作系统对硬件进行控制。

1、计算机的组成

一个完整的计算机系统包括:计算机硬件、操作系统、用户软件

1.1计算机硬件

计算机是由控制器、运算器、存储器、输入设备、输出设备组成的,它们都通过总线进行连接通信。

1.2 处理器

处理器包含运算器和控制器,运算器负责算数运算,控制器负责逻辑运算

1.2.1 CPU 内存 磁盘

当有任务要处理的时候,存放在磁盘上的文件首先存到内存中,CPU到内存中去取数据

1.2.2 CPU寄存器

CPU的寄存器是由操作系统控制的,有以下分类:

  1. 通用寄存器:保存变量和临时结果
  2. 程序计数器寄存器:保存了将要取出的下一条指令的内存地址,这个就是中断的概念,CPU通过快速切换让我们觉得很多任务同时进行,实际CPU同一时刻只能处理一件事。
  3. 堆栈指针寄存器:堆栈是先进后出
  4. 程序状态字寄存器:该寄存器能控制CPU的优先级,模式(用户态和内核态),非常重要。

1.2.3 用户态 内核态

用户态:当用户程序运行时,CPU处于用户态,此时的内核态时完全禁止的 内核态:CPU内部有指令集,操作系统的指令都要转化成CPU指令执行,当CPU处于内核态时,操作系统对CPU具有完全的控制权

1.2.4 用户态和内核态的切换

用户态不能操作硬件,当用户程序运行的时候,程序想要控制硬件就需要由用户态切换到内核态,用户程序必须使用系统调用,系统调用陷入内核并调用操作系统,通过指令把用户态切换成内核态,并启用操作系统从而获得服务。

可以用0和1两种状体表示内核态和用户态,psw中有相应的二进制位可以控制 内核态:操作系统的CPU状态 1 用户态:用户程序的CPU状态 0

1.3 存储器

  1. 一级缓存L1:CPU内部的存储器,称作寄存器,采用的是与CPU相同材质制作的,访问速度快,无延迟
  2. 二级缓存L2:内存中有高速缓存行按照0-64字节为行0,64-127字节为行2,...依次类推,最常用的程序通常存放在高速缓存行中 ,当程序读取一个存储字时,高速缓存硬件检查所需要的高速缓存行是否在高速缓存中。如果是,则称为高速缓存命中,否则称为高速缓存未命中,那么就必须访问内存。
  3. 内存RAM:RAM是随机存储器,断电后数据丢失
  4. EEPROM:Electrically Erasable PROM,电可擦除可编程ROM
  5. 闪存:flash通常作为便携存储设备,固态硬盘,但是读写次数是有限的
  6. CMOS:在计算机中通常作为电脑主板上保存时间和日期,还可以保存电脑的配置参数

1.4 磁盘

1.4.1 磁盘的结构 磁道:磁盘上的信息是存储在一系列的同心圆上,磁头能够读取的区域成为磁道。 柱面:磁盘的上下两面都是可以读写的,柱面就是磁盘相同位置上磁道的集合 扇区:磁道上的一段512字节的区域,是最小的读写单位 块block:8个扇区是一个block,4字节

1.4.2 平均寻道时间 接收到系统指令后,磁头从开始移动至数据所在磁道花费的平均时间,体现了硬盘读取数据的能力。

1.4.3 平均延迟时间 机械手臂到达数据所在的磁道后还需要旋转到数据所在的扇区,这段时间是平均延迟时间

1.1.4虚拟内存与MMU

虚拟内存可以支持计算机运行高于物理内存的程序,通常会在磁盘选择一个区域作为虚拟内存空间。程序运行时首先把重要的文件读入内存,暂时不需要的文件磁盘的虚拟内存区域,当需要的时候再读入内存

MMU:CPU中负责快速映射内存和虚拟内存的管理单元,称为存储器管理单元

1.4.5 磁带:磁带的存储速速低,但是存储容量大,可移动性强,通常在大型数据库中用作备份

1.5 I/O设备驱动和控制器

控制器 :输入输出设备在主板上所有相应的控制芯片,负责控制连接的设备 设备驱动:设备厂商制定了统一的接口,并会为不同的系统编写相应的驱动程序,这些驱动程序就保存在控制器中

1.6 总线

是计算机各种功能部件之间传送信息的公共通信干线

PCI桥,即北桥,是连接CPU和内存这些高速设备的 ISA桥,即南桥,是连接低速设备的

2 计算机启动流程

计算机主板上有一个基本输入输出程序BIOS,BIOS相当于一个简单的操作系统,程序存储在CMOS中,计算机上电后,就是读取它。

计算机的启动流程分成四个阶段:

第一阶段:BIOS 

2.1 硬件自检

上电后BISO程序进行硬件检查,判断计算机硬件能否满足运行的基本条件,如果硬件出现问题,主板会发出不同含义的蜂鸣,启动中止。如果没有问题,屏幕就会显示出CPU、内存、硬盘等信息。

2.2 启动顺序

硬件自检完成后,BIOS把控制权转交给下一阶段的启动程序。 这时,BIOS需要知道,"下一阶段的启动程序"具体存放在哪一个设备。也就是说,BIOS需要有一个外部储存设备的排序,排在前面的设备就是优先转交控制权的设备。

第二阶段:主引导记录 

计算机读取该设备的第一个扇区,也就是读取最前面的512个字节。如果这512个字节的最后两个字节是0x55和0xAA,表明这个设备可以用于启动;如果不是,表明设备不能用于启动,控制权于是被转交给"启动顺序"中的下一个设备。 这最前面的512个字节,就叫做"主引导记录"(Master boot record,缩写为MBR)。

2.3 主引导记录的结构

"主引导记录"512个字节,它的主要作用是,告诉计算机到硬盘的哪一个位置去哪个分区找操作系统。

主引导记录由三个部分组成:

  1. 第1-446字节:调用操作系统的机器码。
  2. 第447-510字节:分区表(Partition table)。
  3. 第511-512字节:主引导记录签名(0x55和0xAA)。  

2.4 分区表

硬盘分区有很多好处。考虑到每个区可以安装不同的操作系统,"主引导记录"因此必须知道将控制权转交给哪个区。

 第三阶段:硬盘启动

根据分区信息读入bootloader启动装载模块,启动操作系统

 第四阶段:操作系统

控制权转交给操作系统后,操作系统的内核首先被载入内存。 然后操作系统询问BIOS,以获得配置信息。对于每种设备,系统会检查其设备驱动程序是否存在,如果没有,系统则会要求用户按照设备驱动程序。一旦有了全部的设备驱动程序,操作系统就将它们调入内核。然后初始有关的表格(如进程表),穿件需要的进程,并在每个终端上启动登录程序或GUI,等待用户输入用户名和密码

3 软件启动流程

当用户软件启动时,此时处于用户态,用户程序向操作系统发送指令,程序需要操作硬盘则需要进入内核态,用户程序必须使用系统调用,系统调用陷入内核并调用操作系统,通过指令把用户态切换成内核态,并启用操作系统从而获得服务。

致谢

感谢您一直阅读到这里,如果我的文章有错误或不足之处,请务必在评论中留言指出,千万不用客气,万分感谢~

时间: 2024-10-20 00:00:17

计算机组成原理基础的相关文章

计算机组成原理基础的一些概念

初次接触硬件相关的知识,还作为一门核心专业课,毕竟以前接触的大部分都是软件相关的.所以还是有些迷惑的,在此记录一下一些基本概念,一来方便复习,二来引起自己的重视 计算机的吞吐量: 计算机系统的吞吐量是指流入,处理和流出系统的信息的速率.它取决于信息能够多快地输入内存,CPU能够多快地取指令,数据能够多快地从内存取出或存入,以及所得结果能够多快地从内存送给一台外围设备.这些步骤中的每一步都关系到主存,因此,系统吞吐量主要取决于主存的存取周期.由于上述原因,采用双端口存储器可以增加主存的有效速度 响

计算机组成原理基础知识-概述

一.概述 --计算机系统由"硬件"和"软件"两大部分组成. --计算机的软件又可以分为两大类--系统软件和应用软件(又称系统程序和应用程序). --多级层次结构的计算机系统: --  冯-诺依曼计算机的特点: 1.计算机由运算器.存储器.控制器.输入设备和输出设备5大部分组成. 2.指令和数据以同等地位存放在存储器内,并可按址寻访. 3.指令和数据均用二进制表示. 4.指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置. 5.指

计算机组成原理基础知识

1.存储区由存储单元构成,每个存储单元由很多个存储元构成.一个存储单元内部的存储元个数即为存储的字长.也为机器的字长. 第三章:系统总线1.片内总线:指芯片内部的总线.例如在CPU芯片内部,寄存器与寄存器,寄存器与算逻单元ALU之间的连接.2.系统总线由数据总线.地址总线与控制总线构成.数据总线:双向传输.地址总线:由cpu传出地址向存储单元,从对应的地址处读取数据,单向传输.地址线的位数与存储单元的个数有关,地址线位数即为存储单元的个数.控制总线:可以认为是双向的传输.既能从CPU向各个设备或

计算机组成原理基础知识-运算方法

五.计算机的运算方法 --在计算机中参与运算的数有两大类:无符号数和有符号数 无符号数:没有符号的数 有符号数 机器数与真值:机器中:0表示正,1表示负 原码表示法:把真值的正负用01表示 补码表示法:真值为正时,与原码相同,真值为负时,补码是原码的"求反加一" 反码表示法:真值为正时,与原码相同,真值为负时,补码是原码的"每位求反" 移码表示法:同一个真值的移码和不忙吗只差一个符号位 --表示小数点的存在:定点表示和浮点表示 --定点运算:移位运算.加法与减法运算

计算机组成原理基础知识-指令系统

六.指令系统 --指令系统:将全部机器指令的集合称为机器的指令系统 机器指令:每一条机器语言的语句称为机器指令 --指令的一般格式:由操作码和地址码组成 操作码:长度可固定可变化(通常采用扩展操作码),如操作码占7位,则该机器最多包含2的7次方条指令 地址码:用来指出该指令的源操作数的地址(一个或两个).结果的地址以及下一条指令的地址,分别有四.三.二.一.零地址指令 --操作数类型:地址.数字.字符.逻辑数据等 操作类型:不同机器不同,通用:数据传送.算术逻辑操作.移位.转移.输入输出.其他(

计算机组成原理基础知识-输入输出系统

四.输入输出系统 --输入输出系统由I/O软件和I/O硬件两部分组成 --I/O设备 输入设备:完成输入程序.数据.命令等功能:键盘.鼠标.触摸屏.其他 输出设备:显示设备.打印设备 其他I/O设备:终端设备.A/D与D/A转换器.汉字处理设备等 --I/O接口 接口可以看做是两个系统或两个部件的交接部分 接口的功能:选址功能.传送命令的的功能.传送数据的功能.反应I/O设备状态的功能 接口类型:按不同方式分类有以下几种: 按数据传送方式分类:有并行接口和串行接口 按功能选择的灵活性分类:有可编

计算机组成原理基础知识-存储器

三.存储器 --存储器是计算机系统的记忆设备,用来存放程序和数据 --存储器的分类 存储器速度.容量和位价的关系 --主存储器 -主存的技术指标:主要是存储容量存储速度 存储容量:主存能存放的二进制代码的总位数,即:存储容量=存储单元个数*存储字长(/8[字节数表示]) 存储速度:由存取时间和存取周期表示 存储器带宽:单位时间内存储器存储的信息量 -随机存取存储器(自己理解:可读可写)按照其存储的信息原理不同,可分为静态RAM和动态RAM两大类 动态RAM的刷新:刷新的过程实质上是现将原存信息读

计算机组成原理基础知识-总线

二.系统总线 --计算机系统五大部件互连的方式有两种: 分散连接:各部件之间使用单独的连线 总线连接:将各部件连到一组公共信息传输线上 --总线:是连接多个部件的信息传输线,是各部件共享的传输介质 特点:分时与共享 在某一时刻,只允许有一个部件向总线发出消息,二多个部件可以同时从总线上接收相同的消息 --总线的分类 按照连接部件不同: 1.片内总线:芯片内部的总线 2.系统总线:CPU.主存.I/O设备各大部件之间的信息传输线 按照系统总线传输信息的不同可分为3类: 数据总线:传输各功能部件之间

编程必备基础知识|计算机组成原理篇(06):计算机的字符与编码集

计算机基础方面的知识,对于一些非科班出身的同学来讲,一直是他们心中的痛,而对于科班出身的同学,很多同学在工作之后,也意识到自身所学知识的不足与欠缺,想回头补补基础知识.关于计算机基础的课程很多,内容繁杂,但无论是相关书籍还是大学课程,都有点脱离工作.特别地,计算机基础知识体系庞杂,想要从零学习或者复习都耗时耗力. 有鉴于此,本系列文章将带你更快的补足编程必备基础知识,涵盖计算机领域三大基础知识:计算机组成原理.操作系统.计算机网络,这些都是大学计算机课程里面最重要的内容.文章对这些内容做了提炼和