主要包含实验以及论文阅读理解两部分。在实验部分,学生首先需要实现一个简单的用户空间文件系统YFS,该文件系统由客户端和服务端组成,两者使用RPC进行通信,客户端通过FUSE模块实现文件系统的挂载,学生需要实现文件系统中硬盘空间管理、读写文件、软硬链接及目录等功能,另外还要保证文件系统在高并发情形下的正确性,通过日志的方式实现版本管理,通过纠错码的方式实现文件系统的容错机制,实现文件权限控制。
在计算机系统工程课程结束后,学生需要对计算机组成部分以及常见计算机技术有一定的认识,并在此基础上能够独立设计、搭建简单计算机系统。其次,学生需要理解计算机常用的设计模式,例如抽象和模块化等概念,并了解这些设计模式如何达到简化系统复杂度、保障安全以及提高系统性能等目的。另外,对于一些常见的技术,学生需要较为深入地理解,包括计算机网络大致是如何实现的、虚拟化技术是如何保障抽象与隔离的、如何在一个不可靠的网络中运行分布式系统、常见的针对系统的攻击是怎样进行的又该如何防御等。
课程成绩:百分制
(1) 期末考试:70%
(2) 作业 + 上机实验:30%