计算机系统计算机系统由硬件(Hardware)系统和软件(Software)系统两大部分组成 计算机硬件计算机(Computer):俗称电脑,是一种能接收和存储信息,并按照存储在其 内部的程序对海量数据进行自动、高速地处理,然后把处理结果输出的现代化 智能电子设备 发展历史:
1946年,世界上第一台计算机ENIAC(electronic numerical integrator and calculator)在美国宾州大学诞生,是美国奥伯丁武器试验场为了满足计算弹道 需要而研制成的。使用了17468只电子管,占地170平方米,重达30吨,耗电 174千瓦,耗资40多万美元。每秒可进行5000次加法或减法运算 世界上第一台计算机 计算机硬件组成 冯·诺依曼体系结构: 1946年数学家冯·诺依曼于提出,计算机硬件由运算器、 控制器、存储器、输入设备和输出设备五大部分组成 冯·诺依曼 摩尔定律 由英特尔(Intel)创始人之一戈登·摩尔于1965年提出 当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月 便会增加一倍,性能也将提升一倍 按规模划分 巨型计算机:应用于国防尖端技术和现代科学计算中。巨型机的运算速度可达 每秒百万亿次以上, “天河一号”为我国首台千万亿次超级计算机 大型计算机:具有较高的运算速度,每秒可以执行几千万条指令,而且有较大 的存储空间。往往用于科学计算、数据处理或作为网络服务器使用,如:IBM z13 mainframe 小型计算机:规模较小、结构简单、运行环境要求较低,一般应用于工业自动 控制、测量仪器、医疗设备中的数据采集等方面 微型计算机:中央处理器(CPU)采用微处理器芯片,体积小巧轻便,广泛用 于商业、服务业、工厂的自动控制、办公自动化以及大众化的信息处理 服务器 服务器Server是计算机的一种,是网络中为客户端计算机提供各种服务的高性能的计算机,服务器在网络操作系统的控制下,将与其相连的硬盘、磁带、打 印机及昂贵的专用通讯设备提供给网络上的客户站点共享,也能为网络用户提 供集中计算、信息发布及数据管理等服务 服务器按应用功能可分为: Web服务器、数据库服务器、文件服务器、中间件应用服务器、日志服务器、 监控服务器,程序版本控制服务器、虚拟机服务器、邮件服务器、打印服务器、 域控制服务器、多媒体服务器、通讯服务器、ERP服务器等 服务器按外形分类: 塔式服务器、刀片式服务器、机架式服务器 塔式Tower服务器
刀片式Blade服务器
机架式Rack服务器
服务器硬件组成服务器配置示例 服务器硬件---CPU CPU是Central Processing Unit的缩写,即中央处理器。由控制器和运算器构 成,是整个计算机系统中最重要的部分 服务器CPU公司 Intel
AMD
IBM
CPU类型
微型计算机CPU的发展 服务器分类
服务器硬件---主板
服务器硬件---内存 内存是介于CPU 和外部存储之间,是CPU 对外部存储中程序与数据进行高速运 算时存放程序指令、数据和中间结果的临时场所,它的物理实质就是一组具备 数据输入输出和数据存储功能的高速集成电路 内存是CPU能直接寻址的存储空间,由半导体器件制成。内存的特点是存取速 度快 计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影 响非常大 外存:硬盘,U盘,软盘,光盘 内存和外存的区别: 内存断电后数据丢失 外存断电后数据可以保存 容量:即该内存的存储容量,单位一般为“MB”或“GB” 内存带宽:
示例:DDR内存带宽计算
在线备用内存技术
内存镜像
服务器硬件---硬盘 机械硬盘结构: 存储介质(Media)——盘片 盘片的基板是金属或玻璃材质制成,为达到高密度高稳定的质量,基板要求表 面光滑平整,不可有任何暇疵 读写头(Read Write Head)——磁头 磁头是硬盘读取数据的关键部件,它的主要作用就是将存储在硬盘盘片上的磁 信息转化为电信号向外传输 马达( Spindle Motor & Voice Coil Motor ) 马达上装有一至多片盘片,以7200,10000,15000 RPM等定速旋转,为保持 其平衡不可抖动,所以其质量要求严谨,不产生高温躁音 机械硬盘示例图 硬盘基本参数: 容量 容量是硬盘最主要的参数。单位有MB、GB、TB 转速 转速是指硬盘盘片每分钟转动的圈数,单位为rpm。现在硬盘的转速已经达 到10000rpm,15000rpm 传输速率 传输速率(Data Transfer Rate) 。硬盘的数据传输率是指硬盘读写数据的速度,单位为兆字节每秒(MB/s) 缓存 硬盘缓存的目的是为了解决系统前后级读写速度不匹配的问题,以提高硬盘 的读写速度 硬盘接口类型:
目前主流的硬盘接口为SATA和SAS接口 服务器的性能短板: 如果CPU有每秒处理1000个服务请求的能力,各种总线的负载能力能达到500个, 但网卡只能接受200个请求,而硬盘只能负担150个的话,那这台服务器得处理能 力只能是150个请求/秒,有85%的处理器计算能力浪费了 在计算机系统当中,硬盘的读写速率已经成为影响系统性能进一步提高的瓶颈 SSD硬盘: SSD(Solid State Disk)泛指使用NAND Flash组成的固态硬盘。其特别之处在于 没有机械结构,以区块写入和抹除的方式作读写的功能,因此在读写的效率上,非 常依赖读写技术上的设计SSD读写存取速度快,性能稳定,防震性高,发热低,耐低温,电耗低,无噪音。因为没有机械部分,所以长时间使用也出现故障几率也较 小。缺点:价格高,容量小,在普通硬盘前毫无性价比优势 服务器硬件---阵列卡 Raid卡: 用来实现RAID的建立和重建,检测和修复多位错误,错误磁盘自动检测等功能。RAID芯 片使CPU的资源得以释放 阵列卡(RAID卡)的作用
阵列卡参数
服务器硬件---电源 电源和风扇
– 故障预警和防止 – 故障之前的预防性维护 – 保证服务器持续运行
– 智能电源和风扇
各种电源 服务器硬件---显卡 服务器都在主板上集成了显卡,但是显存容量不高,一般为16M或32M GPU: Graphic Processing Unit,即“图形处理器” 服务器硬件---网卡 服务器都在主板上集成了网卡,传输速率为1Gbps,即千兆网卡 特殊应用需要高端网卡,如光纤网卡,Infiniband网卡等,传输速率能达到10Gbps、 20Gbps,即万兆网卡 服务器硬件---热插拔技术 热插拔技术
服务器硬件---机柜 机架式服务器-服务器放置在机柜中 通常使用的机柜是42U(约2米高)机柜( 1U=44.45mm) 机架式服务器-机架及其配件 存储基础知识---存储网络 用于存放数据信息的设备和介质,是计算机系统的外部存储,数据可安全存放, 长期驻留 传统的存储: 磁盘阵列: 存储网络:
直接存储(Direct Attached Storage)。存储设备与主机的紧密相连
网络连接存储(Network Attached Storage): 通过局域网在多个文件服务器之间实现了互联,基于文件的协议( NFS、NFS、 SMB/CIFS等 ),实现文件共享
存储区域网络(Storage Area Networks,SAN) 利用高速的光纤网络链接服务器与存储设备,基于SCSI,IP,ATM等多种高级协 议,实现存储共享
操作系统OS: Operating System,通用目的的软件程序
OS分类:
开发接口标准 ABI: Application Binary Interface ABI描述了应用程序与OS之间的底层接口,允许编译好的目标代码在使用兼容 ABI的系统中无需改动就能运行 API:Application Programming Interface API定义了源代码和库之间的接口,因此同样的源代码可以在支持这个API的任 何系统中编译 POSIX: Portable Operating System Interface IEEE在操作系统上定义的一系列API标准 POSIX兼容的程序可在其它POSIX操作系统编译执行 运行程序格式: Windows: EXE, .dll(dynamic link library),.lib Linux: ELF, .so(shared object), .a Library function和system call 用户和内核空间 用户空间:User space 用户程序的运行空间。为了安全,它们是隔离的,即使用户的程序崩溃,内核也不受影响 只能执行简单的运算,不能直接调用系统资源,必须通过系统接口( system call),才能向内核发出指令 内核空间:Kernel space 是 Linux 内核的运行空间 可以执行任意命令,调用系统的一切资源 示例: str = “www.magedu.com' // 用户空间 x = x + 100 // 用户空间 file.write(str) // 切换到内核空间 y = x + 200 // 切换回用户空间 说明:第一行和第二行都是简单的赋值运算,在 User space 执行。第三行需要写入文件,就 要切换到 Kernel space,因为用户不能直接写文件,必须通过内核安排。第四行又是赋值运算, 就切换回 User space 编程语言 低级语言 机器语言:0和1 汇编语言:和机器语言一一对应,与硬件相关的特有代码、驱动程序开发 中级语言:C 系统级应用、驱动程序 高级语言: java,python,go,php,Objective-C,C# 应用级程序开发 服务器三大操作系统
System: Bell Lab
BSD: (BSRG)Berkeley System Distribution
服务器操作系统市场 UNIX历史 兼容分时系统 兼容分时系统Multics 为了进一步强化大型主机的功能,让主机的资源可以提供更多的使用者来利用, 所以在1964年, 由贝尔实验室(Bell)、麻省理工学院(MIT)及奇异公司(GE美国 通用电气公司)共同发起了Multics(多路信息计算系统)的计划, Multics计划 的目的是让大型主机可以同时支持300个以上的终端机连线使用。不过,到了 1969年前后,由于计划进度缓慢,资金也短缺,所以该计划虽然继续在研究, 但最终贝尔实验室还是选择了退出 Ken Thompson:一切为了游戏 1966年从加州大学伯克利分校毕业的Ken Thompson加入了贝尔实验室。参与 了Multics系统的研发。他基于Multics开发了“star travel”游戏。不幸的是, 1969年由于贝尔实验室退出Multics项目,这同时意味着Ken将没有机器可以再 玩这个游戏了。面对此情此景,Ken作为一个创造者的本性立即体现了出来,于 是他决定自己写一个操作系统来满足他玩游戏的需要,Ken找到了一台废弃已久 的老式PDP-7,并在这台机器上重写了他的游戏。在这个过程中,Ken有了一个 主意,要开发一个全新的操作系统。利用PDP-7上的汇编语言,Ken只花了一个 月就编写完了操作系统的内核,在这个一个月中,他一周一个内核,一个文件 系统,一个编辑器和一个编译程序的完成 Unix历史 1965前后 Multics 贝尔实验室,麻省理工,通用电气发起 1969 Unix雏形UNICS Ken Thompson 汇编语言 B语言 1973 正式命名为Unix Dennis Ritchie C语言 1977 BSD Berkeley Software Distribution 伯克利大学 1979 System V架构 版权声明 HP-UNIX IBM AIX “不对学生提供源码” 收回版权 1984年 Minix操作系统 Andrew S. Tanenbaum荷兰阿姆斯特丹自由大学计算机科学系 GNU
Linux起源 1991年的10月5日,Torvalds在comp.os.minix新闻组上发布 消息,正式向外宣布他自行编写的完全自由免费的内核诞生 (Freeminix-like kernel sources for 386-AT)——— FREAX,英文含义是怪诞的、怪物、异想天开 类Unix的内核,在GPL下发布 官网:www.kernel.org Linux操作系统:
Linux团队 Linux发行版
OpenSuse桌面
每18个月发行一个新版本 CentOS:兼容RHEL的格式 中标麒麟:中标软件 Fedora:每6个月发行一个新版本
http:///gldt/ http://www./d3js-demo/linux/ REDHAT红帽公司
Linux内核 Linux的内核版本由3部分组成 Linux版本号的命名
Linux发行版本 Linux发行版的名称和版本号是由发行版的维护者决定的 RedHat Enterprise Linux 7.3 由Red Hat公司发布 SUSE Linux Enterprise Server 12 SP2 由Novell公司发布 Debian Linux 9 由Debian维护社区发布 Android 8.0 由Google公司发布 红帽发行版本 开源 Open Source 开源: Open Source ,软件和源代码提供给所有人
软件分类:
开源协议 世界上的开源许可证,大概有上百种
Linux哲学思想
获取发行版 CentOS
虚拟机虚拟机:用软件(如:vmware,virtualbox等)模拟硬件 使用vmware workstation
|
|