·它是一个软件系统从整体到部分的最高层次的划分。
·建造一个系统所作出的最高层次的、以后难以更改的,商业的和技术的决定。
在建造一个系统之前会有很多的重要决定需要事先作出,而一旦系统开始进行详细设计甚至建造,这些决定就很难更改甚至无法更改。显然,这样的决定必定是有关系统设计成败的最重要决定,必须经过非常慎重的研究和考察。
计算机软件的历史开始于五十年代,历史非常短暂,而相比之下建筑工程则从石器时代就开始了,人类在几千年的建筑设计实践中积累了大量的经验和教训。建筑设计基本上包含两点,一是建筑风格,二是建筑模式。独特的建筑风格和恰当选择的建筑模式,可以使一个独一无二。
下面的照片显示了中美洲古代玛雅建筑,Chichen-Itza大金字塔,九个巨大的石级堆垒而上,九十一级台阶(象征着四季的天数)夺路而出,塔顶的神殿耸入云天。所有的数字都如日历般严谨,风格雄浑。难以想象这是石器时代的建筑物。图1、位于墨西哥Chichen-Itza(在玛雅语中chi意为嘴chen意为井)的古玛雅建筑。(摄影:作者) 软件与人类的关系是架构师必须面对的核心问题,也是自从软件进入历史舞台之后就出现的问题。与此类似地,自从有了建筑以来,建筑与人类的关系就一直是建筑设计师必须面对的核心问题。英国首相丘吉尔说,我们构造建筑物,然后建筑物构造我们(We shape our buildings, and afterwards our buildings shape us)。英国下议院的会议厅较狭窄,无法使所有的下议院议员面向同一个方向入座,而必须分成两侧入座。丘吉尔认为,议员们入座的时候自然会选择与自己政见相同的人同时入座,而这就是英国政党制的起源。Party这个词的原意就是"方"、"面"。政党起源的关键就是建筑物对人的影响。
在软件设计界曾经有很多人认为功能是最为重要的,形式必须服从功能。与此类似地,在建筑学界,现代主义建筑流派的开创人之一Louis Sullivan也认为形式应当服从于功能(Forms follows function)。
几乎所有的软件设计理念都可以在浩如烟海的建筑学历史中找到更为遥远的历史回响。最为着名的,当然就是模式理论和XP理论。
·可靠性(Reliable)。软件系统对于用户的商业经营和管理来说极为重要,因此软件系统必须非常可靠。
·安全行(Secure)。软件系统所承担的交易的商业价值极高,系统的安全性非常重要。
·可扩展性(Scalable)。软件必须能够在用户的使用率、用户的数目增加很快的情况下,保持合理的性能。只有这样,才能适应用户的市场扩展得可能性。
·可定制化(Customizable)。同样的一套软件,可以根据客户群的不同和市场需求的变化进行调整。
·可扩展性(Extensible)。在新技术出现的时候,一个软件系统应当允许导入新技术,从而对现有系统进行功能和性能的扩展
·可维护性(Maintainable)。软件系统的维护包括两方面,一是排除现有的错误,二是将新的软件需求反映到现有系统中去。一个易于维护的系统可以有效地降低技术支持的花费
·客户体验(Customer Experience)。软件系统必须易于使用。
·市场时机(Time to Market)。软件用户要面临同业竞争,软件提供商也要面临同业竞争。以最快的速度争夺市场先机非常重要。
架构的种类 根据我们关注的角度不同,可以将架构分成三种:
·逻辑架构、软件系统中元件之间的关系,比如用户界面,数据库,外部系统接口,商业逻辑元件,等等。
比如下面就是笔者亲身经历过的一个软件系统的逻辑架构图图2、一个逻辑架构的例子 从上面这张图中可以看出,此系统被划分成三个逻辑层次,即表象层次,商业层次和数据持久层次。每一个层次都含有多个逻辑元件。比如WEB服务器层次中有HTML服务元件、Session服务元件、安全服务元件、系统管理元件等。
比如下面这张物理架构图描述了一个分布于北京和上海的分布式系统的物理架构,图中所有的元件都是物理设备,包括网络分流器、代理服务器、WEB服务器、应用服务器、报表服务器、整合服务器、存储服务器、主机等等。图3、一个物理架构的例子 ·系统架构、系统的非功能性特征,如可扩展性、可靠性、强壮性、灵活性、性能等。
系统架构的设计要求架构师具备软件和硬件的功能和性能的过硬知识,这一工作无疑是架构设计工作中最为困难的工作。
此外,从每一个角度上看,都可以看到架构的两要素:元件划分和设计决定。
根据作者的经验,一个基于数据库的系统架构,有多少个数据表,就会有多少页的架构设计文档。比如一个中等的数据库应用系统通常含有一百个左右的数据表,这样的一个系统设计通常需要有一百页左右的架构设计文档。
这样的人就是所谓的架构师(Architect)。在很多公司中,架构师不是一个专门的和正式的职务。通常在一个开发小组中,最有经验的程序员会负责一些架构方面的工作。在一个部门中,最有经验的项目经理会负责一些架构方面的工作。
但是,越来越多的公司体认到架构工作的重要性,并且在不同的组织层次上设置专门的架构师位置,由他们负责不同层次上的逻辑架构、物理架构、系统架构的设计、配置、维 护等工作。
⑵ 请问什么样的计算机专业好找工作
不妨选择:计算机科学理由如下:computer science,研究计算机及其周围各种现象和规律的科学,亦即研究计算机系统结构、程序系统(即软件)、人工智能以及计算本身的性质和问题的学科。计算机科学是一门包含各种各样与计算和信息处理相关主题的系统学科,从抽象的算法分析、形式化语法等等,到更具体的主题如编程语言、程序设计、软件和硬件等。计算机科学分为理论计算机科学和实验计算机科学两个部分。后者常称为“计算机科学”而不冠以“实验”二字。前者有其他名称,如计算理论、计算机理论、计算机科学基础、计算机科学数学基础等。数学文献中一般指理论计算机科学。
目录研究领域计算机科学的领域研究课题相关奖项计算机系统分类美国开设计算机科学专业的院校相关学科展开研究领域计算机科学的领域研究课题相关奖项计算机系统分类美国开设计算机科学专业的院校相关学科展开编辑本段研究领域计算机是一种进行算术和逻辑运算的机器,而且对于由若干台计算机联成的系统而言还有通信问题,并且处理的对象都是信息,因而也可以说,计算机科学是研究信息处理的科学。计算机科学分为理论计算机科学和实验计算机科学两个部分。在数学文献中所说的计算机科学,一般是指理论计算机科学。实验计算机科学还包括有关开辟计算机新的应用领域的研究。计算机科学的大部分研究是基于“冯·诺依曼计算机”和“图灵机”的,它们是绝大多数实际机器的计算模型。作为此模型的开山鼻祖,邱奇-图灵论题(Church-Turing Thesis)表明,尽管在计算的时间,空间效率上可能有所差异,现有的各种计算设备在计算的能力上是等同的。尽管这个理论通常被认为是计算机科学的基础,可是科学家也研究其它种类的机器,如在实际层面上的并行计算机和在理论层面上概率计算机、oracle 计算机和量子计算机。在这个意义上来讲,计算机只是一种计算的工具:着名的计算机科学家 Dijkstra 有一句名言“计算机科学之关注于计算机并不甚于天文学之关注于望远镜。”。编辑本段计算机科学的领域作为一个学科,计算机科学涵盖了从算法的理论研究和计算的极限,到如何通过硬件和软件实现计算系统。CSAB(以前被叫做Computing Sciences Accreditation Board),由Association for Computing Machinery(ACM)和IEEE Computer Society(IEEE-CS)的代表组成,确立了计算机科学学科的4个主要领域:计算理论,算法与数据结构,编程方法与编程语言,以及计算机元素与架构。CSAB还确立了其它一些重要领域,如软件工程,人工智能,计算机网络与通信,数据库系统,并行计算,分布式计算,人机交互,计算机图形学,操作系统,以及数值和符号计算。理论计算机科学主条目:理论计算机科学广义的理论计算机科学包括经典的计算理论和其它专注于更抽象、逻辑与数学方面的计算。计算理论主条目:计算理论按照Peter J. Denning的说法,计算机科学的最根本问题是“什么能够被有效地自动化?”计算理论的研究就是专注于回答这个根本问题,关于什么能够被计算,去实施这些计算又需要用到多少资源。为了试图回答第一个问题,递归论检验在多种理论计算模型中哪个计算问题是可解的。而计算复杂性理论则被用于回答第二个问题,研究解决一个不同目的的计算问题的时间与空间消耗。着名的“P=NP?”问题,千禧年大奖难题之一,是计算理论的一个开放问题。信息与编码理论主条目:信息论和编码理论信息论与信息量化相关,由Claude E. Shannon创建,用于寻找信号处理操作的根本极限,比如压缩数据和可靠的数据存储与通讯。编码理论是对编码以及它们适用的特定应用性质的研究。编码(code)被用于数据压缩,密码学,前向纠错,近期也被用于网络编码。研究编码的目的在于设计更高效、可靠的数据传输方法。算法算法指定义良好的计算过程,它取一个或一组值作为输入,经过一系列定义好的计算过程,得到一个或一组输出。算法是计算机科学研究的一个重要领域,也是许多其他计算机科学技术的基础。算法主要包括数据结构、计算几何、图论等。除此之外,算法还包括许多杂项,如模式匹配、部分数论等。程序设计语言理论主条目:程序设计语言理论程序设计语言理论是计算机科学的一个分支,主要处理程序设计语言的设计、实现、分析、描述和分类,以及它们的个体特性。它属于计算机科学学科,既受影响于也影响着数学、软件工程和语言学。它是公认的计算机科学分支,同时也是活跃的研究领域,研究成果被发表在众多学术期刊,计算机科学以及工程出版物。形式化方法主条目:形式化方法形式化方法是一种特别的基于数学的技术,用于软件和硬件系统的形式规范、开发以及形式验证。在软件和硬件设计方面,形式化方法的使用动机,如同其它工程学科,是通过适当的数学分析便有助于设计的可靠性和健壮性的期望。但是,使用形式化方法会带来很高的成本,意味着它们通常只用于高可靠性系统,这种系统中安全或保安(security)是最重要的。对于形式化方法的最佳形容是各种理论计算机科学基础种类的应用,特别是计算机逻辑演算,形式语言,自动机理论和形式语义学,此外还有类型系统、代数数据类型,以及软件和硬件规范和验证中的一些问题。并发,并行和分布式系统主条目:并行性和分布式计算并行性(concurrency)是系统的一种性质,这类系统可以同时执行多个可能互相交互的计算。一些数学模型,如Petri网、进程演算和PRAM模型,被创建以用于通用并发计算。分布式系统将并行性的思想扩展到了多台由网络连接的计算机。同一分布式系统中的计算机拥有自己的私有内存,它们之间经常交换信息以达到一个共同的目的。数据库和信息检索主条目:数据库和数据库管理系统数据库是为了更容易地组织、存储和检索大量数据。数据库由数据库管理系统管理,通过数据库模型和查询语言来存储、创建、维护和搜索数据。应用计算机科学尽管计算机科学(computer science)的名字里包含计算机这几个字,但实际上计算机科学相当数量的领域都不涉及计算机本身的研究。因此,一些新的名字被提议出来。某些重点大学的院系倾向于术语计算科学(computing science),以精确强调两者之间的不同。丹麦科学家Peter Naur建议使用术语"datalogy",以反映这一事实,即科学学科是围绕着数据和数据处理,而不一定要涉及计算机。第一个使用这个术语的科学机构是哥本哈根大学Datalogy学院,该学院成立于1969年,Peter Naur便是第一任教授。这个术语主要被用于北欧国家。同时,在计算技术发展初期,《ACM通讯》建议了一些针对计算领域从业人员的术语:turingineer,turologist,flow-charts-man,applied meta-mathematician及applied epistemologist。 三个月后在同样的期刊上,comptologist被提出,第二年又变成了hypologist。术语computics也曾经被提议过。在欧洲大陆,起源于信息(information)和数学或者自动(automatic)的名字比起源于计算机或者计算(computation)更常见,如informatique(法语),Informatik(德语),informatika(斯拉夫语族)。着名计算机科学家Edsger Dijkstra曾经指出:“计算机科学并不只是关于计算机,就像天文学并不只是关于望远镜一样。”("Computer science is no more about computers than astronomy is about telescopes.")设计、部署计算机和计算机系统通常被认为是非计算机科学学科的领域。例如,研究计算机硬件被看作是计算机工程的一部分,而对于商业计算机系统的研究和部署被称为信息技术或者信息系统。然而,现如今也越来越多地融合了各类计算机相关学科的思想。计算机科学研究也经常与其它学科交叉,比如心理学,认知科学,语言学,数学,物理学,统计学和经济学。计算机科学被认为比其它科学学科与数学的联系更加密切,一些观察者说计算就是一门数学科学。早期计算机科学受数学研究成果的影响很大,如Kurt Gödel和Alan Turing,这两个领域在某些学科,例如数理逻辑、范畴论、域理论和代数,也不断有有益的思想交流。计算机科学和软件工程的关系是一个有争议的话题,随后关于什么是“软件工程”,计算机科学又该如何定义的争论使得情况更加混乱。David Parnas从其它工程和科学学科之间的关系得到启示,宣称计算机科学的主要重点总的来说是研究计算的性质,而软件工程的主要重点是具体的计算设计,以达到实用的目的,这样便构成了两个独立但又互补的学科。人工智能主条目:人工智能这个计算机科学分支旨在创造可以解决计算问题,以及像动物和人类一样思考与交流的人造系统。无论是在理论还是应用上,都要求研究者在多个学科领域具备细致的、综合的专长,比如应用数学,逻辑,符号学,电机工程学,精神哲学,神经生理学和社会智力,用于推动智能研究领域,或者被应用到其它需要计算理解与建模的学科领域,如金融或是物理科学。人工智能领域开始变得正式源于Alan Turing这位人工智能先驱提出了图灵试验,以回答这样一个终极问题:“计算机能够思考吗?”计算机体系结构与工程主条目:计算机体系结构和计算机工程计算机系统结构,或者数字计算机组织,是一个计算机系统的概念设计和根本运作结构。它主要侧重于CPU的内部执行和内存访问地址。这个领域经常涉及计算机工程和电子工程学科,选择和互连硬件组件以创造满足功能、性能和成本目标的计算机。计算机图形与视觉主条目:计算机图形学计算机图形学是对于数字视觉内容的研究,涉及图像数据的合成和操作。它跟计算机科学的许多其它领域密切相关,包括计算机视觉、图像处理和计算几何,同时也被大量运用在特效和电子游戏。计算机安全和密码学主条目:计算机安全和密码学计算机安全是计算机技术的一个分支,其目标包括保护信息免受未经授权的访问、中断和修改,同时为系统的预期用户保持系统的可访问性和可用性。密码学是对于隐藏(加密)和破译(解密)信息的实践与研究。现代密码学主要跟计算机科学相关,很多加密和解密算法都是基于它们的计算复杂性。计算科学计算科学(或者科学计算)是关注构建数学模型和量化分析技术的研究领域,同时通过计算机分析和解决科学问题。在实际使用中,它通常是计算机模拟和计算等形式在各个科学学科问题中的应用。信息科学主条目:信息科学软件工程主条目:软件工程软件工程是对于设计、实现和修改软件的研究,以确保软件的高质量、适中的价格、可维护性,以及能够快速构建。它是一个系统的软件设计方法,涉及工程实践到软件的应用。[1]编辑本段研究课题计算机程序能做什么和不能做什么(可计算性);如何使程序更高效的执行特定任务(算法和复杂性理论);程序如何存取不同类型的数据(数据结构和数据库);程序如何显得更具有智能(人工智能);人类如何与程序沟通(人机互动和人机界面)。编辑本段相关奖项计算机科学领域的最高荣誉是ACM设立的图灵奖,被誉为是计算机科学的诺贝尔奖。它的获得者都是本领域最为出色的科学家和先驱。华人中首获图灵奖的是姚期智先生.他于2000年以其对计算理论做出的诸多“根本性的、意义重大的”贡献而获得这一崇高荣誉。编辑本段计算机系统分类计算机系统可划分为软件系统与硬件系统两大类。硬件结构控制和指令系统算法和逻辑结构存储器结构冯·诺伊曼结构哈佛结构输入/输出和数据通信数字逻辑逻辑设计集成电路计算机系统组织计算机系统结构计算机网络分布式计算网络安全计算机系统实现软件系统软件操作系统编译器应用软件计算机游戏办公自动化网络软件CAD软件计算机程序程序设计和程序设计实践面向对象技术程序设计语言软件工程软件复用驱动程序计算机模拟程序设计方法学数据和信息系统数据结构数据存储表示数据加密数据压缩编码与信息论文件信息系统管理信息系统决策支持系统- 专家系统数据库信息存储和数据存取信息交互与表达主要的研究领域形式化基础逻辑学谓词逻辑模态逻辑时序逻辑描述逻辑数学泛代数递归论模型论概率论和数理统计逻辑代数布尔代数离散数学组合数学图论网论信息论理论计算机科学形式语言自动机可计算性算法计算复杂性描述复杂性编译器程序设计理论信息论类型理论指称语义微程序遗传算法并行计算计算方法学人工智能计算机图形学图像处理与计算机视觉模式识别语音识别文字识别签名识别人脸识别指纹识别仿真与建模数字信号处理文档与文本处理计算机应用数值计算数值分析定理机器证明计算机代数工程计算计算机化学计算机物理生物信息论计算生物学非数值计算工厂自动化办公室自动化人工智能信息存储与检索符号语言处理计算机辅助科学计算机辅助设计计算机辅助教学计算机辅助管理计算机辅助软件工程机器人学多媒体技术人机交互电子商务特定技术测试基准机器视觉数据压缩软件设计模式数字信号处理文件格式信息安全国际互联网络超大规模集成电路设计网络传输协议网络处理器技术整数运算器浮点运算器矩阵运算处理器网格计算科学史计算机历史软件业历史编程思想[2]编辑本段美国开设计算机科学专业的院校弗吉尼亚大学,密西根大学安娜堡分校,乔治城大学,维克森林大学,耶鲁大学,哥伦比亚大学,华盛顿大学,卡内基梅隆大学,佐治亚理工学院,加州理工学院,麻省理工学院,斯坦福大学,加州大学伯克利分校,厄巴纳伊利诺斯州大学,威斯康星大学-麦迪逊分校,伦斯勒理工学院编辑本段相关学科计算机科学与另外的一些学科紧密相关。这些学科之间有明显的交叉领域,但也有明显的差异。信息科学 - 软件工程 - 信息系统 - 计算机工程 - 信息安全 - 密码学- 数学 - 工程学- 语言学 - 逻辑学编辑本段发展历史计算机科学中的理论部分在第一台数字计算机出现以前就已存在。计算机科学根植于电子工程、数学和语言学,是科学、工程和艺术的结晶。它在20世纪最后的三十年间兴起成为一门独立的学科,并发展出自己的方法与术语。20世纪30年代中期英国数学家A.M.图灵和美国数学家E.L.波斯特几乎同时提出了理想计算机的概念(图灵提出的那种理想机在后来的文献中称为图灵机)。40年代数字计算机产生后,计算技术(即计算机设计技术与程序设计技术)和有关计算机的理论研究开始得到发展。这方面构成了现在所说的理论计算机科学。至于图灵机理论,则可以看作是这一学科形成前的阶段。至于“计算机科学”一词则到60年代初才出现,此后各国始在大学中设置计算机科学系。学科内容 计算机科学是一门年轻的科学,它究竟包括哪些内容,还没有一致公认的看法。一般认为,计算机科学主要包括理论计算机科学、计算机系统结构、软件工程的一部分和人工智能。理论计算机科学 理论计算机科学是在20世纪30年代发展起来的。40年代机电的与电子的计算机出现后,关于现实计算机及其程序的数学模型性质的研究以及计算复杂性(早期称作计算难度)的研究迅速发展起来,形成自动机论、形式语言理论、程序设计理论、算法设计与分析和计算复杂性理论几个领域。计算机系统结构50年代50年代以来,计算机的性能在计算速度和编址空间方面已提高了几个数量级。但大部分是通过元件更新而获得的。在系统结构方面基本上仍是属于40年代后期形成的存储程序型,即所谓诺伊曼型机器。这种结构的主要特点是它属于控制流型。在这种结构中,一项计算先做什么后做什么是事先确定了的,程序中指令的顺序是事先确定了的。为了在计算机的性能方面取得大的进展,需要突破这种旧的形式。计算机系统结构方面的重要课题之一,是探索非诺伊曼型机器的设计思想。在非诺伊曼型机器中,有一种是70年代初提出的数据流机器(又名数据驱动机器)。美国、苏联和英国都已制成这种机器。这种机器的特点是,在一项计算中先做什么后做什么不是事先确定,所执行的指令是动态排序的。排序的原则是操作数已准备就绪的先做,因而称作数据驱动机器。这种类型的机器更便于实现并行计算。软件工程 程序设计在相当长的时间内是一种类似“手艺”而不是类似现代工程的技术。60年代60年代以来出现了大程序。这些大程序的可靠性很难保证。到60年代后期,西方国家出现了“软件危机”。这是指有些程序过于庞大(包含几十万条以至几百万条指令),成本过高而可靠性则比较差。于是提出了软件工程的概念,目的在于使软件开发遵守严格的规范,使用一套可靠的方法,从而保证质量。现代软件工程的方向是形式化和自动化,而形式化的目的在于自动化。这里所说的自动化就是将程序设计中可以由机器来完成的工作,尽量交给机器去做。中心课题之一是程序工具和环境的研究。程序工具是指辅助人编程序的程序,如编译程序、编辑程序、排错程序等;程序环境则是指一套结合起来使用的用来辅助人编程序的程序工具。人工智能 用计算机模拟人的智能,特别是模拟思维活动的技术及其有关理论。由于人的思维活动离不开语言,而且人对于某一类问题进行思索和探索解法时,总是需要以关于这一类问题的基本知识(专业知识或常识)作为出发点。于是,知识表示和机器对自然语言的理解就构成人工智能的两个重要领域。所谓知识表示,是指将原来用自然语言表示的知识转换成用符号语言表示的,从而可以储存在机器内供机器使用的知识。人工智能的研究角度有探索法的角度和算法的角度。通常所说的解题算法是指机械的和总是有结果的方法,而这里所说的算法却是广义的,包括那些机械的而在使用时不一定有结果的算法。这种方法时常称作半可判定的方法。人在解决问题时,时常采用探索法。这种方法具有“试错法”的性质,也就是说,试验若干条途径,一条路走不通时再试另一条,直到问题得到解决时为止。机器可以模拟人用探索法解题的思维活动。但由于可能途径的数目非常之大,不可能进行穷举式的探索。人一般是只选出一些最有希望得到结果的途径去进行探索。人的这种能力,就是进行创造性思维的能力。这是机器极难模拟的事情。采用算法角度,使用特定的解题算法或半可判定的方法时,会遇到另一方面的困难。那就是当问题的复杂程度较高时(比如说是指数的),即使问题是有结果的,机器也无法在实际可行的时间内得到结果。在计算机出现的初期,人们曾寄希望于机器的高速度,以为在模拟人的思维时,机器可能用它的高速度来换取它所不具有的创造性思维。但通过“组合性爆炸”问题(“组合性爆炸”是指一些组合数学中的问题,在参数增大时,计算时间的增长率时常是指数的,甚至高于指数),人们认识到,单纯靠速度不能绕过组合性爆炸所产生的障碍。有无办法来克服这种困难,尚有待于进一步研究。与其他学科的关系 计算机是由物理元件构成的,迄今主要是由电子元件构成的。因此,物理学的一些分支和电子工程便构成计算机科学的基础。同时,计算机科学在一定意义上是算法的科学,而算法是一个数学概念。因此,数学的某些分支如算法理论(即可算性理论,又名递归函数论)也构成计算机科学的基础。但计算机科学已发展成为一门独立的技术科学,既不是电子学的一个分支,也不是数学的一个分支。这是就这个学科的整体而言。至于理论计算机科学,由于它可以看作是计算机科学的数学基础,在一定意义上,可以看作是数学的一个分支。另一个与计算机科学有密切关系的学科是控制论。控制论作为应用数学方法来研究机械系统和生命系统中的控制和通信现象的学科,同计算机科学有内容上的交叉,但后者不是它的一部分。自从40年代制成数字计算机以来,计算机的性能有了很大的提高。但在系统结构方面变化不大。一些计算技术发达国家正在研制新一代的计算机。这种计算机的系统结构将与过去40年的机器很不相同,所用的程序设计语言也将是新型的。计算机科学将研究由此出现的新问题,如有关并行计算的问题。对计算的数学性质的研究大都还是关于串行计算的,对并行计算性质的研究自70年代才发展起来,预计将成为计算机科学的中心课题之一。另一个问题是程序设计的自动化问题。在程序设计方面,明显的趋势是将机器能做的尽量交给机器去做。程序环境的研究构成了软件工程的一个中心课题。形式化方法越来越受到重视,因为它是提高自动化程度所必需的。早期,虽然英国的剑桥大学和其他大学已经开始教授计算机科学课程,但它只被视为数学或工程学的一个分支,并非独立的学科。剑桥大学声称有世界上第一个传授计算的资格。世界上第一个计算机科学系是由美国的普渡大学在1962年设立,第一个计算机学院于1980年由美国的东北大学设立。现在,多数大学都把计算机科学系列为独立的部门,一部分将它与工程系、应用数学系或其他学科联合。
⑶ cs是什么专业的简称
计算机科学和电子工程
CS:计算机科学(英语:computer science,有时缩写为CS)是系统性研究信息与计算的理论基础以及它们在计算机系统中如何实现与应用的实用技术的学科。
它通常被形容为对那些创造、描述以及转换信息的算法处理的系统研究。计算机科学包含很多分支领域;有些强调特定结果的计算,比如计算机图形学;而有些是探讨计算问题的性质,比如计算复杂性理论;
还有一些领域专注于怎样实现计算,比如编程语言理论是研究描述计算的方法,而程序设计是应用特定的编程语言解决特定的计算问题,人机交互则是专注于怎样使计算机和计算变得有用、好用,以及随时随地为人所用。
有时公众会误以为计算机科学就是解决计算机问题的事业(比如信息技术),或者只是与使用计算机的经验有关,如玩游戏、上网或者文字处理。其实计算机科学所关注的,不仅仅是去理解实现类似游戏、浏览器这些软件的程序的性质,更要通过现有的知识创造新的程序或者改进已有的程序。
(3)csa计算计算机网络扩展阅读:
计算机科学
计算机科学,研究计算机及其周围各种现象和规律的科学,亦即研究计算机系统结构、程序系统(即软件)、人工智能以及计算本身的性质和问题的学科。
计算机科学是一门包含各种各样与计算和信息处理相关主题的系统学科,从抽象的算法分析、形式化语法等等,到更具体的主题如编程语言、程序设计、软件和硬件等。
计算机科学分为理论计算机科学和实验计算机科学两个部分。后者常称为“计算机科学”而不冠以“实验”二字。前者有其他名称,如计算理论、计算机理论、计算机科学基础、计算机科学数学基础等。数学文献中一般指理论计算机科学。
毕业生主要面向交通系统各单位、交通信息化与电子政务建设与应用部门、各类计算机专业化公司、广告设计制作公司、汽车营销技术服务等从事IT行业工作。
电子工程师是一个对从事集成电路、电子电气设备等相关产品生产、研发工作的技术人员的统称。
职业分类
电子工程师一般分为硬件工程师和软件工程师。
硬件与软件是不可分离的,硬件需要软件来执行其程序实现具体功能。
软件需要硬件做载体。
硬件工程师:主要要了解电路方面的知识 知道常用电子元器件的作用,原理,会使用电子测量工具,会使用电子生产工具,还要会装配,测试,生产工艺,维修,等等,是技术与手动操作的结合。
软件工程师:精通电路知识模拟电路,数字电路,会分析电路图,设计电路图,制作PCB,了解各类电子元器件的原理,用途,型号,精通单片机开发技术,会使用编程语言(汇编语言、C语言),能很熟练的用电脑作为辅助设计工具进行工作,能得心应手的使用常用的设计软件。
会分析电路故障,对产品进行调试、检测。
电子工程就业方向
电信企业、电视台、电子商务中心、新闻中心、银行、电子工程公司、网络中心等信息处理行业。
⑷ 云计算研究——发展历史
1983年,太阳电脑提出“网络是电脑”,2006年3月,亚马逊推出弹性计算云服务。
2006年8月9日,Google首席执行官埃里克•施密特在搜索引擎大会首次提出“云计算”的概念。Google“云端计算”源于Google工程师克里斯托弗•比希利亚所做的“Google 101”项目。
2007年10月,Google与IBM开始在美国大学校园,包括卡内基美隆大学、麻省理工学院、斯坦福大学、加州大学柏克莱分校及马里兰大学等,推广云计算的计划,这项计划希望能降低分布式计算技术在学术研究方面的成本,并为这些大学提供相关的软硬件设备及技术支持(包括数百台个人电脑及BladeCenter与System x服务器,这些计算平台将提供1600个处理器,支持包括Linux、Xen、Hadoop等开放源代码平台)。而学生则可以通过网络开发各项以大规模计算为基础的研究计划。
2008年1月30日,Google宣布在台湾启动“云计算学术计划”,将与台湾台大、交大等学校合作,将这种先进的大规模、快速计算技术推广到校园。
2008年2月1日,IBM宣布将在中国无锡太湖新城科教产业园为中国的软件公司建立全球第一个云计算中心。
2008年7月29日,雅虎、惠普和英特尔宣布一项涵盖美国、德国和新加坡的联合研究计划,推出云计算研究测试床,推进云计算。该计划要与合作伙伴创建6个数据中心作为研究试验平台,每个数据中心配置1400个至4000个处理器。这些合作伙伴包括新加坡资讯通信发展管理局、德国卡尔斯鲁厄大学Steinbuch计算中心、美国伊利诺伊大学香宾分校、英特尔研究院、惠普实验室和雅虎。
2008年8月3日,美国专利商标局网站信息显示,戴尔正在申请“云计算”商标,此举旨在加强对这一未来可能重塑技术。
2009年11月,中国第一家云计算产业协会在深圳成立,协会的成立标志着地方政府对发展云计算产业的信心。2010年3月5日,Novell与云安全联盟(CSA)共同宣布一项供应商中立计划,名为“可信任云计算计划”。
2010年7月,美国国家航空航天局和包括Rackspace、AMD、Intel、戴尔等支持厂商共同宣布“OpenStack”开放源代码计划,微软在2010年10月表示支持OpenStack与Windows Server 2008 R2的集成;而Ubuntu已把OpenStack加至11.04版本中。
2011年2月,思科系统正式加入OpenStack,重点研制OpenStack的网络服务。
我是从IT号外知道的。
⑸ 云计算是谁发明的
1983年,太阳电脑(Sun Microsystems)提出“网络是电脑”(“The Network is the Computer”),
2006年3月,亚马逊(Amazon)推出弹性计算云(Elastic Compute Cloud;EC2)服务。
2006年8月9日,Google首席执行官埃里克·施密特(Eric Schmidt)在搜索引擎大会(SES San Jose
2006)首次提出“云计算”(Cloud Computing)的概念。Google“云端计算”源于Google工程师克里斯托弗·比希利亚所做的“Google
101”项目。
2007年10月,Google与IBM开始在美国大学校园,包括卡内基美隆大学、麻省理工学院、斯坦福大学、加州大学柏克莱分校及马里兰大学等,推广云计算的计划,这项计划希望能降低分布式计算技术在学术研究方面的成本,并为这些大学提供相关的软硬件设备及技术支持(包括数百台个人电脑及BladeCenter与System
x服务器,这些计算平台将提供1600个处理器,支持包括Linux、Xen、Hadoop等开放源代码平台)。而学生则可以通过网络开发各项以大规模计算为基础的研究计划。
2008年1月30日,Google宣布在台湾启动“云计算学术计划”,将与台湾台大、交大等学校合作,将这种先进的大规模、快速计算技术推广到校园。
2008年2月1日,IBM(NYSE: IBM)宣布将在中国无锡太湖新城科教产业园为中国的软件公司建立全球第一个云计算中心(Cloud Computing
Center)。
2008年7月29日,雅虎、惠普和英特尔宣布一项涵盖美国、德国和新加坡的联合研究计划,推出云计算研究测试床,推进云计算。该计划要与合作伙伴创建6个数据中心作为研究试验平台,每个数据中心配置1400个至4000个处理器。这些合作伙伴包括新加坡资讯通信发展管理局、德国卡尔斯鲁厄大学Steinbuch计算中心、美国伊利诺伊大学香宾分校、英特尔研究院、惠普实验室和雅虎。
2008年8月3日,美国专利商标局网站信息显示,戴尔正在申请“云计算”(Cloud Computing)商标,此举旨在加强对这一未来可能重塑技术。
2009年11月,中国第一家云计算产业协会在深圳成立,协会的成立标志着地方政府对发展云计算产业的信心。
2010年3月5日,Novell与云安全联盟(CSA)共同宣布一项供应商中立计划,名为“可信任云计算计划(Trusted Cloud
Initiative)”。
2010年7月,美国国家航空航天局和包括Rackspace、AMD、Intel、戴尔等支持厂商共同宣布“OpenStack”开放源代码计划,微软在2010年10月表示支持OpenStack与Windows
Server 2008 R2的集成;而Ubuntu已把OpenStack加至11.04版本中。
2011年2月,思科系统正式加入OpenStack,重点研制OpenStack的网络服务。
现今云计算正处于一个起步的阶段,大大小小的公司提供着各式各样的云计算服务,从软件应用到网络存储再到邮件过滤。这些公司一部分是基础设备提供商,另一部分是像Salesforce.之类的SAAS(软件即服务)提供商。现今主要实现的是基于互联网的个人服务,但是云计算的聚合和整合正在产生。
云计算(Cloud Computing)是网格计算(Grid Computing
)、分布式计算(DistributedComputing)、并行计算(Parallel Computing)、效用计算(Utility
Computing)、网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load
Balance)等传统计算机和网络技术发展融合的产物。
云计算常与网格计算、效用计算、自主计算相混淆。(网格计算:分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机,常用来执行大型任务;效用计算:IT资源的一种打包和计费方式,比如按照计算、存储分别计量费用,像传统的电力等公共设施一样;自主计算:具有自我管理功能的计算机系统。)
事实上,许多云计算部署依赖于计算机集群(但与网格的组成、体系机构、目的、工作方式大相径庭),也吸收了自主计算和效用计算的特点。
通过使计算分布在大量的分布式计算机上,而非本地计算机或远程服务器中,企业数据中心的运行将与互联网更相似。这使得企业能够将资源切换到需要的应用上,根据需求访问计算机和存储系统。
好比是从古老的单台发电机模式转向了电厂集中供电的模式。它意味着计算能力也可以作为一种商品进行流通,就像煤气、水电一样,取用方便,费用低廉。最大的不同在于,它是通过互联网进行传输的。
操作系统
云计算操作系统,又称云计算中心操作系统、云OS,是云计算后台数据中心的整体管理运营系统(也有人认为云计算系统包括云终端操作系统,例如现在流行的各类手机操作系统,这与先行的单机操作系统区别不大,在此不做讨论),它是指构架于服务器、存储、网络等基础硬件资源和单机操作系统、中间件、数据库等基础软件管理的海量的基础硬件、软资源之上的云平台综合管理系统。
云计算操作系统通常包含以下几个模块:大规模基础软硬件管理、虚拟计算管理、分布式文件系统、业务/资源调度管理、安全管理控制等几大模块组成。
“云计算”时代来临 云计算到底指什么
目前,PC依然是我们日常工作生活中的核心工具——我们用PC处理文档、存储资料,通过电子邮件或U盘与他人分享信息。如果PC硬盘坏了,我们会因为资料丢失而束手无策。
而在“云计算”时代,“云”会替我们做存储和计算的工作。
“云”就是计算机群,每一群包括了几十万台、甚至上百万台计算机。“云”的好处还在于,其中的计算机可以随时更新,保证“云”长生不老。Google就有好几个这样的“云”,其他IT巨头,如微软、雅虎、亚马逊(Amazon)也有或正在建设这样的“云”。
届时,我们只需要一台能上网的电脑,不需关心存储或计算发生在哪朵“云”上,但一旦有需要,我们可以在任何地点用任何设备,如电脑、手机等,快速地计算和找到这些资料。
⑹ 计算机的CSA表示什么,求得全面的资料!!
加拿大标准协会(Canadian Standards Association)的简称是CSA它成立于1919年,是加拿大首家专为制定工业标准的非盈利性机构。在北美市场上销售的电子、电器等产品都需要取得安全方面的认证。目前CSA是加拿大最大的安全认证机构,也是世界上最着名的安全认证机构之一 。它能对机械、建材、电器、电脑设备、办公设备、环保、医疗防火安全、运动及娱乐等方面的所有类型的产品提供安全认证。CSA已为遍布全球的数千厂商提供了认证服务,每年均有上亿个附有CSA标志的产品在北美市场销售。
1992年前,经CSA认证的产品只能在加拿大市场上销售,而产品想要进入美国市场,还必须取得美国的有关认证。现在CSA International已被美国联邦政府认可为国家认可测试实验室。这意味着能根据加拿大和美国的标准对您的产品进行测试和认证,同时保证您的认证得到联邦、洲、省和地方政府的承认。有了CSA有效的产品安全认证,想要进入世界上最为坚韧而广阔的北美市场就轻而易举了。CSA能够帮助您的产品迅速有效地打入美国和加拿大市场。
CSA International将通过消除申请认证过程中的重复手续来帮厂商节省时间和金钱。对于厂商来说, 所要做的只是提出一次申请、提供一套样品和缴交一笔费用,而所得到的安全标志却能被联邦、州、省以及从纽约到洛杉矶的当地各级的认可。CSA International将与厂商一起共同努力, 提供一个高素质且安全可靠的认证项目。在北美以至全世界,CSA人都以诚实正直和熟练技能赢得人们的信赖。 CSA International在加拿大拥有四间实验室。从1992年至1994年,它们都先后获得"美国政府劳工部职业安全及健康管理局"(OSHA)的正式认可。 根据OSHA的规则,获得这一认可后,即可作为一个国家认可测试实验室,对一系列产品按照360多个美国ANSI/UL标准进行测试和认证。经CSA International 测试和认证的产品,被确定为完全符合标准规定,可以销往美国和加拿大两国市场。
取得北美认证既省时间又省金钱,只需完成一项申请、提供一套样品、缴交一次费用。有了CSA,一步就能帮您打入两国市场。CSA这一便利的测试认证服务,排除了取得两国不同认证所需的重复测试和评估。这无疑减少了厂商在产品认证、跟踪检验和重新测试方面的成本费用,同时也节省了宝贵的时间,并省却了厂商与各种不同的认证机构打交道的麻烦,从而达到事半功倍的效果。
“CSA”Marking是经由向加拿大Canadian Standards Association标准协会申请登录,经由该单位认可产品之安全性及授权后,始可于产品上附加“CSA”Marking标志。
CSA为一个非营利性质的会员赞助机构,其所制定标准的领域包括:保健技术、石油及瓦斯管路系统、职业安全、电气产品及太阳能。CSA在加拿大除总公司外,另有大西洋地区、奎北克地区、中部平原地区、西部地区、太平洋地区等分部,在世界各地亦有附属机构及驻外代表。
CSA的标准是自愿性质的。市、省及联邦政府经常在管理中使用或参照CSA的标准以取代他们去发展自己的标准。在此情况下,CSA标准便成为政府规格的参考依据。政府或其它组织及协会也许会要求遵守某种标准或指明某种特定产品必需经过验证以证明符合某种标准。这都建立在每一组织是否希望在其管辖范围内要求使用CSA标准及验证作业。
“CSA”Marking为目前世界上最知名的产品安全认可标志之一,即使非强制实施,很多地区之厂商都以取得此一标志作为对客户推荐其产品安全性之重要依据,很多购买者甚至会指定要求购买已附加CSA标志之产品。近来制造商被加拿大进口商或购买者指定需取得CSA标志的情况渐增。
因此,登录申请CSA标志可为产品安全提供更有公信力之保证。
⑺ 请教下大家,云原生计算环境的主要安全风险有哪些
云原生计算环境的主要安全风险类型包括:云原生网络安全风险、云原生编排及组件安全风险、镜像安全风险、镜像仓库安全风险和容器逃逸攻击等类型,针对这些风险的防范建议还是去找有实力的安全服务厂商,我们公司现在合作的青藤云安全在这方面做的就非常不错,可以去了解下。
⑻ 计算机科学的科学领域
作为一个学科,计算机科学涵盖了从算法的理论研究和计算的极限,到如何通过硬件和软件实现计算系统。CSAB(以前被叫做Computing Sciences Accreditation Board),由Association for Computing Machinery(ACM)和IEEE Computer Society(IEEE-CS)的代表组成,确立了计算机科学学科的4个主要领域:计算理论,算法与数据结构,编程方法与编程语言,以及计算机元素与架构。CSAB还确立了其它一些重要领域,如软件工程,人工智能,计算机网络与通信,数据库系统,并行计算,分布式计算,人机交互,机器翻译,计算机图形学,操作系统,以及数值和符号计算。 主条目:理论计算机科学
广义的理论计算机科学包括经典的计算理论和其它专注于更抽象、逻辑与数学方面的计算。 主条目:计算理论
按照Peter J. Denning的说法,计算机科学的最根本问题是“什么能够被有效地自动化?”计算理论的研究就是专注于回答这个根本问题,关于什么能够被计算,去实施这些计算又需要用到多少资源。为了试图回答第一个问题,递归论检验在多种理论计算模型中哪个计算问题是可解的。而计算复杂性理论则被用于回答第二个问题,研究解决一个不同目的的计算问题的时间与空间消耗。
着名的“P=NP?”问题,千禧年大奖难题之一,是计算理论的一个开放问题。 主条目:信息论和编码理论
信息论与信息量化相关,由Claude E. Shannon创建,用于寻找信号处理操作的根本极限,比如压缩数据和可靠的数据存储与通讯。编码理论是对编码以及它们适用的特定应用性质的研究。编码(code)被用于数据压缩,密码学,前向纠错,也被用于网络编码。研究编码的目的在于设计更高效、可靠的数据传输方法。 主条目:程序设计语言理论
程序设计语言理论是计算机科学的一个分支,主要处理程序设计语言的设计、实现、分析、描述和分类,以及它们的个体特性。它属于计算机科学学科,既受影响于也影响着数学、软件工程和语言学。它是公认的计算机科学分支,同时也是活跃的研究领域,研究成果被发表在众多学术期刊,计算机科学以及工程出版物。 主条目:形式化方法
形式化方法是一种特别的基于数学的技术,用于软件和硬件系统的形式规范、开发以及形式验证。在软件和硬件设计方面,形式化方法的使用动机,如同其它工程学科,是通过适当的数学分析便有助于设计的可靠性和健壮性的期望。但是,使用形式化方法会带来很高的成本,意味着它们通常只用于高可靠性系统,这种系统中安全或保安(security)是最重要的。对于形式化方法的最佳形容是各种理论计算机科学基础种类的应用,特别是计算机逻辑演算,形式语言,自动机理论和形式语义学,此外还有类型系统、代数数据类型,以及软件和硬件规范和验证中的一些问题。 主条目:并行性和分布式计算
并行性(concurrency)是系统的一种性质,这类系统可以同时执行多个可能互相交互的计算。一些数学模型,如Petri网、进程演算和PRAM模型,被创建以用于通用并发计算。分布式系统将并行性的思想扩展到了多台由网络连接的计算机。同一分布式系统中的计算机拥有自己的私有内存,它们之间经常交换信息以达到一个共同的目的。 主条目:数据库和数据库管理系统
数据库是为了更容易地组织、存储和检索大量数据。数据库由数据库管理系统管理,通过数据库模型和查询语言来存储、创建、维护和搜索数据。 尽管计算机科学(computer science)的名字里包含计算机这几个字,但实际上计算机科学相当数量的领域都不涉及计算机本身的研究。因此,一些新的名字被提议出来。某些重点大学的院系倾向于术语计算科学(computing science),以精确强调两者之间的不同。丹麦科学家Peter Naur建议使用术语datalogy,以反映这一事实,即科学学科是围绕着数据和数据处理,而不一定要涉及计算机。第一个使用这个术语的科学机构是哥本哈根大学Datalogy学院,该学院成立于1969年,Peter Naur便是第一任教授。这个术语主要被用于北欧国家。同时,在计算技术发展初期,《ACM通讯》建议了一些针对计算领域从业人员的术语:turingineer,turologist,flow-charts-man,applied meta-mathematician及applied epistemologist。 三个月后在同样的期刊上,comptologist被提出,第二年又变成了hypologist。术语computics也曾经被提议过。在欧洲大陆,起源于信息(information)和数学或者自动(automatic)的名字比起源于计算机或者计算(computation)更常见,如informatique(法语),Informatik(德语),informatika(斯拉夫语族)。
着名计算机科学家Edsger Dijkstra曾经指出:“计算机科学并不只是关于计算机,就像天文学并不只是关于望远镜一样。”(Computer science is no more about computers than astronomy is about telescopes.)设计、部署计算机和计算机系统通常被认为是非计算机科学学科的领域。例如,研究计算机硬件被看作是计算机工程的一部分,而对于商业计算机系统的研究和部署被称为信息技术或者信息系统。然而,现如今也越来越多地融合了各类计算机相关学科的思想。计算机科学研究也经常与其它学科交叉,比如心理学,认知科学,语言学,数学,物理学,统计学和经济学。
计算机科学被认为比其它科学学科与数学的联系更加密切,一些观察者说计算就是一门数学科学。早期计算机科学受数学研究成果的影响很大,如Kurt Gödel和Alan Turing,这两个领域在某些学科,例如数理逻辑、范畴论、域理论和代数,也不断有有益的思想交流。
计算机科学和软件工程的关系是一个有争议的话题,随后关于什么是“软件工程”,计算机科学又该如何定义的争论使得情况更加混乱。David Parnas从其它工程和科学学科之间的关系得到启示,宣称计算机科学的主要重点总的来说是研究计算的性质,而软件工程的主要重点是具体的计算设计,以达到实用的目的,这样便构成了两个独立但又互补的学科。 主条目:人工智能
这个计算机科学分支旨在创造可以解决计算问题,以及像动物和人类一样思考与交流的人造系统。无论是在理论还是应用上,都要求研究者在多个学科领域具备细致的、综合的专长,比如应用数学,逻辑,符号学,电机工程学,精神哲学,神经生理学和社会智力,用于推动智能研究领域,或者被应用到其它需要计算理解与建模的学科领域,如金融或是物理科学。人工智能领域开始变得正式源于Alan Turing这位人工智能先驱提出了图灵试验,以回答这样一个终极问题:“计算机能够思考吗?” 主条目:机器翻译
1947年,美国数学家、工程师沃伦·韦弗与英国物理学家、工程师安德鲁·布思提出了以计算机进行翻译(简称“机译”)的设想,机器翻译从此步入历史舞台,并走过了一条曲折而漫长的发展道路。机译被列为21世纪世界十大科技难题。与此同时,机译技术也拥有巨大的应用需求。
机译消除了不同文字和语言间的隔阂,堪称高科技造福人类之举。但机译的译文质量长期以来一直是个问题,离理想目标仍相差甚远。中国数学家、语言学家周海中教授认为,在人类尚未明了大脑是如何进行语言的模糊识别和逻辑判断的情况下,机译要想达到“信、达、雅”的程度是不可能的。这一观点恐怕道出了制约译文质量的瓶颈所在。 主条目:计算机体系结构和计算机工程
计算机系统结构,或者数字计算机组织,是一个计算机系统的概念设计和根本运作结构。它主要侧重于CPU的内部执行和内存访问地址。这个领域经常涉及计算机工程和电子工程学科,选择和互连硬件组件以创造满足功能、性能和成本目标的计算机。 主条目:计算机图形学
计算机图形学是对于数字视觉内容的研究,涉及图像数据的合成和操作。它跟计算机科学的许多其它领域密切相关,包括计算机视觉、图像处理和计算几何,同时也被大量运用在特效和电子游戏。 主条目:计算机安全和密码学
计算机安全是计算机技术的一个分支,其目标包括保护信息免受未经授权的访问、中断和修改,同时为系统的预期用户保持系统的可访问性和可用性。密码学是对于隐藏(加密)和破译(解密)信息的实践与研究。现代密码学主要跟计算机科学相关,很多加密和解密算法都是基于它们的计算复杂性。 主条目:软件工程
软件工程是对于设计、实现和修改软件的研究,以确保软件的高质量、适中的价格、可维护性,以及能够快速构建。它是一个系统的软件设计方法,涉及工程实践到软件的应用。
⑼ 云计算的安全性具体包含哪些内容
云计算安全联盟(CSA)发布的报告总结了云计算安全面临的9种威胁。在这其中,数据泄露、数据丢失和数据劫持三类威胁排名靠前。
安全威胁1:数据泄露
为了表明数据泄露对企业的危害程度,CSA在报告中提到了其在2012年11月发表的一篇研究文章,该文章描述了黑客如何利用边信道(Side-Channel)时间信息,通过侵入一台虚拟机来获取同一服务器上的其他虚拟机所使用的私有密钥。不过,其实不怀好意的黑客未必需要如此煞费苦心,就能确保这种攻击得逞。要是多租户云服务数据库设计不当,哪怕某一个用户的应用程序只存在一个漏洞,都可以让攻击者获取这个用户的数据,而且还能获取其他用户的数据。
安全威胁2:数据丢失
CSA认为,云计算环境的第二大威胁是数据丢失。用户有可能会眼睁睁地看着那些宝贵数据消失得无影无踪,但是却对此毫无办法。不怀好意的黑客会删除攻击对象的数据。粗心大意的服务提供商或者灾难(如大火、洪水或地震)也可能导致用户的数据丢失。让情况更为严峻的是,要是用户丢失了加密密钥,那么对数据进行加密的行为反而会给用户带来麻烦。
安全威胁3: 数据劫持
第三大云计算安全风险是账户或服务流量被劫持。CSA认为,云计算在这方面增添了一个新的威胁。如果黑客获取了企业的登录资料,其就有可能窃听相关活动和交易,并操纵数据、返回虚假信息,将企业客户引到非法网站。报告表示:“你的账户或服务实例可能成为攻击者新的大本营。他们进而会利用你的良好信誉,对外发动攻击。”CSA在报告中提到了2010年亚马逊曾遭遇到的跨站脚本(XSS)攻击。
安全威胁4:不安全的接口
第四大安全威胁是不安全的接口(API)。IT管理员们会利用API对云服务进行配置、管理、协调和监控。API对一般云服务的安全性和可用性来说极为重要。企业和第三方因而经常在这些接口的基础上进行开发,并提供附加服务。CSA在报告中表示:“这为接口管理增加了复杂度。由于这种做法会要求企业将登录资料交给第三方,以便相互联系,因此其也加大了风险。”
安全威胁5: 拒绝服务攻击
分布式拒绝服务(DDoS)被列为云计算面临的第五大安全威胁。多年来,DDoS一直都是互联网的一大威胁。而在云计算时代,许多企业会需要一项或多项服务保持7×24小时的可用性,在这种情况下这个威胁显得尤为严重。DDoS引起的服务停用会让服务提供商失去客户,还会给按照使用时间和磁盘空间为云服务付费的用户造成惨重损失。
安全威胁6: 不怀好意的“临时工”
第六大威胁是不怀好意的内部人员,这些人可能是在职或离任的员工、合同工或者业务合作伙伴。他们会不怀好意地访问网络、系统或数据。在云服务设计不当的场景下,不怀好意的内部人员可能会造成较大的破坏。从基础设施即服务(IaaS)、平台即服务(PaaS)到软件即服务(SaaS),不怀好意的内部人员拥有比外部人员更高的访问级别,因而得以接触到重要的系统,最终访问数据。
安全威胁7:滥用云服务
第七大安全威胁是云服务滥用,比如坏人利用云服务破解普通计算机很难破解的加密密钥。另一个例子是,恶意黑客利用云服务器发动分布式拒绝服务攻击、传播恶意软件或共享盗版软件。
安全威胁8:贸然行事
第八大云计算安全威胁是调查不够充分,也就是说,企业还没有充分了解云计算服务商的系统环境及相关风险,就贸然采用云服务。因此,企业进入到云端需要与服务提供商签订合同,明确责任和透明度方面的问题。此外,如果公司的开发团队对云技术不够熟悉,就把应用程序贸然放到云端,可能会由此出现运营和架构方面的问题。
安全威胁9:共享隔离问题
最后,CSA将共享技术的安全漏洞列为云计算所面临的第九大安全威胁。云服务提供商经常共享基础设施、平台和应用程序,并以一种灵活扩展的方式来交付服务。
⑽ “cs”是什么专业的简称
"cs"是Computer Science的简称。