导航:首页 > 网络连接 > cmu计算机网络实验

cmu计算机网络实验

发布时间:2022-08-07 04:55:31

① 卡内基梅隆大学计算机专业都有什么

1、计算机科学学院 (School of Computer Science, SCS)

该院下设七个部门或机构,分别为计算生物学部门(Computational Biology Department),计算机科学部门(Computer Science Department),人机交互研究所(Human-Computer Interaction Institute),软件研究所(Institute for Software Research),语言技术研究所(Language Technologies Institute, LTI),机器学习部门(Machine Leaning Department)及机器人研究所(Robotics Institute),是美国少数几个将计算机科学专业独立成院的大学之一,是全美乃至全世界最大的计算机学院。该院可授予学士、硕士、博士学位,课程有数学、物理、计算机硬件、软件工程、计算技巧、人工智能、心理学、程序设计、机器人等。

2、卡内基工学院(Carnegie Institute of Technology)

该院由7个系组成:生物医学工程系、化学工程系、土木与环境工程系、电子与计算机工程系、工程与公共政策系、机械工程系、材料科学与工程系;以及两个研究所,分别是信息网络研究所和复杂工程化系统研究所。普通课程包括高等数学、物理、化学等课程外,专业课程有化学工程热力学、化学工艺流程控制、结构力学、工程设计与制作、线性代数、电磁学、电子器件及电路、模拟电路分析与设计、电子与计算机工程、流体力学、热传导学、气动力学、材料学、塑性材料、电学电磁学和光学、生理学、现代生物学、生物化学、物理化学、决策分析等等课程。[13]

3、艺术学院(College of Fine Arts)

卡内基梅隆大学拥有全美名列前十的艺术学院。它培养的学生从建筑设计到表演艺术和视听艺术等广泛领域,由建筑系、艺术系、设计系、戏剧系、音乐系组成。其平面设计、工业设计、建筑设计等专业在全美均处于顶尖水平。

4、Tepper 商学院(Tepper School of Business)

该院不仅仅从事本科生的培养,同时也培养硕士、博士甚至更高级的人员;下设工业管理系。

5、Dietrich 人文和社会科学学院 (Dietrich College of Humanities and Social Sciences)

该院下设经济系、英语系、历史系、哲学系、心理学系、社会和决策学系、统计系。

6、梅隆理学院 (Mellon College of Science, MCS)

该院下设生物科学系、化学系、数学系和物理系,其课程包括物理、数学、化学、生物物理、生物化学、物理化学、统计学、分子生物学等等。

7、海因茨公共政策与管理学院 (H. John Heinz III College)

提供若干在公共政策与管理、医疗政策与管理、生物科技与管理、公共管理、艺术管理、娱乐产业管理、信息系统管理、信息技术、信息安全政策和管理方面的硕士课程。该院也提供一些博士课程。

8、软件工程研究院(Software Engineering Institute)

卡内基梅隆大学的软件工程专业遥遥领先于其它名校,它的软件工程研究院是美国国防部军管研究院。

② 卡内基梅隆大学计算机专业怎么

卡内基梅隆(CMU)作为全美乃至世界顶级的研究型大学,它是国外大学为数不多的将计算机科学单独作为一个学院的院校,各大排名机构将其的计算机科学专业与 MIT、斯坦福、加州伯克利等名校并列世界第一,可见其计算机水平之强。
CMU的计算机专业分布很广,除了计算机科学学院(School of Computer Science, CMU 以下简称SCS)中占了大部分之外,还有卡内基工程学院(CIT)有一些与计算机相关的交叉学科。因为SCS的各个组成机构的研究方向有关联甚至有有交叉的,具体机构可以在所附的网址中找到,不严谨地说,你能想到的计算机方面的研究它基本都有,当然它还有许多你闻所未闻的十分前沿研究方向。CMU的软件工程是世界顶级水准的专业,其次非常牛的专业是人工智能,但与MIT的EECS系不同的是,CMU的计算机“偏软”,可能只有其研究机器人方向的研究生还会学习那几门硬件方面的课程。有人曾经对比过如前所述与CMU其名的院校计算机专业间的区别(具体网址忘记了,问问度娘应该可以找到的)其中提到了CMU是属于面向对象式的教学风格,学校力图让学生不分心于具体硬件而注重程序设计(特别是面向对像程序设计)和软件系统相关的构建。
详情可参照http://www.eglobal.com/usa/Article/80753/

③ 中国医科大学校园网CMU 网络会限速吗

不会被限速。中国医科大学校园网络是学校重要基础设施之一,是教学、科研、医疗和管理工作的重要工具。校园网络的宗旨是为中国医科大学的教学、科研、医疗和管理工作服务,所以不会限速。且中国医科大学校园网络是非赢利性质的学术性计算机网络,要靠用户、院系部门、学校三方面的支持来运行。资源共享是我校校园网络的基本使用原则,用户有义务在网上提供可公开的资源,用户也有权利使用网上提供的所有开放的资源。为加强校园网络的管理,保证校园网络的良性运行和健康发展,学校会制定相关规定,但是不会限速。

④ 卡梅信息网络研究所(CMU INI)的学术氛围怎么样

卡内基梅隆大学作为世界着名学府,计算机和信息相关学科在世界排名非常靠前,培养出非常多的人才,教学水平自然不用说。加上学校鼓励学生打破传统学科的束缚,在交叉学科领域探索和研究,学术氛围也很好。
另外,因为采用了学生提问--助教/老师答疑的Piazza系统,对于师生间的互动和学习的灵活性也有很大的帮助。

⑤ 国内有没有和CMU的NELL一样的关系数据可供研究的

Stanford(斯坦福)的CS是个很大的CS,拥有40人以上的资深教员,其中不乏响当当硬梆梆的图灵奖得主(EdwardA.Feigenbaum,JohnMcCarthy)和各个学科领域的大腕人物,比如理论方面的权威DonaldE.Knuth;数据库方面的大牛JeffreyD.Ullman(他还写过那本着名的编译原理,此人出自Princeton);以及RISC技术挑头人之一的JohnHennessy。相信CS的同学对此并不陌生。该系每年毕业30多名Ph.D.以及的Master。学生的出路自然是如鱼得水,无论学术界还是工业界,Stanford的学生倍受青睐。几乎所有前十的CS中都有Stanford的毕业生在充当教授。当然同样享有如此地位的还包括其他三头巨牛:UC.Berkeley,MIT和CMU。毕业于U.ofUtah的JimClark曾经在StanfordCS当教授。后来就是这个人创了高性能计算机和科学计算可视化方面巨牛的SGI公司。SUN公司名字的来历是:StanfordUniversityNetwork.。顺便提一下,创YAHOO的华人杨致远曾在斯坦福的EE攻读博士,后来中途辍学了YAHOO。CS科研方面,斯坦福无论在理论、数据库、软件、硬件和AI等各个领域都是实力强劲的顶级高手。斯坦福的RISC技术后来成为SGI/MIPS的Rx000系列微处理器的核心技术;DASH,FLASH项目更是多处理器并行计算机研究的前沿;SUIF并行化编译器成为国家资助的重点项目,在国际学术论文中SUIF编译器的提及似乎也为某些平庸的论文平添几分姿色。Stanford有学生14000多,其中研究生7000多。CS有175人攻读博士,350人攻读硕士,每年招的学生数不详,估计少不了,但不要忘了,每年申请CS的申请学生接近千人。申请费高达90$。斯坦福大学位于信息世界的心脏地带———硅谷。加州宜人的气候,美丽的风景使得Stanford堪称CS的天堂。33.1平方公里的校园面积怕是够学子们翻江蹈海、叱咤风云的了。申请斯坦福是很难成功的,但也并非不可为之。去斯坦福这样的牛校,运气很重要,牛人的推荐也很重要。附:总的来说,前20的CS可以分成三波:一、4个最为优秀的CSProgram?Stanford,UC.Berkeley,MIT,CMU二、6个其他前十的:UIUC,Cornell,U.ofWashington,Princeton,U.ofTexas-Austin和U.ofWisconsin-Madison,其中UIUC,Cornell,U.ofWashington和UW-Madison几乎从未出过前十名。三、其他非常非常优秀的CS:CalTech,U.ofMarylandatCP,UCLA,Brown,Harvard,Yale,GIT,Pure,Rice,和U.ofMichigan.(注:CS=计算机科学系)自20世纪40年代世界第一台现代计算机在美国诞生以来,美国一直执全球计算机学界之牛耳,这同时也是美国计算机产业界占据绝对优势的重要原因之一。我们引进的教材中绝大多数也都来自美国。计算机学科仍然在高速发展,与此对应的计算机人才培养模式也在不断变化,密切关注和跟踪国外尤其是美国名校的教学新动态,应该是非常有意义的。本文即选择了美国计算机学科最负盛名的五所高校,对目前各校计算机科学(ComputerScience)专业的本科教学体系进行了一些分析。斯坦福大学斯坦福大学拥有独立的计算机科学系。浏览该校的教学手册,最具特色的恐怕要算多门科普性计算机知识讲座了,一般有两到三个单元,涉及面非常之广,从量子计算到数字演员,从计算科学的伟大思想到网络安全,从网上拍卖到使用元编译发现大型开放源代码软件中的大量错误,其中还不乏对技术乌托邦、斯诺“两种文化”、计算机面临的困境以及迅速发展所带来的诸多问题的思考。开课的老师阵容强大,基本上都是响当当的名教授,甚至包括图灵奖得主JohnMcCarthy。用这种讲座代替计算机科学导论性质的专门课程,可以充分展示计算机科学的丰富内涵,使学生较早地了解学科的轮廓和脉络,对于开阔学生视野,启发学生的学习兴趣也大有好处。由于美国大学中专业的选择非常灵活,而近年来计算机学科招生受行业影响流失严重(这种情况甚至惊动了比尔·盖茨,今年微软到各大高校招兵买马时,他每站必到,利用自己的明星效应,大讲计算机学科的美妙前景),可以想象,这种讲座同样也肩负着吸引学生选择计算机专业的重大使命。斯坦福大学典型的低年级课程设置如表1所示。表1斯坦福大学低年级主要课程设置数学(至少23个单元)数学41(课程号,下同)微积分I5数学42微积分II5统计116概率论3~5计算机103离散结构4或6以下任选两门:数学51微积分5数学103/113线性代数3数学109应用群论3计算机157逻辑和自动推理4计算机205机器人、视觉和图形学数学方法3科学(至少11个单元)物理53力学4物理55电磁学4其他工程基础(至少13个单元)计算机106程序设计抽象/方法学5工程40电子学基础5选修课技术与社会(3~5个单元)进一步的课程设置如表2所示。表2斯坦福大学高年级主要课程设置程序设计(2门课)计算机107(课程号,下同)程序设计范型5计算机108面向对象系统设计4理论(2门课)计算机154自动机与复杂性理论4计算机161算法的设计与分析4系统(3门课)电子电气108B或282数字系统或计算机体系结构4计算机编译原理3计算机计算机网络3计算机操作系统3应用(选2门课)计算机人工智能3~4计算机数据库3计算机图形学3项目(1门课)计算机至少3个单元限选课(多门)加州大学伯克利分校伯克利的课程设置也有很多独树一帜的地方,尤其是在专业基础课方面,除了有专业导引课程“计算机科学专题”之外,对于没有编程经验的学生,第一门编程课是符号编程入门,采用LISP语言。有一定编程经验或者有自学能力的学生,可以选择多种语言和环境的自主学习(Self-paced)课程,包括C、Fortran、C++、Java,以及UNIX的使用等,这种多元化与伯克利计算机科学与电子电气工程同系有关。但是所有学生在第二学期都要学习一组独特的基础课:61A“计算机程序的结构与解释”,采用MITAbelson等编着的同名教材(中译本机械工业出版社出版,清华大学出版社出版了影印版);61B“数据结构”(教材采用自编讲义);61C“计算机结构”(MachineStructures),采用Hennessy的《计算机组织与设计》(中译本清华大学出版社出版,机械工业出版社出版了影印版)。这项规定就是转校生也不例外,可见其中蕴涵了伯克利多年的教学经验结晶。伯克利其他比较有特点的课程还有:将离散数学和概率论结合讲授的CS70,主讲是名教授ChristosPapadimitriou;CS98-1编程练习课,以主要大学生编程竞赛中的赛题为授课素材;CS169软件工程直接用KentBeck的《极限编程》(人民邮电出版社出版了中译本)作为教材,非常超前,但是既然连Pressman的《软件工程:实践者方法》新版中敏捷方法都已经成为重头戏,既然IEEE都已经开始制定敏捷方法相关标准,这种课程选材也就不显得那么骇世惊俗了。除了软件工程课程常见内容外,教学侧重实际,贯穿了极限编程的思想,涵盖UML、JUnit单元测试、软件架构、设计模式和反模式、重构、CVS版本控制、系统和集成测试,最后要求完成一个实际产品,并进行演示。UIUC(伊利诺依大学厄巴尼-香槟分校)UIUC的计算机科学专业创建于1972年,到1986年基本定型,十多年来几乎没有什么变化。其教学体系如图1所示。图1UIUC改革前的计算机科学课程体系其中,数值分析方向课程中,Math225为矩阵论,CS257为数值方法,CS35x代表数值分析导论、常微分数值方法、偏微分与数值逼近和数值线性代数;理论方向课程中,CS173为离散结构,CS273为计算理论,CS37x包括算法、形式方法、程序验证;人工智能方向课程中,CS348为人工智能导论,CS34x包括机器人、机器学习与模式识别;软件方向,CS125为计算机科学导论,CS225为数据结构与软件工程原理,CS31x包括数据库、图形学、多媒体,CS32x包括软件工程、操作系统设计、分布式系统、编程语言与编译器、并行计算、实时系统、编译器构造、编程语言设计;硬件方向课程中,CS231为计算机体系结构I,CS232为计算机体系结构II,CS33x包括计算机组成、VLSI系统与逻辑设计、VLSI系统设计、通信网络、嵌入式体系架构与软件。可以看到,处在图1中最下面的课程基本上都是在多门中选择一至三门,整个体系脉络清晰,具有很高的灵活性。与斯坦福不同的是,UIUC的计算机科学导论课程比较简单,只有一门为新生开的计算机科学导向课(CS100),而且并非必修。名为“计算机科学导论”的CS125实际上是以Java语言为主的编程入门课,涵盖了一些算法的内容。此外还有与之配套的实验课。当然,系里所开的许多面向高年级和研究生层次的讲座是对低年级开放的。2003年,在工程院院长DavidDaniel的倡导下,计算机系对教学计划进行了改革,以反映目前社会、行业和技术的发展趋势。主要的变化有:*在必修要求中增加了两门编程课:CS241系统编程,采用GaryNutt的《操作系统》作为主教材,Stevens的《Unix环境高级编程》作为编程教材;CS242程序设计实验(ProgrammingStudio),教学大纲基本上以Kernighan的《程序设计实践》为蓝本(以上教材机械工业出版社均出版了中译本和影印版)。*必修要求中增加了一年的高级项目,强调团队合作和软件工程实践,包括文档写作、口头表达、项目规划与管理等,实际上是在实践中学习软件工程。这门课也可以用两学期的软件工程或者一年的高级论文代替。仍然充分保留了灵活性,有利于因材施教。*增加了CS173离散结构的学时,部分原CS273的内容移到这里,同时CS273又新增了原CS375的内容。这实际上是提高了对计算机理论的要求。CMU(卡内基梅隆大学)与MIT、伯克利等学校计算机科学仍然和电子与电气工程同处一系不同,CMU的计算机科学系成立于1965年,是全美最早的,如今它已经升格为计算机科学学院。其研究生项目中除了机器人方向与硬件关系较多之外,其他基本上都是纯软的。从这个意义上来说,CMU的教学体系对于偏软的计算机科学系应该有较大的借鉴意义。CMU的教学手册上没有从传统意义上针对计算机科学专业学生的导论课,虽然有名为“计算机科学伟大思想”的两学期课程,但是从内容上看应该是离散数学的替代,因为此外CMU并没有其他离散数学方面的课程。此课程没有教材,内容比传统离散数学要灵活得多,涉及概率、代数、算法、加密理论、复杂性理论、博弈论等,非常注重学习的趣味性和实用性。与其他名校相同,CMU对程序设计的重视也给人留下很深印象:本土新生的第一堂课就是“初中级程序设计”,直接讲授Java。然后是中高级程序设计(Java)、C语言编程技巧、高级编程实践(Java)、程序设计原理(用SML语言讲授)。目前计算机科学专业教学计划中的一个难点,是硬件课程的设置问题。硬件知识体系本身非常丰富,但是硬件课程多了,又削弱了计算机科学专业的特色。CMU在这一问题上是怎样处理的呢?计算机科学学院的现任院长RandalE.Bryant亲自给出了回答,他用15~213“计算机系统导论”一门课(12个单元)完成了硬件知识的教学。这项教学改革的成果就是一本厚达900多页的书:《ComputerSystems:AProgrammer'sPerspective》(中译本《深入理解计算机系统》已经由中国电力出版社出版)一书。他在该书的序言中说:“本课程的宗旨是用一种不同的方式向学生介绍计算机。因为,我们的学生中几乎没有人有机会构造计算机系统。而大多数学生,甚至是计算机工程师,也要求能日常使用计算机和编写计算机程序。所以我们决定从程序员的角度来讲解系统,并采用这样的过滤方法:我们只讨论那些影响用户级C程序的性能、正确性或实用性的主题。比如,我们排除了诸如硬件加法器和总线设计这样的主题。虽然我们谈及了机器语言,但是不关注如何编写汇编语言,而是关心编译器怎样翻译C的各种构造,比如指针、循环、过程调用和返回,以及switch语句。更进一步,我们将更广泛和现实地看待系统,包括硬件和系统软件,讨论链接、加载、进程、信号、性能优化、评估、I/O以及网络与并发编程。这种做法使得我们讲授本课程的方式对学生来讲既实用、具体,又能实践,同时也非常利于调动学生的积极性。”网站上的一些随书配套实验,也独具匠心。因此此书的成功是水到渠成的。根据配套网站上的列表,它已经被全球80多所院校采用作为教材。MIT(麻省理工学院)MIT的课程设置,只能用其学生起点高来解释。该校没有典型意义上的计算机科学专业,偏软的只有理论计算机科学和人工智能及其应用两个专业。因此没有类似于其他学校的导论课程。在MIT的电子电气工程与计算机科学系中,所有学生都要参加如下四门课程:6.001“计算机程序的结构与解释”,当然与伯克利相同,采用的是Abelson等编着的同名教材;6.002“电路与电子学”;6.003“信号与系统”(自编讲义);6.004“计算结构”(ComputationStructures),与伯克利的61C“计算机结构”对等(教材是自编课件)。此外有两门专业基础数学课:“概率系统分析”(教授自编教材)和“计算机科学数学”,后者的教材是国外院校普遍采用的Rosen所着《离散数学及其应用》(中文版由机械工业出版社出版)。对MIT的学生而言,实验课程有多种选择:电气工程和计算机科学实验,模拟电子实验,数字系统实验,微机项目实验,半导体设备项目实验。此外,无论何种专业,都有软件工程实验课。值得注意的是,本科生各专业的必修课程中并没有软件工程课程。也就是说,软件工程的内容都在实践中完成了。带软件工程实验课的是因为提出Liskov替换原则而知名的女教授BarbaraLiskov,她刚刚获得了2004年度的冯·诺依曼奖。作为美国工程院和艺术科学院的双院士,她几十年在软件开发研究方面的经验,将有力地保证这门实验课程的质量

⑥ 黑客故事之早期的黑客是如何诞生的

学院技术模型铁路俱乐部(Tech Model Railroad Club,TMRC) 的信号动力委员会(Signals and Power Committee,S&P)把它作为最时髦的科技玩具,并由此产生了许多程序设计工具、术语、和整个文化氛围——这些,直到今日我们仍然依稀可辨。史蒂文·利维(Steven Levy)在《黑客》(Hackers)的第一部分中详细的记录了这段岁月。
“黑客”这个词汇最早出现在麻省理工学院的计算机文化中。TMRC中的黑客,日后成为了MIT人工智能实验室的核心成员,而该实验室直到80年代早期都一直主导着全世界的人工智能研究。从ARPAnet诞生的第一年,1969年开始,他们的影响力便不断的扩大。
ARPAnet是第一条横贯(美国)大陆的高速计算机网络,由美国国防部出资兴建。作为一实验性的数据通讯网络,它将数以百计的大学、国防部分包商、研究机构连接在一起。各地的研究人员能以史无前例的速度和弹性交换信息,它为协同工作带来了巨大推进,并使得科技创新突飞猛进。
ARPAnet还有另一项好处,它将散落在全美国的黑客汇聚到一起,一改往日局面——几个独居一隅的小组各自发展朝生暮死的本地文化。他们发现(或觉察到)自己置身于一个网络部族之中。
黑客文化的第一批史前遗存——第一批术语表、第一批讽刺文学、关于黑客伦理的自发讨论——凡此种种都萌生在ARPAnet的早期岁月中。特别是在1973年到1975年,通过网络协作我们完成了“黑客字典”(Jargon File)的第一版,这个术语辞典成了一份黑客文化的定义文档。终于在1983年以《黑客辞典》之名付梓刊印了。虽然该书已经绝版了,但是我们现在有了经过修正和扩充的《新黑客辞典》。
黑客道在那些连接到网络的大学中绽放,特别(并非绝对)是在计算机科学部门中。60年代末,首先由麻省理工学院人工智能和计算机实验室领军,斯坦福大学人工智能实验室(SAIL)和卡内基梅隆大学(CMU)紧随其后。这些兴旺的计算机科学以及人工智能实验室吸引到无数人才,他们都对黑客文化作出了伟大的贡献——无论是创造技术还是传说。
为了了解日后的故事,我们有必要先看看电脑本身。因为无论是人工智能实验室的升腾还是最终的陨落,都取决于计算机科技变幻的波涛。
从PDP-1型开始,黑客道的命运就紧紧的和DEC(Digital Equipment Corporation,迪吉多)的PDP系列微型机交织在一起了。DEC可谓是交互计算和分时系统的商业先驱。由于其灵活、强大和比同行便宜的特点,被很多大学所采用。
廉价的分时操作系统是黑客文化成长的中继,ARPAnet生命的大部分时间都被DEC机器编织的网络占据了。其中最重要是在1967年首次推出的PDP-10型,它受到黑客道的青昧长达十五年之久。TOPS-10 (DEC为这个机型开发的操作系统)和MACRO-10 (它的汇编程序)至今还能在许多术语和传说中泛起记忆的涟漪。
麻省理工学院虽然像大家一样采用PDP-10,却试图独辟蹊径。他们不屑于使用DEC开发的操作系统,而是打算自己编一个——传说中的ITS。
ITS是IncompatibleTime-sharing System(不兼容分时系统)的缩写,这个名称也正是MIT黑客姿态的写照(技术上,这是对其前辈“兼容分时系统”的戏谑,CompatibleTime-Sharing System, CTSS)。他们就是要自成一派。很幸运,这群人并非“夜郎自大”。尽管ITS通常离奇古怪并与错误相伴,但是这不足以遮盖许多技术创新的光芒,而且ITS至今还是分时系统单次运行时间最长记录的保持者。
ITS本身是用汇编语言写成的,但是其许多项目却采用了一种人工智能语言——LISP。当时,LISP可算得上是同类语言中最强大灵活的了。而且即使在二十五年后的今天,它也拥有比大多数语言出色的设计。LISP让ITS黑客们可以异想天开,是促成他们成功的主要原因,也是黑客道至今衷爱的语言之一。
许多ITS文化中的科技创造沿用至今,其中最着名的恐怕要数EMACS程序编辑器了。如同你在“黑客辞典”中看到的一样,许多ITS的传说还在黑客坊间流传。
SAIL和CMU当然也没闲着。许多在SAIL的PDP-10环境下成长起来的黑客,日后成为我们今天个人电脑中“窗口/图标/鼠标”软件界面领域的巨擘。而CMU的黑客则主导了专家系统和工业机器人技术的首次大规模应用。
另一个文化重镇是施乐的PARC——着名的帕洛阿尔托研究中心(Palo Alto Research Center)。在70年代初到80年代中期这十余年的时间里,PARC破天荒般的创造了数量惊人的软件和硬件。我们今天接触到的软件界面风格(包括窗口、鼠标、图标)就源自这里。当然,还有激光打印机和局域网。PARC在个人电脑出现(80年代)的十年前就开发出了可以与之一较短长的D系列机型。遗憾的是,“先知们”没有得到自家公司的赏识。以至于PARC成了一个笑柄——“那是为别人生产优秀创意的地方”。然而不可否认PARC对黑客道的影响是普遍而深入的。
贯穿70年代,ARPAnet和PDP-10文化变得愈发强大而多变。小巧的电子邮件列表,将各地具有独特爱好的人凝聚在一起。出现了越来越多的“小组”,而且延伸到了社交和娱乐领域。DARPA(美国国防部高级研究计划署)对所有“未授权”的技术活动睁一只眼闭一只眼。因为他们知道,与将一代睿智的年青人引入计算机领域相比,这点额外的开销简直微不足道。
最着名的“社交”ARPAnet邮件列表恐怕要数科幻小说迷建立的SF-LOVERS了。它至今都很活跃,实际上今天更广阔的“因特网”是由ARPAnet演化而成的。不及如此,这种对通讯模式的开拓,日后会被一些牟利性分时服务商推向商业化。比如CompuServe, GEnie 和Prodigy (而最终被AOL掌控)。
你的历史学家是在1977年通过ARPAnet和科幻小说圈初涉黑客文化的。在那之后的诸多变迁(也是我将叙述的),都是我亲身参与和见证的。

⑦ 留学美国大学本科计算机系需要什么条件

20 世纪40年代世界第一台现代计算机在美国诞生以来,美国一直执全球计算机学界之

牛耳,这同时也是美国计算机产业界占据绝对优势的重要原因之一。我们成批量地引进
的国外众多优秀教材绝大多数也都来自美国。计算机学科仍然在高速发展,与此对应的
计算机人才培养模式也在不断变化,密切关注和跟踪国外尤其是美国名校的教学新动态
乃至培养思路和教育思想,应该是非常有意义的。
本文即选择了美国计算机学科最负盛名的五所高校,对目前各校计算机科学(Computer
Science)专业的本科教学体系进行了一些分析。

斯坦福大学

斯坦福大学拥有独立的计算机科学系。浏览该校的教学手册,最具特色的恐怕要算多门
科普性计算机知识讲座了,一般有两到三个单元,涉及面非常之广,从量子计算到数字
演员,从计算科学的伟大思想到网络安全,从网上拍卖到使用元编译发现大型开放源代
码软件中的大量错误,其中还不乏对技术乌托邦、斯诺“两种文化”、计算机面临的困
境以及迅速发展所带来的诸多问题的思考。开课的老师阵容强大,基本上都是响当当的
名教授,甚至包括图灵奖得主John McCarthy。用这种讲座代替计算机科学导论性质的专

门课程,可以充分展示计算机科学的丰富内涵,使学生较早地了解学科的轮廓和脉络,
对于开阔学生视野,启发学生的学习兴趣也大有好处。由于美国大学中专业的选择非常
灵活,而近年来计算机学科招生受行业影响流失严重(这种情况甚至惊动了比尔·盖茨,

2004年微软到各大高校招兵买马时,他每站必到,利用自己的明星效应,大讲计算机学

科的美妙前景),可以想象,这种讲座同样也肩负着吸引学生选择计算机专业的重大使命



斯坦福大学典型的低年级课程设置如表1所示。

表1 斯坦福大学低年级主要课程设置

数学(至少23个单元)

数学 41(课程号,下同) 微积分 I 5

数学 42 微积分 II 5

统计 116 概率论 3~5

计算机 103 离散结构 4或6

以下任选两门:

数学 51 微积分 5

数学 103/113 线性代数 3

数学 109 应用群论 3

计算机 157 逻辑和自动推理 4

计算机 205 机器人、视觉和图形学数学方法 3

科学(至少11个单元)

物理 53 力学 4

物理 55 电磁学 4

其他

工程基础(至少13个单元)

计算机 106 程序设计抽象/方法学 5

工程 40 电子学基础 5

选修课

技术与社会(3~5个单元)

进一步的课程设置如表2所示。

表2 斯坦福大学高年级主要课程设置

程序设计(2门课)

计算机 107(课程号,下同) 程序设计范型 5

计算机 108 面向对象系统设计 4

理论(2门课)

计算机 154 自动机与复杂性理论 4

计算机 161 算法的设计与分析 4

系统(3门课)

电子电气 108B或282 数字系统或计算机体系结构 4

计算机 编译原理 3

计算机 计算机网络 3

计算机 操作系统 3

应用(选2门课)

计算机 人工智能 3~4

计算机 数据库 3

计算机 图形学 3

项目(1门课)

计算机 至少3个单元

限选课(多门)

加州大学伯克利分校

伯克利的课程设置也有很多独树一帜的地方,尤其是在专业基础课方面,除了有专业导
引课程“计算机科学专题”之外,对于没有编程经验的学生,第一门编程课是符号编程
入门,采用LISP语言。有一定编程经验或者有自学能力的学生,可以选择多种语言和环
境的自主学习(Self-paced)课程,包括C、 Fortran、C++、Java,以及UNIX的使用等,
这种多元化与伯克利计算机科学与电子电气工程同系有关。但是所有学生在第二学期都
要学习一组独特的基础课:61A“计算机程序的结构与解释”,采用MIT Abelson等编着
的同名教材(中译本机械工业出版社出版,清华大学出版社出版了影印版);61B“数据结

构”(教材采用自编讲义);61C“计算机结构”(Machine Structures),采用Hennessy的

《计算机组织与设计》(中译本清华大学出版社出版,机械工业出版社出版了影印版)。
这项规定就是转校生也不例外,可见其中蕴涵了伯克利多年的教学经验结晶。

伯克利其他比较有特点的课程还有:将离散数学和概率论结合讲授的CS70,主讲是名教
授 Christos Papadimitriou;CS98-1 编程练习课,以主要大学生编程竞赛中的赛题为
授课素材;CS 169 软件工程直接用Kent Beck的《极限编程》(人民邮电出版社出版了中

译本)作为教材,非常超前,但是既然连Pressman的《软件工程:实践者方法》新版中敏

捷方法都已经成为重头戏,既然IEEE都已经开始制定敏捷方法相关标准,这种课程选材
也就不显得那么骇世惊俗了。除了软件工程课程常见内容外,教学侧重实际,贯穿了极
限编程的思想,涵盖UML、JUnit单元测试、软件架构、设计模式和反模式、重构、CVS版

本控制、系统和集成测试,最后要求完成一个实际产品,并进行演示。

UIUC(伊利诺依大学厄班纳-香槟分校)

UIUC的计算机科学专业创建于1972年,到1986年基本定型,十多年来几乎没有什么变化
。其教学体系如图1所示。

图1 UIUC改革前的计算机科学课程体系

其中,数值分析方向课程中,Math225为矩阵论,CS257为数值方法,CS35x代表数值分析

导论、常微分数值方法、偏微分与数值逼近和数值线性代数;

理论方向课程中,CS173为离散结构,CS273为计算理论,CS37x包括算法、形式方法、程

序验证;

人工智能方向课程中,CS348为人工智能导论,CS34x包括机器人、机器学习与模式识别


软件方向,CS125为计算机科学导论,CS225为数据结构与软件工程原理,CS31x包括数据

库、图形学、多媒体,CS32x包括软件工程、操作系统设计、分布式系统、编程语言与编

译器、并行计算、实时系统、编译器构造、编程语言设计;

硬件方向课程中,CS231为计算机体系结构I,CS232为计算机体系结构II,CS33x包括计
算机组成、VLSI系统与逻辑设计、VLSI系统设计、通信网络、嵌入式体系架构与软件。

可以看到,处在图1中最下面的课程基本上都是在多门中选择一至三门,整个体系脉络清

晰,具有很高的灵活性。与斯坦福不同的是,UIUC的计算机科学导论课程比较简单,只
有一门为新生开的计算机科学导向课(CS100),而且并非必修。名为“计算机科学导论”

的CS125实际上是以Java语言为主的编程入门课,涵盖了一些算法的内容。此外还有与之

配套的实验课。当然,系里所开的许多面向高年级和研究生层次的讲座是对低年级开放
的。

2003年,在工程院院长David Daniel的倡导下,计算机系对教学计划进行了改革,以反
映目前社会、行业和技术的发展趋势。主要的变化有:

* 在必修要求中增加了两门编程课:CS241 系统编程,采用Gary Nutt的《操作系统》作

为主教材,Stevens的《Unix环境高级编程》作为编程教材;CS242 程序设计实验(Progr

amming Studio),教学大纲基本上以Kernighan的《程序设计实践》为蓝本(以上教材机
械工业出版社均出版了中译本和影印版)。

* 必修要求中增加了一年的高级项目,强调团队合作和软件工程实践,包括文档写作、
口头表达、项目规划与管理等,实际上是在实践中学习软件工程。这门课也可以用两学
期的软件工程或者一年的高级论文代替。仍然充分保留了灵活性,有利于因材施教。

* 增加了CS173 离散结构的学时,部分原CS273的内容移到这里,同时CS273又新增了原C

S375的内容。这实际上是提高了对计算机理论的要求。

* 在专业课程中增加了数据挖掘、信息检索和高级图形学。

CMU(卡内基梅隆大学)

与MIT、伯克利等学校计算机科学仍然和电子与电气工程同处一系不同,CMU的计算机科
学系成立于1965年,是全美最早的,如今它已经升格为计算机科学学院。其研究生项目
中除了机器人方向与硬件关系较多之外,其他基本上都是纯软的。从这个意义上来说,C

MU的教学体系对于偏软的计算机科学系应该有较大的借鉴意义。

CMU 的教学手册上没有从传统意义上针对计算机科学专业学生的导论课,虽然有名为“
计算机科学伟大思想”的两学期课程,但是从内容上看应该是离散数学的替代,因为此
外CMU并没有其他离散数学方面的课程。此课程没有教材,内容比传统离散数学要灵活得

多,涉及概率、代数、算法、加密理论、复杂性理论、博弈论等,非常注重学习的趣味
性和实用性。

与其他名校相同,CMU对程序设计的重视也给人留下很深印象:本土新生的第一堂课就是

“初中级程序设计”,直接讲授Java。然后是中高级程序设计(Java)、C语言编程技巧、

高级编程实践(Java)、程序设计原理(用SML语言讲授)。

目前计算机科学专业教学计划中的一个难点,是硬件课程的设置问题。硬件知识体系本
身非常丰富,但是硬件课程多了,又削弱了计算机科学专业的特色。CMU在这一问题上是

怎样处理的呢?计算机科学学院的现任院长Randal E. Bryant 亲自给出了回答,他用15

~213“计算机系统导论”一门课(12个单元)完成了硬件知识的教学。这项教学改革的成

果就是一本厚达900多页的书:《Computer Systems: A Programmer's Perspective》(
中译本《深入理解计算机系统》已经由中国电力出版社出版)一书。他在该书的序言中说



“本课程的宗旨是用一种不同的方式向学生介绍计算机。因为,我们的学生中几乎没有
人有机会构造计算机系统。而大多数学生,甚至是计算机工程师,也要求能日常使用计
算机和编写计算机程序。所以我们决定从程序员的角度来讲解系统,并采用这样的过滤
方法:我们只讨论那些影响用户级C程序的性能、正确性或实用性的主题。

比如,我们排除了诸如硬件加法器和总线设计这样的主题。虽然我们谈及了机器语言,
但是不关注如何编写汇编语言,而是关心编译器怎样翻译C的各种构造,比如指针、循环

、过程调用和返回,以及switch语句。更进一步,我们将更广泛和现实地看待系统,包
括硬件和系统软件,讨论链接、加载、进程、信号、性能优化、评估、I/O以及网络与并

发编程。

这种做法使得我们讲授本课程的方式对学生来讲既实用、具体,又能实践,同时也非常
利于调动学生的积极性。”

网站上的一些随书配套实验,也独具匠心。因此此书的成功是水到渠成的。根据配套网
站上的列表,它已经被全球80多所院校采用作为教材。

MIT(麻省理工学院)

MIT的课程设置,只能用其学生起点高来解释。该校没有典型意义上的计算机科学专业,

偏软的只有理论计算机科学和人工智能及其应用两个专业。因此没有类似于其他学校的
导论课程。

在MIT 的电子电气工程与计算机科学系中,所有学生都要参加如下四门课程:6.001“计

算机程序的结构与解释”,当然与伯克利相同,采用的是Abelson等编着的同名教材;6.

002“电路与电子学”;6.003“信号与系统”(自编讲义);6.004 “计算结构”(Comput

ation Structures),与伯克利的61C“计算机结构”对等(教材是自编课件)。此外有两
门专业基础数学课:“概率系统分析”(教授自编教材)和“计算机科学数学”,后者的
教材是国外院校普遍采用的Rosen所着《离散数学及其应用》(中文版由机械工业出版社
出版)。

对MIT的学生而言,实验课程有多种选择:电气工程和计算机科学实验,模拟电子实验,

数字系统实验,微机项目实验,半导体设备项目实验。此外,无论何种专业,都有软件
工程实验课。值得注意的是,本科生各专业的必修课程中并没有软件工程课程。也就是
说,软件工程的内容都在实践中完成了。带软件工程实验课的是因为提出Liskov 替换原

则而知名的女教授Barbara Liskov,她刚刚获得了2004年度的冯·诺依曼奖。作为美国
工程院和艺术科学院的双院士,她几十年在软件开发研究方面的经验,将有力地保证这
门实验课程的质量。

分析与总结

由上面的材料可以看出,各个学校的教学体系之间还是有不小差异的。这首先得归因于
历史沿革形成的专业侧重、机构设置上的不同。其中MIT算是一极,由于和电子电气专业

深深地融合,计算机专业带有很强的“硬派”色彩。而CMU可以算作另一极,计算机科学

有自己的独立学院,非常罕见,因此它的课程设置“软化严重”——与硬件相关的只用
一门课就解决了。UIUC和斯坦福由于都拥有独立的科系,所以可以归入后一阵营。伯克
利可以认为处于两极中间,但是仔细分析起来,它的计算机科学专业目前虽然仍属于电
子电气和计算机科学系,但是有相当大的独立性,1973年创立以来,一直有自己的主席
和教学安排,所以离后者更近一些。

此外,各校在专业导入课程的设置上差别也非常明显。基本上可以分为三类。按
IEEE-ACM《Computer Curricula 2001》(以下简称CC2001)的分法,斯坦福属于广度优先

(有明确的注重广度的导引课程),MIT的属于函数为先(采用函数式语言),CMU和 UIUC属

于对象为先(直接采用Java)。伯克利有些特殊,它有导引课,但是广度稍差,紧接着又
采用函数语言,同时开设学生自学为主可以任选的多种语言课程,属于混合多元型。应
该说各个学校在刚入门时如何调动学生积极性,培养对专业的感情上都有自己的思考。
无论哪种类型,将课堂变得有趣,能够容纳更多计算机科学的方面,都已经成为一种趋
势。

无论如何,各校存在的差异并不妨碍各自培养出同样优秀的人才,这也给我们提供了一
种有益的启示,办学思路和方法应该是因地制宜的。

当然,总的来说,各学校之间的共性还是主要的。归纳起来,有这么几个特点,值得我
们思考:

1. 硬件课程整体在减少

偏软类的三所院校中,CMU最为彻底,硬件课程只有一门课,而UIUC也只有两门必修(两
门体系结构),斯坦福也是两门(电子学、体系结构或数字系统)。其中的原因,前面引述

的Randal E. Bryant所言作出了解释,毕竟计算机科学需要关注的在计算机系统层次中
已经越来越高,底层越来越变得透明了。事实上,CC2001中制定的硬件课程也只有一门
。而国内目前一般还开设数字逻辑、微机原理、计算机组成与结构、微机实验等硬件类
课程。

2. 程序设计日益重视

在CMU, UIUC和斯坦福,必修的程序设计类课程往往在四五门左右。伯克利加起来也有
四门。MIT虽然没有大量前导性的编程课程,但是由于在后面计算机系统工程、计算机语

言工程、软件工程实验、Web软件工程诸课程都有实际的项目要完成,所以实际学时也很

多,UIUC的改革更说明了这一点。同时,还出现了强调提高程序设计技巧,与软件工程
环境和工具相结合,提倡团队合作,高级程序设计课程与数据结构、算法课融合的趋势
。这方面的代表有斯坦福。该校副系主任Eric Roberts曾执教入门类课程多年,总结了
一套在语言教学中融入软件工程和现代程序设计观念,结合算法和数据结构教学的经验
。其成果就是《C语言的科学和艺术》和《C程序设计的抽象思维》两本书(影印版已由机

械工业出版社出版)。作为CC2001工作组两位主席之一,他在C语言教学中强调库与接口
设计、编程风格的重要性,并进而介绍抽象、封装的概念,产生了很大影响。反观国内
目前很多学校的语言教学和程序设计教学,不仅学时偏少,与其他课程孤立,而且脱离
实际,造成语言学习和相关专业课学习都变得非常枯燥,不利于调动学生的积极性。

应该说,这些名校的教学体系、教材和经验都是丰富的宝藏,值得好好挖掘,比如每门
核心课程的教学法,实验课程的安排,各门课程的衔接,大型项目的选材等。

美国大学本科的基本入学条件是

1. 要有SAT成绩:至少1600分
2.平均分/GPA 成绩至少80分/GPA 3.0以上
3.IBT成绩85分

⑧ 美国哪所大学计算机网络专业最好

卡内吉·梅隆大学绝对是最好的。

⑨ 美国那些大学的IT专业是强项

Stanford(斯坦福)的CS是个很大的 CS,拥有40人以上的资深教员,其中不乏响当当硬梆梆的图灵奖得主(Edward A .Feigenbaum , John McCarthy)和各个学科领域的大腕人物,比如理论方面的权威DonaldE.K nuth;数据库方面的大牛Je ffre yD.Ullm an(他还写过那本着名的编译原理,此人出自Princeton);以及R ISC技术挑头人之一的John Henn e ssy。相信 CS的同学对此并不陌生。该系每年毕业30多名Ph.D.以及更多的Master。学生的出路自然是如鱼得水,无论学术界还是工业界,Stanford的学生倍受青睐。几乎所有前十的 CS中都有Stanford的毕业生在充当教授。当然同样享有如此地位的还包括其他三头巨牛:UC .Berkeley, MIT和CMU。
毕业于U. of Utah的Jim Clark曾经在Stanford CS当教授。后来就是这个人创办了高性能计算机和科学计算可视化方面巨牛的SGI公司。SUN公司名字的来历是:Stanford University Network .。顺便提一下,创办YAHOO的华人杨致远曾在斯坦福的 EE攻读博士,后来中途辍学办了YAHOO。

CS科研方面,斯坦福无论在理论、数据库、软件、硬件和AI等各个领域都是实力强劲的顶级高手。斯坦福的RISC技术后来成为SGI / MIPS的Rx000系列微处理器的核心技术;DASH,FLASH项目更是多处理器并行计算机研究的前沿;SU IF并行化编译器成为国家资助的重点项目,在国际学术论文中SU IF编译器的提及似乎也为某些平庸的论文平添几分姿色。

Stanford有学生14000多,其中研究生7000多。 CS有175人攻读博士,350人攻读硕士,每年招的学生数不详,估计少不了,但不要忘了,每年申请 CS的申请学生接近千人。申请费高达90$。

斯坦福大学位于信息世界的心脏地带———硅谷。加州宜人的气候,美丽的风景使得Stanford堪称CS的天堂。33.1平方公里的校园面积怕是够学子们翻江蹈海、叱咤风云的了。

申请斯坦福是很难成功的,但也并非不可为之。去斯坦福这样的牛校,运气很重要,牛人的推荐也很重要。

附:总的来说,前20的 CS可以分成三波:

一、4个最为优秀的 CS Program � Stanford,UC. Berkeley, MIT, CMU

二、6个其他前十的:UIUC,Cornell,U.of Washington ,Prin ce ton,U. of Tex as-Austin和U. of Wisconsin -Madison,其中UIUC, C ornell,U. of Washington和UW -Madison几乎从未出过前十名。

三、其他非常非常优秀的 CS:CalTech,U. of MarylandatCP, UCLA, Brown, Harvard,Yale, GIT, Pure, Rice,和U. of Michigan.

(注:CS=计算机科学系)

自20世纪40年代世界第一台现代计算机在美国诞生以来,美国一直执全球计算机学界之牛耳,这同时也是美国计算机产业界占据绝对优势的重要原因之一。我们引进的教材中绝大多数也都来自美国。计算机学科仍然在高速发展,与此对应的计算机人才培养模式也在不断变化,密切关注和跟踪国外尤其是美国名校的教学新动态,应该是非常有意义的。
本文即选择了美国计算机学科最负盛名的五所高校,对目前各校计算机科学(Computer Science)专业的本科教学体系进行了一些分析。

斯坦福大学
斯坦福大学拥有独立的计算机科学系。浏览该校的教学手册,最具特色的恐怕要算多门科普性计算机知识讲座了,一般有两到三个单元,涉及面非常之广,从量子计算到数字演员,从计算科学的伟大思想到网络安全,从网上拍卖到使用元编译发现大型开放源代码软件中的大量错误,其中还不乏对技术乌托邦、斯诺“两种文化”、计算机面临的困境以及迅速发展所带来的诸多问题的思考。开课的老师阵容强大,基本上都是响当当的名教授,甚至包括图灵奖得主John McCarthy。用这种讲座代替计算机科学导论性质的专门课程,可以充分展示计算机科学的丰富内涵,使学生较早地了解学科的轮廓和脉络,对于开阔学生视野,启发学生的学习兴趣也大有好处。由于美国大学中专业的选择非常灵活,而近年来计算机学科招生受行业影响流失严重(这种情况甚至惊动了比尔·盖茨,今年微软到各大高校招兵买马时,他每站必到,利用自己的明星效应,大讲计算机学科的美妙前景),可以想象,这种讲座同样也肩负着吸引学生选择计算机专业的重大使命。
斯坦福大学典型的低年级课程设置如表1所示。
表1 斯坦福大学低年级主要课程设置
数学(至少23个单元)
数学 41(课程号,下同) 微积分 I 5
数学 42 微积分 II 5
统计 116 概率论 3~5
计算机 103 离散结构 4或6
以下任选两门:
数学 51 微积分 5
数学 103/113 线性代数 3
数学 109 应用群论 3
计算机 157 逻辑和自动推理 4
计算机 205 机器人、视觉和图形学数学方法 3
科学(至少11个单元)
物理 53 力学 4
物理 55 电磁学 4
其他
工程基础(至少13个单元)
计算机 106 程序设计抽象/方法学 5
工程 40 电子学基础 5
选修课
技术与社会(3~5个单元)

进一步的课程设置如表2所示。
表2 斯坦福大学高年级主要课程设置
程序设计(2门课)
计算机 107(课程号,下同) 程序设计范型 5
计算机 108 面向对象系统设计 4
理论(2门课)
计算机 154 自动机与复杂性理论 4
计算机 161 算法的设计与分析 4
系统(3门课)
电子电气 108B或282 数字系统或计算机体系结构 4
计算机 编译原理 3
计算机 计算机网络 3
计算机 操作系统 3
应用(选2门课)
计算机 人工智能 3~4
计算机 数据库 3
计算机 图形学 3
项目(1门课)
计算机 至少3个单元
限选课(多门)
加州大学伯克利分校
伯克利的课程设置也有很多独树一帜的地方,尤其是在专业基础课方面,除了有专业导引课程“计算机科学专题”之外,对于没有编程经验的学生,第一门编程课是符号编程入门,采用LISP语言。有一定编程经验或者有自学能力的学生,可以选择多种语言和环境的自主学习(Self-paced)课程,包括C、Fortran、C++、Java,以及UNIX的使用等,这种多元化与伯克利计算机科学与电子电气工程同系有关。但是所有学生在第二学期都要学习一组独特的基础课:61A“计算机程序的结构与解释”,采用MIT Abelson等编着的同名教材(中译本机械工业出版社出版,清华大学出版社出版了影印版);61B“数据结构”(教材采用自编讲义);61C“计算机结构”(Machine Structures),采用Hennessy的《计算机组织与设计》(中译本清华大学出版社出版,机械工业出版社出版了影印版)。这项规定就是转校生也不例外,可见其中蕴涵了伯克利多年的教学经验结晶。
伯克利其他比较有特点的课程还有:将离散数学和概率论结合讲授的CS70,主讲是名教授Christos Papadimitriou;CS98-1 编程练习课,以主要大学生编程竞赛中的赛题为授课素材;CS 169 软件工程直接用Kent Beck的《极限编程》(人民邮电出版社出版了中译本)作为教材,非常超前,但是既然连Pressman的《软件工程:实践者方法》新版中敏捷方法都已经成为重头戏,既然IEEE都已经开始制定敏捷方法相关标准,这种课程选材也就不显得那么骇世惊俗了。除了软件工程课程常见内容外,教学侧重实际,贯穿了极限编程的思想,涵盖UML、JUnit单元测试、软件架构、设计模式和反模式、重构、CVS版本控制、系统和集成测试,最后要求完成一个实际产品,并进行演示。
UIUC(伊利诺依大学厄巴尼-香槟分校)
UIUC的计算机科学专业创建于1972年,到1986年基本定型,十多年来几乎没有什么变化。其教学体系如图1所示。
图1 UIUC改革前的计算机科学课程体系
其中,数值分析方向课程中,Math225为矩阵论,CS257为数值方法,CS35x代表数值分析导论、常微分数值方法、偏微分与数值逼近和数值线性代数;
理论方向课程中,CS173为离散结构,CS273为计算理论,CS37x包括算法、形式方法、程序验证;
人工智能方向课程中,CS348为人工智能导论,CS34x包括机器人、机器学习与模式识别;
软件方向,CS125为计算机科学导论,CS225为数据结构与软件工程原理,CS31x包括数据库、图形学、多媒体,CS32x包括软件工程、操作系统设计、分布式系统、编程语言与编译器、并行计算、实时系统、编译器构造、编程语言设计;
硬件方向课程中,CS231为计算机体系结构I,CS232为计算机体系结构II,CS33x包括计算机组成、VLSI系统与逻辑设计、VLSI系统设计、通信网络、嵌入式体系架构与软件。
可以看到,处在图1中最下面的课程基本上都是在多门中选择一至三门,整个体系脉络清晰,具有很高的灵活性。与斯坦福不同的是,UIUC的计算机科学导论课程比较简单,只有一门为新生开的计算机科学导向课(CS100),而且并非必修。名为“计算机科学导论”的CS125实际上是以Java语言为主的编程入门课,涵盖了一些算法的内容。此外还有与之配套的实验课。当然,系里所开的许多面向高年级和研究生层次的讲座是对低年级开放的。
2003年,在工程院院长David Daniel的倡导下,计算机系对教学计划进行了改革,以反映目前社会、行业和技术的发展趋势。主要的变化有:
* 在必修要求中增加了两门编程课:CS241 系统编程,采用Gary Nutt的《操作系统》作为主教材,Stevens的《Unix环境高级编程》作为编程教材;CS242 程序设计实验(Programming Studio),教学大纲基本上以Kernighan的《程序设计实践》为蓝本(以上教材机械工业出版社均出版了中译本和影印版)。
* 必修要求中增加了一年的高级项目,强调团队合作和软件工程实践,包括文档写作、口头表达、项目规划与管理等,实际上是在实践中学习软件工程。这门课也可以用两学期的软件工程或者一年的高级论文代替。仍然充分保留了灵活性,有利于因材施教。
* 增加了CS173 离散结构的学时,部分原CS273的内容移到这里,同时CS273又新增了原CS375的内容。这实际上是提高了对计算机理论的要求。

CMU(卡内基梅隆大学)
与MIT、伯克利等学校计算机科学仍然和电子与电气工程同处一系不同,CMU的计算机科学系成立于1965年,是全美最早的,如今它已经升格为计算机科学学院。其研究生项目中除了机器人方向与硬件关系较多之外,其他基本上都是纯软的。从这个意义上来说,CMU的教学体系对于偏软的计算机科学系应该有较大的借鉴意义。
CMU的教学手册上没有从传统意义上针对计算机科学专业学生的导论课,虽然有名为“计算机科学伟大思想”的两学期课程,但是从内容上看应该是离散数学的替代,因为此外CMU并没有其他离散数学方面的课程。此课程没有教材,内容比传统离散数学要灵活得多,涉及概率、代数、算法、加密理论、复杂性理论、博弈论等,非常注重学习的趣味性和实用性。
与其他名校相同,CMU对程序设计的重视也给人留下很深印象:本土新生的第一堂课就是“初中级程序设计”,直接讲授Java。然后是中高级程序设计(Java)、C语言编程技巧、高级编程实践(Java)、程序设计原理(用SML语言讲授)。
目前计算机科学专业教学计划中的一个难点,是硬件课程的设置问题。硬件知识体系本身非常丰富,但是硬件课程多了,又削弱了计算机科学专业的特色。CMU在这一问题上是怎样处理的呢?计算机科学学院的现任院长Randal E. Bryant 亲自给出了回答,他用15~213“计算机系统导论”一门课(12个单元)完成了硬件知识的教学。这项教学改革的成果就是一本厚达900多页的书:《Computer Systems: A Programmer's Perspective》(中译本《深入理解计算机系统》已经由中国电力出版社出版)一书。他在该书的序言中说:
“本课程的宗旨是用一种不同的方式向学生介绍计算机。因为,我们的学生中几乎没有人有机会构造计算机系统。而大多数学生,甚至是计算机工程师,也要求能日常使用计算机和编写计算机程序。所以我们决定从程序员的角度来讲解系统,并采用这样的过滤方法:我们只讨论那些影响用户级C程序的性能、正确性或实用性的主题。
比如,我们排除了诸如硬件加法器和总线设计这样的主题。虽然我们谈及了机器语言,但是不关注如何编写汇编语言,而是关心编译器怎样翻译C的各种构造,比如指针、循环、过程调用和返回,以及switch语句。更进一步,我们将更广泛和现实地看待系统,包括硬件和系统软件,讨论链接、加载、进程、信号、性能优化、评估、I/O以及网络与并发编程。
这种做法使得我们讲授本课程的方式对学生来讲既实用、具体,又能实践,同时也非常利于调动学生的积极性。”
网站上的一些随书配套实验,也独具匠心。因此此书的成功是水到渠成的。根据配套网站上的列表,它已经被全球80多所院校采用作为教材。MIT(麻省理工学院)
MIT的课程设置,只能用其学生起点高来解释。该校没有典型意义上的计算机科学专业,偏软的只有理论计算机科学和人工智能及其应用两个专业。因此没有类似于其他学校的导论课程。
在MIT的电子电气工程与计算机科学系中,所有学生都要参加如下四门课程:6.001“计算机程序的结构与解释”,当然与伯克利相同,采用的是Abelson等编着的同名教材;6.002“电路与电子学”;6.003“信号与系统”(自编讲义);6.004 “计算结构”(Computation Structures),与伯克利的61C“计算机结构”对等(教材是自编课件)。此外有两门专业基础数学课:“概率系统分析”(教授自编教材)和“计算机科学数学”,后者的教材是国外院校普遍采用的Rosen所着《离散数学及其应用》(中文版由机械工业出版社出版)。
对MIT的学生而言,实验课程有多种选择:电气工程和计算机科学实验,模拟电子实验,数字系统实验,微机项目实验,半导体设备项目实验。此外,无论何种专业,都有软件工程实验课。值得注意的是,本科生各专业的必修课程中并没有软件工程课程。也就是说,软件工程的内容都在实践中完成了。带软件工程实验课的是因为提出Liskov替换原则而知名的女教授Barbara Liskov,她刚刚获得了2004年度的冯·诺依曼奖。作为美国工程院和艺术科学院的双院士,她几十年在软件开发研究方面的经验,将有力地保证这门实验课程的质量

阅读全文

与cmu计算机网络实验相关的资料

热点内容
当前网络信号不佳是什么意思 浏览:897
饿了么网络共享怎么连接 浏览:435
手机图片显示无网络连接怎么办 浏览:387
无线网络硬件开关 浏览:934
红米k40双卡与移动网络 浏览:983
上网络分路不好是什么原因 浏览:432
朵唯共享网络设置 浏览:431
移动电视连接网络不可用 浏览:97
视频号显示网络异常 浏览:664
如何做好网络推广原理 浏览:86
为什么路由器连接不上网络了 浏览:627
y93设置双卡网络 浏览:558
网络公开课在哪个平台 浏览:255
宿迁移动网络绑定手机最低消费 浏览:312
路由器如何防止网络监控 浏览:82
苹果手表可以联网络吗 浏览:308
欣向路由器怎么叠加网络 浏览:232
4g网络限量多少 浏览:845
手机版免费网络电视 浏览:834
网络公司要什么手续 浏览:688

友情链接