Advertisement

第一章 计算机基础 -- 计算机硬件

阅读量:

文章目录

  • 第一章 计算机基础和Linux安装

    • 内容概述
  • 1.计算机系统

    • 1.1 计算机硬件

      • 1.1.1 世界上第一台电子计算机
      • 1.1.2 冯·诺依曼体系结构
        • 1.1.2.1 二进制和其它进制介绍
    • 1.1.2.2 常用进制转换

    • 1.1.2.3 常见单位

      • 1.1.3 摩尔定律
      • 1.1.4 计算机分类
        • 1.1.4.1 按规模划分
    • 1.1.4.2 按功能和角色划分

    • 1.1.4.3 服务器按外形分类

      • 1.1.5 服务器硬件组成
        • 1.1.5.1 服务器硬件---CPU
    • 1.1.5.2 服务器硬件---主板

    • 1.1.5.3 服务器硬件---内存

    • 1.1.5.4 服务器硬件---硬盘

    • 1.1.5.5 服务器硬件---网卡

    • 1.1.5.6 服务器硬件---相关其它硬件

    • 1.1.5.7 各种硬件处理速度和性能优化

第一章 计算机基础和Linux安装

内容概述

  • 计算机系统
  • 计算机硬件组成
  • 操作系统
  • Linux相关介绍
  • Linux哲学思想
  • 获取Linux
  • 虚拟机
  • Linux 安装

我们先看一下这个小节大概介绍的内容,首先我们会讲计算机系统,计算机有什么,计算机系统是什么,里面包括什么组件,计算机系统主要分成两部分,一个是软件,一个是硬件,我们先说硬件,在企业中因为确实有些公司它有自己的生产中的各种服务器,所以你对这些硬件还是要有所了解的,虽然说我们的工程师不是硬件工程师,不是IDC机房的工程师,但是这些硬件说起来你也不能陌生,而且这部分内容我们也不需要太去细究,目前有一个大的发展趋势就是虚拟化、云的环境,未来有些公司可能都看不到物理服务器了,直接买的是阿里云的服务器,远程管就行了,电脑都看不见,你就身边有个笔记本电脑远程连就行了,所以硬件不像以前那么关键了,以前我们还得详细讲各种机房的一些硬件设置什么的,现在实际上就不需要那么复杂了,我们可以把这块适当的弱化,大家重点来学软件,说实在硬件东西你学好了也不是不行,但是IDC工程师工资有多高呢,并不是特别高,还不如我们学运维的工资高,所以这部分内容大家可以不用去细究,作为一个了解即可,我们目前学习的前期阶段主要是给大家讲Linux操作系统,所以操作系统的基础知识我们还是要介绍的,操作系统是怎么发展的,包括我们今天学习的Linux系统是怎么来的,它里面有哪些特性,比方说它的重要的哲学思想,这些哲学思想是曾经有面试问过的,就是问你说这个Linux的思想是什么,或者是Linux的原则是什么,或者是Linux的哲学是什么,那有人就答不出来,实际上就是换个说法而已,我们今天要带着大家把Linux装好。

1.计算机系统

计算机(Computer):俗称电脑,是一种能接收和存储信息,并按照存储在其内部的程序对海量数据进行自动、高速地处理,然后把处理结果输出的现代化智能电子设备。

计算机有很多形式,比如:生活中常见的家用电脑、笔记本、智能手机、平板电脑等,还有生产环境中提供重要业务支撑的各种服务器(Server),都算是计算机。

其中一个完整的计算机系统由硬件(Hardware)系统和软件(Software)系统两大部分组成。
在这里插入图片描述

图1-1 计算机系统的组成

计算机英文单词叫Computer,计算机它是一个什么东西,计算机我们平常大家都叫电脑,但实际上这个称为电脑这是一个称呼,实际上不是特别准确,那么准确的说计算机是一种能够接收存储,并且利用存储在内部的程序,对这些信息进行自动化的高速处理,并且把处理完的结果给它输出出来,这样的一种智能电子设备,这个就是计算机,这里面实际上提到了好几个要点,比方说它是可以接收存储数据的,并且能够加工处理,而且速度非常快,并且还可以把它输出出来,这些都属于计算机的一些重要的特征;

其中计算机实际上目前来讲并不是简单的我们家用电脑、笔记本电脑这些计算机,事实上计算机的形态现在已经是非常广泛了,除了我们平常看到的计算机以外,还可以有智能设备也算计算机,比方说手机、平板电脑等智能设备;

其中一个完整的计算机它实际上是由硬件和软件组成的,硬件我们叫hardware,软件叫software,实际上对于一个计算机来讲硬件就像人的身体一样必须有,没有身体那就没有根基了,身体是革命的本钱,当然除了身体以外还有思想,还有灵魂,那么对于计算机来讲灵魂和思想就是它的软件,分成两大类硬件和软件,硬件里面包括的内容非常多,稍后会分别介绍,比方说有CPU、内存、硬盘等等,软件也分成很多类,比方说有各种系统软件,也有应用程序软件,甚至还有一些我们家用的或者生产中用的一些企业级软件,总的来说分成两类软件和硬件。

1.1 计算机硬件

计算机发展历史:

  • 第一代计算机(1946-1957) 电子管时代
  • 第二代计算机(1958-1964) 晶体管时代
  • 第三代计算机(1965-1970) 集成电路时代
  • 第四代计算机(1971以后) 大规模集成电路时代

我们先来说计算机的硬件,计算机发展到今天实际上历史也是比较悠久了,在1946年诞生了第一台计算机,这是正式的,如果你要是广义的说,那这个历史就多了,如果你这样广义的说我们中国的算盘算不算计算机呢,它也能做一些计算,不能说电子计算机,至少做个计算是可以的,我们正式的认为计算机比较严格的称呼应该是1946年诞生的,中间也是发生了很多代,最早的电子管、晶体管、集成电路等逐渐发展过来的。

1.1.1 世界上第一台电子计算机

在这里插入图片描述

图1-2 世界上第一台电子计算机ENIAC

1946年,世界上第一台计算机ENIAC(electronic numerical integrator and calculator 电子数字积分计算机)在美国宾州大学诞生,是美国奥伯丁武器试验场为了满足计算弹道需要而研制成的。使用了17468只电子管,占地170平方米,重达30吨,耗电174千瓦,耗资40多万美元。每秒可进行5000次加法或减法运算。

图1-2就是世界上的第一台计算机,这个计算机相当的庞大,这是1946年美国为了研究弹道的导弹计算,为了军事需要来开发出来的一个计算机系统,这个计算机系统非常庞大,大家可以看一下这一面墙都是计算机,占用了一个大房间,占地170平米,重量也非常重,30多吨,耗电也非常高,耗资是40万美金,那当然在1946年耗资40万美金那是相当贵了,但是它的计算速度每秒钟可以做5000次,这5000次对于我们人来讲跟人比速度还是很快的,人你觉得1秒钟你能做5000次计算吗,但是这个计算机它1秒钟可以做5000次计算,但是和目前咱们现有的计算机来比那它的性能就差多了,这是最早的世界上的第一台电脑,这台电脑开始了我们计算机真正的开天辟地的这样的一个新的现象就出现了,那后期的计算机都是在它的基础上不断的演进的,这里就是告诉大家实际上最早的一台计算机集成了人类最先进的思想,做出来的电脑就这么笨重,这么难看,但是为什么现在的计算机做的这么小巧,你看我们手机这么小,精巧,而且又漂亮,价格还不贵,那这就是我们人在不断的去把这个技术去修正,去迭代,然后完善做的今天的,所以这也是个普遍规律,我们做什么事上来不可能做的很好,一定是先把它完成,然后慢慢的去把它做一些优化,变得更好。

1.1.2 冯·诺依曼体系结构

在这里插入图片描述

图1-3 冯·诺依曼体系

1946年美籍匈牙利数学家John von Neumann(约翰·冯·诺依曼)于提出存储程序原理,把程序本身当作数据来对待,程序和该程序处理的数据用同样的方式储存。 冯·诺依曼体系结构冯·诺依曼理论的要点是:

  • 数字计算机的数制采用二进制,bit 位, byte 字节 1 byte =8 bit
  • 计算机应该按照程序顺序执行
  • 计算机硬件由运算器、控制器、存储器、输入设备和输出设备五大部分组成

接下来我们说一个非常关键的东西叫冯·诺依曼体系,这个冯·诺依曼体系是计算机领域里面非常重要的一个体系架构,这个架构是在1946年美籍匈牙利数学家叫冯·诺依曼先生提出的,它把我们现代计算机的体系做了一个限定,这个限定同时影响了我们这么多年,可以说到目前计算机仍然遵守冯·诺依曼体系,虽然是1946年定义的,但是仍然现在是遵守的,这个冯·诺依曼体系里面规定了一些特性,比如说第一在计算机内部处理数据是基于二进制处理,二进制大家如果在上学的时候接触过,我们平时生活中一般都用十进制,什么叫几进制,二进制什么意思,十进制什么意思,这个应该是上学的时候老师应该讲过的,二进制说的什么呢,就是逢二进一,就是到2了就要升位了,十进制就是逢十进一,同理比方说我们有八进制,就是逢八进一,如果是十六进制就是逢十六进一,所谓进一那就是升位了,原来是个位现在就变成了两位,比方说我们生活中十位,那0、1、2、3、4、5、6、7、8、9,到10的时候我们就升位,升位就要加上一个个位数往上升个位,变成10,这就是10了,同样的二进制,二进制就是逢二升位,第一个是0,第二个是1,然后当我们到2的时候要升位了,升位就变成了10,再往下就是11,但是11这个1再升位就变成2 ,2要升位,2升位就变成了100,这就是所谓的二进制逻辑,在我们计算机中内部它是基于二进制处理的,为什么用二进制处理呢,因为二进制它从个位数来讲它只有2中可能,要么是0,要么是1,从电路设计的角度来讲相对比较简单,所以早期的时候计算机基于电路设计方便把它设计成二进制,所以在计算机内部都是二进制的,但是对于我们人来讲我们看二进制,那如果是0101这门看的话,看起来就比较痛苦,计算机它处理0101是比较简单的,但是人要是看这个0101是不是看起来就很难看了,在计算机内部它运行的虽然是二进制,但是给人看的话它不是二进制,比方说给人看的话可以显示文字,还可以显示图形,还可以显示声音、视频等等,也就是给人看到的是丰富多彩的多媒体,但是在计算机内部它实际上本质上都是0和1,只不过在给人看的时候把这些0101的东西转化成了我们人类比较容易看得懂的东西,比方说把它转换成文字,转换成声音,变成视频,这都是计算机内部做了一个转换的,在真正内部处理的时候都是0101的,当然这里面还提到一个概念叫位,一位指的我们就是说这个0和1,一个位只能放0,要么放1,这就是这一位,因为你再放那就升位了,变成两位了,所以这就是位,位叫bit,那么我们在计算机中经常会用到另外一个概念就是字节,我们叫byte,byte就是8个位,8个位什么意思呢,就是说我们有8个块,分开8个块,每个块里面只放一位,那这就是8位,8位我们称为一个字节,这是它的一个常见的称呼,对我们计算机内部虽然是二进制0101处理的,但是我们为了统一管理起来更加方便,往往的有时候说字节,因为位太小了,我们说字节可能稍微方便一定,这是它的一个基本概念,比方说我们在硬盘上看文件,看文件大小,指的就是字节,而不是位,位太小了,所以以位展示的话,将来就会显示的数字特别大,看起来不方便,目前我们在计算机内部看文件大小都是以字节为单位的,而不是以位为单位,但是有的时候会用位,比方说我们网络传输速度,它就是以位为单位的,比方说现在我这个网卡,我这个网卡实际上看到的这个地方有一个单位,它这显示的网卡是什么网卡,显示的是Gbps,这个Gbps说的是每秒钟传递多少位,一般看到小b就应该指的是位,一般大B表示字节,但是我们去看一个磁盘文件,当我们去观察一个文件的大小,这个大小就是以字节为单位,所以这个是不太一样的,就是看场景,这是第一个问题;

第二个问题就是计算机内部是按照程序的一定的逻辑次序来执行的,计算机运行的时候它需要在里面安装软件的,这个软件最终表现一个一个的程序运行,你像咱们手机上大家装了很多APP,比方说装了微信,装了支付宝,这些实际上都是应用程序,那么它们在运行的时候是通过这个软件内部的逻辑来一步一步在执行的;

另外还有一个关键点就是计算机它的组成是由5个核心部件组合而成的,这5个核心部件分别叫什么呢,叫运算器、控制器、存储器、输入设备和输出设备,这5个组件实际上大家并不是很陌生,运算器是干嘛的呢,运算器最简单了,你像计算机最基本的功能是什么,早期计算机设计的时候它目标是什么,第一台计算机它实际上是干嘛的,做弹道导弹计算的,所以这个运算器最核功能就是做加减乘除的数据运算,当然还可以做一些别的运算,比方说逻辑上的与或非什么的都可以的,运算器就是做计算的,第二个叫存储器,存储器就是我们要把处理的数据放到存储器上,将来利用计算器把这些存储区里的数据拿出来进行计算,你这个数据要存到一个地方,存这个存储器的时候把数据拿出来做运算,这个存储器又分成主存储器和辅助存储器,主存储器指的什么意思,主存储器通俗的就是我们说的内存,而辅助存储器通常指的就是硬盘,比如说外部存储一般来讲主要是硬盘,当然你要说还有没有别的,比方说还有移动硬盘,还有U盘、光盘这也都算,不过主要是硬盘,硬盘就是典型的辅助存储器,而内存就是主存储器,这些都可以存放数据,将来我们存数据存到里面,将来可以利用运算器对它们进行加工处理,当然这些数据放到存储器里面它是怎么来的呢,是不是需要有输入设备把外界的信息输入到存储器里面去,输入设备比较典型的就是键盘、鼠标,包括一些扫描仪,麦克风也是一个输入设备,把说的话传到计算机里面,然后再传给大家,这不就是一个输入设备吗,当然有输入是不是就有输出设备,大家想想什么算输出设备,计算机把这个数据做完处理完了以后,最终是不是应该要把一个结果交给用户,那这个交给用户靠什么交,那最典型的输出设备是什么,就是电脑显示器,把这个屏幕展示出来,你看我刚才画图这个写了一些东西,那这个不是在屏幕上显示的吗,大家上课看视频不都是靠屏幕的吗,这个屏幕显示器就是一个典型的输出设备,还有打印机、喇叭等这些都算输出设备,现在我们讲了4个设备了,比方说运算器、存储器、输入和输出设备,这些设备互相连起来彼此之间得通讯,我到底这次我要动用输出设备还是输入设备,还是把信息存到存储器里面,还是做一下运算,去做运算的话第一步做什么,第二步做什么,到底先执行谁后执行谁,那这得由谁指挥,由另外一个叫控制器的指挥,控制器负责控制我们这几个组件的互相的一个协调,你可以认为控制器就相当于一个指挥,这是大领导负责指挥的,指挥运算器、存储器、输入设备、输出设备干活,协调它们的工作,这就叫控制器,控制器和运算器这两个东西实际上我们平常在计算机中它们是由一个硬件来完成的,我们虽然逻辑上把它分成了五个组件,但是在计算机内部对应的这些硬件设备实际上它并不是一一对应关系的,运算器和控制器是由CPU来提供的,存储器又分成了主存储器和辅助存储器,主存储器就是内存,辅助存储器就是硬盘,所以它实际上是有分工的,这就是我们所谓的一个冯·诺依曼体系的概念。
在这里插入图片描述

图1-4 John von Neumann(约翰·冯·诺依曼)

图1-4就是大名鼎鼎的冯·诺依曼先生。约翰·冯·诺伊曼 - 维基百科:https://zh.wikipedia.org/wiki/约翰·冯诺伊曼,前面是维基百科对冯·诺依曼的详细介绍。
在这里插入图片描述

图1-5 早期计算机系统的输入设备:穿孔纸带

早期的时候我们在计算机里面录入信息,比方说我们要把信息输给计算机进行处理,以前是没有键盘的,键盘是后来才有的,以前都是靠纸带,这个纸带里面有好多小孔,小孔这什么意思呢,实际上这就表示0和1,比方说有孔的就是1,没孔的就是0,所以大家可以想一想当年那个写程序的人,是不是很厉害,当年写代码的时候就打孔,大家想想你作为一个现代的人类来讲,你看这个打孔这些密密麻麻的东西,你能知道是啥意思吗,是不是看不明白,这根本就看不懂是什么东西,这跟天书似的,事实上就跟我们现在一样,我们现在看这个东西是天书一样,但是你要精通了一些它的这个规律,比方说0101代表什么,1010代表什么,你实际上是可以看懂的,实际上就是术业有专攻,你只要懂了你就不觉得看不懂了,等你真的学会了,你也就不觉得什么了。

1.1.2.1 二进制和其它进制介绍

基于电路设计的复杂性和成本考虑,对于当前计算机来讲,是基于二进制来处理数据的(未来或许不是这样,如量子计算机)。比如可以用高低电平,磁极的正反,光照的有无等分别表示1和0,相对其它进制更容易实现,成本也更低。

进制 数值表示 英文 简写 特性
二进制 0、1 Binary BIN或B 逢二进一
八进制 0、1、2、3、 4、5、6、7 Octal OCT或O 逢八进一
十进制 0、1、2、3、4、5、6、7、8、9 Decimal DEC或D 逢十进一
十六进制 0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F Hexadecimal HEX或H 逢十六进一

表1-1 常见进制数值表示和特性

那么什么是二进制呢?二进制英文称为binary,但平时生活中我们更多的习惯使用十进制,比如我们表示0、1、2,直到9,共十个数字,表示个位数。当想表示十时,就是向前(高位)进一位,变成10,即升了一位。所以所谓十进制即逢十进位。

同理二进制即个位数只有两种值:0和1,当表示二这个数值时,二进制就需要进位,变成10,即逢二就要进位。所以尤其在计算机技术资料中,我们看到10时,要提前说明是几进制,才能确定表达的最终结果。当然有时也会使用其它进制,如八进制(Octal,缩写OCT或O),十六进制(Hexadecimal,缩写HEX或H)。

八进制即逢八进位,个位数有0、1、2、3、4、5、6、7,八个数字,当想表示十进制的八时,就需要进位,变成10了。

同样的十六进制,个位数有0-9,分别表示零到九,但十以后的数值如何表示呢?答案是字母A、B、C、D、E、F来表示十到十五。当然要表示十六,逢十六进一,即升位了,变成10,即十六进制的十六。

1.1.2.2 常用进制转换

在计算机中,二进制是比较常用的,但生活中十进制用的更为普遍。所以经常需要我们做二进制和十进制如何相互转换,那如何实现呢?

因为二进制表示值时,会显示的位比较多,所以我们一般只需要了解最多八个二进制和十进制的相互转换即可。

为了方便转换,可以记住表1-2 常见二进制和十进制对应关系表中对于的数字,可以加快转换效率。

公式 十进制 二进制
2^0 1 1
2^1 2 10
2^2 4 100
2^3 8 1000
2^4 16 10000
2^5 32 100000
2^6 64 1000000
2^7 128 10000000
2^8 256 100000000
2^9 512 1000000000
2^10 1024 10000000000
2^11 2048 100000000000
2^12 4096 1000000000000

表1-2 常见二进制和十进制对应关系表

十进制转换成二进制,有两种方法。

方法1,是除法实现,也是最传统的方法。

范例1 :将十进制的172转换成二进制
在这里插入图片描述

图1-6 用除法将十进制的172转换成二进制

把十进制转换成二进制最简单的写法就是除法,比方说172是个十进制,我现在要把它转换成二进制,172除2是86,没有余数,就是0,86除2是43余数为0,43除2是21余数1,21除2是10余数1,10除2是5余数0,5除2是2余数1,2除2是1余数0,最终结果从下往上就是10101100,但这个除法我们平时在计算机里面不太常用,因为算起来太麻烦,容易算错了。

方法2,用减法实现,也是推荐的方法,不过需要记忆一些常见的数字的对应关系,如表1-2常见二进制和十进制对应关系表。

范例2 :将十进制的172转换成二进制
在这里插入图片描述

图1-7 用减法将十进制的172转换成二进制

计算机二进制它其实就是计算机2的几次方,我们把这几个数字记下来就行,2的0次方就是1,2的2次方就是2,2的3次方是8,一直到2的12次方是4096,现在我们要把172转换成二进制怎么转,你可以用减法,172哪个是比它近又稍微偏小的数字,就是128,而128这个数字是2的7次方,而2的7次方它对应的二进制就是10000000,172减128就是44,44离的最近的就是32,32的二进制是100000,44减32就是12,12里的最近的是8,8的二进制是1000,12减8就是4,4的二进制是100,把得到的二进制全加起来,得到的就是10101100。

二进制转换成十进制,可以用以下方式:

范例3 :将二进制10101111转换成十进制
在这里插入图片描述

图1-8 将二进制10101111转换成十进制

把二进制10101111转换成十进制,从前往后是127+026+125+024+123+122+121+120,然后转成十进制相加就是128+0+32 +0+8+4+2+1,这些相加结果就是十进制的175。

范例4 :使用linux命令bc进行十进制和二进制的转换

复制代码
    [root@rocky9 ~]# bc
    -bash: bc: command not found
    # Rocky默认没有安装bc命令
    
    # 安装bc命令
    [root@rocky9 ~]# dnf -y install bc
    
    [root@rocky9 ~]# bc
    bc 1.07.1
    Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006, 2008, 2012-2017 Free Software Foundation, Inc.
    This is free software with ABSOLUTELY NO WARRANTY.
    For details type `warranty'. 
     # 默认是十进制,要转换成二进制输入obase=2,o就是output输出的意思,output base=2就是输出的时候是基于二进制的,简写obase=2就是输出的时候是基于二进制的,obase=2输完回车,意思是等你输入十进制,输出的结果是二进制。
    obase=2
    # 输入十进制168。
    168
    # 得出二进制的结果。
    10101000
    # quit退出bc命令。
    quit
    
    [root@rocky9 ~]# bc
    bc 1.07.1
    Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006, 2008, 2012-2017 Free Software Foundation, Inc.
    This is free software with ABSOLUTELY NO WARRANTY.
    For details type `warranty'.
    # ibase=2是输入二进制得出十进制。
    ibase=2
    # 输入二进制1010。
    1010
    # 得出十进制的结果。
    10
    quit
    
    
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
    
    AI助手
1.1.2.3 常见单位
  • 10的36次方 X
  • 10的33次方 C
  • 10的30次方 D
  • 10的27次方 N
  • 10的24次方 B
  • 10的21次方 Y
  • 10的18次方 E
  • 10的15次方 P
  • 10的12次方 T 二进制 2^40
  • 10的 9次方 G 二进制 2^30
  • 10的 6次方 M 二进制 2^20
  • 10的 3次方 K 二进制 2^10=1024
  • 10的 2次方 百
  • 10的 1次方 十
  • 10的-1次方 分 d
  • 10的-2次方 厘 c
  • 10的-3次方 m 毫秒
  • 10的-6次方 μ 微秒
  • 10的-9次方 n 纳秒
  • 10的-12次方 p
  • 10的-15次方 f
  • 10的-18次方 a

在计算机中经常用来表示数据的大小和数量,而使用bit(位)和byte(字节)太小了。就像生活中只有个位数是无法很好的表达更多的数据一样。于是对应的需要有更大的计量单位。

另外在相同的场景下,相同的单位所使用的进制是不同的。硬盘制造商在标注硬盘容量时采用十进制,比如1TB,即1012个字节,而操作系统中在识别容量时,却是以二进制为单位,比如同样1TB的文件,即240个字节,所以如果购买厂商标称为1T的硬盘,而在操作系统查看时只能看到1012/230≈931G大小。

具体单位如表1-3 常见单位所示。

单位 简写 二进制 二进制转换 十进制 十进制转换
Kilo K 2^10 1024 10^3 1000
Mega M 2^20 1024K 10^6 1000K
Giga G 2^30 1024M 10^9 1000M
Tera T 2^40 1024G 10^12 1000G
Peta P 2^50 1024T 10^15 1000T
Exa E 2^60 1024P 10^18 1000P
Zetta Z 2^70 1024E 10^21 1000E
Yotta Y 2^80 1024Z 10^24 1000Z
Bronto B 2^90 1024Y 10^27 1000Y
Nona N 2^100 1024B 10^30 1000B
Dogga D 2^110 1024N 10^33 1000N
Corydon C 2^120 1024D 10^36 1000D
Xero X 2^130 1024C 10^39 1000C

表1-3 常见单位

范例5 :确定当前系统是32位或64位

我们的操作系统是32位还是64位,现在基本上已经淘汰了32位了,32位什么意思,32位就是最多一次性的支持32位的数据处理,内存也只能支持32位,2的32次方是多少,实际上就是4G,如果你的的操作系统是32位的,也就是最多支持4G的内存,超过4G的内存用的都是64位的操作系统。

复制代码
    # getconf LONG_BIT查看当前的linux系统是多少位的
    [root@rocky9 ~]# getconf LONG_BIT
    64
    
    [root@rhel5 ~]# getconf LONG_BIT
    32
    
    
      
      
      
      
      
      
    
    AI助手

1.1.3 摩尔定律

由英特尔(Intel)创始人之一Gordon Moore(戈登·摩尔)于1965年提出,当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍。

戈登·摩尔 - 维基百科:https://zh.wikipedia.org/wiki/高登·摩爾,前面是维基百科对戈登·摩尔的详细介绍。
在这里插入图片描述

图1-9 摩尔定律

摩尔定律是和硬件的发展规律有关,它是在1965年英特尔公司的创始人叫戈登·摩尔提出的,他说在价格不变的情况下,在集成电路上可容纳的元器件的数量,大概在每18个月到24个月,就是将近2年的时间会增加一倍,并且性能也会提升一倍,这个规则从1965年提出之后,到现在这个规则一直是相对比较准确的,他的性能确实是每个2年就会变一倍,所以我们的计算机速度是非常快的,那快到什么程度呢,快到计算机的性能有点过剩了,家里的电脑也好,还是单位的服务器也好,我们发现好多时候它资源有点太浪费,CPU利用率特别低,你像好多企业里面买了一个价格比较昂贵的服务器,结果长期统计下来CPU利用率只有10%多,20%多都算是好的了,很多情况下百分之几的利用率,这时候大家想过没有,你买了这么好的服务器,这么好的硬件,结果长期利用率这么低下,是不是很大的一个资源浪费,因此目前我们为什么要大力发展云的技术,这就是为什么要实现虚拟化、云的技术,实现虚拟化、云的技术可以实现资源的动态分配,将来我们需要的时候可以把这些计算机开起来,不需要可以动态的把它关掉,从而可以大大的节约成本。

1.1.4 计算机分类

1.1.4.1 按规模划分
  1. 超级计算机:Super Computer,又称巨型计算机,应用于国防尖端技术和现代科学计算中。巨型机的运算速度可达每秒百万亿次以上, “天河一号”为我国首台千万亿次超级计算机
  2. 大型计算机:具有较高的运算速度,每秒可以执行几千万条指令,而且有较大的存储空间。往往用于科学计算、数据处理或作为网络服务器使用,如:IBM z13 mainframe
  3. 小型计算机:指采用精简指令集处理器,性能和价格介于PC服务器和大型主机之间的一种高性能64 位计算机。在中国,小型机习惯上用来指UNIX服务器
  4. 微型计算机:指采用 X86 CPU 架构的PC服务器,中央处理器(CPU)采用微处理器芯片,体积小巧轻便,广泛用于商业、服务业、工厂的自动控制、办公自动化以及大众化的信息处理,互联网公司发起去IOE运动,代替小型机

计算机按规模划分又分为超级计算机,超级计算机离我们太远,这些都是国家级的项目,比方说天河一号、曙光等等,这些都是国家级的一些特定场合用的,比方说做天气预报的计算,或者做病毒分析,这个是用在特定场景下的,而我们一般的公司用不到;

还有就是大型计算机,这个也是价格非常贵的,这个属于商业产品,这个商业产品需要花比较高的成本才能买到,世界上目前大型计算机生产厂商就只有IBM了,别的公司生产不了,或者说竞争力不行,IBM公司的这个大型计算机它有一个z13的叫主机这种设备,这个价格也是比较贵的,当然这个设备相对来讲也是比较庞大的占地的,相当于两扇门那么大,就是一个大柜子,一个柜子里面放了大型计算机,这个价格都是上亿的,一年的服务费恨不得都上千万,它的应用圈子比较小,它主要用在特定的比如像银行那种机构,比较少见,这种我们平常见不到,并不通用;

早期的时候有小型机,小型机它的性能也不错,可以满足一般的商业机构的使用,比方说电信,传统的银行,早期的互联网公司也用过,但是由于这个价格也非常贵,动不动就是几十万上百万,尤其是互联网的大潮来临之后,有大量的用户都要访问,那就需要购置大量的小型计算机,每个机器都特别贵,而且相对来讲它的很多硬件包括它的软件都是商业软件,你都要统一的去买,比方说你买了IBM的小型机,你上面跑的系统可能都是IBM的这个系统,包括它的软件也都是IBM的系统软件,这个的话整个商业系统下来是非常贵的,不利于大规模的采购,你像互联网公司它的业务都非常庞大,来自的用户都是全球用户,用户量这么大,这个就需要买大量的服务器,这个成本对于一个企业来讲负担是非常重的,所以目前来讲咱们已经抛弃了这种小型机的方式,而采用了微型计算机,也就是PC服务器,PC服务器目前来讲是比较主流的,而且它因为摩尔定律的原因,早期的时候性能跟小型机比性能差了一些,但是随着这么多年的摩尔定律每两年就会翻一番,所以到现在来讲PC服务器的性能也非常好了,而且价格也便宜,甚至几千块钱就可以买一个服务器,微型服务器是目前的主流,也就是我们说的PC服务器,在互联网公司同样还遇到了一些其它问题,除了硬件上,还有一些软件上的问题,比方说早期的时候互联网公司会采用一些商业软件,比方说数据库Oracle,这个价格非常贵,所以现在互联网公司大部分都开始采用一些开源的解决方案,去IOE,什么叫去IOE,I就是IBM的小型机,O是Orecle的数据库,E是EMC的存储,这都是商业产品,价格比较贵,互联网公司为了节约成本,就不用这些商业解决方案了,而采用了所谓的一些开源解决方案,比方说用一些开源的数据库Mysql,用开源的一些存储的解决方案,比方说CEPH,比方说用PC服务器,甚至定制PC服务器的架构,你像大公司有些东西它的硬件都是定制的,谷歌公司它那个服务器都不是像我们普通的那种服务器,它都是放在集装箱里面,各种各样的这种定制出来的这种服务器,所以这个都是不一样的架构了,颠覆了以前早期的这种商业的各种产品,这样的话可以大幅的减轻互联网公司的一些负担,它的成本。

1.1.4.2 按功能和角色划分

服务器和客户机
服务器:即 Server,计算机的一种,通常是网络中为客户端计算机提供各种服务的高性能的计算机,服务器在网络操作系统的控制下,将与其相连的硬盘、磁带、打印机及昂贵的专用通讯设备提供给网络上的客户站点共享,也能为网络用户提供集中计算、信息发布及数据管理等服务。

客户机:即 Client,向服务器提出请求,需要服务器为之提供相应的服务和支持的计算机

我们从角色来看,在生产中我们有各种各样的计算机,这个计算机从它们的角色来分,分成客户端和服务器端两种,服务器端叫Server,客户端叫Client,服务器端和客户端大家不要去固定的认为服务器是不是配置多高多好,刚才我们也说了服务器是不是价格特别贵,客户端是不是配置就非常低,那这不能这样说,这个服务器端和客户端只是从它的功能上来分,并没有从它的硬件配置来区分,服务器端简单的说就是提供服务的,而客户端那说白了就是为它提供服务的,它需要别人给它提供服务,这就是客户端,所以客户端和服务器端只是被服务和服务的关系,而并不是说它的硬件配置有多好,服务器由于它要为别人提供服务,而需要提供服务的客户端往往有多个,多个用户都需要你提供服务,服务器它的这个硬件配置如果差的话,就会造成服务的提供质量比较差,因此服务器一般配置比较高,但是如果你配置低了,也不是不能用,低了大不了感受不好,访问慢一点。

服务器按应用功能可分为:

Web服务器、数据库服务器、文件服务器、中间件应用服务器、日志服务器、监控服务器、程序版本控制服务器、虚拟机服务器、邮件服务器、打印服务器、域控制服务器、多媒体服务器、通讯服务器、ERP服务器等。
在这里插入图片描述

图1-10 服务架构图

服务器它可以提供不同软件的服务,比方有的是做Web服务,这个Web服务比较常见的就是我们的网站,比方说我们现在去访问一个博客,博客实际上背后跑路一个Linux系统,上面装了一个Nginx的这样一个软件,这个Nginx软件实际上就是一个Web服务,当然背后还有数据库之类的,还有很多其它的服务器,比如数据库服务器,文件服务器等,图1-11 服务架构图实际上就是我们各种服务器,有调度服务器,有数据库服务器,有DNS服务器,有NTP服务器,有Harbor服务器,有k8s服务器,有管理节点服务器,有各种缓存服务器。

1.1.4.3 服务器按外形分类

PC 服务器常见的三种外型:

  • 塔式服务器
  • 刀片式服务器
  • 机架式服务器

塔式Tower服务器
在这里插入图片描述

图1-11 塔式服务器

早期的服务器形式,目前较少使用。

外形以及结构和平时使用的立式PC差不多。

机箱空间大,主板扩展性较强,插槽较多。

预留了足够的内部空间,以便日后进行硬盘和电源的冗余扩展,设计一般都考虑降噪。

在生产中我们接触到的各种服务器目前来讲都是PC服务器,这个PC服务器它的常见的形状可以分成3种,第一种是塔式,塔式的这个形状就跟我们家用电脑很像,只不过它的大小更大一些,这种因为它的大小,横宽高,包括它的一些尺寸并不标准,并不规范,或者说每个机器买回来大小都不一样,这样它不太适合大规模的安装部署,你要大规模的安装部署在机房里摆放的话,如果尺寸不一样,那没有很好的合理利用空间,所以我们一般来讲都用下面的其它的有标准尺寸的这种服务器。

刀片式Blade服务器
在这里插入图片描述

图1-12 刀片式服务器

在标准高度的机架式机箱内可插装多个卡式的服务器单元,实现高可用和高密度。

更高的密度,集中管理,高性能,灵活扩展,按需配置。

可以使用系统软件将这些母板集合成一个服务器集群。在集群模式下,所有的母板可以连接起来提供高速的网络环境,并同时共享资源,为相同的用户群服务。

图1-12是刀片式的,刀片式的服务器就是把这个服务器一个铁壳子,这个铁壳子里面可以塞很多的刀片,这一个刀片就内置了CPU、内存、硬盘,大家看图1-13虽然看的不是很清楚,但是大家可以看到这一条实际上就是一个服务器,这里面塞了很多条,那也就是说在一个很狭窄的空间中放了很多个不同的计算机,那这个计算机塞到这里面当然密度非常大,当然也比较沉,它的这个所有的计算机都是用刀片的那种非常狭窄的,非常紧密的方式放在一起,那这种方式就是在一个比较节约空间的地方我们同时放了这么多机器,这个可以带来的好处就是我可以把很多计算机做成一个集合里面,我们叫集群,把多个计算机组合在一起形成一个集群,共同对外提供一些高性能的计算服务,这个用的场景也相对少一些。

机架式Rack服务器
在这里插入图片描述

图1-13 机架式服务器
在这里插入图片描述

图1-14 42U容量机柜

  • 按照统一标准设计,配合机柜统一使用,便于统计管理,高密度,节省空间,常用U为单位,1U=1.75英寸=44.45毫米,机箱尺寸比较小巧,在机柜中可以同时放置多台服务器。
  • 机架式服务器的宽度为19英寸(48.26cm),厚度通常有1U,2U,3U,4U,5U,7U几种标准的服务器。
  • 机柜的尺寸也是采用通用的工业标准,如:宽度600mm,深度1000mm,高2000mm(42U)。
  • 现阶段是最主流的的服务器。

我们目前来讲服务器更多的企业里面用的是机架式服务器,机架式的服务器它的尺寸是标准的,这里面有一个概念叫U的概念,1U是多大呢,U是有标准的尺寸,是44.45毫米,大概也就是不到5厘米,U指的是服务器的厚度,2U大概就是10毫米,还有4U,一般来讲企业里面通常用2U、4U的居多,当然越厚里面装的东西就越多,装的东西越多硬件配置它要更加昂贵一些,当然这个U不仅是厚度问题,它实际上这个宽度也是有标准尺寸的,因为它的宽度和长度都有尺寸,所以我们将来可以按照一定的标准尺寸把它们定制出一个机架来,图1-14右面的就是机架,这个机架大概的高度是2米左右,宽度比机架服务器宽一些,将来把机架服务器安装导轨就像抽屉一样给它塞进去,这样的话我们一个服务器放进去,也可以把别的服务器以同样的方法放进去,就像一层层的抽屉一样放进去,这样的话一个机架上就可以放很多个服务器,通常来讲一个机架上放的服务器和你是几U的服务器有关,如果是1U的当然放的更多一些,4U的就放的少一些,一般来讲2U的,2U的我们放10来个服务器,这就比较常见的,因为我们也不可能把它塞满,如果塞满的话包括电力供给,以及一些通风都会有问题,所以我们中间会预留一定的空间,一般我们这个上面存放的服务器的数量也不是塞满的,图1-14就是机架,这个机架式42U的,42U宽度600毫米,高度深度一米,高度2米,它是有标准尺寸的,这个标准尺寸适用于放我们的网络设备、服务器这些都可以按照这个尺寸都可以往里放,这是我们目前用的一个比较主流的形式,一个机架比如说上面放15个服务器,这个机架下面还有小滚轮,这个滚轮就意味着你还可以把这个机架推来推去的,比方说放在一个机房里面,我将来还可以把整个机架推走,我们将来在一个机房里面可以摆很多排的这种机柜,这样的话一个机房里面就可以密密麻麻的放很多个服务器,当然一些公司可能没有钱去建设这种机房,通常来讲更多的公司都是租用机房,比方说北京有一些专门的IDC机房,比方说世纪互联这样的公司,人家的机房都已经建设好了,然后所有的网络设备、线路都给你部好了,你作为一个公司来讲你想使用一些服务器的存储,包括一些计算,还有像网络,你不用去单独建设了,你可以把服务器买回来,买回来以后租用人家机房的机柜,包括它的网络设备你都可以租用,带宽你去花钱买就行了,这样的话我们就不需要从头到尾去盖楼,事实上你要真的想去盖楼、盖机房,那中间的成本是非常高昂的,而且你还需要有一定的资质,所以这个并不是说有钱你说盖就能盖的了的,一些中小型公司一般都是租用IDC机房,除非特别大的公司它有自己的专有机房,你像阿里、腾讯这些级别的公司,它在全国的比较能够充分利用能源的地方,你像张家口它的风力非常大,它可以利用风来进行散热,可以节能,这些是有些公司它有一些雄厚的实力,可以来自建机房,大部分公司租用空间就好了,当然小公司来讲,再小的公司可能租用机房,买服务器的成本也比较高,比如是初创公司,它买一些服务器堆在这,成本也比较高,而且我们这个项目希望快速上马,你把这个项目要拿下,你需要在短期时间上马,你要买服务器,中间要拉网线,还要去部署,装系统等,这中间花的时间是非常漫长的,就会影响业务的发展,所以好多初创的企业,为了提高效率,当然也可以在短期之内在服务器不多的情况下节约成本,它们一般都是用云的环境,比方说用阿里云、腾讯云、电信云等等,这些更加方便,比如阿里云,你可以直接在网站选择配置就好,它给你系统都装好了,你只需要在上面部署程序就可以,这就是未来的一个主流的发展趋势,未来大家对硬件的东西可以不像以前那么关注了。

1.1.5 服务器硬件组成

在这里插入图片描述

图1-15 服务器组成

对于服务器来讲本身它也是一个计算机,只不过它的配置和我们家用电脑有些地方是不太一样的,但是那些硬件配置的组成都是类似的,比方说有CPU、内存、硬盘、电源、风扇、网卡等都是一样的,图1-15就是一个服务器的配置图,这个服务器的配置图大家可以看这个样子,这个就是机架式服务器,机架式的服务器它上面可以塞很多的硬盘,硬盘直接裸露在机箱外边,这个便利我们将来更新硬盘,因为服务器运行都是24小时的,所以硬盘的损坏比家用电脑要高。

服务器配置示例(参考价格47588元)
在这里插入图片描述

图1-16 服务器配置

图1-16是一个服务器的配置,主板的芯片组是C622,CPU是2-4颗,支持DDR4 RED ECC内存,内存插槽32个,这个是华为的一个服务器配置,大概价格是5万左右。

1.1.5.1 服务器硬件—CPU
在这里插入图片描述

图1-17 CPU品牌

服务器上面的CPU一般来讲主流的都是Intel,虽然也有别的CPU,比方说AMD的CPU,甚至有一些ARM的CPU。

CPU:Central Processing Unit,即中央处理器。由控制器和运算器构成,是整个计算机系统中最重要的部分。

CPU 架构:

  • CISC:Complex Instruction Set Computer,复杂指令集
  • RISC:Reduced Instruction Set Computer,精减指令集

精减指令集和复杂指令集:

早期计算机一直沿用CISC指令集方式。它的设计目的是要用最少的机器语言指令来完成所需的计算任务。在CISC处理器中,程序的各条指令是按顺序串行执行的,每条指令中的各个操作也是按顺序串行执行的。顺序执行的优点是控制简单,但计算机各部分的利用率不高,执行速度慢。CISC的指令系统庞大,功能复杂,指令格式、寻址方式多;执行速度慢;难以优化编译,编译程序复杂; 无法并行;无法
兼容。大约20%的指令占据了80%的处理器时间。其余80%指令使用频度只占20%的处理机运行时间。由此CISC生产厂商长期致力于复杂指令系统的设计,实际上是在设计一种难得在实践中用得上的指令系统的处理器,同时.复杂的指令系统必然带来结构的复杂性.这不但增加了设计的时间与成本还容易造成设计失误。目前个人计算机x86体系 CPU 厂商一直在走CISC的发展道路,包括Intel、AMD、VIA(威盛)等。之所以称为X86,是因为最早Intel的CPU型号是8086,后来出现了80286,80386,80486,80586等,所以之后的Intel和其兼容的厂商的生产CPU都称为X86 CPU。而后CPU从最初的8位,16位,32位,发展到目前主流的64位。为了区别非64位的CPU,一般将64位的CPU称为X86-64。由于最早在1999由AMD设计公开 64 位技术,称为 x86-64,后来改名为 AMD64,不同厂商称呼有所不同,所以AMD 64,x86-64,x64都指的是64位的基于X86的CPU。

因为CISC存在上面的问题,于是有了RISC,它是图灵奖得主John L. Hennessy和David A. Patterson对行业的重大贡献,由加州大学伯克利分校于1980年发布,其基本思想是尽量简化计算机指令功能,只保留那些功能简单、能在一个节拍内执行完成的指令,使其实现更容易,指令并行执行程度更好,此称为精简指令集RISC(Reduced Instruction Set Computing)。精减指令集其风格是强调计算机结构的简单性和高效性,其特点是所有指令的格式都是一致的,所有指令的指令周期也是相同的,支持并行,并且采用流水线技术。当需要完成复杂任务时,就由多个指令组合来实现。常用的精简指令集微处理器包括:ARM、RISC-V、MIPS、PA-RISC、PowerArchitecture(包括PowerPC)、DECAlpha和SPARC等。重点提一下ARM,全世界超过95%的智能手机和平板电脑都采用ARM架构,当前最先进的华为的海思麒麟990CPU,高通的骁龙865 CPU,苹果的A13 CPU也都属于ARM架构。ARM可以说是目前世界上使用最广泛的CPU架构了。

CPU类型

  • X86:CISC
  • ARM:Acorn RISC Machine 高通,华为麒麟
  • RISC-V 阿里玄铁910
  • MIPS 龙芯
  • Power:IBM
  • Powerpc:apple,ibm,moto
  • Ultrasparc :Sun
  • Alpha:HP
  • 安腾:compaq

CPU目前可以分成两种指令集,一种是CISC,一种是RISC,CISC叫复杂指令集,而RISC是精减指令集,Intel就属于复杂指令集,它是把各种功能都用指令,每个指令都实现了不同的功能,它的指令特别多,精减指令集它只提供了一些常见的功能,每个指令只完成了常见的功能,那些不常用的它不提供指令,不提供指令那怎么办,要想实现复杂任务,它就把多个精减的常用的指令给它组合起来,来实现复杂功能,相对来讲精减指令集它设计上更加简单,它的指令大小都是相似的、相同的,这样的话它的设计相对比较简单一些,复杂指令集更为复杂,它的稳定性各方面可能不如精减指令集,目前来讲Intel CPU用的就是复杂指令集,除此之外的基本上都是精减指令集,你像ARM CPU,手机上的芯片主要用的都是ARM芯片,ARM芯片目前比较主流的你像高通的CPU,华为的麒麟,包括还有苹果的芯片,实际上都是基于ARM这种架构的,现在还有一个叫RISC-V的架构,这是一个比较特殊的CPU的流派,它是开源的,不像ARM是一个商业公司的一个型号,华为用ARM架构是要给它付费的,阿里有一个芯片叫玄铁910就用的就是RISC-V这种架构,当然还有一些其它CPU相对就少见,有些已经慢慢的淘汰了,你像早期的Sun公司用过Ultrasparc这种CPU架构,包括HP的Alpha,这些CPU现在都已经看不到了。

按照CPU体系架构来区分,服务器主要分为两类:

  • x86服务器:采用CISC(复杂指令集)架构服务器,即通常所讲的PC服务器,它是基于PC机体系结构,使用Intel或其它兼容x86指令集的处理器芯片的服务器。目前主要为intel的Xeon E3,E5,E7系列,价格相对便宜、兼容性好、稳定性较差、安全性不算太高。
  • 非x86服务器:采用RISC(精简指令集)或EPIC(并行指令代码) 处理器,主要采用UNIX和其它专用操作系统的服务器,CPU主要有IBM的Power PC、MIPS的MIPS、SUN的Sparc、Compaq的Alpha、HP的PA-RISC、Intel研发的EPIC安腾处理器等。这种服务器价格昂贵,体系封闭,但是稳定性好,性能强,主要用在金融、电信等大型企业的核心系统。

微处理器

1971年11月15日,Intel公司的工程师特德·霍夫发明了世界上第一个微处理器—4004,这款4位微处理器虽然只有45条指令,而且每秒只能执行5万条指令。性能很低,但它的集成度却要高很多,一块4004的重量还不到一盅司。

Intel从8086开始,就进入了我们常说的x86时代。而80386的诞生则标志着Intel正是进入了32位微处理器的时代。从80386到Pentium 4这个年代的CPU,就是传说中的IA-32时代。

x86-64( 又称x64,即英文词64-bit extended,64位拓展 的简写)是x86架构的64位拓展,向后兼容于16位及32位的x86架构。x64于1999年由AMD设计,AMD首次公开64位集以扩展给x86,称为“AMD64”。其后也为英特尔所采用,现时英特尔称之为“Intel 64”,在之前曾使用过“ClackamasTechnology” (CT)、“IA-32e”及“EM64T”。
在这里插入图片描述

图1-18 Intel公司的CPU发展历程

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可以访问的物理地址空间。

目前主流的都是intel CPU,它的性能里面有主频、外频和倍频,主频是我们平常比较关注的,CPU的频率越高计算速度越快,外频指的是系统总线的工作频率,它主要指的是内存的工作频率,内存的工作频率和CPU的工作频率之间是有巨大的差别的,中间有倍数的差,所以有一个倍频,倍频就是差的倍数,所以3者之间有个计算公式就是外频乘以倍频等于主频,硬件的东西了解一下就行。

范例6 :用lscpu命令查看CPU详细信息

复制代码
    [root@rocky9 ~]# lscpu
    Architecture:            x86_64
      CPU op-mode(s):        32-bit, 64-bit
      Address sizes:         45 bits physical, 48 bits virtual
      Byte Order:            Little Endian
    CPU(s):                  2
      On-line CPU(s) list:   0,1
    Vendor ID:               AuthenticAMD
      BIOS Vendor ID:        AuthenticAMD
      Model name:            AMD Ryzen 5 4600H with Radeon Graphics
    BIOS Model name:     AMD Ryzen 5 4600H with Radeon Graphics         
    CPU family:          23
    Model:               96
    Thread(s) per core:  1
    Core(s) per socket:  1
    Socket(s):           2
    Stepping:            1
    BogoMIPS:            5988.55
    Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse ss
                         e2 syscall nx mmxext pdpe1gb rdtscp lm constant_tsc rep_good nopl tsc_reliable nonstop_tsc cpui
                         d extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt aes
                          xsave avx f16c rdrand hypervisor lahf_lm cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw t
                         opoext ssbd ibpb vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt clwb sha_ni xs
                         aveopt xsavec xgetbv1 xsaves clzero arat umip rdpid overflow_recov succor
    Virtualization features: 
      Hypervisor vendor:     VMware
      Virtualization type:   full
    Caches (sum of all):     
      L1d:                   64 KiB (2 instances) # 一级缓存,d 数据缓存
      L1i:                   64 KiB (2 instances) # 一级缓存,i 指令缓存
      L2:                    1 MiB (2 instances) # 二级缓存
      L3:                    8 MiB (2 instances) # 三级缓存
    NUMA:                    
      NUMA node(s):          1
      NUMA node0 CPU(s):     0,1
    Vulnerabilities:         
      Gather data sampling:  Not affected
      Itlb multihit:         Not affected
      L1tf:                  Not affected
      Mds:                   Not affected
      Meltdown:              Not affected
      Mmio stale data:       Not affected
      Retbleed:              Mitigation; untrained return thunk; SMT disabled
      Spec store bypass:     Mitigation; Speculative Store Bypass disabled via prctl
      Spectre v1:            Mitigation; usercopy/swapgs barriers and __user pointer sanitization
      Spectre v2:            Mitigation; Retpolines, IBPB conditional, STIBP disabled, RSB filling, PBRSB-eIBRS Not affected
      Srbds:                 Not affected
      Tsx async abort:       Not affected
    
    
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
    
    AI助手
1.1.5.2 服务器硬件—主板
在这里插入图片描述

图1-19 服务器主板

主板mainboard,安装在机箱内,是计算机最基本的也是最重要的部件之一。

主板一般为矩形电路板,上面安装了组成计算机的主要电路系统,一般有BIOS芯片、I/O控制芯片、键盘和面板控制开关接口、指示灯插接件、扩充插槽、主板及插卡的直流电源供电接插件等元件。

服务器主板跟我们家用电脑的主板是不太一样的,家用电脑的主板内存条通常只支持几条内存,台式机一般支持2-4根内存,笔记本电脑一般支持2根内存,你看图1-19 右边服务器主板支持16条内存。

1.1.5.3 服务器硬件—内存
在这里插入图片描述

图1-20 内存

内存: 介于CPU 和外部存储之间,是CPU 对外部存储中程序与数据进行高速运算时存放程序指令、数据和中间结果的临时场所,它的物理实质就是一组具备数据输入输出和数据存储功能的高速集成电路内存是CPU能直接寻址的存储空间,由半导体器件制成。内存的特点是存取速度快计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大。

外存:硬盘,U盘,软盘,光盘。

内存和外存的区别:

  • 内存断电后数据丢失。
  • 外存断电后数据可以保存。

容量 :即该内存的存储容量,单位一般为GB。

内存带宽:
内存带宽是指内存与北桥芯片之间的数据传输率,B byte 字节 b bit位。

单通道内存控制器一般都是64-bit的,8个二进制位相当于1个字节,换算成字节是64/8=8,再乘以内存的运行频率,如果是双通道内存就要再乘以2。

计算公式:

复制代码
    内存带宽=内存总线频率×数据总线位数/8
    
    
      
    
    AI助手

内存带宽它的计算公式是内存总线的频频乘以数据总线位数除8。

范例6 :单通道和双通道内存带宽计算

复制代码
    # 单通道DDR(Double Data Rate双倍速率)内存带宽计算
    DDR5-7200:7200MHz*64bit/8=57600MB/S
    # 比方说我们有一个DDR-7200的一个内存条,7200指的是4000兆赫兹,现在都是64位,7200MHz乘以64bit,除8就把它变成字节,这样的话就可以算出内存的一个通讯速度,这个通讯速度可以达到57.6G。
    
    DDR4-4000:4000MHz*64bit/8=32000MB/S
    DDR4-3600:3600MHz*64bit/8=28800MB/S
    
    # 双通道:
    DDR5-7200:7200MHz*64bit*2/8=115200MB/S
    DDR4-4000:4000MHz*64bit*2/8=64000MB/S
    
    
      
      
      
      
      
      
      
      
      
      
    
    AI助手
1.1.5.4 服务器硬件—硬盘
在这里插入图片描述

图1-21 硬盘

图1-21左边是早期的硬盘,1956年的时候只有5MB,在2013年的时候都是多少TB了,硬盘的容量和速度比以前要大幅提升了。

常见的磁盘接口种类:

  • IDE:Integrated Drive Electronics,电子集成[驱动器,早期家用电脑常用接口。
  • SCSI:Small Computer System Interface,小型计算机系统接口,早期的服务器常用接口。
  • SATA:Serial ATA (Advanced Technology Attachment 高技术配置),家用电脑常用的接口。
  • SAS:Serial Attached SCSI,是目前服务器上主流的接口。
  • 光纤通道:Fiber Channel,高性能服务器上采用的接口。
  • M.2 :固态硬盘接口,性能更强。

硬盘接口早期都有IDE、SCSI现在已经不用了,现在笔记本上是SATA或M.2接口,服务器用的SAS接口,光纤通道的现在很少用了。

结构分类:

  • 机械硬盘HDD(Hard Disk Drive)
  • 固态硬盘SSD(Solid State Drives )

机械硬盘:
在这里插入图片描述

图1-22 机械硬盘

  • 存储介质(Media)——盘片

    • 盘片的基板是金属或玻璃材质制成,为达到高密度高稳定的质量,基板要求表面光滑平整,不可有任何暇疵。
  • 读写磁头(Read Write Head)——磁头

    • 磁头是硬盘读取数据的关键部件,它的主要作用就是将存储在硬盘盘片上的磁信息转化为电信号向外传输。
  • 马达( Spindle Motor & Voice Coil Motor )

    • 马达上装有一至多片盘片,以7200,10000,15000 RPM等定速旋转,为保持其平衡不可抖动,所以其质量要求严谨,不产生高温躁音。

机械硬盘基本参数:

  • 容量:容量是硬盘最主要的参数。单位有MB、GB、TB,常见容量:500GB,1T,2T,3T,4T,6T。
  • 转速:转速是指硬盘盘片每分钟转动的圈数,单位为rpm。常见:7200rpm,10000rpm,15000rpm。
  • 传输速率:传输速率(Data Transfer Rate) 。硬盘的数据传输率是指硬盘读写数据的速度,单位为兆字节每秒(MB/s),常见:6Gb/s,12Gb/s。
  • 缓存:硬盘缓存的目的是为了解决系统前后级读写速度不匹配的问题,以提高硬盘的读写速度。
  • 磁盘尺寸:3.5”/2.5”/1.8”。
  • 是否支持热插拔。

SSD硬盘:
在这里插入图片描述

图1-23 SSD硬盘

SSD,即固态硬盘,泛指使用NAND Flash组成的固态硬盘。其特别之处在于没有机械结构,以区块写入和抹除的方式作读写的功能,因此在读写的效率上,非常依赖读写技术上的设计SSD读写存取速度快,性能稳定,防震性高,发热低,耐低温,电耗低,无噪音。因为没有机械部分,所以长时间使用也出现故障几率也较小。缺点:价格高,容量小,相对普通机械硬盘性价比低。

硬盘现在分为机械硬盘和固态硬盘,机械硬盘它里面都是机械设备,固态硬盘里面都是芯片,芯片它的速度比机械硬盘通常要快一些,但是机械硬盘有一个好处就是如果这个硬盘坏了的话,它修复的可能性是比较大的,硬盘如果采用的是固态硬盘它里面是芯片坏了就很难修复了。

1.1.5.5 服务器硬件—网卡
在这里插入图片描述

图1-24 服务器网卡

服务器都在主板上集成了网卡,传输速率为1Gbps,即千兆网卡。

特殊应用需要高端网卡,如光纤网卡,Infiniband网卡等,传输速率能达到10Gbps、20Gbps、40Gbps甚至100Gbps,即万兆网卡。

1.1.5.6 服务器硬件—相关其它硬件

服务器硬件—阵列卡
在这里插入图片描述

图1-25 阵列卡

Raid卡用来实现RAID的建立和重建,检测和修复多位错误,错误磁盘自动检测等功能。RAID芯片使CPU的资源得以释放,阵列卡把若干硬盘驱动器按照一定要求组成一个整体、由阵列控制器管理的系统。

阵列卡可以用来提高磁盘子系统的性能及可靠性。

支持的多种RAID级别,RAID0,1,5,6等。

阵列卡提供缓存及电池保护。

服务器硬件—电源
在这里插入图片描述

图1-26 电源

支持服务器的电力负载,支持冗余,防止电源故障 ,故障预警和防止 ,故障之前的预防性维护,保证服务器持续运行,电源子系统包括:冗余电源和风扇。

服务器硬件—显卡

服务器都在主板上集成了显卡,但是显存容量不高,一般为16M或32M,GPU: Graphic Processing Unit,即“图形处理器”。

服务器硬件—热插拔技术
热插拔技术,称为热交换技术(Hot Swap),允许在不关机的状态下更换故障热插拔设备,常见的热插拔设备:硬盘,电源,PCI设备,风扇等。热插拔硬盘技术与RAID技术配合起来,可以使服务器在不关机的状态下恢复故障硬盘上的数据,同时并不影响网络用户对数据的使用。

服务器硬件—机柜
在这里插入图片描述

图1-27 机柜

机架式服务器-服务器放置在机柜中。

通常使用的机柜是42U(约2米高)机柜( 1U=44.45mm)。

外观尺寸一般为:宽600 深1000 高2000(mm)。

在一个机架上,累计设备U数一般不超过26U,全1U设备部署数量一般不超过16台,全2U设备一般不超过12台,全4U设备一般4到7台。

机架式服务器-机架及其配件
在这里插入图片描述

图1-28 机架及其配件

在服务器的机架上可能还有其它一些硬件设备,比方电源管理的叫PDU,它负责机架的电源管理,还有就是KVM,KVM是键盘、显示和鼠标,在刚开始安装服务器的时候可能需要配置一个显示器看它的界面,这时候就可以接上一个KVM,KVM就相当于一个共享的一个键盘、显示器和鼠标,让一组服务器共用这一个键盘、鼠标和显示器,用不着每个服务器都配一个。

1.1.5.7 各种硬件处理速度和性能优化

服务器的性能短板:如果CPU有每秒处理1000个服务请求的能力,各种总线的负载能力能达到500个,但网卡只能接受200个请求,而硬盘只能负担150个的话,那这台服务器得处理能力只能是150个请求/秒,有85%的处理器计算能力浪费了,在计算机系统当中,硬盘的读写速率已经成为影响系统性能进一步提高的瓶颈。
在这里插入图片描述

图1-29 硬件处理速度

电脑的各个设备部件之间的延时从高到底的排列,依次是机械硬盘、固态硬盘、内存、CPU。

服务器的速度差别非常大,CPU的速度最高,基本上它的速度是在ns(纳秒)级,在CPU里面是有缓存的,它的速度是10ns级,内存的速度是在100ns级,基本上它们都是差一个数量级的,硬盘的速度和内存比又差了不少,如果是普通的机械硬盘那可能就差了巨大的倍数,硬盘的速度在10ms(毫秒)级,大家知道1秒钟等于1000毫秒,这个大家就发现了硬盘和内存的速度差别太大了,由于硬盘和内存的速度由于差别巨大,我们都知道数据通常都是放在硬盘上的,因为放在内存上的数据是不能永久保存的,硬盘和内存除了速度上的区别,还有一个就是硬盘上的数据是可以断电不丢失的,我们所谓的持久保存指的就是硬盘存放数据,而内存它断电数据就丢了,它不能永久保存,它只能临时保存,我们要想访问磁盘上的数据,这时候我们要想把这个数据快速的访问,那么是不是我们每次跑到硬盘上去访问这个文件的话是速度很慢的,因此如果我们能够把要访问的硬盘上的文件提前给它放到内存里面,提前把它放到内存里面,下次再访问硬盘的时候就不需要跑到硬盘上去看了,直接从内存中把已经放到内存中的文件进行访问,这样的话是不是大大的提高了访问速度,这就是缓存技术,缓存技术就是提前把一些慢速设备的数据给它放到高速存储上,这样的话就可以减少这种慢速设备的访问,提供效率,这就是缓存技术,缓存技术是我们生产中使用的比较主流的技术,你像硬盘速度太慢我把内存中的一块空间拿出来当硬盘存放数据临时空间使用,下次在用的时候就从内存中读取数据就可以了,事实上CPU也有缓存,CPU的缓存它可以把内存中要访问的数据放到CPU的缓存中,进而像CPU去访问数据的时候不需要跑到内存中去访问了,直接从CPU的缓冲区中访问就可以了。
在这里插入图片描述

图1-30 硬件处理速度

上图可以看到,CPU最快,一个时钟周期是0.3纳秒,内存访问需要120纳秒,固态硬盘访问需要50-150微秒,传统硬盘访问需要1-10毫秒, 网络访问最慢,都是几十毫秒。

上图最有趣的地方在于它把计算机世界的时间和人类世界的时间做了对比,常常把CPU比喻成跑得很快,但是记不住事情的“阿甘”, 他的一个时钟周期如果按1秒算:

内存访问就是6分钟。

一次 CPU 上下文切换(系统调用)需要大约需要1小时。

在 1Gbps 的网络上传输 2K 的数据需要10多个小时。

从 SSD 读取 1MB 的顺序数据,大约需要 1ms,换算成人类时间是 1个月。

从磁盘读取 1MB 连续数据需要 20ms,换算成人类时间是 20个月。

如果说打开一个网页可以秒开的话,那也相当于100年。

对于CPU来说,这个世界真是太慢了!

存储器的层次结构
在这里插入图片描述

图1-31 存储器的层次结构

上图以层次化的方式,增加了价格信息,它展示了一个真理:世界上没有免费的午餐。存储器越往上速度越快,但是价格越来越贵, 越往下速度越慢,但是价格越来越便宜。正是由于计算机各个部件的速度不同,容量不同,价格不同,导致了计算机系统/编程中的各种问题以及相应的解决方案。

全部评论 (0)

还没有任何评论哟~