Linux学习笔记(一):自己配置电脑

计算机:接收用户输入指令与数据,经过中央处理器的数据与逻辑单元运算处理后,以产生或生成有用的信息。

计算机硬件的五大单元:

    输入单元:包括键盘、鼠标、卡片阅读器、扫描仪、手写板、触摸屏幕等;

    中央处理器CPU:包含算术逻辑、控制、记忆单元;

    输出单元:屏幕、打印机;

Linux学习笔记(一):自己配置电脑_第1张图片

    从上图可以看出,内存和CPU是最主要的部件。CPU要处理的数据全部来源于内存并讲处理完的数据输出至内存再转入输出设备进行输出。

1.CPU的种类

    CPU主要有两类,精简指令集(RISC)和复杂指令集(CISC)系统。

    ①精简指令集CPU的指令执行时间都很短,完成的操作也很单纯,执行指令性能较佳,但要做复杂的事情就需要相当大的代码量。这一类CPU常用于手机、导航、路由器和交换机等,此类CPU基本是基于ARM架构开发的。

    ②复杂指令集CPU的指令执行时间不相同,执行的内容非常丰富,常见的此类CPU有AMD、Intel和VIA等x86(名称由来:因最早一批的Intel开发的CPU代号为8086,后又有了80286、80386等,因此之后的此类架构CPU又被叫做x86)架构的CPU。

    CPU的外频和倍频:

        外频是指CPU与外部组件进行数据传输/运算时的速度,倍频则是CPU内部用来加速工作性能的一个倍数,两者相乘得到CPU的真实速度。例如一个CPU的外频是333MHz,倍频是9,那么我们得到CPU的频率为3GHz。

        很多游戏玩家喜欢将CPU进行超频,实际上就是对CPU的外频进行放大,倍频一般随生产而确定,一般不能更改。此时,CPU会过热,且运行不稳定,因此要有强有的降温措施,如水冷,液氮降温等,但正常情况下超频可能造成CPU崩溃,不推荐进行此操作。

    32位和64位指的是,CPU每次工作可以传送的数据量有多大,北桥的传输量叫做总线宽度,类似的,CPU每次能够处理的数据量叫做字组大小,分为32位和64位。我们通常所区分的32位和64位即是CPU能够解析的字组大小。

    在windows系统中我们经常可以看到在C盘下会有Program files文件夹和program files(x86)文件夹,二者的区别是x86文件夹下的程序一般为32位的,而没有x86的文件夹下是64位的文件,因此,在安装时可以选择安装到正确的文件夹,以防运行错误。

2.接口设备

    单纯的CPU并不能叫做一个计算机,必须有必要的接口设备才能运行,包括:主板、存储设备(硬盘、软盘、光盘、磁带)、显示设备(显卡)、网络设备(网卡)、声卡等。

3.计算机常用单位

    ①大小单位:计算机只识别0和1,因此以1位2进制位作为计算机的最小单位,成为bit;

                        8个bit叫做一个byte,因此一个byte可以代表256个数字;

                        1024个byte叫做1k,1024k叫做1M,1024M叫做1G,1024G叫做1T,依此类推。

    ②速度单位:CPU的运算速度使用MHz或GHz来计量。它代表CPU在单位时间内执行的指令的数目。

    一般来讲文件大小计量使用二进制方式,速度单位使用十进制方式,比如1Mbit/s表示1000Kbit/s。

    注:我们在市面上购买的硬盘,U盘等设备,标明是16GB,但实际使用时我们会发现只有14.4GB,这是因为厂家生产U盘以十进制计量,但是操作系统以二进制计量,因此我们会发现我们买到的U盘缩水了,属于正常现象。

 CPU架构:

    1、AMD芯片组架构与IntelCPU架构并不兼容;

    2、芯片组通常分为北桥和南桥。北桥负责连接速度较快的CPU、内存、显卡等组件;南桥负责连接速度较低的周边接口如硬盘、USB、网卡等。

    3、AMD架构与Intel架构不同的地方在于,AMD的内存与CPU直接通信而不通过北桥,因此理论上速度会更快。

    4、不同的CPU型号有不同的引脚数,必须与主板引脚数匹配,因此选择主板和CPU时有这么一项限制。

4.内存

    内存又叫做动态随机存储器(DRAM),只有在通电时才可以访问,断电数据消失。

    目前内存的技术可以分为SDRAM和DDR SDRAM两类,两者工作的电压和引脚位都不相同,而且后者的传输速率是前者的两倍。后者已经渐渐取代了前者,且技术也已经更新到了第三代。在主板上我们经常可以看到有颜色相同的内存条卡槽,这是为了双通道设计的,例如两条64位的内存条通过双通道便可以成为一条128位的内存条。

    我们在选择CPU和内存时,要看清CPU的外频与内存条的存储频率,应保持相同使效果最佳。

    内存并不是计算机中存储速率最快的硬件设备,CPU中的高速缓存cache是存储速率更高的“内存”,但是因为成本很高所以容量很小,且集成在CPU内部,用于存储一些经常要用的程序数据等,例如操作系统内核等。

    在计算机的主板上还有一块只读存储器(CMOS),这个芯片需要外部电源,因此在电脑的主板上有一个电池用于CMOS的供电。开机时,我们可以通过按[del]或者[F12]进入BIOS,BIOS其实也是一套程序,存储在主板上的只读存储器中,在电脑开机时,CPU首先读取BIOS,并根据当前的BIOS设置去寻找操作系统,加载操作系统内核,完成开机。以前的BIOS常写入后就无法更改,除非物理擦出重新写入,不利于BIOS系统的更新,因此后来的BIOS都写进闪存或者EEPROM中方便更新。

5.显卡

    显卡(VGA)显卡有自己的内存,这个内存容量的大小将直接决定屏幕最终的屏幕分辨率和色彩深度。早期的3D计算都是由CPU完成的,因此运算速率比较低,后来NAVIDA最初提出GPU的设计理念,使用显卡内部的计算模块进行3D图形处理,释放CPU资源。并提高了图像处理的能力。有时显卡会与CPU合成在一起,即我们常说的集显或是独显,集显与CPU共享内存,因此效率可想而知。

    假设我的桌面使用的分辨率是1024x768分辨率,且使用全彩(每个像素点大约占3B的容量)则我的显卡至少需要1024×768=786432x3=2.25GB以上的内存单元,因此选购显卡时,我必须选择3G的显卡。

6.硬盘与存储设备

    硬盘是由许多的盘片,机械手臂、磁头与主轴马达所组成的。硬盘的读写主要依靠主轴马达让盘片转动,然后机械手臂可伸展让读取头在盘片上进行读写操作,一般的硬盘都有上下两个盘片,以提高容量。

    硬盘上以扇区进行区分,在物理组成方面,每个扇区大小为512bytes,这个值是固定不变的,很多扇区组成的一个圆就成为一个磁道,两个处于不同的磁盘上的磁道便组成一个柱面,在磁盘运行时,通过马达控制磁盘转动,机械手臂不断的扫描磁盘拿到数据或写入数据。柱面也是我们分割硬盘时候的最小单位。

    磁盘有两种接口:IDE口和SATA口,后者的传输速率更高,因此渐渐取代了IDE接口。由于磁盘运行的特殊性,因此在计算机运行时最好不要移动机箱,避免磁盘抖动,按照正常的关机程序关闭计算机,操作系统会将磁盘机械头回归原位。

    磁盘的速度与内存的速度有时还是无法满足CPU的高速运行,因此在CPU内部有高速缓存存储器(Cache),但因为这一类存储器造价高,容量比较小,一般用来存放经常用到的程序如操作系统的内核等。

PCI适配卡

    在主板上有很多的PCI接口设备,例如网卡、声卡、特殊功能卡以及部分显卡等,网卡、声卡等很多已经集成在了主板上,因此如果没有特殊需要不需要另外购买。

7.主板

    主板相当与人体的血管网,将计算机的各个部分连接到一起,通过总线进行通信。在购买主板时,要注意CPU的兼容性,内存、显卡、磁盘等接口的匹配。主板上一般已经集成了网卡,声卡等设备,所以一般不需要我们额外购买,常见的主板厂家比如技嘉等。

8.电源

    估算自己的计算机系统的耗电情况,根据需要选择购买功率足够的电源。

根据需要选择自己的使用需求,如果需要玩游戏,就需要比较好的显卡和较大的内存;如果要进行科学计算等对CPU和内存要求较高,如果有实力,可以选择购买计算显卡,利用GPU加速可以大幅提高计算速率。组装完成之后,便可以安装自己习惯的操作系统,电脑组装完毕。

---------------------------------------------------数据表示方式-----------------------------------------------------------------

1.数字系统

    计算机系统只识别0和1,因此我们熟知的10进制数字和文本等必须转换成0、1才能被计算机识别并处理。所谓二进制就是逢二进一,要熟练掌握二进制与十进制之间的转换。

2.文字编码系统

    刚才已经提到文本文件有必要转换成0与1才能被计算机记录,而当我们要查看时,计算机再将它由0与1转换成文本文件显示。编码表即将文字对应为数字,供计算机查询。常用的编码表有ASCII系统,这个系统是针对英文推出的,它用128个数字表示了128个符号、字母、数字、标点和特殊字符等。至于中文编码系统,就会大很多,目前常用的有gb2312,utf-8等。

3.软件程序运行

    CPU通过硬件电路实现识别指令并作出相应的操作(这是魔法,我也不清楚这个硬件电路怎么设计的),因此我们需要CPU工作的时候需要给CPU一个指令让它去处理,但这样的一个缺点就是我们需要去了解机器语言,让我们去识别0和1是一件相当痛苦的事情,因此开发商给出了一些指令集帮助我们进行开发,但是不同的硬件需要不同的指令去控制,所有程序不具备可移植性,也就是说在这个计算机上运行的程序到另一个计算机上未必正常运行。

    为了解决这一难题,计算机科学家们开发出了许多的编程语言让我们方便的进行程序的编写,之后通过一个叫做“编译器”的东西把程序转换成机器码运行,这样一来程序变得很简单。这样的程序语言有C、C++、Java和python等。

你可能感兴趣的:(ubuntu)