计算机硬件基础

 前言:

  Python一种人和计算机沟通的语言也称为编程语言,所谓知己知彼 在学习Python之前我们先了解一下要沟通的对象---计算机是什么?它的结构、底层工作原理才能写出更好的编程语言,和它进行更亲密得交流、沟通。

计算机是什么?

一种帮助人类运算、存储信息的工具。

 

一套完整的计算机系统由硬件、操作系统、应用程序组成;

 

一、硬件介绍

计算机硬件可划分为:CPU、内存、存储设备、输入设备、输出设备、总线连接组成。抽象比喻到人身上 处理器相当于人类的大脑、内存好比记忆、存储设备好比人的笔记本(帮助人永久存储信息)、 输入设备好比老师讲课(向大脑传入信息)、输出设备(好比人的表情,喜怒变现于面),连接总线(好比人的神经系统将各个组件联系起来)分别了解一下计算机的各大组件。

 

二、CPU

CPU相当于人类脑负责从内存中取指令->解码->执行循环工作着。

 

1.0.CPU模式

CPU在工作过程中有2中模式,即内核态与用户态,PSW(状态寄存器)中有一个二进制位控制这两种模式。

a.内核态: CPU可以访问内存所有数据, 包括外围设备, 例如硬盘, 网卡. CPU也可以将自己从一个程序切换到另一个程序

b.用户态: 只能受限的访问内存, 且不允许访问外围设备. 占用CPU的能力被剥夺, CPU资源可以被其他程序获取

 

1.1、为什么要有用户态和内核态?

由于需要限制不同的程序之间的访问能力, 防止他们获取别的程序的内存数据, 或者获取外围设备的数据, 并发送到网络, CPU划分出两个权限等级 -- 用户态 和 内核态

 

1.2、CPU核心的组件

CPU核心组件包含 运算器、控制器、寄存器

a.运算器

arithmetic unit,计算计中执行各种算术和逻辑运算操作的部件。运算器的基本操作包括加、减、乘、除四则运算,与、或、非、异或等逻辑操作,以及移位、比较和传b.送等操作,亦称算术逻辑部件(ALU)。

c.控制器

内存是三维编址/全局编址的数据存放都有特定的位置,控制器负责从内存中读取数据给运算器

d.寄存器

由于运算器要对数据进行运算 比如运算 2+6=8但运算器只能运算没有记忆所以 需要寄存器 存储要参加运算的数据 2 和 6 。

 

1.3、寄存器的分类

通用寄存器

保持临时变量和运算结果

程序计数器

它保存了将要取出的下一条指令的内存地址。在指令取出后,程序计算器就被更新以便执行后期的指令。

堆栈指针寄存器

它指向内存中当前栈的顶端。该栈包含已经进入但是还没有退出的每个过程中的一个框架。在一个过程的堆栈框架中保存了有关的输入参数、局部变量以及那些没有保存在寄存器中的临时变量

程序状态字寄存器(PSW)

这个寄存器包含了条码位(由比较指令设置)、CPU优先级、模式(用户态或内核态),以及各种其他控制位。用户通常读入整个PSW,但是只对其中少量的字段写入。在系统调用和I/O中,PSW非常非常非常非常非常非常重要

 

                                                        

 

 

 

 

 

三、存储器( 内存、硬盘.....)

由于内存有易失性,断电后不能保持信息,所以计算机必须由存储器来永久保存数据;

 

2.0、 存储器的种类

a.非易失性随机访问存储如ROMRead Only Memory,ROM)

在电源切断之后,非易失性存储的内容并不会丢失,ROM只读存储器在工厂中就被编程完毕,然后再也不能修改。ROM速度快且便宜,在有些计算机中,用于启动计算机的引导加载模块就存放在ROM中,另外一些I/O卡也采用ROM处理底层设备的控制。

 

b.EEPROMElectrically Erasable PROM,电可擦除可编程ROM)和闪存(flash memory)也是非易失性的

但是与ROM相反,他们可以擦除和重写。不过重写时花费的时间比写入RAM要多。在便携式电子设备中中,闪存通常作为存储媒介。闪存是数码相机中的胶卷,是便携式音译播放器的磁盘,还应用于固态硬盘。闪存在速度上介于RAM和磁盘之间,但与磁盘不同的是,闪存擦除的次数过多,就被磨损了。

 

c.CMOS

它是易失性的,许多计算机利用CMOS存储器来保持当前时间和日期。CMOS存储器和递增时间的电路由一小块电池驱动,所以,即使计算机没有加电,时间也仍然可以正确地更新,除此之外CMOS还可以保存配置的参数,比如,哪一个是启动磁盘等,之所以采用CMOS是因为它耗电非常少,一块工厂原装电池往往能使用若干年,但是当电池失效时,相关的配置和时间等都将丢失。

 

d.磁盘:

 

 

 

扇区: 机械硬盘的转轴转动带动硬盘内的金属盘片跟随转动,机械手臂上下摩擦盘面一个段称扇区。

 

 

 

 

四、连接总线:

连接计算机各个组件的主线

3.0连接总线分类:

a.北桥:

即PCI桥:连接高速设备

b.南桥:

即ISA桥:连接慢速设备

 

 

 

 

 

 

五、计算机启动流程

在计算机的主板上有一个基本的输入输出程序(Basic  Input Output system)

BIOS就相当于一个小的操作系统,它有底层的I/O软件,包括读键盘,写屏幕,进行磁盘I/O,该程序存放于一非易失性闪存RAM中。

 

启动流程如下

1.计算机加电

2.BIOS开始运行,检测硬件:cpu、内存、硬盘等

3.BIOS读取CMOS存储器中的参数,选择启动设备

4.从启动设备上读取第一个扇区的内容(MBR主引导记录512字节,前446为引导信息,后64为分区信息,最后两个为标志位)

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

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

 

 

参考

posted on 2017-03-10 17:38  Martin8866  阅读(309)  评论(0编辑  收藏  举报