操作系统概论

佐治亚理工学院课程编号 CS 8803

中级

大约 2 个月

6小时每周 (自主学习)

由以下企业参与制作:
加入成千上万的全球学员

开始免费课程

加入课程
免费
可享受
课程视频
实战练习与参考项目指导
中级

大约 2 个月

6小时每周 (自主学习)

由以下企业参与制作:
加入成千上万的全球学员

课程概述

操作系统概论是关于操作系统的研究生水平入门课程。本课程介绍基本的操作系统抽象化、机制及实现。此课程的核心包含并发编程(线程和同步)、进程间通信,以及分布式操作系统介绍。本课程分为四个部分:(1) 简介,(2) 进程和线程管理,(3) 资源管理和通信,和 (4) 分布式系统。

为什么学习这门课程?

这门课程的目标有三个:

  1. 学生将通过不同操作系统结构的历史演变,了解现代操作系统(如 Linux)设计和实施决策背后的原理。
  2. 学生将接触到有关操作系统原则和实现的理论知识。
  3. 学生将实际试验和评估多个操作系统方面,从而获得知识。

先修要求

要学习这门课程,你应先通过本科课程或其他方式学习和熟悉计算机系统结构的基本软硬件方面。建议之前拥有 C 语言编程经验,因为本课程的实践部分要使用 C 语言。

查看使用优达学城的技术要求

你将学习什么内容?

项目

实战项目 1:多线程 Web 服务器

实战项目 1

学习计划

教学大纲包括:

第 1 部分:导论

  • 第 1 课:课程概述
  • 第 2 课:操作系统介绍

第 2 部分:进程和线程管理

  • 第 1 课:进程和进程管理
  • 第 2 课:线程和并发
  • 第 3 课:线程案例研究:PThreads
  • 第 4 课:线程实现的考虑因素
  • 第 5 课:线程性能的考虑因素

第 3 部分:资源管理与通信

  • 第 1 课:调度
  • 第 2 课:内存管理
  • 第 3 课:进程间通信
  • 第 4 课:同步结构
  • 第 5 课:I/O 管理
  • 第 6 课:资源虚拟化

第 4 部分:分布式系统

  • 第 1 课:远程服务
  • 第 2 课:分布式文件系统
  • 第 3 课:分布式共享内存
  • 第 4 课:数据中心技术

讲师与合作伙伴

Ada Gavrilovska

Ada Gavrilovska

Ada 是佐治亚理工学院计算学院与计算机系统实验研究中心 (CERCS) 的高级研究教师。他的兴趣包括进行实验系统研究,特别是分布式异构平台上的高性能应用,领域涵盖从操作和分布式系统到虚拟化、可编程网络设备及通信加速器,再到主动和自适应中间件及输入/输出。

Jarrod Parkes

Jarrod Parkes

Jarrod 擅于尝试与教育相关的一切新事物:他积极主动,倡导改变现有的学习方式。他第一次向现状提出挑战,是帮助哈森生物技术研究所的中学生建立的虚拟科学实验室。在阿拉巴马大学亨茨维尔分校学习计算机科学的时候,他在大学课程之外还经常学习网上课件,这让他受益匪浅。他拥有阿拉巴马大学亨茨维尔分校的计算机科学学士学位。

官方微信公众号二维码

优达学城(Udacity)微信