Linux入门学习(一)计算机概论与Linux简介

本文详细介绍了计算机的基本组成,包括CPU、内存、输入输出设备,以及不同类型的CPU架构(RISC和CISC)。着重讲解了Linux操作系统的特点、应用领域,如网络服务器、高性能运算、桌面系统、嵌入式系统和云端运用。

一、计算机概论

(一)计算机的组成

        1.计算机的定义

        接受使用者输入指令与数据,经由中央处理器的数学与逻辑单元运算处理后,以产生或储存成有用的信息。即只要能够输入数据使机器产生信息,这样的机器就叫做计算机。

        2.计算机的硬件组成(按外观分类)

  • 输入单元:将数据输入计算机中,如键盘、鼠标、手写板、触摸屏等。
  • 主机部分:系统单元,台式机机箱保护的部分,包括主板、CPU、内存条等。
  • 输出单元:显示计算机产生信息得到的结果,如屏幕、打印机等。

        主机的核心在于中央处理器(CPU),CPU是一个特定功能的芯片,拥有内置的微指令集。CPU的工作主要是管理和运算,所以CPU内可分为两个主要单元:算数逻辑单元与控制单元。其中算数逻辑单元主要负责程序运算与逻辑判断,控制单元则主要在协调各周边元件与各单元间的工作

        CPU读取的数据和最后处理完毕的数据都要经过内存,即所有的数据都要经过内存传输,所以尤其针对Linux作为服务器环境,内存的容量会影响数据缓存,从而影响性能!

        综上所述,计算机按照功能分类可以有五大单元组成:输入单元、输出单元、CPU 内部的控制单元、算数逻辑单元与内存五大部分。关系如下:

图1 电脑的五大单元

         其中“系统单元”指的是电脑机箱内的主要元件,而重点在于 CPU 与内存。特别要看的是实线部分的传输方向,基本上数据都是流经过内存再转出去的!至于数据会流进/流出内存则是 CPU 所发布的控制命令!而 CPU 实际要处理的数据则完全来自于内存 (不管是程序还是一般文件数据)!

        3.CPU的架构

  • 精简指令集(RISC):微指令集较为精简,指令执行时间短,完成动作单纯,执行性能较佳。如果做复杂的事情需要多个指令。常见微指令集有甲骨文 (Oracle) 公司的 SPARC 系列、 IBM 公司的 PowerArchitecture (包括 PowerPC) 系列、与安谋公司 (ARM Holdings) 的 ARM CPU 系列等。

        SPARC CPU主要应用在学术领域的大型工作站中,包括银行金融体系的主要服务器;PowerPC主要应用在便携机、工控机、PC 机、工作站、服务器以及多处理器半行系统等区域;ARM是目前使用范围最广的CPU,应用在各厂牌手机、PDA、导航系统、网络设备等。

  • 复杂指令集(CISC):CISC在微指令集的每个小指令可以执行一些较低阶的硬件操作,指令数目多而复杂,所以每条指令花费时间较长,但每条个别指令可以处理的工作较为丰富。常见的CPU主要有AMD、Intel、VIA等的x86架构的CPU。

        由于这些x86架构CPU被大量使用在个人电脑上,所以个人电脑常被称为x86架构的电脑。常见的有32位和64位的CPU,这是依据CPU的架构不同而命名的。位指的是CPU一次数据读取的最大量!64位CPU代表CPU一次可以读写64bits这么多的数据,32位CPU则是CPU一次只能读取32bits。一般32位CPU所能读写的最大数据量为4GB左右,64位系统则支持4G、 8G、 16G、32G、 64G 、128G 以及256G的内存等,且运算速度比32位快一倍左右。

        除此之外,不同的CPU主要在于微指令集的不同。新的CPU大多含有先进的微指令集,可以加速多媒体程序的运行和加强虚拟化性能,甚至能增加能源效率,让耗电量降低。

        4.电脑用途分类

  • 超级计算机:运行速度最快的电脑,主要用于需要有高速计算的计划中。全世界最快速的前500大超级计算机,则请参考:http://www.top500.org
  • 大型计算机:大型计算机具有数个高速的CPU,可用于处理大量数据与复杂的运算,例如大型企业的主机、数据库服务器等。
  • 迷你电脑:迷你电脑仍保留大型计算机同时支持多使用者的特性,但主机可以放在一般作业场所,不必需要特殊的空调场所,通常用来作为科学研究、工程分析等。
  • 工作站:工作站是针对特殊用途而设计的电脑,在个人电脑的性能还较落后时,工作站电脑的性能和性价比是所有电脑最佳的,所以在学术研究和工程分析中十分常见。
  • 微电脑:体积最小、价格最低、功能齐全,大致可分为乘上型、笔记型等。我们的个人电脑就属于这一类。

     5.电脑常用的计算单位

        (1)容量单位

        电脑只认识0与1而已,0/1这一二进制单位称为bit。但bits太小了,所以定义Byte这个单位。1 Byte=8 bits。一般来说,文件大小使用的是二进制的方式,所以 1GBytes 的文件大小实际上为: 1024x1024x1024Bytes 这么大。

        (2)速度单位

        CPU的运算速度常使用 MHz 或者是 GHz 之类的单位,这个 Hz 其实就是秒分之一。速度单位则常使用十进制,例如 1GHz 就是 1000x1000x1000Hz 的意思。而在网络传输方面,由于网络使用的是 bit 为单位,因此网络常使用的单位为 Mbps Mbits per second,亦即是每秒多少 Mbit。

(二)电脑相关设备元件

        1.Intel芯片架构

        早期的芯片组通常分为两个桥梁器来控制各元件的沟通,分别是:(1)北桥:负责连接速度较快的CPU、内存与显卡接口等元件;(2)南桥:负责连接速度较慢的设备接口,包括硬盘、USB、网卡等)。由于北桥最重要的是CPU与内存之间的桥接,所以目前主流架构将北桥内存控制器整合到CPU封装当中了,所以下面的图片没有看到以往的北桥芯片。

Intel芯片架构

        不同的微指令集会导致CPU工作效率的优劣,除了这点之外,还可以比较CPU的频率来比较CPU的性能。简单的说,频率就是CPU每秒钟可以进行的工作次数。举例来说,Inteli7-4790 CPU频率为3.6GHz, 表示这颗CPU在一秒内可以进行3.6x10^9次工作。

         2.内存

        CPU所使用的数据都是来自于内存,不论是软件程序还是数据,都必须要读入内存后CPU才能利用。个人电脑的内存主要元件为动态随机存取内存(DRAM)这种随机存取内存只有在通电时才能记录与使用,断电后数据就消失了,我们称这种RAM为挥发性内存。

        DRAM使用广泛的有SDRAM和DDR SDRAM两种。DDR是所谓的双倍数据传送速度(Double Data Rate),他可以在一次工作周期中进行两次数据的传送,感觉上就好像CPU的倍频啦!所以传输频率方面比SDRAM还要好。新一代的PC大多使用DDR内存了。DDR SDRAM又依据技术的发展,有DDR, DDR2, DDR3, DDR4等等,其中,DDR2的频率倍数则是4倍,而DDR3则是8倍。 

        3.显卡

        显卡又称为VGA,他对于图形影像的显示扮演相当关键的角色。因为每个图像显示的颜色会占用掉内存,因此显卡上面会有一个内存的容量,这个显存容量将会影响到你的屏幕分辨率与色彩深度。由于现在3D的流行,因此显卡的“运算能力”越来越重要。早期一些3D的运算早期是给CPU运行的,但CPU不是干这活的,所以后来显卡厂商直接在显卡上面嵌入一个3D加速的芯片,这个芯片就被叫做GPU。

        显卡是一个需要高速运算的一个元件,所以数据传输的速度也很重要。PCIe就是当今最火的传输,其使用的是类似管线的概念来处理,管线越多则总带宽越高。

        4.硬盘和储存设备

        硬盘是电脑上最常见的储存设备,用来让电脑记录数据。传统硬盘将数据存储在盘片的一个个扇区上面,通过驱动马达去转动盘片从而读取数据,造成读写数据的延迟。传统硬盘的组成为:圆形盘片、机械手臂、 磁头与主轴马达所组成的,其中盘片的组成为扇区、磁道与柱面。

        固态硬盘(SSD)是拿闪存制作成大容量的设备,链接接口也是通过SATA或SAS。固态硬盘最大的好处是,它没有马达不需要转动,而是通过内存直接读写的特性,因此除了 没数据延迟且快速之外,还很省电。

 

         5.主板

        主板是负责各个电脑元件之间的沟通,不同的元件之间,主板芯片组通过I/O位址与IRQ来进行沟通。

        I/O位址类似每个设备的门牌号,每个设备都有自己专属的位址。IRQ可以当作各个门牌连接到邮件中心(CPU)的专门路径。各设备可以通过IRQ中断信道来告知CPU该设备的工作情况,方便CPU进行工作分配。

        CMOS主要是记录主板上重要的参数信息,包括系统时间、CPU电压与频率、各项设备的I/O位址与IRQ等,由于这些数据的记录要花费电力,因此主板上面才有电池。BIOS为写入到主板上某一块 flash 或 EEPROM (内存芯片)的程序,他可以在开机的时候执行,以载入CMOS当中的参数,并尝试调用储存设备中的开机程序,进一步进入操作系统当中。BIOS程序也可以修改CMOS中的数据, 每种主板调用BIOS设置程序的按键都不同,一般台式机常见的是使用[del]按键进入BIOS设置画面。

(三)软件程序运行

        1.操作系统(OS)

        操作系统实质上是一组程序,重点在于管理电脑的所有活动以及驱动系统中所有硬件,让CPU能够开始判断逻辑与运算数值、让内存可以开始载入/读出数据与程序码、让硬盘可以开始被存取等所有动作。

        上述的功能就是操作系统的核心,除此之外操作系统往往会提供一整组的开发接口给工程师开发软件,如我们学习C程序语言只要参考C程序语言的函数即可,不需要再去考虑其他核心的相关功能,因为核心的系统调用接口会主动的将C程序语言的相关语法转成核心可以了解的任务函数。

操作系统的角色

        由图可知:

  •  操作系统的核心层直接参考硬件规格写成, 所以同一个操作系统程序不能够在不一样的硬件架构下运行。
  • 操作系统只是在管理整个硬件资源,包括CPU、内存、输入输出设备及文件系统文件。如果没有其他的应用程序辅助,操作系统只能让电脑主机准备妥当而已!并无法运行其他功能。
  • 应用程序的开发都是参考操作系统提供的开发接口, 所以该应用程序只能在该操作系统​​​​​​​上面运行而已,不可以在其他操作系统上面运行的。​​​​​​​​​​​​​​

        2.应用程序

​​​​​​​        应用程序是参考操作系统提供的开发接口所开发出来的软件,这些软件可以让使用者操作,以达到某些电脑的功能利用。需要注意的是应用程序与操作系统有关,所以使用应用程序时需注意其是否支持你的操作系统。

二、Linux介绍

(一)是什么

        Linux是一套免费使用和自由传播的类Unix操作系统,是一个多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

(二)应用

  • 网络服务器:Linux当前最热门的应用,它承载了Unix的高稳定性,加上GNU计划与Linux的GPL授权,让许多优秀软件在Linux上发展,而且几乎都是自由软件。
  • 关键任务的应用(金融数据库、大型企业网管环境):由于个人计算机的性能大幅度提升和价格便宜,许多企业渐渐走向Intel相容的x86环境,而这些企业应用的软件大多是Unix操作系统平台的,因此符合Unix操作系统标准并且可以在x86上运行的Linux就成为首选了。
  • 学术机构的高性能运算任务:学术机构的研究常常需要自行开发软件,使用可作为开发环境的操作系统的需求便非常迫切。加上Linux具有强大的运算能力和具有支持度相当广泛的GCC编译软件,所以Linux在这方面的优势十分明显。
  • 桌面电脑、手持系统(PDA、手机):Linux与与X Window System的结合,使得Linux的窗口系统十分优秀,在上面能够跑的软件十分多,再加上能够应付企业的办公环境,所以Linux也成为了个人计算机操作系统的选择之一。而且我们手机的Android其实就是Linux的核心一支,是专门用来针对手机平板这类ARM机器而设计的,已经成为了如今的主流系统之一了。
  • 嵌入式系统:其实我们生活中的家电产品、手机、数码相机登封其他微型计算机配备也是硬件系统,需要操作系统来控制的,这种操作系统是直接嵌于产品之中,不需要我们更动这个系统,这种就叫做嵌入式系统。​​​​​​​
  • 云端运用:云程序是许多公司内部提供了公有云来让用户使用ISP(大型网际网络供应商)的虚拟化产品, 这些虚拟化的系统通常也是Linux。端设备,如树莓派,实质是小型的计算机,再加上网络上获取的云端虚拟机,就可以帮助我们完成许多工作了。

        

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值