PL1. Overview of programming languages
PL2. Fundamental issues in language design
PL3. Virtual machines
PL4. Introduction to language translation
PL5. Language translation systems
PL6. Type systems
PL7. Models of execution control
PL8. Declaration, modularity, and storage management
PL9. Programming language semantics
PL10. Programming paradigms
PL11. Language-based constructs for parallelism
介绍:
主要内容包括程序设计模式,虚拟机,类型系统,执行控制模型,语言翻译系统,程序设计语言的语义学,
基于语言的并行构件等.
抽象形态的主要内容:包括基于语法和动态语义模型的语言分类(如静态型,动态型,函数式, 数据挖掘实验室
过程式,面向对象的,逻辑,规格说明,报文传递和数据流),按照目标应用领域的语言分类(如商业数据处理,
仿真,表处理和图形),程序结构的主要语法和语义模型的分类(如过程分层,函数合成,抽象数据类型和
通信的并行处理),语言的每一种主要类型的抽象实现模型,词法分析,编译,解释和代码优化的方法,
词法分析器,扫描器,编译器组件和编译器的自动生成方法等.
理论形态的主要内容:包括形式语言和自动机,图灵机(过程式语言的基础),POST系统(字符串处理语言的基础),
lamda-演算(函数式语言的基础),形式语义学,谓词逻辑,时态逻辑,近世代数等.
设计形态的主要内容:包括把一个特殊的抽象机器(语法)和语义结合在一起形成的统一的可实现的整体特定语言
(如过程式的(COBOL,FORTURN,ALGOL,Pascal,Ada,C),函数式的(LISP),数据流的(SISAL,VAL),面向对象的(Smalltalk,CLU,C++),逻辑的(Prolog),字符串(SNOBOL)和并发(CSP,Concurrent Pascal,Modula 2)),特定类型
语言的指定实现方法,程序设计环境,词法分析器和扫描器的产生器(如YACC,LEX),编译器产生器,语法和语义
检查,成型,调试和追踪程序,程序设计语言方法在文件处理方面的应用(如制表,图,化学公式),统计处理等.
基本问题主要包括:
1.语言(数据类型,操作,控制结构,引进新类型和操作的机制)表示的虚拟机的可能组织结构是什么?
2.语言如何定义机器?机器如何定义语言?
3.什么样的表示法(语义)可以有效地用于描述计算机应该做什么?
五.AR. Architecture and Organization
AR1. Digital logic and digital systems
AR2. Machine level representation of data
AR3. Assembly level machine organization
AR4. Memory system organization and architecture
AR5. Interfacing and communication
AR6. Functional organization
AR7. Multiprocessing and alternative architectures
AR8. Performance enhancements
AR9. Architecture for networks and distributed systems 数据挖掘研究院
介绍:
主要内容包括数字逻辑,数据的机器表示,汇编级机器组织,存储技术,接口和通信,
多道处理和预备体系结构,性能优化,网络和分布式系统的体系结构等.
抽象形态的主要内容:包括布尔代数模型,基本组件合成系统的通用方法,电路模型
和在有限领域内计算算术函数的有限状态机,数据路径和控制结构模型,不同的模型
和工作负载的优化指令集,硬件可靠性(如冗余,错误检测,恢复与测试),VLSI装置设计
中的空间,时间和组织的折衷,不同的计算模型的机器组织(如时序的,数据流,表处理,
阵列处理,向量处理和报文传递),分级设计的确定,即系统级,程序级,指令级,寄存器级
和门级等.
理论形态的主要内容:包括布尔代数,开关理论,编码理论,有限自动机理论等.
设计形态的主要内容:包括快速计算的硬件单元(如算术功能单元,高速缓冲存储器),
冯·诺依曼机(单指令顺序存储程序式计算机),RISC和CISC的实现,存储和记录信息,
以及检测与纠正错误的有效方法,对差错处理的具体方法(如恢复,诊断,重构和备份过程),
为VLSI电路设计的计算机辅助设计(CAD)系统和逻辑模拟,故障诊断,硅编译器等,在不同 数据挖掘实验室
计算模型上的机器实现(如数据流,树,LISP,超立方结构,向量和多处理器),超级计算机等.
基本问题主要包括:
1.实现处理器内存和机内通信的方法是什么?
2.如何设计和控制大型计算系统,而且使其令人相信,尽管存在错误和失败,但它仍然是按照我们的意图工作的?
3.哪种类型的体系结构能够有效地包含许多在一个计算中能够并行工作的处理元素?
4.如何度量性能?
六.OS. Operating Systems
OS1. Overview of operating systems
OS2. Operating system principles
OS3. Concurrency
OS4. Scheduling and dispatch
OS5. Memory management
OS6. Device management
OS7. Security and protection
OS8. File systems
OS9. Real-time and embedded systems
OS10. Fault tolerance
OS11. System performance evaluation
OS12. Scripting
介绍:
主要内容包括操作系统的逻辑结构,并发处理,资源分配与调度,存储管理,设备管理,文件系统等 .
抽象形态的主要内容:包括不考虑物理细节(如面向进程而不是处理器,面向文件而不是磁盘)而对
同一类资源上进行操作的抽象原则,用户接口可以察觉的对象与内部计算机结构的绑定(Binding),
重要的子问题模型(如进程管理,内存管理,作业调度,两级存储管理,和性能分析),安全计算模型
(如访问控制和验证)等.
理论形态的主要内容:包括并发理论,调度理论(特别是处理机调度),程序行为和存储管理的理论,
(如存储分配的优化策略),性能模型化与分析等
设计形态的主要内容:包括分时系统,自动存储分配器,多级调度器,内存管理器,分层文件系统和
其他作为商业系统基础的重要系统组件,构建操作系统(如UNIX,DOS,Windows)的技术,建立实用程
序库的技术(如编辑器,文件形式程序,编译器,连接器和设备驱动器),文件和文件系统等内容.
基本问题主要包括:
1.在计算机系统操作的每一个级别上,可见的对象和允许进行的操作各是什么?
2.对于每一类资源,能够对其进行有效利用的最小操作集是什么?
3.如何组织接口才能使得用户只需与抽象的资源而非硬件的物理细节打交道?
4.作业调度,内存管理,通信,软件资源访问,并发任务间的通信以及可靠性与安全的控制策略是什么?
5.通过少数构造规则的重复使用进行系统功能扩展的原则是什么?
七.NC. Net-Centric Computing
NC1. Introduction to net-centric computing
NC2. Communication and networking
NC3. Network security
NC4. The web as an example of client-server computing
NC5. Building web applications
NC6. Network management
NC7. Compression and decompression
NC8. Multimedia data technologies
NC9. Wireless and mobile computing
介绍:
主要内容包括计算机网络的体系结构,网络安全,网络管理,无线和移动计算以及多媒体数据技术等.
抽象形态的主要内容:包括分布式计算模型(如C/S模式,合作时序进程,消息传递和远方过程调用),
组网(分层协议.命名.远程资源利用,帮助服务和局域网协议),网络安全模型(如通信,访问控制和验证)等.
理论形态的主要内容:包括数据通信理论,排队理论,密码学,协议的形式化验证等.
设计形态的主要内容:包括排队网络建模和实际系统性能评估的模拟程序包,网络体系结构
(如以太网.FDDI.令牌网),包含在TCP/IP中的协议技术,虚拟电路协议,Internet,实时会议等.
基本问题主要包括:
1.网络中的数据如何进行交换?
2.网络协议如何验证?
3.如何保证网络的安全?
4.分布式计算的性能如何评价?
5.分布式计算如何组织才能够使通过通信网连接在一起的自主计算机参加到一项计算中,而网络协议,
主机地址,带宽和资源则具有透明性?

