计算机基础之硬件

一、编程语言的作用以及操作系统与硬件的关系
1、编程语言的作用
编程语言和汉语、英语等自然语言一样,本质都是语言,语言就是用来沟通的介质。生活中我们和对方沟通就需要说对方能听懂的语言,跟英国人沟通就要说英语,和法国人沟通就要说法语,相应的程序员要和计算机沟通就需要使用计算机能明白的语言这就是编程语言,程序员把想让计算机完成的工作用编程语言写成类似我们在学校里写的作文一样的东西,这个东西就叫做程序,然后把程序发送给计算机,计算机才能明白程序员要表达的意思并完成相应的工作。
2、操作系统与硬件的关系
在计算机刚出现的时候并没有操作系统的概念,程序员在开发应用程序的时候需要自己写一段代码去控制计算机硬件完成工作。这就带来了两个问题,第一每个程序员在开发一个应用程序时都需要重复的写控制硬件的代码,第二要控制硬件程序员需要对所有的硬件工作原理都熟悉,这样很耗费时间。操作系统的出现就减轻了程序员的工作负担,程序员只需要关注应用软件的功能在逻辑上如何实现而不需要关心底层硬件如何实现,硬件的控制全部由操作系统完成。

二、应用程序、操作系统以及硬件之间的关系
应用程序是运行在操作系统之上的,应用软件的启动以及对硬件的控制都要通过操作系统来完成

三、CPU、内存、硬盘之间的关系
CPU是计算机中负责运算的核心硬件,它的速度极快;内存是计算机中的一种数据存储设备,它的速度比CPU要慢很多,比硬盘的速度要快,但是内存的存储量不大,并且是易失性存储设备,断电后数据就会丢失;硬盘也是一种存储设备,它的速度比CPU和内存都要慢很多,但是它是非易失性存储设备可以永久保存数据。由于CPU、内存和硬盘的特性,CPU在读取数据的时候会让数据先从硬盘读取到内存中,然后CPU从内存中读取数据,这样就能避免CPU直接从硬盘中读取数据造成I/O时间过长降低程序运行速度。

四、CPU与寄存器的关系,以及CPU的两种工作模式和切换方式
1、CPU与寄存器的关系
上面说到CPU在读取数据时是从内存中读取的,其实CPU是从寄存器中直接读取数据的,内存的速度虽然很快但是和CPU相比差距还是很大的,而寄存器是一种和CPU相同材料制成的存储设备,它的速度和CPU基本一致,CPU从寄存器中读取数据可以极大的提高程序运行速度,但由于寄存器的存储量非常小只有几K大小,所以需要在寄存器和内存之间再加一个存储设备,就是高速缓存。高速缓存的速度比寄存器稍慢一点,但是存储量比寄存器大很多,一般有几兆的容量。
所以完整的数据读取过程是,数据先从硬盘加载到内存中,高速缓存再到内存中读取数据,寄存器从高速缓存中读取数据,最后CPU从寄存器中读取数据进行计算。
寄存器的种类有很多,其中有一种非常重要的寄存器叫做程序状态字寄存器,它的一个重要作用就是控制CPU工作在哪一种工作模式。

2、CPU的两种工作模式
内核态:操作系统的内核工作在内核态,可以使用CPU的所有指令集,包括控制硬件的部分。
用户态:用户程序和操作系统接口程序工作在用户态,可以使用CPU除控制硬件外的所有指令集。

3、CPU两种工作模式的切换
用户程序在需要控制硬件的时候由于无法使用CPU控制硬件的指令集,所以需要向操作系统发起系统调用,让CPU工作在内核态控制硬件完成相应操作,再让CPU切换到用户态,将执行结果返回给用户程序。

五、存储器系列
1、寄存器
寄存器又叫做一级缓存即L1缓存,寄存器镶嵌再CPU内部,是一种速度和CPU一样的快速存储设备,但是存储量极小只有几K的容量并且是一种易失性存储设备,断电后数据就会丢失。
2、高速缓存
高速缓存又叫做二级缓存即L2缓存,它的位置在寄存器和内存之间,是一种速度比寄存器稍慢一点,但是存储量比寄存器大很多的存储设备,一般有几兆的存储量,也是一种易失性存储设备。
3、内存
内存又叫主存(RAM),是程序运行时存储数据的主要存储设备,它的速度比寄存器和高速缓存都要慢很多,但是存储量比它们都要大,一般在几G到几十G不等,是一种易失性存储设备。
4、ROM、EEPROM、闪存和CMOS
ROM是一种只读的非易失性存储设备,主要用于安装计算机的BIOS系统
EEPROM和闪存都是可读可写的非易失性存储设备
CMOS是一种容量很小的非易失性存储设备,主要用于存储BIOS的相关配置参数以及当前的日期时间,它的耗电量极小,只需要一颗纽扣电池就可以工作几年不间断。

六、硬盘
1、磁盘结构

磁头:用于读取数据的针头,类似老式唱片机的针头

盘面:磁盘的一个面,每个磁盘都有两个盘面,每个盘面都能存储数据

磁道:盘面上每个存储数据的圆周长

柱面:每个磁盘相同磁道垂直相连组成的部分

扇区:每个盘面上从最内侧的磁道到最外侧的磁道按相同角度分割的扇形区域

分区:从最内侧的柱面到最外侧的柱面,相邻的几个柱面组成的区域就叫扇区
2、平均寻道时间
磁盘磁头找到数据所在磁道所用的平均时间
3、平均延迟时间
磁盘磁头移动到数据所在扇区所用的平均时间
4、虚拟内存
虚拟内存是在硬盘中划出的一块作为内存使用的区域,它的作用是在运行比物理内存大的程序时暂存不需要马上使用的数据,大小一般设置在物理内存1.5-2倍不超过8G的大小,它的关键时快速的内存地址映射,由MMU管理。

七、磁带
磁带是一种非易失性存储设备,它的速度很慢,但是由于存储容量大,便于搬运的特点,多用于企业的数据备份。

八、总线与南北桥
总线是用于将计算机所有硬件连接起来可以互相通信的设备。
北桥PCI,用于连接高速设备
南桥ISA,用于连接慢速设备

九、操作系统启动流程
1、计算机加电
2、BIOS检测硬件状态
3、BIOS从CMOS中读取启动设备的信息
4、从启动设备的第一个扇区中读取MBR信息
5、从MBR的前446字节中读取并加载GRUB(bootloader),选择要启动的操作系统
6、将相应的操作系统内核加载到内存中,然后CPU从内存中读取操作系统内核,启动操作系统
7、操作系统询问BIOS计算机中所有硬件的驱动程序的安装信息,如有未安装的设备驱动就提示安装,如果都安装了就将驱动程序都加载到操作系统内核中并创建相应进程,启动登陆程序

十、应用程序启动流程
1、向操作系统发起请求
2、操作系统调用硬盘,将程序数据加载到内存中
3、CPU从内存中读取程序数据并运行程序

 

posted @ 2017-07-11 16:08  魅力宁波  阅读(200)  评论(0)    收藏  举报