系统能力的培养.ppt_第1页
系统能力的培养.ppt_第2页
系统能力的培养.ppt_第3页
系统能力的培养.ppt_第4页
系统能力的培养.ppt_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机学科规范CS2013 系统能力的培养,抛砖引玉研讨稿,Survey of CC2001/CS2008 Usage,Developed survey to gather data for CS2013 Reviews usage of CC2001 and CS2008 Rating of importance of existing knowledge areas Rating of principles (e.g., importance of stylized classes) Suggestions for new topics of import/knowledge areas Survey released in December, 2010 1500 US department chairs/directors of UG education 2000 International department chairs Received 201 responses,Importance of Topics,Suggested Topics (% of Suggestions),Bounding Size of Curriculum,Body of Knowledge Update (1),Addition of new Knowledge Areas Parallel and Distributed Computing Most important area to add as indicated by previous feedback Will include additional core hours Information Assurance and Security Second most important area to add Will include additional core hours Systems Fundamentals Cross-cutting systems concepts E.g., caching, locality, latency, parallelism Avoid tying these to any one topic (e.g. Operating Systems, Architecture) to foster broader thinking and new pedagogy Platform-based Development E.g., web, mobile devices, game consoles, robots, etc.,Body of Knowledge Update (2),Reorganization of topics in many Knowledge Areas Net-Centric Computing Networking and Communications Sharpen focus on networking Web development moves to “Platform-based Development” Notably, includes a reworking of topics in Programming Fundamentals, Programming Languages, and Algorithms Move paradigm-specific concepts (e.g., OOP, Functional) to Programming Languages Programming Fundamentals + some Software Engineering = “Software Development Fundamentals” Seek to broaden thinking away from equating “Programming Fundamentals” with “Introductory Programming Courses” Introductory programming course includes: platform + language/paradigm + software development,CMU计算机本科教学,CMU Computer Science Core:,15-122 Principles of Imperative Computation 15-150 Principles of Functional Programming 15-210 Parallel and Sequential Data Structures and Algorithms 15-213 Introduction to Computer Systems 15-251 Great Theoretical Ideas in Computer Science 15-451 Algorithm Design and Analysis,CMU计算机本科教学,One Algorithms & Complexity elective:,15-354 Computational Discrete Mathematics 15-355 Modern Computer Algebra 15-453 Formal Languages and Automata 21-301 Combinatorics 21-484 Graph Theory,CMU计算机本科教学,One Applications elective:,05-391 Designing Human-Centered Software 05-431 Software Structures for User Interfaces 10-601 Machine Learning 11-411 Natural Language Processing 15-313 Foundations of Software Engineering 15-322/15-323 Intro to Computer Music 15-381 Artificial Intelligence: Representation and Problem Solving 15-384 Robotic Manipulation 15-385 Computer Vision 15-415 Database Applications 15-462 Computer Graphics,CMU计算机本科教学,One Logics and Languages elective:,15-312 Foundations of Programming Languages 15-317 Constructive Logic 15-414 Bug Catching: Automated Program Verification and Testing 21-300 Basic Logic 80-311 Computability and Incompleteness,CMU计算机本科教学,One Software Systems elective:,15-410 Operating System Design and Implementation 15-411 Compiler Design 15-418 Parallel Computer Architecture and Programming 15-440 Distributed Systems 15-441 Computer Networks,计算机系统基础,1998年在CMU开设 2002年正式出版教材 2010年第2版发行 涵盖了计算机系统领域的广泛内容 但仅从程序员的角度介绍,不与后续课程抢内容,计算机系统基础,汇编 二进制,汇编,link/loader 组成与体系结构 流水线,超标量,memory hierarchy 操作系统 Fork/execve/wait/signal (shell), 虚存 I/O与网络编程 I/O, 网络程序设计, 并发程序设计,计算机系统基础,可接触的概念、做中学 设计了8个labs Bit operation Bombing (tracker) Buffer overflow attack (hacker) Pipeline design (using HCL) Code optimization Shell Malloc Proxy,Great Theoretical Ideas in Computer Science,How to use theoretical ideas to formulate and solve problems in computer science Integrate mathematical material with general problem solving techniques and computer science applications Examples are drawn from Algorithms, Complexity Theory, Automata Theory, Game Theory, Probability Theory, Graph Theory, Algebra, Cryptography, and Combinatorics Assignments involve both mathematical proofs and programming,Great Theoretical Ideas in Computer Science,Number Pancakes with a Problem! Choose Your Representation! Unary, Binary, and Beyond One Step at a Time: Induction On Raising a Number to a Power Euclids Great Recursive Algorithm for GCD Fibonacci Numbers: An Unexpected Formula Modular Arithmetic and the RSA Cryptosystem,Great Theoretical Ideas in Computer Science,Counting: Counting I: One To One Correspondence and Choice Tree Representation Counting II: Recurring Problems and Correspondences Counting III: Polynomials Count! Pascals Triangle,Great Theoretical Ideas in Computer Science,Computation: The One Minute to Learn Programming Language: Finite Automata Playing Symbol Games: Logic, Language, and Meaning On Time versus Input Size Problem Solving: The Method behind the AHA! Grade School Revisited: How to Add and Multiply Grade School Again: A Parallel Perspective,Great Theoretical Ideas in Computer Science,Probability Methods Probability I: Counting in Terms of Proportions Probability II: Probability Pitfalls and Paradoxes Counting, Naming, and Worst-Case Compression Dating Theory: Who Wins the Battle of the Sexes? Probability III: Random Variables and Great Expectations! Probability IV: Event Space in an Infinite Choice Tree Probability V: Random Walks.,Great Theoretical Ideas in Computer Science,Computational Theory Thaless Legacy: What is a Proof? Cantors Legacy: Infinity and Diagonalization. Turings Legacy: The Limits of Computation Godels Legacy: The Limits of the Symbol Game Ancient Paradoxes with an Incompressible Resolution,M I T 的 核心 课程,计算机系统工程,互联网成为主流以及多核的出现 如何控制计算机系统的设计复杂性 Strong modularity using client-service design Naming Virtualization 其它系统设计的主要问题 Performance Networks Fault Tolerance Atomicity and Consistency Security 2011年开始授课,计算机系统工程,大量的经典论文阅读 Worse is Better A Fast File System for UNIX The X Window System The Evolution of an x86 Virtual Machine Monitor End-to-end Arguments in System Design MapReduce The Design and Implementation of a Log-Structured File System RAID: A Case for Redundant Arrays of Inexpensive Disks Hints of Computer System Design,计算机系统工程,设计类 project tagged file system 设计类google-doc系统 Lab The UNIX File System (practice file system related commands) The UNIX Time-Sharing System (practice other shell commands) Internet Routes and Measuring Round Trip Times (traceroute) MapReduce,Stanford计算机本科核心课程,Systems cs106B Programming Abstractions cs107 Computer Organization and Systems Computer Systems: A Programmers Perspective by Bryant and OHallaron(CMU) . C Programming Language by Kernighan cs110 Principles of Computer Systems 课本:Principles of Computer System Design by Jerome H. Saltzer and M. Frans Kaashoek (MIT) Theory cs103 Mathematical Foundations of Computing cs109 Intro to Probability for Computer Scientists cs161 Data Structures and Algorithms,Berkeley计算机本科核心课程,Core CS 61A Structure and Interpretation of Computer Programs CS61B Data Structures CS61C Machine Structures EECS42 Digital Electronics Upper Division Required CS 170 Algorithms CS 162 Operating systems,Berkeley计算机本科核心课程,Breadth courses choose two from the following: CS 150 Digital Systems CS 152 Computer Architecture CS 160 User Interfaces CS 161 Computer Security CS 164 Languages and Compilers CS 169 Software Engineering CS 184 Computer Graphics CS 186 Databases CS 188 Artificial Intelligence,Utexas的计算机系统概念,Yale Patt, Introduction to Computing Systems: from bits and gates to C and beyond. 美国计算机界的卓越泰斗,与Knuth齐名,UIUC、Utexas、UMN、UMASS、上海交大、中科大等采用 Patt教授2011年中科大授课的Youku视频 /playlist_show/id_6525373.html (密码ustc) 英文(授课时使用,随时更新) /htmls/ics-courses/en/index.html 大一就对计算机系统软件和硬件有整体的理解,第1章 欢迎阅读本书 1.1 我们的目标 1.2 怎么才能做到 1.3 两个反复出现的理念 1.4 计算机系统简述 1.5 两个非常重要的思想 1.6 计算机:通用计算设备 1.7 从问题描述到电子运转 1.8 习题,计算机系统概念目录,第2章 bit、数据类型及其运算 第3章 数字逻辑 第4章 冯诺伊曼模型 第5章 LC-3结构 第6章 编程 第7章 汇编语言 第8章 输入/输出 第9章 TRAP程序和子程序 第10章 栈,第11章 C语言编程概述 第12章 变量和运算符 第13章 控制结构 第14章 函数 第15章 测试与调试技术 第16章 指针和数组 第17章 递归 笫18章 C语言中的I/O 第19章 数据结构,Programming in C+,Programming in C+,Introduction Computers, People, and Programming Programming and “Hello, Word!” Objects, Types, and Values Computation Errors Writing a Program Completing a Program Technicalities: Functions, etc Technicalities: Classes, etc,Programming in C+,Input/Output Streams Customizing I/O A Display Model Graphics Classes Grap

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论