美国知名大学本科“操作系统”课程设置情况的对比和分析

2009-08-28 09:09尹俊文
计算机教育 2009年14期
关键词:操作系统课程内容课程

阎 巍 尹俊文

摘要:我国的“操作系统”课程一直在不断地学习国外先进的教学经验和方法,随着计算机技术的发展,“操作系统”课程的建设面临着机遇和挑战。本文研究了美国普林斯顿大学、哥伦比亚大学、哈佛大学、麻省理工学院和加州大学伯克利分校等几所著名大学的本科“操作系统”课程的课程内容、实验设置两个方面的情况,以图促进我国的“操作系统”课程的改革。

关键词:“操作系统”课程;课程内容;实验设置

中图分类号:G642 文献标识码:B

1引言

随着嵌入式系统的广泛应用,操作系统作为最重要的软件部件之一,越来越受到业界的重视。因此,有关“操作系统”课程的设计面临着机遇和挑战。

“操作系统”课程需要为后续课程提供足够的知识基础,也必须深化学生对计算机系统的理解和全局观,拓广他们对计算机的系统化视野。

我们对国内外一些知名大学的“操作系统”课程进行了跟踪和分析,了解他们对于操作系统相关知识的教学情况,分析他们对于操作系统相关能力培养的教学实施方法,比较他们与我们国内大学“操作系统”课程教学的差异,吸收他们先进的教学理念和课程设计方法,以图改进我们的课程教学水平、提高教学效率和质量。

我们主要通过Internet调查了Princeton University(普林斯顿大学)、Columbia University(哥伦比亚大学)、Harvard University(哈佛大学)、Massachusetts Institute of Technology (麻省理工学院)和UC Berkeley(加州大学伯克利分校)等在计算机科学与技术专业具有威望的美国大学。这些大学开设的“操作系统”课程参见表1。

这些课程中有相当的部分是研究生课程,我们仅仅针对其中的本科课程进行了研究,主要针对其中的教学内容、实验设置两个个方面进行了分析,最后就这些方面的问题提出了自己的看法。

2教学内容

美国普林斯顿大学、哥伦比亚大学、哈佛大学、麻省理工学院和加州大学伯克利分校的计算机科学系(或实验室)都开设了计算机科学(Computer Science)课程,在这们(些)课程中用1~2次课的时间进行操作系统的基础知识进行了铺垫,他们因为在操作系统领域取得了各自不同的成就,因此在操作系统扩充知识方面进行特殊的处理,表2给出了这些学校本科“操作系统”课程的主要内容(这些内容都摘自于课程讲授的最新课表)。

我们按照概述(包括系统结构)、并发机制和CPU调度、内存管理、设备和文件系统和高级专题等五个操作系统的经典内容进行分类在表3中列出了表2中各门课程的学时分配情况。

在这些课程中,并发机制和CPU调度是操作系统的基础,也是理解操作系统工作机理的出发点,因此学时分配中占用的比例一般较高(因为麻省理工学院的课程主要面向研究生,因此操作系统高级专题占用了相当大比例的学时)。内存管理以及设备和文件系统的教学学时大致相当,是“操作系统”课程的次重要内容。

我们在分析这些课程的课件中发现,课程并不十分注重机制和策略的理论分析,更多地是通过典型案例的分析讨论相关设计问题,特别是哥伦比亚大学的“操作系统I”课程几乎使用了一半的时间介绍Linux的实现策略。

3课程实验设置

表4列出了表2中各门课程所设置的实验项目,这些实验项目几乎涵盖了操作系统的各个方面,甚至包括了系统的可靠性测试(比如“系统调用的故障注入”实验)。课程实验的时间安排与课程教学保持同步,这样在教学组织上可以有效地开展课堂讨论。

这些课程实验具有以下几个重要的特点:

(1) 实验项目的完成程度主要通过实验报告来评判,课程实验的工作也分为报告书写工作和编程工作。在哥伦比亚大学和哈佛大学的“操作系统”课程中都明确地提出了实验报告应该回答的针对性问题。编程工作在培养学生的工程实践能力的同时,实验报告的书写也有助于培育学生的科研素养。

(2) 每个实验项目都设定了实验报告提交的最后期限。每个实验项目的周期比较长,通常复杂的实验项目会持续一个半月,便于学生独立的完成。

(3) 通常为实验项目提供了一组Benchmark,要求学生针对这些Benchmark进行实验分析。实验结果的分析过程有助于培养学生独立分析问题的能力。

4结束语

通过对美国普林斯顿大学等著名大学“操作系统”课程的分析,我们的“操作系统”课程教学至少可以在以下几个方面进行改进:

(1) 课程内容的安排更注重具体案例的分析,注重理论和实践的结合,用某个典型操作系统(例如嵌入式Linux或者其他的教学操作系统)为实例,具体分析其在CPU、内存和文件系统等各个重要方面的实现技术,使得学生对操作系统的理解更加具体化。

(2) 面向特殊学生开设专门的实验课程(清华大学、国防科技大学、北京大学已经开设了“操作系统专题训练”类似的课程),满足那些对操作系统有兴趣、有研究和工作需要的学生的要求,弥补“操作系统”理论课程实验学时不足的问题。

(3) 细化“操作系统”课程的实验要求,以实验项目为单位考查实验结果,以实验报告,特别是实验结果分析报告为主要的考查对象,可以更好地发现学生在课程实验上存在的问题,督促学生及时、认真、高质量完成实验工作。

(4) 根据具体的培养方案调整“操作系统”课程内容,有针对性的增加操作系统的高级专题,比如嵌入式操作系统的结构和管理策略、支持Web应用的操作系统技术,以提高学生对后续课程学习和社会工作的适应能力。

参考文献:

[1] Jaswinder Pal Singh. Computer Science 318 Operating Systems[EB/OL].[2009-06-20]. http://www.cs. princeton.edu/ courses/archive/fall08/cos318/.

[2] Michael Freedman. Computer Science 518 Advanced Operating Systems[EB/OL]. [2009-06-20]. http://www.cs. princeton. edu/courses/archive/fall09/cos518/.

[3]Junfeng Yang. W4118 OPERATING SYSTEMS I[EB/OL].[2009-06-20].http://www.cs.columbia.edu/-junfeng/09sp-w4118.

[4]Matt Welsh. CS 161. Operating Systems[EB/OL]. [2009-06-20]. http://www.eecs.harvard.edu/ -mdw/course/cs161/ index. html.

[5]Frans Kaashoek. 6.828 Operating System Engineering[EB/OL].[2009-06-20]. http://ocw.mit.edu/OcwWeb/Electrical- Engineering-and-Computer-Science/6-828Fall-2006/CourseHome/index.htm.

[6]Anthony D. Joseph. CS162: Operating Systems and Systems Programming[EB/OL],[2009-06-20].http://inst.eecs. berkeley. edu/-cs162/sp06/.

猜你喜欢
操作系统课程内容课程
《ERP原理与应用》课程混合式教学改革探索
课程思政视域下职业院校实训课程内容的重构
课程思政在组织行为学课程教学中的探索与实践
析课程内容 谋教学佳策——“数的认识”模块知识的教学思考
新生态学校如何诠释课程内容
A—Level统计课程和AP统计课程的比较
智能手机操作系统的分析与比较
国产桌面操作系统中虚拟化技术应用研究
自行车的发明
幼儿园艺术课程内容的选择