计算机硬件基础

 

一、计算机基础概述

  学习下面的内容,一定要有耐心,你可能上来有些名词搞的不太请求,但是一定要静下心来学习,目前的目标,就是知道一下计算机各个部件都是干什么的就可以了。

  计算机硬件是人类处理运算与储存资料的重要元件,在能有效辅助数值运算之前,计算机硬件就已经具有不可或缺的重要性。最早,人类利用类似符木的工具辅助记录,像是腓尼基人使用黏土记录牲口或谷物数量,然后藏于容器妥善保存,米诺斯文明的出土文物也与此相似,当时的使用者多为商人会计师及政府官员。

  辅助记数的工具之后逐渐发展成兼具记录与计算功能,诸如算盘计算尺模拟计算机和近代的数字电脑。即使在科技文明的现代,老练的算盘高手在基本算数上,有时解题速度会比操作电子计算机的使用者来得快──但是在复杂的数学题目上,再怎么老练的人脑还是赶不上电子计算机的运算速度。

   计算机(computer)俗称电脑,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。

  一套完整的计算机系统分为:计算机硬件,操作系统,应用软件。

    

  下面我们先从计算机硬件学起吧,内容不是很多,首先看一下计算机硬件组成,看下图。

     

  计算机硬件分五大部分:

1、控制器:计算机的指挥系统。控制器通过地址访问存储器,从存储器中取出指令,经译码器分析后,根据指令分析结果产生相应的操作控制信号作用于其他部件,
  使得各部件在控制器控制下有条不紊地协调工作。
2、运算器:实现算术运算和逻辑运算的部件。 控制器和运算器组成了CPU,算术运算就是1+1=2,逻辑运算就是判断,
  比如有个女人从你眼前经过,你是不是要判断一下是不是美女,如果是美女,你表白,如果不是,你可能就没有想法了,
  当然我可能低估了你的底线,哈哈。
3、存储器:是计算机用来存放所有数据和程序的记忆部件。它的基本功能是按指定的地址存(写/input)入或者取(读/output)出信息(简称I/O设备)。
  计算机中的存储器可分成两大类:一类是内存储器,简称内存或主存;另一类是外存储器(辅助存储器),简称外存或辅存。
  存储器由若干个存储单元组成,每个存储单元都有一个地址,计算机通过地址对存储单元进行读写。一个存储器所包含的字节数称为存储容量,单位有B、KB、MB、GB、TB等。
4、输入设备:是向计算机中输入信息(程序、数据、声音、文字、图形、图像等)的设备。常见的输入设备有:键盘、鼠标、图形扫描仪、
  触摸屏、条形码输入器、光笔等。 外存储器也是一种输入设备。
5、输出设备:主要有显示器、打印机和绘图仪等。外存储器也当作一种输出设备。

 

   CPU、内存(主存储器)以及其他I/O设备都由一条系统总线(bus)连接起来并通过总线与其他设备通信,现代计算机的结构更复杂,包括多重总线。

cpu是人的大脑,负责控制全身和运算(从内存中取指令-->解码-->执行)

内存是人的记忆,负责临时存储

硬盘是人的笔记本,负责永久存储

输入设备是耳朵或眼睛或嘴巴,负责接收外部的信息存入内存

输出设备是你的脸部(表情)或者屁股,负责经过处理后输出的结果

以上所有的设备都通过总线连接,总线相当于人的神经

 

   下面我们针对上图,将内部设备和外部设备中的主要部分简单介绍一下。

 

二、内部设备

1.中央处理器(CPU)

  定义:中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。

  功能:解释计算机指令以及处理计算机软件中的数据。

    

 

  有关cpu其他参数的一些介绍:

主频:主频是CPU的时钟频率(CPU Clock Speed),是CPU运 算时的工作的频率(1秒内发生的同步脉冲数)的简称。
  单位是Hz。一般说来,主频越高,CPU的速度越快,由于内部结构不同,并非所有的时钟频率相同的CPU的性能都一样。 外频:系统总线的工作频率, CPU与外部(主板芯片组)交换数据、指令的工作时钟频率。 倍频:倍频则是指CPU外频与主频相差的倍数。 三者关系是:主频
=外频x倍频 缓存(cache):高速交换的存储器。CPU缓存分为一级 ,二级,三级缓存,即L1,L2,L3。 内存总线速度(Memory-Bus Speed): 一般等同于CPU的外频 ,指CPU与二级(L2)高速缓存和内存之间的通信速度。 地址总线宽度:决定了CPU可以访问的物理地址空间。

 

  目前世界上的主流CPU有哪些呢?我们笔记本上贴的Intel、AMD是怎么回事呢?下面我们来认识一下:(了解)

#1、CPU的分类
  我们已经知道CPU内部是含有微指令集的,我们所使用的的软件都要经过CPU内部的微指令集来完成才行。这些指令集的设计主要又被分为两种设计理念,这就是目前世界上常见到的两种主要的CPU种类:分别是精简指令集(RISC)与复杂指令集(CISC)系统。下面我们就来谈谈这两种不同CPU种类的差异!

#1.1、精简指令集
  精简指令集(Reduced Instruction Set Computing,RISC):这种CPU的设计中,微指令集较为精简,每个指令的运行时间都很短,完成的动作也很单纯,指令的执行效能较佳;但是若要做复杂的事情,就要由多个指令来完成。常见的RISC指令集CPU主要例如Sun公司的SPARC系列、IBM公司的Power Architecture(包括PowerPC)系列、与ARM系列等。【注:Sun已经被Oracle收购;】

  SPARC架构的计算机常用于学术领域的大型工作站中,包括银行金融体系的主服务器也都有这类的计算机架构;

  PowerPC架构的应用,如Sony出产的Play Station 3(PS3)使用的就是该架构的Cell处理器。

  ARM是世界上使用范围最广的CPU了,常用的各厂商的手机、PDA、导航系统、网络设备等,几乎都用该架构的CPU。

#1.2、复杂指令集
  复杂指令集(Complex Instruction Set Computer,CISC)与RISC不同,在CISC的微指令集中,每个小指令可以执行一些较低阶的硬件操作,指令数目多而且复杂,每条指令的长度并不相同。因此指令执行较为复杂所以每条指令花费的时间较长,但每条个别指令可以处理的工作较为丰富。常见的CISC微指令集CPU主要有AMD、Intel、VIA等的x86架构的CPU。

  由于AMD、Intel、VIA所开发出来的x86架构CPU被大量使用于个人计算机(Personal Computer)上面,因此,个人计算机常被称为x86架构的计算机!举个例子,我们在MySQL官网下载MySQL时名字为:
      Windows(x86,32-bit),ZIP Archive
      (mysql-5.7.20-win32.zip)

  我们发现名字中有x86,这其实就是告诉我们该软件应用于x86结构的计算机。那么为何称为x86架构呢?这是因为最早的那颗Intel发展出来的CPU代号称为8086,后来依此架构又开发出80285、80386....,因此这种架构的CPU就被称为x86架构了。

  在2003年以前由Intel所开发的x86架构CPU由8位升级到16、32位,后来AMD依此架构修改新一代的CPU为64位,为了区别两者的差异,因此64位的个人计算机CPU又被统称为x86_64的架构了。

  不同的x86架构的CPU的差别在哪呢?除了CPU的整体结构(如第二层缓存、每次运作可执行的指令数等)之外,主要是在于微指令集的不同。新的x86的CPU大多含有很先进的微指令集,这些微指令集可以加速多媒体程序的运作,也能够加强虚拟化的效能,而且某些微指令集更能够增加能源效率,让CPU耗电量降低,这对于高电费是个不错的消息。 试想一下,如果CPU的指令集都相同,那么OS是不是就不用分32bit和64bit了,各种程序的跨平台是不是就更简单了呢。

#2 CPU历史
  计算机的发展主要表现在其核心部件——微处理器【微处理器由一片或少数几片大规模集成电路组成的中央处理器。这些电路执行控制部件和算术逻辑部件的功能。微处理器能完成取指令、执行指令,以及与外界存储器和逻辑部件交换信息等操作,是微型计算机的运算控制部分。它可与存储器和外围电路芯片组成微型计算机。】的发展上,每当一款新型的微处理器出现时,就会带动计算机系统的其他部件的相应发展,如计算机体系结构的进一步优化,存储器存取容量的不断增大、存取速度的不断提高,外围设备的不断改进以及新设备的不断出现等。根据微处理器的字长和功能,可将其发展划分为以下几个阶段。

第1阶段(1971——1973年)是4位和8位低档微处理器时代,通常称为第1代。
第2阶段(1974——1977年)是8位中高档微处理器时代,通常称为第2代。
第3阶段(1978——1984年)是16位微处理器时代,通常称为第3代。
第4阶段(1985——1992年)是32位微处理器时代,又称为第4代。
第5阶段(1993-2005年)是奔腾(pentium)系列微处理器时代,通常称为第5代。
第6阶段(2005年至今)是酷睿(core)系列微处理器时代,通常称为第6代。“酷睿”是一款领先节能的新型微架构,设计的出发点是提供卓然出众的性能和能效,提高每瓦特性能,也就是所谓的能效比。
若想具体了解CPU历史参见链接:

https://baike.baidu.com/item/%E4%B8%AD%E5%A4%AE%E5%A4%84%E7%90%86%E5%99%A8/284033?fr=aladdin&fromid=368184&fromtitle=%EF%BC%A3%EF%BC%B0%EF%BC%B5#10

  总结:CPU按照指令集可以分为精简指令集CPU和复杂指令集CPU两种,区别在于前者的指令集精简,每个指令的运行时间都很短,完成的动作也很单纯,指令的执行效能较佳;但是若要做复杂的事情,就要由多个指令来完成。后者的指令集每个小指令可以执行一些较低阶的硬件操作,指令数目多而且复杂,每条指令的长度并不相同。因为指令执行较为复杂所以每条指令花费的时间较长,但每条个别指令可以处理的工作较为丰富。

  根据位数又可分为32bit和64bit(指的是CPU一次执行指令的数据带宽),这个具体后面了解。CPU往往又可细分为运算器和控制器两部分,下面我们再来叙说一下这两部分。
View Code

  运算器+控制器

#2.1、运算器
  运算器是对信息进行处理和运算的部件。经常进行的运算是算术运算和逻辑运算,所以运算器又可称为算术逻辑运算部件(Arithmetic and Logical,ALU)。

  运算器的核心是加法器。运算器中还有若干个通用寄存器或累加寄存器,用来暂存操作数并存放运算结果。寄存器的存取速度比存储器的存放速度快很多。关于寄存器,我们在后面介绍CPU的时候再认识。

#2.2 控制器
  控制器是整个计算机的指挥中心,它的主要功能是按照人们预先确定的操作步骤,控制整个计算机的各部件有条不紊的自动工作。

  控制器从主存中逐条地读取出指令进行分析,根据指令的不同来安排操作顺序,向各部件发出相应的操作信号,控制它们执行指令所规定的任务。

  控制器中包括一些专用的寄存器。
View Code

  cpu有向下兼容性,比如64位(bit)的可以兼容32位的,一次性取64位的数据,那么如果你的软件是32位一组的指令组成的,那么一次取64位,前面剩下的32位补0,补成64位,所以不影响你的取指令,但是32位的不能兼容64位的,因为我的软件要求,你一次取出的要拿到cpu里面运行的指令是64位的,但是你cpu是32位的,所以一次不能取出64位的数据,那么我的软件就不能够正常运行。

  二进制和十进制转换,拿十进制的13举例:

    十进制转二进制计算方法

      

    二进制转十进制

      

 

2.内部存储器(Memory)

  定义:内存储器是计算机中重要的部件之一,它是与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存储器中进行的,因此内存储器的性能对计算机的影响非常大。

  功能内存储器(Memory)也被称为内存,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。

  

 

  有关内存的其他参数介绍(了解)

容量:即该内存的存储容量,单位:KB MB GB 
内存带宽:内存带宽是指内存与北桥芯片之间的数据传输率,单通道内存节制器一般都是64-bit的(双通道内存带宽为128-bit),
  8个二进制位相当于1个字节,换算成字节是64/8=8,再乘以内存的运行频 率,如果是DDR内存就要再乘2 双通道内存:双通道,就是在北桥芯片级里设计两个内存控制器,这两个内存控制器可相互独立工作,
  每个控制器控制一个内存通道。在这两个内存通CPU可分别寻址、读取数据,从而使内存的带宽增加一倍,数据存取速度在理论上也是提升一倍。 带宽计算: 内存带宽
=内存总线频率×数据总线位数/8 示例:DDR2 667,运行频率为333MHz带宽为333×2×64/8=5400MB/s=5.4GB/s DDR2 800,运行频率为400MHz,带宽为 400×2×64/8=6400MB/s=6.4GB/s 内存发展史: 1. SIMM 内存 1988年前 2. EDO DRAM内存 1991-1995年 3. SDRAM 内存 1995以后 4. Rambus DRAM内存 1998 5. DDR内存 DDR内存便是我们熟知的内存了 6. DDR2 7. DDR3 8. DDR4 如今

了解:内存满了的话,你会发现你的电脑回很卡,为什么卡呢,不是cpu慢了,而是内存满了,然后你运行其他的程序的话,内存中不常用的程序会自动被加载到硬盘里面去,
  你想执行的程序会加载到内存中,那么这就涉及到和IO设备(磁盘)打交道,就会导致速度慢了下来

  

三、外部设备

1.输入设备

  定义:向计算机输入数据和信息的设备。

  概念:是计算机与用户或其他设备通信的桥梁,说白了就是人类向计算机发送命令传输信息的设备,是人类控制计算机的工具。

    

  现在的计算机能够接收各种各样的数据,既可以是数值型的数据,也可以是各种非数值型的数据,如图形、图像、声音等都可以通过不同类型的输入设备输入到计算机中,进行存储、处理和输出。

  常见的输入设备 

字符输入设备:键盘; 
光学阅读设备:光学标记阅读机,光学字符阅读机; 
图形输入设备:鼠标器、操纵杆、光笔; 
图像输入设备:摄像机、扫描仪、传真机; 
模拟输入设备:语言模数转换识别系统

 

   

2.输出设备

  定义输出设备(Output Device)是计算机硬件系统的终端设备,用于接收计算机数据的输出显示、打印、声音、控制外围设备操作等。也是把各种计算结果数据或信息以数字、字符、图像、声音等形式表现出来。

  常见的输出设备有显示器、打印机、绘图仪、影像输出系统、语音输出系统、磁记录设备等。

  输出设备和输入设备是对应的设备,用户使用输入设备给计算机发送指令之后便需要有输出设备来把执行结果展现给用户,所以输出设备同样是计算机硬件系统中必不可少的部分。

 

3.外部存储器

   定义:外储存器是指除计算机内存及CPU缓存以外的储存器,此类储存器一般断电后仍然能保存数据(与内存断电数据就丢失不同)。

     

  常见的外存储器:

软盘:软磁盘使用柔软的聚酯材料制成原型底片,在两个表面涂有磁性材料。常用软盘直径为3.5英寸,存储容量为1.44MB.软盘通过软盘驱动器来读取数据。

U盘:U盘也被称为“闪盘”,可以通过计算机的USB口存储数据。与软盘相比,由于U盘的体积小、存储量大及携带方便等诸多优点,U盘已经取代软盘的地位。 

硬盘:硬磁盘是由涂有磁性材料额铝合金原盘组成的,每个硬盘都由若干个磁性圆盘组成。 

磁带存储器:磁带也被称为顺序存取存储器SAM。它存储容量很大,但查找速度很慢,一般仅用作数据后备存储。计算机系统使用的磁带机有3中类型:盘式磁带机、数据流磁带机及螺旋扫描磁带机。 

光盘存储器:光盘指的是利用光学方式进行信息存储的圆盘。它应用了光存储技术,即使用激光在某种介质上写入信息,然后再利用激光读出信息。
  光盘存储器可分为:CD
-ROM、CD-R、CD-RW、和DVD-ROM等。

 

   硬盘的基本参数:

容量:容量是硬盘最主要的参数,容量的大小决定硬盘中存储数据的多少,单位有MB、GB、TB 、PB等。 

转速:转速是指硬盘盘片每分钟转动的圈数,单位为rpm,转速越快存储(读取)数据的速度就越快。常见的硬盘有5400转和7200转的,服务器上的硬盘转速能达到15000转。 

传输速率:传输速率(Data Transfer Rate) 。硬盘的数据传输率是指硬盘读写数据的速度。 

缓存:硬盘缓存的目的是为了解决系统前后级读写速度不匹配的问题,以提高硬盘的读写速度。

 

   硬盘接口类型:

IDE接口:硬盘接口规范,采用ATA技术规范 
SCSI接口:应用于小型机上的高速数据传输技术 
SATA接口: Serial ATA,提高传输速率,支持热插拔。传输速度:SATA2=3.0Gb/s SATA3=6.0Gb/s 
SAS接口: Serial Attached SCSI,兼容SATA 
目前主流的硬盘接口为SATA和SAS接口

 

  存储新宠——固态硬盘

    定义:固态硬盘(Solid State Drives),简称固盘,固态硬盘(Solid State Drive)用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元(FLASH芯片、DRAM芯片)组成。

    

 

     和传统机械硬盘的区别

       优点:

外形:SATA接口的固态硬盘和传统2.5英寸机械硬盘外观是基本一致的。 
速度:固态硬盘的读写速度远超过传统机械硬盘。 
重量:固态硬盘因为没有机械硬盘中厚重的金属部件和碟片所以质量轻。 
能耗:机械硬盘是电机带动碟片运行的,固态硬盘运行的能耗是要低于机械硬盘很多的。 
体积:SATA接口的固态硬盘体积和机械硬盘基本相同,但是其他接口如mSATA、NGFF(M.2)、PCIE等的固态硬盘体积就比机械硬盘小很多了。 
噪音:固态硬盘因为不需要碟片旋转,运行时只是内部通过电流,所以运行过程中没有任何噪音。 
抗震:传统固态硬盘因为内部有机械运动,磁头和碟片的距离非常近,震动对机械硬盘的损伤非常大,而固态硬盘工作过程中没有机械运动所以即使处在不稳定的环境中也能正常工作。

      缺点:

容量:固态硬盘容量普遍比较小 
价格:固态硬盘价格要贵于机械硬盘不少。 
寿命:固态硬盘闪存具有擦写次数限制的问题,这也是许多人诟病其寿命短的所在。其实在普通家用计算机上工作的固态硬盘其寿命一般都会比该台计算机更长,
  或者在寿命用完之前被新的产品换掉,所以影响不大。但是在一些读写量大的工作环境中工作的话就需要考虑寿命问题。 数据无法恢复:固态硬盘一旦损坏的话里面的数据将无法恢复,机械硬盘就算坏了数据也在碟片上,还能救回不少数据,而固态硬盘没有碟片,所以坏了数据就没了。

  

4.通信设备

  网卡:全称是网络接口控制器、网络适配器、网卡、局域网接收器。是一块被设计用来允许计算机在计算机网络上进行通讯的计算机硬件。由于其拥有MAC地址,因此属于OSI模型的第1层。它使得用户可以通过电缆或无线相互连接。每一个网卡都有一个被称为MAC地址的独一无二的48位串行号,它被写在卡上的一块ROM中。在网络上的每一个计算机都必须拥有一个独一无二的MAC地址。

  说白了,网卡就是帮你接收网络传出过来的电信号,接收到你的电脑中,而MAC地址就是你这个网卡在整个互联网网络中的身份标识,就像你的身份证号一样。有了身份,别人才能和你通信。

  调制解调器:是调制器和解调器的缩 写 ,一种计算机硬件 [1] ,它能把计算机的数字信号翻译成可沿普通电话线传送的模拟信号,而这些模拟信号又可被线路另一端的另一个调制解调器接收,并译成计算机可懂的语言。这一简单过程完成了两台计算机间的通信。

  关于计算机硬件我们就暂时介绍到这里,下面做一些其他内容补充。

 

 

四、存储器

   存储器它们的速度和容量,往往呈现负相关的,所有人都期望的存储设备是这样的:速度快+容量大+价钱便宜。然后同时兼备三者是不可能的,如下表所示:

    

  存储器系统采用如上图的分层结构,顶层的存储器速度较高,容量较小,与底层的存储器相比每位的成本较高,其差别往往是十亿数量级的。

寄存器:它的材料是与CPU相同,一个字,贵,因此它的速度与CPU一样快,CPU访问它没有延迟,32位CPU中为32*32,64位CPU中为64*64,这两种的容量均小于1KB。

高速缓存:主要由硬件控制高速缓存的存取。内存中有高速缓存行按照0~64字节为行0,64~127为行1。。。最常用的高速缓存行放置在cpu内部或者非常接近cpu的高速缓存中。
  缓存在计算机科学的许多领域中起着重要的作用,并不仅仅只是RAM(随机存取存储器)的缓存,除了主存RAM之外,许多计算机已经在使用少量的非易失性随机访问存储如ROM。
  ROM(Read Only Memory)只能读不能写,断电不丢失数据。EEPROM(Electrically Erasable PROM)电可擦除可编程ROM以及闪存(Flash Memory)同样是非易失性存储器。它们与ROM相比,不同的是:他们可擦除重写,但是花费的时间较长。闪存应用于很多电子设备之中,如手机、电视机等,这些电子设备往往将其作为存储媒介。 CMOS是另一种存储器,它是易失性的。它可以与递增时间的电路是由一块小电池驱动,可以供时间更新,因此应用于计算机之中;CMOS可以保存配置的参数,它的耗电低。 内存:他是存储器系统的主力,主存通常称为随机访问存储RAM0,就是我们通常所说的内存,容量一直攀升,所有不能再高速缓存中找到的,
  都会到主存中找,主存是易失性存储,断电后数据会全部丢失。 磁盘:它的速度很低,其原因是它是一种机械装置,在磁盘中有一个或多个金属盘片,它们以5400、7200或10800rpm(RPM
=revolution per minute 每分钟多少转)的速度旋转。
  从边缘开始有一个机械臂悬在盘面上,这类似于老式黑胶唱片机上的拾音臂。信息卸载磁盘上的一些列的同心圆上,是一连串的二进制位(称为bit位),
  为了统计方法,8个bit称为一个字节bytes,1024bytes=1kb,1024kb=1Mb,1024Mb=1Gb,所以我们平时所说的磁盘容量最终值得是磁盘能写多少个二进制位。
  为什么不说硬盘呢?因为硬盘的范围比较广,包含磁盘。

磁带:速度低,容量大,生命周期长。

  有关磁盘的介绍,磁盘构成看下图:

    

    

  磁盘参数和一些名字介绍:

磁道:每个磁头可以读取一段区域。

柱面:把一个戈丁手臂位置上所有的磁道合起来的组合。

扇区:是读写数据的最小的单位,每个磁道划成若干扇区,扇区典型的值是512字节。

数据都存放在一段一段的扇区,即磁道这个圆圈的一小段圆圈,磁盘读取一段数据需要经历寻道时间和延迟时间。

平均寻道时间:机械手臂从一个柱面随机移动到相邻的柱面的时间成为寻道时间,找到了磁道就意味着找到了数据所在的那个圆圈,但是不知道数据具体这个圆圈的具体位置。

平均延迟时间:机械手臂到达正确的磁道后还必须等待旋转到数据所在的扇区下,这段时间称为延迟时间。

一个7200(转/每分钟)的硬盘,每旋转一周所需时间为60×1000÷7200=8.33毫秒,则平均旋转延迟时间为8.33÷2=4.17毫秒(平均情况下,需要旋转半圈)。
  按照同样的计算方法,一个5400(转/每分钟)的硬盘,平均旋转延迟时间为60×1000÷5400÷2=5.56毫秒。
  二者相比,7200转理论上比5400转快15%,但是实际速度只比后者提高了不到百分之十,离很多人预想的三分之一相距甚远。

二进制又称为bit位,11111111这是8bit的二进制。单位换算:8bit=1Bytes,1024Bytes=1KB,1024KB=1MB,1024MB=1GB,1024GB=1TB,1024TB=1PB 。
  你买硬盘的时候有没有发现,1个G的硬盘,结果实际上不是1个G,你打电话问他,他会说,我们硬盘的计量单位是1000*1000*1000*8 。
  他们不按照1024来算,按照1000来算,很是鸡贼。

 

   

  磁带

相信提到磁带,大家还是比较熟悉的,以前看一些老电影都是一大卷磁盘播放,听歌的磁带等,这就是我们说的磁带,因为大数据与AI技术崛起,企业生成海量数据,涉及业务的方方面面。
  金融监管部门提出要求,机构的数据必须保存更长时间。正因如此,企业与机构存储的数据越来越多。 研究报告证实,每年存储的数据都在以30
-40%的速度增长。与此同时,硬件容量也在增长,但是增长速度低了一半。还好,许多信息并不需要即时访问,如果想存储此类数据,
  磁带是一个完美的选择。 所以说,磁带并没有远去,只是能力发展到了幕后,但是依旧很给力。 事实上,有许多数据就是用磁带存储的,包括基础科学数据,比如粒子物理学、射电天文学、人类文化遗产、国家档案、重要电影、银行、保险、石油勘探等数据。
    有一批人正在寻找办法提高磁带的存储能力。 磁带其实早就出现了,磁带技术没有停止前进的步伐,完全相反,就像硬盘和晶体管一样,在过去几十年里,磁带技术进步神速。 第一个商用数字磁带存储装置叫作Model
726,是IBM开发的,一卷磁带可以存储1.1MB数据。到了今天,一卷现代磁带可以存储15TB数据,
    一个磁带库可以存储最多278PB数据(1PB=1024TB)。如果用CD光碟存储这么多的数据,需要3.97亿张,将这些光盘叠在一起高度超过476公里。
    怎么换算的?278PB相当于291504128GB,一张普通CD光盘容量约为700MB,算下来大约就是3.97亿张了。 与硬盘 、半导体存储装置相比,磁带的访问速度的确慢很多。但是,作为存储媒介,磁带的优点相当多。首先,磁带更节能,一旦数据被磁带记录,
    就会放进磁带库,静静躺着,不会消耗任何电能。其次,磁带相当稳定,出错概率比其它存储设备低4
-5个量级。再次,磁带非常安全。如果磁带没有插入驱动器,
    数据无法访问,无法修改。现在网络攻击流行,数据老是被窃取,这一特点相当吸引人

 

  

五、虚拟内存

  虚拟内存别称虚拟存储器(Virtual Memory)。电脑中所运行的程序均需经由内存执行,若执行的程序占用内存很大或很多,则会导致内存消耗殆尽。为解决该问题,Windows中运用了虚拟内存技术,即匀出一部分硬盘空间来充当内存使用。当内存耗尽时,电脑就会自动调用硬盘来充当内存,以缓解内存的紧张。若计算机运行程序或操作所需的随机存储器(RAM)不足时,则 Windows 会用虚拟存储器进行补偿。它将计算机的RAM和硬盘上的临时空间组合。当RAM运行速率缓慢时,它便将数据从RAM移动到称为“分页文件”的空间中。将数据移入分页文件可释放RAM,以便完成工作。 一般而言,计算机的RAM容量越大,程序运行得越快。若计算机的速率由于RAM可用空间匮乏而减缓,则可尝试通过增加虚拟内存来进行补偿。但是,计算机从RAM读取数据的速率要比从硬盘读取数据的速率快,因而扩增RAM容量(可加内存条)是最佳选择。
  虚拟内存是Windows 为作为内存使用的一部分硬盘空间。虚拟内存在硬盘上其实就是为一个硕大无比的文件,文件名是PageFile.Sys,通常状态下是看不到的。必须关闭资源管理器对系统文件的保护功能才能看到这个文件。虚拟内存有时候也被称为是“页面文件”就是从这个文件的文件名中来的。
内存在计算机中的作用很大,电脑中所有运行的程序都需要经过内存来执行,如果执行的程序很大或很多,就会导致内存消耗殆尽。为了解决这个问题,WINDOWS运用了虚拟内存技术,即拿出一部分硬盘空间来充当内存使用,这部分空间即称为虚拟内存,虚拟内存在硬盘上的存在形式就是 PAGEFILE.SYS这个页面文件。

  PS:从一个程序切换到另外一个程序,成为上下文切换(context switch),缓存和MMU的出现提升了系统的性能,尤其是上下文切换

 

六、显卡

  定义显卡(Video card,Graphics card)全称显示接口卡,又称显示适配器,在游戏开发水平与日俱增的今天,显卡是计算机最基本最重要的配件之一

  功能:显卡作为电脑主机里的一个重要组成部分,是电脑进行数模信号转换的设备,承担输出显示图形的任务。

    

  基本参数:

1.显示芯片(芯片厂商、芯片型号、制造工艺、核心代号、核心频率、SP单元、渲染管线、版本级别) 
2.显卡内存(显存类型、显存容量、显存带宽(显存频率×显存位宽÷8)、显存速度、显存颗粒、最高分辨率、显存时钟周期、显存封装) 
3.技术支持(像素填充率、顶点着色引擎、3D API、RAMDAC频率) 
4.显卡PCB板(PCB层数、显卡接口、输出接口、散热装置)

  显卡分类

集成显卡:集成显卡是将显示芯片、显存及其相关电路都集成在主板上,与其融为一体的元件。 
集成显卡的优点是:功耗低,占用空间小,发热低。 
缺点是:性能差,故障难维修。 
集成显卡因其性能低下,所以一般适合没有太多图形需要处理的工作环境。

核心显卡:核心显卡是将图形核心与处理核心整合在同一块基板上,构成一颗完整的处理器。此乃英特尔公司的杰作。在普通家用级CPU里便是整合了一块图形核心,如酷睿系列。 
优点:核心显卡的有点与集成显卡的优点基本一致,不过在性能上核心显卡通常是强于集成显卡,这也满足了不少用户的游戏需求。 
缺点:难以胜任大型游戏以及专业图形处理工作。

独立显卡:独立显卡是指将显示芯片、显存及其相关电路单独做在一块电路板上,自成一体而作为一块独立的板卡存在,它需占用主板的扩展插槽(ISA、PCI、AGP或PCI-E)。 
优点:独安装有显存,一般不占用系统内存,在技术上也较集成显卡和核心显卡先进得多,性能远超集成显卡和核心显卡,同时容易进行显卡的硬件升级,故障也容易更换和维修。 
缺点:功耗高,发热量大,占据空间大,性能较强的显卡价格昂贵,对于笔记本来说这几点是非常影响整个系统的稳定性的(热量)。

 

   

  其实独立显卡也分为两类,一类是专业的图形卡,一类是娱乐用的游戏卡,如同CPU的至强和酷睿一样,需求不同性能侧重点不同。

  独立显卡是多个部件组合而成协同工作,更像是一个将数字信号转换为模拟信号的硬件系统。虽然独立显卡有诸多缺点,但是独立显卡市场依然火热,究其原因还是因为独立显卡拥有集成显卡核心显卡难以企及的强大性能,在用户眼中只要拥有强大的性能,其他那些缺点却是不太在乎。

从用途的话可以分为最低端主要负责基础视频功能的集显(价格:极低,主板或CPU集成,无需另外购买),到主要应对目前大型3D游戏的游戏显卡(价格从200多元到7、8千元不等),最贵的是由于游戏开发,广告设计等等的专业显卡(价格一般在一万元以上)
    从显卡公司上来说,目前AMD-ATI和Intel是目前集成显卡的主要研发生产商,其中ATI的最新型号集成显卡性能要比Intel的强很多。(市场上仍存在一部分带有NV集成显卡的主板,但NV的主板制造基本已经处于停滞状态,集显性能也略显过时了)。独立显卡(这里只讨论游戏显卡)的主要研发生产商主要是AMD-ATI和NV两家,可以说现在也只有这两家,对应产品也是就俗称的A卡和N卡,在游戏性能上各有千秋(所谓的A卡看高清,N卡玩游戏完全是胡扯,NV的宣传策略而已),A卡的研发特点是对新技术的使用有些急功近利,为了技术上的领先经常将各种尚未完全成熟的技术使用在自己的最新型号的显卡上,但为此也曾付出不少的代价,如:R600显示核心。相比之下NV研发要先的稳健得多,其旗舰级显卡一般只采用当时已完全成熟的技术手段,而新技术一般会用在低端显卡上做实验(不仅是理论性能试验,还出售做市场反应实验),这也导致NV的技术更新相较ATI要慢一些,这也可能是NV的马甲产品(旧型号,旧核心,换了个名字就当新产品卖)众多的主要原因。
    从显卡型号上,显卡性能最重要的决定因素是核心规格,而不是显存,举个例子ATIHD4350显卡就算配上了1G显存,性能也达不到256M显存的HD4650的一半,而HD3850则要远胜于HD4350.现在独立显卡厂家主要是NV和ATI两家,而两家显卡共有的特点是在型号的命名上,对于ATI第一位数字是表示代数,如HD4350中的4表示这个显卡是ATI在08年发布的4XXX系列显卡,与只对应的07年的被称为3XXX系列显卡,单纯看到4比3大不具多大实际意义。而第二位数字则真正表示其实际性能如4350显卡就是4XXX系列独立显卡中的最低端产品(4200是集成显卡,集成在AMD785G的主板上),这位数字是越大越好,同样在前2位数字相同的前提下第3位数字也是越大越好,所以4890则是4XXX系列中最高端产品,对于显存的要求基本上5970 5870是2G,4870 4890 5770 5850是1G,4770 4830 4850 5750是512M-1G,4750 4670 5670 5570 5550是512M,4650 4570 4550 5450是256M,4350 128M(以上只是说足够,并不是说实际产品就是如此)
    对于NV显卡同样第一位数字不具备判断好坏的依据,而且其命名方式混乱,目前市面上有2种不同命名方式的4代产品,NV显卡同代产品上的判断方式与ATI基本相同,主要是看2位数字的大小,并以型号的后缀再次区分性能,举例来说9600GT要好于9600GSO,而GT240则不如GTS240(昙花一现的型号,现在完全看不到了),基本上9XXX系列由好到坏是,GTX GF GE(这两个型号极难买到)GT GSO GS,而对1XX 2XX 3XX(基本上只出现在笔记本上) 4XX显卡则是GTX GTS GT ,所以目前NV最好的显卡是GTX480. 性能从高到低依次是(基本如此):GTX480 GTX295 GTX470 GTX280 GTX465 GTX460 GTX270 GTX260+ GTX260 GTS250 9800GTX+ 9800GTX (8800GTX)9800GT (8800GT)GT240 9600GT(实际不少GT240性能比9600GT若,但NV推出GT240是用来替代9600GT的,这里就这么排吧)9600GSO 9500GT (8600GT)9400GT (只在笔记本上出现的3XX系列显卡及9300等型号未列出)
    
    对大部分家庭用户和办公用户来说,集成显卡的就足够了,没必要多花钱添置一块独立显卡,需要选择独立显卡的用户大多是对显卡性能有一定要求的游戏玩家。要判断需要什么等级的独立显卡,应该由玩家经常玩的游戏类型和使用的显示器来确定。

    对于集成显卡,相信各位小伙伴都有一个明确的认识,因为大多数游戏都会给出详细的最低配置和推荐配置。对于大多数网络游戏,入门级独立显卡甚至集成显卡就可以流畅运行,对于一些大型3A级别的游戏就得需要GTX 1060这种甜品级甚至以上等级的显卡。
    虽然可以按照游戏的配置要求选择显卡,但是很多电脑用户常常会忽略自己使用的显示器置对显卡的要求。对显卡影响最大的是游戏画质和分辨率。游戏的最低配置只能保证游戏在低画质低分辨率下流畅运行,而推荐配置也大多只能保证游戏在1080P分辨率、中等画质下的游戏效果。如果是在高分辨率下进行游戏,就不能按照游戏的推荐配置来选择显卡了。
    现在主流的显示器分辨率是1080P,刷新率也限制在60Hz,在这种状态下游戏,再高性能的显卡也不能完全发挥作用,千元左右的显卡就可以保证游戏的流畅运行,像英伟达的GTX 1050Ti和AMD新出的RX 560XT就足够了。
    使用4K分辨率的显示器,游戏设置也要开这么高的话,那就只能从旗舰级的显卡中挑选了,这么高的分辨率不仅对显卡性能要求很高,对显存容量也提出了更高的要求,RTX2080、Radeon VII刚刚够用,再提刷新率就得RTX 2080Ti上阵了。
关于显卡你需要知道的事情

 

   根据总线接口类型也可以将显卡分成下面几类:

ISA显卡
    ISA显卡是以前最普遍使用的VGA显示器所能支持的古老显卡。
VESA显卡
    VESA是“VideoElectronicStandardsAssociation”(视频电子工程标准协会)的缩写,由多家计算机芯片制造商于1989年联合创立。1994年底,VESA发表了64位架构的“VESA Local Bus”标准,80486的个人计算机大多采用这一标准的显卡。
PCI显卡
    PCI(Peripheral Component Interconnect)显卡,通常被使用于较早期或精简型的计算机中,此类计算机由于将AGP标准插槽移除而必须仰赖PCI接口的显卡。目前已知被多数的使用于486到PentiumII早期的时代。但直到显示芯片无法直接支持AGP之前,仍有部分厂商持续制造以AGP转PCI为基底的显卡。目前已知最新型的PCI接口显卡,是GeForce GT 610 PCI(SPARKLE制)型号为 GRSP610L1024LC 以及 ATI HD 4350 PCI(HIS制)和HIS HD 5450 PCI(HIS制)HIS 5450 Silence 512MB DDR3 PCI DVI/HDMI/VGA 产品编号 H545H512P。
AGP显卡
    AGP(AcceleratedGraphicsPort)是英特尔(Intel)公司在1996年开发的32位总线接口,用以增进计算机系统中的显示性能。分有AGP 1X、AGP 2X、AGP 4X及最后的AGP 8X,带宽分别为266MB/s、533MB/s、1066MB/s、以及2133 MB/s。其中AGP 4X以后已跟之前电压不兼容。其中3DLABS的“Wildcat4 7210”是最强的专业级AGP图形加速卡,而ATI公司的RadeonHD 4670、HD3850,是当年 (2007) 性能最强的消费级AGP图形加速卡。
PCI Express显卡
    PCI Express(亦称PCI-E)是显卡最新的图形接口,用来取代AGP显卡,面对日后3D显示技术的不断进步,AGP的带宽已经不足以应付庞大的数据运算。目前性能最高的PCI-Express显卡是nVidia公司的“NVIDIA Titan V ”和AMD公司的“Radeon Pro Duo(Fiji)”。现时,2007年后出产的显卡可支持双显卡技术(nVIDIA的SLi及nvlink和AMD的CrossFire)。
外接PCI Express显卡
    用USB或Thunderbolt高带宽线材连接到外接PCI Express显卡盒,需要用独立电源供应。
根据总线接口类型分类

  

七、总线

  总线(Bus)是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束, 按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和控制总线,分别用来传输数据、数据地址和控制信号。总线是一种内部结构,它是cpu、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统。在计算机系统中,各个部件之间传送信息的公共通路叫总线,微型计算机是以总线结构来连接各个功能部件的。

  总线就像是城市里的公共汽车(bus),能按照固定行车路线,传输来回不停运作的比特(bit)。这些线路在同一时间内都仅能负责传输一个比特。因此,必须同时采用多条线路才能传送更多数据,而总线可同时传输的数据数就称为宽度(width),以比特为单位,总线宽度愈大,传输性能就愈佳。总线的带宽(即单位时间内可以传输的总数据数)为:总线带宽 = 频率 x 宽度(Bytes/sec)。当总线空闲(其他器件都以高阻态形式连接在总线上)且一个器件要与目的器件通信时,发起通信的器件驱动总线,发出地址和数据。其他以高阻态形式连接在总线上的器件如果收到(或能够收到)与自己相符的地址信息后,即接收总线上的数据。发送器件完成通信,将总线让出(输出变为高阻态)。

  在计算机中用于连接各种功能部件并在它们之间传送数据的公用线路或通路。在计算机系统中按其所连接的对象,总线可分为: 片总线,又称器件级总线,它是中央处理器芯片内部的总线。内总线,又称系统总线或板级总线,它是计算机各功能部户之间的传输通路,微型计算机总线通常称为内总线。外总线,又称通信总线,它是计算机系统之间,或者是计算机主机与外围设备之间的传输通路 [1] 。

  总线是一种共享型的数据传送设备。虽然总线上可联接多个设备,但任一时刻通常只能有一对设备参与数据传输。按信息传输的形式,总线可分为并行总线和串行总线两种。并行总线对n位二进制信息用n条传输线同时传送,其特点是传输速度快,但系统结构较复杂,它用于计算机系统内的各部件之间的连接;串行总线对多位二进制信息共用一条传输线,多位二进制信息按时间先后顺序通过总线,它的特点是结构简单,但其传输速度较慢。总线必须有明确的规范: 总线定时协议,即在总线上传送信息时必须遵守一定的定时规则,例如同步总线定时,异步总线定时,半同步总线定时等。总线的物理特性,包括信号、电源、地址的电气特性,以及连线、接插件的机械特性。总线带宽,它是总线所能达到的最高传输率,其单位是MB/S。

    

 

  说了这么多的计算机硬件,那么他们是怎么一起工作的呢?这就不得不说一下我们主板了。

 

八、主板

  主板就像是一座城市的管理者,而总线就像是我们公交车,并且有着自己路线,其他各个部件都享是城市中的店面,每个店面都有自己的站点,那么主板就控制着所有的硬件系统,让他们协同并维持着自己的工作。

  定义:主板(英语:Motherboard,Mainboard,简称Mobo),又称主机板、系统板、逻辑板、母板、底板等,是构成复杂电子系统的中心或者主电路板。

  功能:在计算机中主板的功能便是将所有的硬件连接到一起构成计算机硬件系统,协同并维持各硬件的工作。

  典型的主板能提供一系列接合点,供处理器、显卡、声效卡、硬盘、存储器、对外设备等设备接合。它们通常直接插入有关插槽,或用线路连接。主板上最重要的构成组件是芯片组(Chipset)。而芯片组通常由北桥和南桥组成,也有些以单片机设计,增强其性能。这些芯片组为主板提供一个通用平台供不同设备连接,控制不同设备的沟通。它亦包含对不同扩充插槽的支持,例如处理器、PCIISAAGP,和PCI Express。芯片组亦为主板提供额外功能,例如集成显核,集成声效卡(也称内置显核和内置声卡)。一些高价主板也集成红外通讯技术、蓝牙和802.11(Wi-Fi)等功能。

  电路板下面,是4层有致的电路布线;在上面,则为分工明确的各个部件:插槽、芯片、电阻、电容等。当主机加电时,电流会在瞬间通过CPU南北桥芯片内存插槽AGP插槽、PCI插槽、IDE接口以及主板边缘的串口、并口、PS/2接口等。随后,主板会根据BIOS基本输入输出系统)来识别硬件,并进入操作系统发挥出支撑系统平台工作的功能。

     

      

 

     

  

 

 

九、BIOS(base input ouput system)

  它是一组固化到计算机内主板上一个ROM芯片(只读,不能写,也就是不能改)上的程序,它保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序,它可从CMOS(易失性的,断电就失去了数据)中读写系统设置的具体信息。 其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。此外,BIOS还向作业系统提供一些系统参数。系统硬件的变化是由BIOS隐藏,程序使用BIOS功能而不是直接控制硬件。现代作业系统会忽略BIOS提供的抽象层并直接控制硬件组件。说白了就是一个基本的输入输出的操作系统,能够支持基本的一些功能,能控制计算机开机时的一些简单功能,并且通过bios来控制从哪一个磁盘上读取启动操作系统代码程序(win7,win10,linux等),然后让操作系统来接管整个电脑的运作,然后bois就退出了,只在开机的时候起到了作用,然后就没它的事儿了,所以我们应该让bios知道从哪个磁盘上来启动操作系统,我要让bios知道哪个磁盘是我们的系统盘,比如win10的c盘一般是系统盘,也就是安装了我们操作系统的磁盘,系统到底安装到哪一个盘里面,这个能在一出厂的时候设置好吗,不能,是允许我们用户进行自己的配置的,我想将系统放到哪个盘就装到哪个盘,所以我们需要告诉bios从哪个盘(可以是电脑的磁盘,可以是外接的硬盘,光盘等,里面有别人写好的操作系统的程序代码)来启动系统,其实也就是安装操作系统,你们自己安装过吗?其实就和安装一个软件是一个道理,怎么叫做安装,其实就是将别人的程序安装自己电脑的本地磁盘上,这就叫做安装,但是如果你买的电脑本身没有操作系统的时候(裸机),所以我们开机的时候先进入bios系统(这个系统只有一些简单的功能,并且肯定不可能在这个系统里面安装东西的),然后指定某个盘来启动操作系统,然后由指定的操作系统来接管你整个电脑的运行,然后我们使用的这个盘里面有响应的程序来给我们自己的电脑安装操作系统,其实就将你某个系统盘的系统软件安装到我们自己电脑的磁盘上,然后我们再启动系统的时候,进入bios系统,指定我们自己本机电脑安装了操作系统的磁盘来启动操作系统就可以了。并且我们的bios也是可以设置密码的,也就是别人想登录bios也是需要输入密码才能进入bios系统的,能不能破解呢,可以的,把主板的电源抠出来就可以了,因为这个这个系统是存在在CMOS上的,而CMOS是易失性的,bios中相关数据断电后就消失了,也就是说设置的那些密码也就跟着消失了,所以,没有绝对安全的。双系统其实就是在电脑上安装两个操作系统软件,但是同时只能启动一个,看你自己启动的时候选择哪一个,当然了,如果大家知道虚拟技术,那么其实我们是可以通过虚拟机来同时启动多个系统。

  当今,此系统已成为一些病毒木马的目标。一旦此系统被破坏,其后果不堪设想

  当BIOS激活时会先去确认CMOS中的资料是否正确。如果正确,便会将之前用户存储在CMOS的资料,加上已存或找到的硬件信息,整合成一个表格,写到内存中,也就是所谓的SMBIOS。如果发现错误,则会自动以默认值取代CMOS提供的资料。所以这份写入内存的SMBIOS表格,就是用户进入BIOS选项后,可以看到或选择的所有信息。

  所有会在BIOS之前发生的操作就只有Power On,也就是按下计算机上电源开关的那一瞬间。在Power On阶段一开始,会进入BIOS的激活流程,当用户一按下电源开关,CPU会先被激活去寻找BIOS,接着BIOS会先在Flash Memory中执行,再加上CMOS中用户所喜好的设置,然后BIOS将自己解压缩到计算机的主存储器中。此时,用户若按下DEL键,就可以进入BIOS所提供的设置选项,从而看到所有的设置值;或是当用户进入操作系统后,操作系统就可以参考内存中的BIOS资料,访问到每一个硬件地址。

    

  除了厂商的新版BIOS之外,其实我们自己也能对BIOS作一定程度上的修改而获得某些新功能,例如更改能源之星LOGO,更改全屏开机画面,获得某些品牌主板的特定功能(例如为非捷波主板添加捷波恢复精灵模块),添加显卡BIOS模块拯救BIOS损坏的显卡,打开被主板厂商屏蔽了的芯片组功能,甚至支持新的CPU类型,直接支持大容量的硬盘而不用DM之类的软件等等。不过这些都需要对BIOS非常熟悉而且有一定的动手能力和经验以后才能去做。

 

十、计算机启动流程

  1.计算机加电

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

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

  4.从启动设备上读取第一个扇形区的内容(MBR主引导记录512字节,前446为操作系统的引导信息,先启动谁后启动谁,因为操作系统的程序也很多,后64为分区信息,最后两个为标志位)

  5.根据分区信息读入bootloader启动装载模块,启动操作系统(读取操作系统内容,结果BIOS的任务,来控制计算机)

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

 

十一、总结

  其实我们如果为了学习编程语言,那么我们目前需要掌握的硬件知识其实就是三大项:CPU、内存、硬盘。硬盘中读取程序到内存中,CPU从内存中获取程序来运算。然后知道一下二进制,二进制和十进制的换算等其他的都作为了解吧。

 

posted @ 2019-07-18 20:38  Jaden~  阅读(1110)  评论(0编辑  收藏  举报