文章目录
-
-
-
- 本节的知识点
-
-
- 计算机由哪些软件和硬件组成/li>
- 计算机 络(因特 )是什么/li>
-
-
-
- 本节的知识点
-
-
- IT系统组成
软件,也叫程序,那么究竟什么是软件回答这个问题之前,先来看下面的例子。
老李要求他的痴呆儿子(下称小李)在一张纸上画三角形并计算出三角形的面积。老李准备了两张白纸:一张白纸上标注了三个点:A 点、B 点和 C 点,以及每个点的坐标;另一张白纸上写下了画三角形的步骤和计算三角形面积的方法。小李只要按照这些步骤和计算方法动手即可。步骤如下:
1)画一条直线连接 A 点和 B 点。
2)画一条直线连接 A 点和 C 点。
3)画一条直线连接 B 点和 C 点。
4)根据下面的公式计算三角形的面积并写在纸上:
现在把小李比喻成计算机的 CPU(中央处理器),那么书桌就是内存,绘制三角形的步骤就是软件,一个步骤就是一条指令(语句),老李就相当于程序员,而那张画了三角形并标注了面积的纸张就相当于软件的输出(在屏幕上显示或者打印出来),“画一个三角形并计算面积”就是软件要完成的任务(程序要处理的数据)。
几天后,老李要画更多形状不同的三角形并计算出各自的面积,如果还是按照原来的方式,那么针对每个三角形,老李都要给小李提交两张纸,一张纸标明三个点,另一张纸写明步骤。这样做一方面浪费了纸张,另一方面增加了工作量。于是老李想出了一个办法,只交给小李一张写有步骤的纸张,画一个三角形并计算面积的步骤改为:
1)询问 A 点的坐标。
2)询问 B 点的坐标。
3)询问 C 点的坐标。
4)画一条直线连接 A 点和 B 点。
5)画一条直线连接 A 点和 C 点。
6)画一条直线连接 B 点和 C 点。
7)根据下面的公式计算三角形的面积并写在纸上:
现在不只是老李,任何人只要复印那张写了步骤的纸张,都可以叫小李画出任何他们想要的三角形,只不过小李在画三角形前要询问顶点的坐标。继续把这些步骤比喻成软件,那么相对于前面的软件,这次增加了三条输入语句,用户在运行这个软件时,要用键盘输入三角形的三个顶点的坐标,然后就会在屏幕上看到一个三角形以及这个三角形的面积。
至此,我们总结出这个软件已经具备如下特征。
- 完成任务:画三角形并计算面积。
- 输入数据:顶点坐标。
- 输出结果:三角形及三角形的面积。
- 指令集:详细定义画一个三角形的步骤和计算三角形面积的方法。
指令集保存在一个文件中,这个文件就叫可执行程序,允许存放在硬盘、U 盘、光盘或者 盘中,可以任意复制和传播。比如,Windows 操作系统中的“计算器”这个程序(指令集)保存在硬盘上的 C:Windowssystem32calc.exe 文件中,用鼠标双击它或者单击“开始”(“所有程序”(“附件”(“计算器”,即表示命令 CPU 现在就按照里面的步骤进行操作(专业术语叫执行指令)。
最后,我们通俗地定义一下软件:由程序员写的需要让 CPU 来完成某项任务的步骤。只不过这些步骤是用计算机语言来描述的。常见的计算机语言有 C 语言、C++、Java、PHP、Go 等,编程人员必须严格按照计算机语言的语法规则来写程序,如下面用 C 语言语句实现的加法运算。
计算机 络延时的概念在教程后面会详细介绍。
最后,我们用图 4 来表示一个软件运行模型。
传统的个人计算机由于操作系统没有固化,感染病毒、不正常关机、误删除重要文件、配置不正确等都可能导致操作系统损坏,由此导致死机、蓝屏等各种问题。这些问题一直困扰着计算机用户,而重装操作系统、应用软件并恢复数据资料要消耗大量的时间和精力,严重时甚至丢失数据资料或者外泄私人资料。所以说,传统的计算机系统是专家系统,意思是说只有计算机专家才能很好地使用计算机,普通民众使用计算机会面临很多困难。
现在有两个趋势:第一个趋势是操作系统固化,用户自己不能安装和更改操作系统,只能在线对操作系统进行升级。应用软件也不能随便安装,只能从官方应用软件库中在线安装,如平板电脑、智能手机、老年机等。第二个趋势是云计算,后面的章节会展开讨论。
人们为什么要购买和使用计算机就是说人们购买和使用计算机的目的是什么/p>
如果没有裸机,或者有了裸机但没有安装操作系统,或者安装了操作系统但没有安装应用软件,那么我们就无法达到处理数据资料的目的。
由此可以说,准计算机系统(硬件、操作系统、应用软件)是手段,数据资料是目的。不难想象,如果没有数据资料要处理,就根本没必要购买和使用计算机。
手段与目的分离是云计算的另一个特征,即云计算服务提供商拥有计算资源这个“手段”,而云计算用户拥有数据资料这个“目的”。
计算机 络(因特 )是什么/h1>
今天是周末,位于深圳南山区荔湾小区 28 栋 801 房间的云计算专家正在通过计算机和北京海淀区学院路文山花园 30 栋 2802 房间的做服装生意的朋友解释什么叫“云计算”,双方你一句我一句地在计算机上互传信息。做服装生意的朋友越说越糊涂,最后云计算专家输入了如下一句话:
“如果我能给你解释清楚,那么我的智商就下降到和你一样的水平了。”
然后单击“发送”按钮,对方马上反馈了一个晕倒的表情,聊天就这样无疾而终。
现在的问题是,单击“发送”按钮后,“如果我能给你解释清楚,那么我的智商就下降到和你一样的水平了。”这句话如何能准确无误地立即显示在北京海淀区学院路文山花园 30 栋 2802 房间里的那台计算机屏幕上呢地球上千千万万的其他计算机就不会显示这句话呢/p>
这两个问题可归结为:如何把一台计算机发出的信息准确无误地发送到另外一台计算机上个问题就是计算机 络所要解决的问题,示意图如图 1 所示。
计算机 络的另一个指标是带宽,定义为每秒钟能传递的数据量。带宽越大,则每秒钟传递的数据量就越大。如果把计算机 络比喻为布满收费站的高速公路(车子从一个收费站开到另一个收费站的时间可以忽略不计,但是收费站交钱时要消耗时间),那么带宽就与车道数直接相关,延时就是从出发点到目的地经过收费站交钱时所消耗的时间之和。
计算机 络的第三个指标是丢包率(或称为掉包率),是指在一定时间内被丢掉的数据包数目占总发送数据包数目的百分比。公式如下:
接下来我们再来谈谈叠加 络技术。为了方便大家去 上搜索,在这里给出这个术语的英文名称:Overlay Networks,在 Google 上搜索英文的技术资料,往往能获得很多你想要的结果。叠加 络,顾名思义就是在一张 络平面上叠加出更多层的 络平面,手法无非就是“包中之包”——把叠加协议和信息数据打包,作为底层 络平面传递的应用层数据。
实现叠加的最新技术有 VXLAN、NVGRE 和 STT,这些技术主要用来解决在大规模、多机房、跨地区的云计算中心部署多租户环境问题。叠加 络技术非常类似于在邮政系统上建立一个情 络,利用现有的邮局来收发间谍情 。为了防止未经授权的人获取情 信息,需要先做加密处理,然后再放入信封,当然对方事先要知道解密方法。
叠加 络与虚拟局域 有着本质的不同,虚拟局域 通过分割一张大的局域 来减少广播风暴,本质是“分割” 络;而叠加 络是把“局域 ”延伸到底层 络平面的任何地点,本质是“连通”。这里的“局域 ”是虚拟的概念,对用户是透明的。
VPN 就是一个典型的在广域 中通过叠加 络技术构建地理位置跨度很大的局域 的例子,如果不采用叠加 络技术,那么一个公司很难或者根本不可能建立一个跨城市的局域 。为了进一步说明叠加 络的概念,请看下面的多租户环境的情景案例。
中国微算科技有限公司运营一个大型公共云,包含北京、上海和西安三个计算中心,共拥有 80 万台服务器,构造出近 5000 万台虚拟机,主营业务是对外出租虚拟机(IaaS 云服务)。
中国慧献是一家全国性的集团公司,机构分布在中国各地,为了节约成本和快速部署应用,该公司向中国微算科技有限公司长期租赁 1 万台虚拟机,因而成为中国微算科技有限公司的最大租户。这 1 万台虚拟机由中国慧献集团内部的技术工程师规划成近 300 个局域 (VXLAN),每个局域 内的虚拟机个数相对固定,但是虚拟机运行的地点与使用虚拟机的员工紧密相关。
比如中国慧献员工郭淑敏在北京出差十天,她的虚拟机就在北京的云中心运行,等她返回上海后,虚拟机也将“漂移”到上海的云中心运行。这一切,对郭淑敏来说都是透明的,她只是感觉首次在北京登录云端时稍微慢一点,几分钟之后就很流畅了,首次在上海登录时也是如此。
本节的知识点
- 计算机 络解决位于不同地区的两台计算机之间如何通信的问题。
- 需要与外界通信的计算机必须拥有一个唯一的 IP 地址。
- 计算机 络的三个重要指标是带宽、延时和丢包率。
- 延时由 络路径上的转发机构的速度和数量决定,与通信双方地理位置的远近无关。
- 叠加 络技术解决了在广域 上灵活构建虚拟局域 的问题。
我们要重点关注带宽和延时,因为它们是部署云计算时不可忽视的两个重要因素。
IT系统组成
当今,任何一家企业,无论大小,都要采用计算机来处理日常事务,如写文档、做表格、发邮件、管理库存、管理客户等。为此,企业需要建设计算机 络,购买计算机设备,安装各种平台软件和应用软件。
随着公司的发展壮大,企业中的计算机 络变得越来越复杂,计算机设备越来越多,安装的软件也五花八门,到后来各种问题就出现了:病毒肆虐、数据丢失、客户流失、源代码被盗、 速下降、数据孤岛难以共享、运维复杂等。
为了搞清楚企业中复杂的 IT 系统结构,我们假设一家投资 8000 万元的公司诞生了,他们购买了一栋办公楼,现在需要计算机工程师们把 IT 系统搭建起来。工程师们制订了如下工作计划:
- 机房基础建设,包括机房选址、装修、供电、温湿度控制、监控、门禁等。
- 组建计算机 络,包括大楼综合布线、机柜安装、 络设备购买安装和调试。
- 安装存储磁盘柜。
- 购买和配置服务器。注意,还可能是虚拟出来的服务器。
- 安装操作系统。
- 安装数据库。
- 安装各种中间件和运行库。
- 安装各种应用软件。
- 导入公司的初始化业务数据。
至此,公司的整体 IT 系统搭建完毕,员工可以入驻办公了。根据上面的工作计划,我们可以很容易地总结出企业 IT 系统的逻辑层次结构,如图 1 所示。
从图 2 可知,在操作系统平台上再搭中间件、运行库和数据库三个“台”,最后在最上层放置应用软件。不过,中间件可能还需要运行库和数据库的支撑,数据库可能还需要运行库的支撑。
并不是每个应用软件都要同时压在中间件、运行库和数据库三个“台”上,有的应用软件只需要运行库(如 QQ),有的应用软件只需要中间件,有的应用软件同时需要运行库和数据库,但是不需要运行库的应用软件很少,静态编译的软件运行时不需要运行库。
运行库有点像电工人员的工具袋,里面有螺丝刀、电笔、老虎钳、剥线钳等,应用软件在运行时需要使用各种小工具(术语叫系统库函数调用),操作系统提供了绝大多数常用的小工具,并分门别类地保存在硬盘的文件中。
Windows 操作系统中以 .dll 为扩展名的文件,通常保存在 C:WindowsSystem32 下(比如文件 GDI32.dll 就是 QQ 软件运行时要用到的工具箱之一,如果把此文件删除,那么 QQ 就无法运行)。Linux 操作系统中一般以 .so 作为扩展名,保存在 /lib 目录下。
不同操作系统提供的“工具”和使用方法也不同,所以能在 Windows 操作系统上运行的应用软件不能在 Linux 操作系统上运行,也不能在苹果计算机的 Macintosh 操作系统上运行,反之亦然。为此,应用软件开发商会针对不同的操作系统发行不同的软件版本,比如腾讯公司开发的 QQ,目前就有 4 种版本,分别针对 Windows、Linux、Mac OS(苹果操作系统)和 Android 操作系统。
“中间件”是一个技术含义很强的概念,在家庭计算机和个人计算机上很少用到它,在企业中使用很普遍。中间件也就是“中间软件”的意思,为一类软件的统称。
“中间”包含两方面含义:一是指处于操作系统和应用软件之间;二是指介于应用软件与应用软件之间,目的是为了隐藏差异,以便共享资源和通信。中间件有点类似于电源插座面板,不管插座里面是什么构造,面板上的插接孔都是一样的,这样插座面板一方面隐藏了插座内部结构,另一方面能接插所有的电源插头。
中间件的引入目的就是要隐藏通信对端的内部结构,而呈现统一的调用界面。
掌握企业 IT 系统的四层逻辑结构很重要,这对于理解后续章节中的云计算概念非常有帮助。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!