计算机基础知识及服务器介绍

现代计算机组成

根据冯·诺依曼结构体系计算机有五大部件组成:

运算器、控制器、存储器、输入设备、输出设备

CPU=运算器+控制器

运算器由算术逻辑单元(ALU)、累加器、状态寄存器、通用寄存器组等组成。

算术逻辑运算单元(ALU)的基本功能为加、减、乘、除四则运算,与、或、非、异或等逻辑操作,以及移位、求补等操作。

运算器只能进行二进制运算、逻辑运算

控制器控制着计算机各部件之间的协调

CPU指令集:

指令集是存储在CPU内部,对CPU运算进行指导和优化的硬程序。拥有这些指令集,CPU就可以更高效地运行。Intel有x86,EM64T,MMX,SSE,SSE2,SSE3,SSSE3 (Super SSE3),SSE4.1,SSE4.2,AVX。

AMD主要是x86,x86-64,3D-Now!指令集。

指令分为:

特权指令:操作系统才能运行特权指令

普通指令:应用程序运行ac6eddc451da81cb8410aadc5266d01609243128.jpg

操作系统调用的是Ring 0区域,应用程序调用的是Ring 3区域

应为历史原因:Ring 1,Ring 2保留.

芯片有载入过程也被boot启动过程。

开机执行BIOS(基本输入输出系统)引导程序,这个过程叫做系统自检,标识和配置所有的即插即用设备,并配置DMA通道;完成加电自检,测试内存,端口,键盘,视频适配器磁盘驱动器等基本设备,以及CD-ROM驱动器;对引导驱动器可引导分区定位:在CMOS(complementary metal oxide semiconductor,互补金属氧化物半导体)中,可以自行设置引导顺序,一般顺序是软驱,磁盘,光驱;加载主引导记录以及引导驱动器的分区表,执行主引导记录MBR,主引导记录在硬盘上找到可引导分区,将其分区引导记录装入内存,并将控制权交给分区引导记录,由分区引导记录定位根目录,然后装入操作系统。

2.jpg

System call:系统调用,叫做 syscall

任何只有内核才能执行的操作,通过接口的形式表现出来,这些接口称之为系统调用。

编程层次:

   硬件规格:hardware specifiacatio

系统调用:系统调用很少

 库调用:library call  离成软件成品近

把系统调用封装成更复杂的程序,以供别人使用,称之为库,又称重复造轮子。

系统启动:内核+外壳

23069658_1364022276448d.gif

UI:前端,用户接口

GUI:graphic user interface  图形用户接口

CLI:command line interface   命令行

用户接口程序,通过用户接口程序来启动其他程序。

ABI:application binary interface :应用二进制接口 编译以后

API:Application Progrming Interface 开发以后  应用编程接口

CPU架构类型:

CPU:X86,X86-64,Power,PowerPC,Alpha(HP),安腾,UltraSparc,ARM,MIPS,M68000(m68k)

编程语言:方便人使用就越高级

汇编编程也叫微码编程

机器语言—>汇编语言–>高级语言 三个层次

高级语言通过两次转换才能运行

高级语言à汇编语言à机器语言  转换过程

                                              a.png

如果c语言第一步编译过程,高级语言转换到汇编语言取决于底层芯片是什么格式的。最好从汇编转换成特定机器支持的机器代码也叫机器指令。

第一步叫编译

第二步:把机器语言转换汇编语言叫汇编的过程。

让计算机干什么活你要写程序的。

让程序灵活的使用就要消除底层的差异。

为了避免程序员写程序的时候遇到不同机器的不同情况。

OS:operation system

操作系统起到承上启下作用

操作系统是个软件,其次将底层计算机提供的各种计算的能力给抽象为一种统一的接口的一种程序。

部件和部件之间如何实现数据交换

线路来实现统常称为:bus 总线

总线的作用:将电气信号转换为数字信号

控制总线、数据总线、地址总线

地址总线是为了实现寻址的

什么叫寻址

运算器和控制器是实现运算和控制的,数据放在存储器中

Memory:编址存储单元

内存的每一个存储单元都是有地址的。

线性地址空间:线性地址(Linear Address)是逻辑地址到物理地址变换之间的中间层。在分段部件中逻辑地址是段中的偏移地址,然后加上基地址就是线性地址。虚拟内存空间。

32位的二进制表示2^32,最多支持4G内存

64位的二进制表示 2^64

存储器编址存储设备

计算器运算加法:取数值,运算,输出结果

IO:与外部部件交互

   磁盘

   网卡

ROM:只读存储器,寻址地址空间的组成部分

RAM:随机存储器

南桥:低速

北桥:高速


服务器硬件介绍

企业PC服务器品牌及型号

互联网公司的服务器品牌:DELL、HP、IBM(百度)、浪潮、联想、航天联志。

Dell服务器品牌: 1U=4.45cm

2010年以前 1u:1850、1950 2u:2850、2950

2010-2013:1u:R410/R610 2u:R710服务器

2014-2015:1u:R420/430、/R620/630 2u:R720/730

a.png  2U服务器

b.png 1u服务器IBM:品牌:

2U:3750/3850/3950

HP品牌:

2U:DL380G7

服务器主要零部件:

1、电源:

就是人体的心脏,生产中一般核心业务用双电源,双线AB路,如果集群的环境

可以例外。

c.png

1u服务器电源                     2u服务器电源2、CPU处理器:

人体的大脑,负责运算和控制,是服务器性能效率的最核心部件。

常见品牌:

Intel、AMD

一般的企业服务器,CPU颗数2-4颗,单颗CPU是4核。内存总量一般是16-48G。

做虚拟化的宿主机,CPU颗数4-8颗,内存总量一般48-128G。

代表图片

a.png

3、内存

CPU和磁盘之间的缓冲设备,临时的存储器

一般程序运行的时候会被调用到内存中执行,服务器关闭或程序关闭之后,自动从内存中释放掉。

进程:正在运行着的程序,进程会放在内存里执行。

守护进程:持续保持运行着的程序

程序:php/java,代码文件,静态的,放在磁盘里的。

计算机重启,内存的数据会被释放掉。

企业案例:

1)门户网站案例:高并发、大数据量:会把数据先写到内存,达到一定的量,然后在定时或者定量的写到磁盘(减少磁盘I/O),最终还会加载到内存对外提供访问。

特点:

a、优点:写内存的性能高(微博、微信、SNS、秒杀)

b、缺点:可能丢失一部分在内存中还没有来得及存入磁盘的数据。

解决方法:

1、服务器主板上有电池

2、UPS不间断供电(持续供电10分钟,IDC数据UPS 1小时)

2)大中小企业案例:并发不是很多的网站,读多写少的业务,会把数据写入到磁盘,然后通过程序把数据读入到内存里,再对外通过读内存提供访问服务。

缓存无处不在

写入数据到内存,成为缓冲区(buffer)

从内存读取数据,内存空间(cache)

由于99%的是网站都是读取为主,写入为辅,读写比例至少10:1,所有并发写入不是问题。

提醒:这里提到的内存和磁盘,是有多台机器组成的集群架构环境。Memcahced/redis

b.png企业级内存

4、磁盘

永久存在数据的存储器

常用的3.5英寸的(ide、sas、sata)硬盘,读取(性能不高)性能比内存差很多,所有工作中,我们会把大量的数据缓存到内存,是必备的解决方案。

硬盘接口或类型:IDE、scsi、sas、sata、ssd(电子的)

性能:ssd(固态)>sas>sata

企业应用:

1、常规正式工作场景选sas硬盘(转速15000/分,机械硬盘转速高的性能好)

2、不对外提供访问的服务器:例如:线下的数据备份,可选sata(7200/10000)

Sata特点:容量大,价格便宜,但是速度比较慢 。

3、高并发,小数据量,可以选ssd

Ssd最好,都选ssd吧?

淘宝网企业案例:服务器会把sata和ssd结合起来用,热点存储,程序动态调度。笔记本

代表图片:

c.png

5、DELL阵列卡(raid卡)

基本作用:网站数据量很大,单块磁盘装不下了,有了多块盘,又不想单个盘存放数据,就需要工具把所有硬盘整合成一个大硬盘,在这个大硬盘上在分区放数据。

Raid有多中整合方式

Raid 0 1 5 10 







原创文章,作者:N21_ Dominic,如若转载,请注明出处:http://www.178linux.com/17927

(2)
上一篇 2016-06-09 20:23
下一篇 2016-06-09 22:15

相关推荐

  • 条件测试与基础运算

    变量类型: 整形 数值型 字符型 byte boolen 单精度 双精度 变量种类: 环境变量– 对所有进程有效 本地变量– 仅对当前shell有效 局部变量– 仅在函数中的某一段有效 位置变量– $1,$2,$3,$4 特殊变量– $?,$0,$*,$@,$#,$$ 变量命名法则: 1.不能出现程…

    Linux干货 2017-04-16
  • God进程监控框架

    监控重启进程的方案有很多种: 最简单的方法,写个脚本fork进程运行,然后waitpid,如果获pid后就再次启动 最土的方法,配置cron任务,固定时间运行脚本检查进程是否存在,不存在则启动 百度使用qmail里的supervised程序,通过supervised监管进程。 优点:supervised可以启动daemon程序,对于非daemon需要采用no…

    Linux干货 2015-02-13
  • 网络管理总结

      在学习Linux的快两个月时间的这个阶段,我们学习到了网络的相关知识,哇,原来我们上网是需要这么多步骤的,玩了这么久的电脑,打开过无数网站还只是停留在以为打开网站只需要点点鼠标的层面,惭愧惭愧。学习了一周,终于了解了一些网络的基层结构和一些网络协议,下面是对这一周所学知识的一些总结,加强记忆和理解。还停留在以为打开一个网站只是动动鼠标…

    2017-09-02
  • 磁盘分区,raid,lvm,脚本编程_第七周练习

    Q1:创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@promote ~]# fdisk /dev/sdb        &n…

    Linux干货 2016-12-24
  • class17 网络管理(二)

    IP 地址 它们可唯一标识IP网络中的每台设备 每台主机(计算机、网络设备、外围设备)必须具有唯一的地址           IP 地址由两部分组成:     • 网络ID:   …

    Linux干货 2016-09-06
  • 使用replicate-rewrite-db 实现复制映射 + Replicate_Wild_Do_Table实现复制过滤

    实验环境:CentOS7.2 + MySQL5.7 node1(192.168.2.171)和node2(192.168.2.172) 为两台不同业务的MySQL服务器。 业务方有个需求,需要将node1上的employees库的departments 、dept_manager 这2张表同步到 node2 的 hellodb 库下面。 node1的empl…

    Linux干货 2017-05-06