课程简介
课程特色
课程大纲
教学方式
课件下载
上机实验
课程项目
课程师资
参考资料
WiKi平台
课程简介

一、 课程建设基本情况
        操作系统是计算机系统的重要组成部分,操作系统课程是计算机专业的核心专业基础课之一。北京大学的操作系统课程的前期建设历经了20世纪80年代的初创启动阶段和20世纪90年代的基础建设阶段。进入新世纪之后,进入了创新提高阶段。操作系统课程是理论性和实践性都很强的基础课。创新提高阶段的指导思想是,在教学内容的广度和深度上尽快接近和达到国际一流大学同类课程的水准;在保持课程内容相对稳定基础上,注重反映当代操作系统发展和动向的内容;既注重经典操作系统理论的讲授,也重视分析主流操作系统,特别是开源操作系统Linux的内核分析与实践;
        课程负责人自1994年起在北京大学计算机系主讲专业主干课“操作系统”课程以及“操作系统实习”课程。“操作系统”课程为本科生必修课,听课人数从140人到150人不等,取决于每年的招生人数。自2002年起课程建设组同时在北京大学信息学院、软件与微电子学院主讲“操作系统高级课程”。“操作系统高级课程”为研究生专业基础课,听课人数为80-120人。2005年,教育部和科技部联合发文批准设立了40个国家Linux技术培训与推广中心,大力开展Linux技术人才的培养,北京大学牵头组织了4期Linux师资培训班,并派遣其中的12名优秀Linux教师到美国、欧洲接受培训。为此,自2005年起,课程建设组将“Linux操作系统分析与实践”从“操作系统高级课程”中分离出来独立开设。每年选课人数从60人到100人不等。2006年,课程建设组在英特尔公司的支持下编写了《Linux内核分析与编程》的PPT课件,同时作为课堂讲授和上机实习的主要材料,将操作系统原理和Linux操作系统分析与实践有机地结合起来。2007年,在英特尔公司的支持下,北京大学与南京大学、北京航空航天大学合作编写了《Linux操作系统分析与实践》教程一书,已提交清华出版社正式出版。
        《Linux操作系统分析与实践》课程为3个学分的专业基础课,面向计算机相关专业研究生和高年级本科生开放,每年的修课人数为60至100人。其先修课程为:操作系统、数据结构、C++程序设计。经过多年的教学实践,学生普遍反映良好。
        经过几年的教学,沉淀了大量的学生作业、课程项目成果。本课内容已被很多其他相关院系参考或引用,并作为“国家Linux技术培训与推广中心示范”项目的重要组成部分进行推广。

二、课程内容
    “Linux操作系统分析与实践”课程的主要内容包括:
        (1)操作系统概述(3学时)
        (2)计算机系统硬件基础(6学时)
        (3)进程管理(6学时)
        (4)内存管理(6学时)
        (5)文件系统(6学时)
        (6)设备管理(6学时)
        (7)Linux驱动程序编写基础(3学时)
        (8)字符设备和块设备驱动程序(6学时)
        (9)网络设备驱动程序(6学时)
        (10)上机实验(18学时)
        (11) 课程项目实践(课外完成)

三、课程安排
      《Linux操作系统分析与实践》课程在研究生一年级第二学期开设,设3个学分,授课对象是工程硕士研究生和第二学士学位的学生,授课学时是48学时,上机实验18学时。实验室在课余时间对学生全天开放,学生可以随时到实验室进行Linux操作系统方面的学习与实践。
    课程教材的选用:
    主教材:
        Linux操作系统分析与实践,陈向群、吴中海主编 出版社:清华大学出版社 计划出版日期:2008年5月
        Linux内核设计与实现 (2nd Edition) Robert Love著,陈莉君等译,机械工业出版社,2006年1月
    参考书:
        Linux Kernel Courseware, by Intel® China Software Center
        Understanding the Linux Kernel, 3rd Edition,作者:Daniel P. Bovet, Marco Cesati 出版社:O'Reilly 出版日期:2005年12月
        Linux Device Drivers(3rd Edition) By Jonathan Corbet, Alexsandro Rubini, and Greg Kroah-Hartman O’Reilly