北邮研究生 高级计算机系统结构
计算机考研的研究方向

计算机考研的研究方向计算机科学与技术专业属于一级学科,下设计算机系统结构、计算机软件与理论、计算机应用技术等二级学科。
1、计算机系统结构研究方向:分布式并行系统、计算机网络与通信、网络软件与操作系统、真实感图形生成与虚拟现实技术、新型计算机网络体系结构、大型机技术、嵌入式系统、传感器网络、网格计算、高性能计算与并行处理、容错计算、光计算机系统、集成电路设计、信息存储、可信计算与容错计算等。
专业特点:计算机系统结构(原名计算机组织与系统结构)专业全面研究各种类型的计算机系统(从单机到网络)的构成、硬件与软件的联系与功能匹配、计算机系统性能评价与改进等。
该专业的研究课题涉及高性能处理机系统结构、多机系统、并行计算与分布式计算系统、计算机系统性能评价、VLSL设计、容错计算技术、计算机接口技术、计算机网络系统与通信系统、移动计算、全球个人计算系统等。
科研状况:本专业近年来承担多项国家科委、国家教委、国家计委及天津市自然科学基金项目,并有多项科研获奖。
其中G.T9112计算机解密系统获北京市公安局科技进步二等奖,表面高度复杂实体的CAM获国家科委科技进步二等奖。
目前承担国家自然科学基金项目“面向ASIC的真实感图形算法和系统结构的研究”、国家高科技863项目“用于建筑环境仿真设计的分布式多用户虚拟现实系统”、天津自然科学基金项目“分布式多用户VR开发系统平台的研究”和一大批为企事业单位开发的横向科研项目。
硕士期间主要课程:应用数学、外语、高等计算机网络、排队论及在计算机中的应用、计算理论、现代计算机体系结构、计算机综合实验、计算机控制及应用、计算机网络研究热点问题、计算机系统仿真、量子计算、密码学与信息安全、面向对象方法学、嵌入式系统设计、统一建模语言、图象/模式识别与理解、机器学习、软件体系结构。
论文要求:论文选题涉及计算机系统结构的理论研究、尖端技术开发、以及在国民经济各个领域的应用研究。
论文应能全面反映本学科发展动态、具有科学性、先进性和一定的创新性。
新祥旭考研-二战三跨-16年北京邮电大学计算机考研经验

新祥旭考研辅导-2016年北京邮电大学计算机考研经验自觉去年得到各学长学姐的经验良多,虽然我是个水货,也来谈谈水货的经验,希望对各位道友有所帮助。
本人本科是一所12年在本身刚升为一本的渣校,这次是二战,去年报考的南邮的信号与信息处理305(政治64|英语一61|数学一90|通信原理90),调剂的时候收到了重邮软件工程的复试通知,最后还是不甘心,索性没去复试。
今年跨考北邮计算机,总分325(政治60|英语一56|数学一|90|计算机综合119),报的专硕,最后运气好混到了学上。
决定跨考是因为发现读了四年通信,还是没啥感觉,而对计算机的相关课程倒是蛮有兴趣的。
所以认为,既然有了再次做选择的机会,何不选择自己喜欢的专业呢!于是决定考计算机,了解到大多数计算机厉害的学校都是考408,有四门科目,而其实有3门科目(数据结构,计组,操作系统)都没有学过,还是挺吓人的,但是当时就是觉得自己适合计算机(明明都没学过,哪来的自信),应该会学得挺快。
于是打算先学着,看学习效果再去选学校,反正考408的学校那么多。
复习篇:那两科越考越低的就讲讲失败的教训吧。
政治因为第一年暑假报过班,第一年后期看过肖的精讲精练,感觉没怎么费力就能及格。
所以今年以为自己重新看会很快找回记忆,所以给的时间很少,刚开始看精讲精练,看完马原就到了10月了,后面为了赶时间直接看知识点提要(知识点浓缩版的精讲精练),刷模拟题,背肖四。
结果就是因为偷工减料,尽管后面做了多套模拟题(的选择题),还是记不牢。
考试的时候选择题失分严重,因为今年的选择题很多和做过的模拟题相似,30分不到算比较水的。
所以个人觉得政治还是踏实一点比较好,能理解的就不要死背。
英语仗着自己过了6级,第一年考的还可以(第一年暑假上过培训班,讲了很多实用的方法,用起来不错),然后今年就只顾刷题,没有注意解题技巧和方法,全凭感觉在做。
虽然后来,模拟考试效果还可以,但是上了考场因为作文写了80多分钟,后面心态完全变了,一直很急,做阅读都静不下心,翻译直接放弃了,最后一分钟还在拼命写完形。
清华大学计算机研究生课程表

清华大学计算机研究生课程表清华大学计算机研究生课程表计算机系研究生课程介绍课程名称:组合数学课程编号:60240013 课学时:48 开课学期:秋任课教师:黄连生【主要容】主要介绍组合数学的基本容,包括基本记数方法、母函数与递推关系、容斥原理与鸽巢原理、Burnside引理与Polya定理、区组设计与编码的初步概念、线性规划问题的单纯形算法。
课程名称:数据结构课程编号:60240023 课学时:48 开课学期:春秋任课教师:严蔚敏【主要容】线性表、树、图等各种基本类型数据结构的结构特性、存储表示及基本操作实现的算法;查找表的各种表示方法;各种排序算法的设计与分析;文件组织方法的简单介绍。
课程名称:软件工程技术和设计课程编号:60240033 课学时:48 开课学期:春任课教师:周之英【主要容】1、软件开发技术发展史;2、软件工程技术方法的基本原则;3、软件过程改进;4、需求工程;5、软件体系结构;6、面向对象设计方法;7、Design Pattern;8、分布式系统对象模型:CORBA及DCOM/COM(OLE)等;9、实例分析(实时系统的设计)等。
课程名称:专家系统课程编号:60240043 课学时:48 开课学期:春任课教师:艾海舟【主要容】讲解专家系统的基本原理、构造方法、应用实例、开发工具和发展趋势,介绍人工智能原理和知识工程的相关容,包括产生式系统、搜索技术、知识表示、知识获取、推理机、不确定推理方法等容。
课程名称:人工智能课程编号:60240052 课学时:32 开课学期:秋任课教师:群秀【主要容】人工智能的定义、发展历史及研究的课题;人工智能的典型系统结构--产生式系统;搜索技术(盲目搜索、启发式搜索、博奕树搜索);谓词演算(知识表示);人工智能语言程序设计。
课程名称:微型计算机系统接口技术课程编号:60240063 课学时:48 开课学期:春任课教师:芬【主要容】本课程是全部用PC机控制的以硬件为主的软硬件结合的综合接口技术。
2020-2021年北京大学085211计算机技术、就业前景、招生情况、复试分数线、参考书目等考研经验

2020-2021年北京大学085211计算机技术、就业前景、招生情况、复试分数线、参考书目等考研经验就业前景计算机技术的内容非常广泛,可粗分为计算机系统技术、计算机器件技术、计算机部件技术和计算机组装技术等几个方面。
目前计算机技术的应用空前发展,各种技术产品层出不穷。
在瞬息万变的计算机世界里,拥有专业知识的高层次人才无疑是稀缺的。
所以计算机技术专业的优秀毕业生有很关阔的发展空间。
(专业硕士)计算机技术专业的优秀硕士毕业生主要有以下几方面的就业方向:1、可以到国内外大型电信服务商、大型通信设备制造企业进行技术开发工作,也可以到其他企事业单位从事网络工程领域的设计、维护、教育培训等工作。
2、可以到国内外众多软件企业、国家机关以及各个大、中型企、事业单位的信息技术部门、教育部门等单位从事软件工程领域的技术开发、教学、科研及管理等工作。
3、可到信息产业、财政、金融、邮电、交通、国防、大专院校和科研机构从事通信技术和电子技术的科研、教学和工程技术工作。
4、可为政府、国防、军队、电信、电力、金融、铁路等部门的计算机网络系统和信息安全领域进行管理和服务。
可考证书:思科认证,华为认证,NIIT认证、编程,图像处理,数据库,网络等资格从业证等。
招生情况复试分数线考研排名参考书目微电子基础参考书目01高等数学(上、下册) 同济大学高等教育出版社02固体物理学黄昆原著韩汝琦改高等教育出版社03数字CMOS VLSI分析与设计基础甘学温北京大学出版社半导体物理、数字电路逻辑设计和计算机组成参考书目01半导体物理学(上册) 叶良修高等教育出版社02半导体物理学刘恩科等国防工业出版社01数字电路逻辑设计王毓银高等教育出版社02计算机系统结构郑纬民清华大学出版社电子线路、智能与信息专业综合(含计算机原理、数据结构与算法)、数字信号处理基础参考书目01电路分析王楚余道衡北京大学出版社02电子线路基础高义焕03数字逻辑电路王楚沈伯弘高等教育出版社04模拟电子技术基础杨素行计算机数学基础(高等数学、离散数学)参考书目01高等数学(上、下册) 同济大学高等教育出版社范围:一元微积分、无穷级数上册:除了第七章和加*号的部分外的所有章节下册:第11章的第一到第五节02离散数学教程耿素云屈婉玲北京大学出版社(作者三:王捍贫) 范围:集合论与图论,代数结构第一到第五章,第七到第十九章计算机软件基础(数据结构、操作系统)、计算机硬件基础(计算机组成与系统结构)参考书目1数据结构许卓群杨冬青高等教育出版社02数据结构与算法分析--C++第二版张铭刘晓丹电子工业出版社03操作系统教程陈向群杨芙清北京大学出版社第一章至第九章01计算机网络A.S.T(译版影印版熊桂喜译清华大学出版社集成电路设计基础(工程硕士)参考书目01微型计算机原理及应用李伯成西电科技大学出版社三本任选其一02微型计算机原理及应用王勇山高等教育出版社三本任选其一03微型计算机原理及应用周明德清华大学出版社(第三版上册) 三本任选其一04高等数学上下册同济大学高等教育出版社05数字CMOS VLSI分析与设计基甘学温北京大学出版社数字电路逻辑设计和计算机体系结构、微电子学基础(工程硕士)参考书目01数字电路逻辑设计王毓银高等教育出版社02计算机体系结构郑纬民清华大学出版社01半导体物理刘恩科国防工业出版社三本任选其一02半导体器件物理曾树荣北京大学出版社三本任选其一原画设计汪璎上海人民美术出版社动画原理黄兴芳上海人民美术出版社《电影的元素》李.R波中国电影出版社《计算机辅助设计》付志勇湖北美术出版社《软件工程》王立福北京大学出版社实用软件工程邓人杰清华大学出版社数据结构与算法许卓群、杨冬青高等教育出版社考研建议1、零基础复习阶段(6月前)本阶段根据考研科目,选择适当的参考教材,有目的地把教材过一遍,全面熟悉教材,适当扩展知识面,熟悉专业课各科的经典教材。
北京工业大学研究生-计算机科学与技术

计算机学院计算机科学与技术(一级、0812)★计算机学院概况北京工业大学计算机学院成立于1997年(由原北京工业大学计算机系、原北京计算机学院等部门合并组成),是全国最大规模的计算机高级人才培养基地之一。
计算机学科是国家“211工程”“九五”、“十五”和“十一五”重点建设学科,学科排名在全国处于前列。
学院下设计算机应用技术系、计算机系统结构系、计算机软件系、信息安全系四个系,计算中心,实验中心两个软件和硬件实验教学基地。
以“立足北京、服务北京、辐射全国、面向世界”为办学定位,贯彻“内涵发展、自主创新、人才强教、资源统筹”指导思想,坚持学术团队、学科方向、基地建设的统筹发展,积极适应首都经济和城市建设需求。
学院师资力量雄厚,专任教师113名,其中:博士生导师20名,教授32名,副教授51名。
学院目前有双聘院士2人,国家杰出青年科学基金获得者1人,国家有突出贡献中青年专家1人,北京市特聘教授1人、讲座教授5名,享受政府特殊津贴专家3人。
现拥有“计算机科学与技术”博士后流动站,“计算机应用技术”博士学位授权点,“计算机科学与技术”一级学科硕士学位授权点和“计算机技术”(招收全日制双证专业学位研究生)、“软件工程”两个专业学位授权领域,形成了从学士到硕士、博士的完整人才培养体系。
目前,全院在校全日制硕士研究生近500人,博士生100余人。
学院拥有多媒体与智能软件技术北京市重点实验室、北京市教育网络信息技术工程中心、教育部数字社区工程中心。
近年完成863、973、国家自然科学基金等国家高水平研究项目数十项,获得国家科技进步二等奖1项,省部级科研与教学成果奖12项,发表学术论文900余篇,出版教材和学术专著35部。
计算机学院工学硕士研究生按计算机科学与技术一级学科招生。
★主要研究方向及特色计算机系统结构方向本研究方向近年来在分布式处理与高性能计算、计算机网络、多核技术、可信计算、嵌入式系统的研究方面取得很大进展。
北京邮电大学计算机专业考研报考注意事项.doc

北京邮电大学计算机专业考研报考注意事项北京邮电大学计算机专业考研报考注意事项北京邮电大学计算机专业考研报考注意事项!1、了解要报考院校计算机系的专业设置情况目前国内的一些重点院校的计算机系基本上都设置了计算机组织与系统结构、计算机软件与理论、计算机应用技术这样三个专业,水平稍微差一点的可能只设置了其中的两个或者一个。
在不同的专业下面分设了不同的研究方向,一般是每个导师一个研究方向,也有的是一个研究方向下面有多个导师。
报考的时候应该选择并填写好自己喜欢的专业以及研究方向(有的院校在报名的时候不要求报研究方向,而是录取了以后再决定研究生的研究方向以及导师的姓名等)。
2、选择考试的专业课及其复习考计算机专业的研究生一般都要考数学、外语和政治这三门基础课,不同的是各学校在专业课的要求上有非常大的差别,所以在报考的时候,一定要了解所报考院校的专业课要求。
以报考北京邮电大学计算机系为例。
报考北邮计算机系的研究生在专业课上有两种选择,一种是考试操作系统原理(包含数据库原理,其中数据库占20%)和离散数学,另外一种是考试数据结构(包含程序设计原理和PASCAL语言)和计算机组成原理(包含系统结构)。
考生可以根据自己的实际情况来选择参加考试的专业课,如果操作系统和离散数学学的比较好,那么就理所当然的选择前者的组合。
实际上近两年来报考交大计算机的考生有绝大多数都选择操作系统和离散数学的组合,笔者也认为这个组合是比较好考的,容易拿到高分。
选择了专业课的组合之后,就应该根据相应的考试要求准备复习资料。
一般情况下,如果报考的是外校,那么最好能够通过朋友或者其他的途径找到所报考学校本校学生的专业课笔记,因为考研的题目都是根据专业课讲授的内容来出的,如果能够拿到笔记,那么对自己复习应考将有很大的帮助。
另外还应该尽量找到历年的专业课考试题目,通过做这些题目来加强对专业课知识的掌握,缩短和本校考生的差距。
在进行专业课的复习时,应该密切的结合这些笔记和历年考研题目进行,这样可以节省很多的精力,将其投入到基础课的复习中去,争取全面的提高。
计算机学院-北航研究生院-北京航空航天大学

计算机学院计算机科学与技术(0812)博士研究生培养方案一、适用学科计算机科学与技术(0812)二、培养目标1.坚持党的基本路线,热爱祖国,遵纪守法,品行端正,诚实守信,身心健康,具有良好的科研道德和敬业精神。
2.在计算机科学与技术方面具有坚实宽广的理论基础和系统深入的专门知识,全面了解学科发展动向;具有独立从事科学研究的能力;具有良好的综合素质;能够独立地、创造性地从事科学研究工作,或具有主持较大型科研、技术开发项目,或解决经济、社会发展问题的能力;至少能熟练运用一门外国语撰写科技论文和进行国际学术交流。
3.在科学或专门技术上做出创造性的成果。
三、培养方向按计算机科学与技术一级学科统一招生,按计算机系统结构、计算机软件与理论、计算机应用技术、计算机网络与信息安全等培养博士研究生。
学科培养方向包括:1.计算机系统结构:具体研究方向包括高性能计算机体系结构、嵌入式与容错计算技术、网络体系结构、分布式计算机系统、计算机存储技术、并行计算技术、分布式计算技术、新概念计算技术等;2.计算机软件与理论:具体研究方向计算复杂性理论、计算系统建模理论、算法理论、智能计算理论、程序的形式化理论与编程模型、程序变换方法与技术、新型程序设计方法、可计算性理论、海量信息的理论与方法、软件中间件技术等;3.计算机应用技术:具体研究方向数据库应用技术、多媒体技术、数字图像及音视频处理、虚拟现实技术与系统、计算机视觉、模式识别、计算机仿真技术、嵌入式系统应用、物联网应用、云计算应用、服务计算、社会计算、大规模计算机应用工程化等;4.计算机网络与信息安全:具体研究方向计算机网络理论、网络传输技术、网络管理技术、网络计算技术、计算机网络应用技术、计算机安全技术、软件安全技术、网络安全技术、信息对抗技术、内容安全技术、行为安全技术、信息隐藏与检测以及可信计算技术等。
四、培养模式及学习年限本学科博士研究生主要按一级学科培养,鼓励开展国际联合培养,实行导师或联合导师负责制,负责制订研究生个人培养计划、指导科学研究和学位论文。
2022年计算机专业考研科目及学校排名

2022年计算机专业考研科目及学校排名2022年计算机专业考研学校排名:2022年计算机专业考研学校排名2022年计算机专业考研学校排名2022年计算机专业考研学校排名2022考研计算机三大专业高校排名及十大计算计算机应用技术前60名(总共271所高校)1.清华大学2.浙江大学3.哈尔滨工业大学4.北京大学5.东南大学6.东北大学7.西北工业大学8.安徽大学9.上海交通大学10.华中科技大学11.北京航空航天大学12.北京理工大学13.西安电子科技大学14.西安交通大学15.吉林大学16.西南交通学17.大连理工大学18.电子科技大学19.北京工业大学20.重庆大学21.复旦大学22.哈尔滨工程大学23.武汉理工大学24.武汉大学25.同济大学26.南京大学27.中国科学技术大学28.华南理工大学29.南京理工大学30.四川大学31.南京航空航天大学32.天津大学33.上海大学34.北京邮电大学35.北京科技大学36.北京交通大学37.中南大学38.合肥工业大学39.山东大学40.江苏大学41.湖南大学42.大连海事大学43.中山大学44.河北科技大学45.中国矿业大学46.南开大学47.华东师范大学48.太原理工大学49.苏州大学50.河海大学52.中国海洋大学53.中国人民大学54.华东理工大学55.山西大学56.重庆邮电大学57.新疆大学58.内蒙古大学59.哈尔滨理工大学60.南京邮电大学中国研究生教育计算机专业排名计算机系统结构前20名(总共47所高校)1.清华大学2.华中科技大学3.西安交通大学4.上海交通大学5.浙江大学6.西安电子科技大学7.武汉大学8.复旦大学9.哈尔滨工业大学10.东北大学11.北京大学12.东南大学13.北京航空航天大学14.中国科学技术大学15.电子科技大学16.吉林大学17.南京理工大学19.北京科技大学20.同济大学计算机软件与理论前40名(总共158所高校)1.上海交通大学2.南京大学3.北京大学4.北京航空航天大学5.吉林大学6.清华大学7.浙江大学8.西安交通大学9.东南大学10.电子科技大学11.中国科学技术大学12.哈尔滨工业大学13.大连理工大学14.华中科技大学15.武汉大学16.复旦大学17.中山大学18.西安电子科技大学19.东北大学20.西北工业大学21.北京理工大学22.北京交通大学23.南京理工大学24.重庆大学26.四川大学27.中南大学28.云南大学29.上海大学30.同济大学31.河海大学32.北京邮电大学33.山东科技大学34.中国人民大学35.南京邮电大学36.西北大学37.武汉理工大学38.贵州大学39.陕西师范大学40.天津大学吉林大学:十几年前,计算机系的创始人王湘浩院士和他的得力助手们还在的时候,吉林大学在软件方面的优势是相当大的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机系统结构的发展历程 课程:高级计算机系统结构 姓名: 学号: 班级: 2015年12月 一、 计算机系统结构 随着当今社会和科技的飞速发展,自四十年代计算机问世以来,计算机科学更是发展迅速,应用领域不断扩展计算机的普及和广泛应用,现代社会正朝着高度信息化,自动化方向发展。计算机逐渐成为社会必不可少的支柱力量。 计算机系统是按人的要求接收和存储信息,自动进行数据处理和计算,并输出结果信息的机器系统。计算机是脑力的延伸和扩充,是近代科学的重大成就之一。计算机系统由硬件系统和软件系统组成。前者是借助电、磁、光、机械等原理构成的各种物理部件的有机组合,是系统赖以工作的实体。后者是各种程序和文件,用于指挥全系统按指定的要求进行工作。 而计算机系统结构是计算机的的机器语言程序员或编译程序编写者所看到的外特性。所谓外特性,就是计算机的概念性结构和功能特性,主要研究计算机系统的基本工作原理,以及在硬件、软件界面划分的权衡策略,建立完整的、系统的计算机软硬件整体概念。其也称为计算机体系结构,它是由计算机结构外特性,内特性,微外特性组成的。经典的计算机系统结构的定义是指计算机系统多级层次结构中机器语言机器级的结构,它是软件和硬件/固件的主要交界面,是由机器语言程序、汇编语言源程序和高级语言源程序翻译生成的机器语言目标程序能在机器上正确运行所应具有的界面结构和功能。 以最常见的冯诺依曼计算机为例,计算机系统结构包含了以下几个方面: 1. 指令集架构(Instruction set architecture;简称ISA):被视为一种机器语言,包含了许多相关的指令集(存储器定址、处理器控制,寄存器控制等等„„)。 2. 微体系结构/微架构(Microarchitecture)或称计算机组织(Computer organization):是更详细的叙述系统内部各元素如何进行合作与沟通。 3. 数据表示,即硬件能直接识别和处理的数据类型和数据格式。 4. 寻址方式,包括最小寻址单位和地址运算等。 5. 寄存器定义,包括操作数寄存器、变址寄存器、控制寄存器等的定义、数量和使用方式。 6. 指令系统,包括机器指令的操作类型和格式、指令间的排序和控制机制等。 7. 异常机制,包括中断、NMI和内部异常等。 8. 机器工作状态的定义和切换,如管态和目态等。 9. 输入输出结构,包括处理机、存储器与输入输出设备之间的连接方式、数据传送方式、数据流量、以及数据交换过程的控制等。 以指令流和数据流作为划分依据,计算机系统结构可以分为下几个类别: 1. 单指令流单数据流(SISD) SISD其实就是传统的顺序执行的单处理器计算机,其指令部件每次只对一条指令进行译码,并只对一个操作部件分配数据。 2. 单指令流多数据流(SIMD) SIMD以并行处理机为代表,结构如图,并行处理机包括多个重复的处理单元PU1~PUn,由单一指令部件控制,按照同一指令流的要求为它们分配各自所需的不同的数据。 3. 多指令流单数据流(MISD)
MISD的结构,它具有n个处理单元,按n条不同指令的要求对同一数据流及其中间结果进行不同的处理。一个处理单元的输出又作为另一个处理单元的输入。 4. 多指令流多数据流(MIMD)。 MIMD的结构,它是指能实现作业、任务、指令等各级全面并行的多机系统,多处理机就属于MIMD。
二、 计算机系统结构的发展历程 1. 计算机系统结构的发展
计算机系统结构的发展历经了四个阶段。 60年代中期以前,是计算机系统发展的早期时代。在这个时期通用硬件已经相当普遍,软件却是为每个具体应用而专门编写的,大多数人认为软件开发是无需预先计划的事情。这时的软件实际上就是规模较小的程序,程序的编写者和使用者往往是同一个或同一组人。由于规模小,程序编写起来相当容易,也没有什么系统化的方法,对软件开发工作更没有进行任何管理。这种个体化的软件环境,使得软件设计往往只是在人们头脑中隐含进行的一个模糊过程,除了程序清单之外,根本没有其他文档资料保存下来。 从60年代中期到70年代中期,是计算机系统发展的第二代。在这10年中计算机技术有了很大进步。多道程序、多用户系统引入了人机交互的新概念,开创了计算机应用的新境界,使硬件和软件的配合上了一个新的层次。实时系统能够从多个信息源收集、分析和转换数据,从而使得进程控制能以毫秒而不是分钟来进行。在线存储技术的进步导致了第一代数据库管理系统的出现。计算机系统发展的第二代的一个重要特征是出现了“软件作坊”,广泛使用产品软件。但是,“软件作坊”基本上仍然沿用早期形成的个体化软件开发方法。随着计算机应用的日益普及,软件数量急剧膨胀。在程序运行时发现的错误必须设法改正;用户有了新的需求时必须相应地修改程序;硬件或操作系统更新时,通常需要修改程序以适应新的环境。上述种种软件维护工作,以令人吃惊的比例耗费资源。更严重的是,许多程序的个体化特性使得它们最终成为不可维护的。“软件危机”就这样开始出现了。1968年北大西洋公约组织的计算机科学家在联邦德国召开国际会议,讨论软件危机课题,在这次会议上正式提出并使用了“软件工程”这个名词,一门新兴的工程学科就此诞生了。 计算机系统发展的第三代从20世纪70年代中期开始,并且跨越了整整10年。在这10年中计算机技术又有了很大进步。分布式系统极大地增加亍计算机系统的复杂性,局域网、广域网、宽带数字通信以及对“即时”数据访问需求的增加,都对软件开发者提出了更高的要求。但是,在这个时期软件仍然主要在工业界和学术界应用,个人应用还很少。这个时期的主要特点是出现了微处理器,而且微处理器获得了广泛应用。以微处理器为核心的“智能”产品随处可见,当然,最重要的智能产品是个人计算机。在不到10年的时间里,个人计算机已经成为大众化的商品。 在计算机系统发展的第四代已经不再看重单台计算机和程序,人们感受到的是硬件和软件的综合效果。由复杂操作系统控制的强大的桌面机及局域网和广域网,与先进的应用软件相配合,已经成为当前的主流。计算机体系结构已迅速地从集中的主机环境转变成分布的客户机/服务器(或浏览器/服务器)环境。世界范围的信息网为人们进行广泛交流和资源的充分共享提供了条件。软件产业在世界经济中已经占有举足轻重的地位。随着时代的前进,新的技术也不断地涌现出来。面向对象技术已经在许多领域迅速地取代了传统的软件开发方法。 2. 计算机系统结构的现状
2.1 CISC 体系和RISC 体系 现代计算机的两种主要体系结构是CISC 体系和RISC 体系。其中RISC是近20 年的研究主流。而随着计算机应用的普及,RISC 结构也出现了许多与以多媒体处理和个人移动计算机为主要内容的应用趋势的不协调。 不管是CISC 体系结构还是RISC 体系结构,人们在计算机体系结构的设计上均追求两方面的目标: 1)设计的计算机体系在面向应用(软件)描述方面使得自己的指令语义层次比较高,这点CISC 较为明显,因为它有许多指令可以直接支持高级语言的语义。而RISC 则比较隐蔽,它是靠精简指令的优化编译(即通过若干条精简指令有机组合)来支持高级语言的语义。 2)设计的计算机体系在面向应用处理方面,使得自己的指令处理速度明显提高,进而加速应用处理的速度。这点RISC表现的比较明显,因为它的指令硬件译码直接实现和采用流水线技术等大大提高了它的处理速度,而在CISC 中,当初增加硬件的资源支持复杂的高层次的语义的指令,本身就意味着提高应用的处理速度。 上述两个目标,从广义角度上来讲,人们总是希望设计机器的指令,其语义层次高,使得它更接近于人类行为;当然人们也是希望自己描述的应用处理速度越快越好。 CISC体系的指令集由微程序来实现,也就是说它的每一个操作均由若干个微操作的程序组合来实现,所以CISC可以使用微指令(微操作)编程(微程序)的方式来实现多种和功能较复杂(语义层次较高)的指令。 在RISC体系的指令集中,它的每一条指令直接由硬布线来实现。这就是说它的每条指令执行原则上有自己一套逻辑组合的时序电路直接实现,所以单条指令实现所占用的硬件资源相应要多。因为RISC 体系没有能采用增加单条指令的功能或 提高指令语义,也没有去增多指令的条数,而是集中于它的精简指令集上。 RISC将把用户使用频率高的,数量少的指令通过硬件实现。其基本特征是指令单周期执行,一个周期内比CISC计算机有更高的指令吞吐率,且指令系统非常简单。)’(& 的思想认为,只要给一个基本的指令,就能产生一个丰富的软件系统。 如果说CISC是计算机技术发展的天然产物,那么RISC应该是计算机技术发展的必然产物。 2.2 两种体系结构的不同 1) 设计思想不同 计算机的一个最重要的性能是速度,一般用执行程序的时间来测量其速度。一个程序的执行时间等于其中的指令数乘以每条指令的执行时间,每条指令的执行时间等于每条指令执行的周期数和每周期的时间(即主频的倒数)。因此,要提高机器速度可从以下方面来提高: (1)提高主频,则一个周期内的门的级数要少,器件的延时要小,现代工艺的迅速发展使器件的延时越来越小,主频也越来越高。 (2)提高每条指令执行的周期数小。 (3)可通过提高指令的语义级别来达到提高机器速度。 由此可见,CISC体系主要通过提高指令语义级别来减少实现程序的指令条数。语义级别高的指令通过采用内部微码结构来执行。而RISC体系的指令简单,指令集较小,指令语义低,几乎每条指令都是单周期执行。控制简单,基本是一些简单的逻辑电路,因此采用逻辑硬布线。这样可以减少了单条指令周期,提高系统主频来提高指令执行速度。 2) 实现方式不同 CISC 主要通过内部微码结构来实现,由于指令语义较高,执行周期长,采用实现简单的指令数据合一的存储结构。相反,RISC主要采用逻辑硬布线,指令执行周期短,存取指令频繁,因此采用指令数据相分离的存储结构。 3) 对编译器的要求不同 有资料表明,在相同时钟频率条件下,如果没有编译器的支持RISC 体系和CISC 体系计算机的效率没有本质的不同。而且RISC更依赖于编译器的优化。 2.3 RISC体系和CISC体系走向融合 由于RISC体系和CISC体系的优势具有互补性,CISC体系与RISC体系正朝着互相取长补短相互靠拢的方向发展。正是由于CISC 技术与RISC 技术的相互融合,目前,导致它们之间的界限日益消失。 具体表现在现代RISC已经不再属于原始的RISC构架, 主要变化如下: 1) 超标量执行 极大地减少CPI,坚持了RISC的精神。它是现代CPU都拥有的技术,包括CISC在内。超标量使用特殊的算法来动态地按时序执行并行指令,增加了处理器的复杂性。 2) 分支预测 分支预测约在1981年提出,在芯片内部加入了复杂的硬件,目的是增加分支执行的效