操作系统 (自主模式)

自主模式

  • 什么是随堂模式?

    随堂模式课程一般为每学期一轮次,课程每周更新,作业、考试有截止时间,由课程提供方老师、助教指导,课程完结,成绩由老师确认后,统一发放证书。

  • 什么是自主模式?

    自主模式课程常年开放加入,课件全部开放,作业、考试无截止时间,有学堂在线招募选拔的助教指导,考核通过即可自动获得证书。

来自于: 清华大学 | 分类: 计算机(387)

课程描述

操作系统课讲解操作系统中如何管理和协调应用程序对计算机系统中软硬件资源的使用。

什么是认证证书?
免费学习
认证学习
名师签名
实名认证
权威性
纸质证书
付费购买
免费赠送

课程简介

操作系统是计算机系统中负责管理各种软硬件资源的核心系统软件,为应用软件运行提供良好的环境。掌握操作系统的基本原理及其核心技术是研究型大学计算机专业本科毕业生的基本要求。

本课程是计算机专业核心课,以主流操作系统为实例,以教学操作系统ucore为实验环境,讲授操作系统的概念、基本原理和实现技术,为学生从事操作系统软件研究和开发,以及充分利用操作系统功能进行应用软件研究和开发打下扎实的基础。

课程维基页面: 

http://os.cs.tsinghua.edu.cn/oscourse/OS2016autumn

http://166.111.68.197:11123/oscourse/OS2016autumn/ (这个链接是临时的,可能修改)

课程问答和交流区:https://piazza.com/tsinghua.edu.cn/spring2015/30240243x/home

课程实验与练习: http://crl.ptopenlab.com:8811/courses/Tsinghua/CS101/2015_T1/courseware/

65a2e6de0e7f4ec8a261df82683a2fc3/7be9a21ca62e4f5d8325d27b66a0c9bf/

展开

课程章节

第零讲 在线教学环境准备
0.1 Piazza讨论区
0.2在线实验平台
第一讲 操作系统概述
1.1 课程概述
1.2 教学安排
1.3 什么是操作系统
1.4 为什么学习操作系统,如何学习操作系统
1.5 操作系统实例
1.6 操作系统的演变
1.7 操作系统结构
练习
第二讲 实验零 操作系统实验环境准备
2.1 前言和国内外现状
2.2 OS实验目标
2.3 8个OS实验概述
2.4 实验环境搭建
2.5 x86-32硬件介绍
2.6 ucore部分编程技巧
2.7 演示实验操作过程
第三讲 启动、中断、异常和系统调用
3.1 BIOS
3.2 系统启动流程
3.3 中断、异常和系统调用比较
3.4 系统调用
3.5 系统调用示例
3.6 ucore+系统调用代码
第四讲 实验一 bootloader启动ucore os
4.1 启动顺序
4.2 C函数调用的实现
4.3 GCC内联汇编
4.4 x86中断处理过程
4.5 练习一
4.6 练习二
4.7 练习三
4.8 练习四 练习五
4.9 练习六
第五讲 物理内存管理: 连续内存分配
5.1 计算机体系结构和内存层次
5.2 地址空间和地址生成
5.3 连续内存分配
5.4 碎片整理
5.5 伙伴系统
5.6 练习
第六讲 物理内存管理: 非连续内存分配
6.1 非连续内存分配的需求背景
6.2 段式存储管理
6.3 页式存储管理
6.4 页表概述
6.5 快表和多级页表
6.6 反置页表
6.7 段页式存储管理
6.8 练习
第七讲 实验二 物理内存管理
7.1 了解x86保护模式中的特权级
7.2 了解特权级切换过程
7.3 了解段/页表
7.4 了解UCORE建立段/页表
7.5 演示lab2实验环节
第八讲 虚拟存储概念
8.1 虚拟存储的需求背景
8.2 覆盖和交换
8.3 局部性原理
8.4 虚拟存储概念
8.5 虚拟页式存储
8.6 缺页异常
第九讲 页面置换算法
9.1 页面置换算法的概念
9.2 最优算法、先进先出算法和最近最久未使用算法
9.3 时钟置换算法和最不常用算法
9.4 Belady现象和局部置换算法比较
9.5 工作集置换算法
9.6 缺页率置换算法
9.7 抖动和负载控制
第十讲 实验三 虚拟内存管理
10.1 实验目标:虚存管理
10.2 回顾历史和了解当下
10.3 处理流程、关键数据结构和功能
10.4 页访问异常
10.5 页换入换出机制
第十一讲 进程和线程
11.1 进程的概念
11.2 进程控制块
11.3 进程状态
11.4 三状态进程模型
11.5 挂起进程模型
11.6 线程的概念
11.7 用户线程
11.8 内核线程
第十二讲 进程控制
12.1 进程切换
12.2 进程创建
12.3 进程加载
12.4 进程等待与退出
第十三讲 实验四 内核线程管理
13.1 总体介绍
13.2 关键数据结构
13.3 执行流程
13.4 实际操作
第十四讲 实验五 用户进程管理
14.1 总体介绍
14.2 进程的内存布局
14.3 执行ELF格式的二进制代码-do_execve的实现
14.4 执行ELF格式的二进制代码-load_icode的实现
14.5 进程复制
14.6 内存管理的copy-on-write机制
第十五讲 处理机调度
15.1 处理机调度概念
15.2 调度准则
15.3 先来先服务、短进程优先和最高响应比优先调度算法
15.4 时间片轮转、多级反馈队列、公平共享调度算法和ucore调度框架
15.5 实时调度和多处理器调度
15.6 优先级反置
第十六讲 实验六 调度器
16.1 总体介绍和调度过程
16.2 调度算法支撑框架
16.3 时间片轮转调度算法
16.4 Stride调度算法
第十七讲 同步互斥
17.1 背景
17.2 现实生活中的同步问题
17.3 临界区和禁用硬件中断同步方法
17.4 基于软件的同步方法
17.5 高级抽象的同步方法
第十八讲 信号量与管程
18.1 信号量
18.2 信号量使用
18.3 管程
18.4 哲学家就餐问题
18.5 读者-写者问题
第十九讲 实验七 同步互斥
19.1 总体介绍
19.2 底层支撑
19.3 信号量设计实现
19.4 管程和条件变量设计实现
19.5 哲学家就餐问题
第二十讲 死锁和进程通信
20.1 死锁概念
20.2 死锁处理方法
20.3 银行家算法
20.4 死锁检测
20.5 进程通信概念
20.6 信号和管道
20.7 消息队列和共享内存
第二十一讲 文件系统
21.1 文件系统和文件
21.2 文件描述符
21.3 目录、文件别名和文件系统种类
21.4 虚拟文件系统
21.5 文件缓存和打开文件
21.6 文件分配
21.7 空闲空间管理和冗余磁盘阵列RAID
第二十二讲 实验八 文件系统
22.1 总体介绍
22.2 ucore 文件系统架构
22.3 Simple File System分析
22.4 Virtual File System分析
22.5 I/O设备接口分析
22.6 执行流程分析
第二十三讲 I/O子系统
23.1 I/O特点
23.2 I/O结构
23.3 I/O数据传输
23.4 磁盘调度
23.5 磁盘缓存
期末考试
期末考试

授课教师

  • 向勇 清华大学 计算机系 副教授

    向勇,博士,清华大学计算机系副教授,自2000年开始从事操作系统课的教学工作,科研方向包括无线自组网、计算机支持的协同工作和操作系统,曾主持或参与国家自然科学基金项目《支持多信道的自组网及其与Internet 互连的研究》和《多协作方式集成模型与环境研究》、863项目《车载自组网及其在智能导航中的应用》、核高基项目《开源操作系统内核分析和安全性评估:Linux体系结构及内核功能模块间关系分析》,以及多项企业合作项目,近5年发表10余篇论文(SCI检索2篇, EI检索5余篇)。

  • 陈渝 清华大学 计算机系 副教授

    陈渝,男,博士,清华大学计算机系副教授、中国计算机学会普适计算专委会副主任,系统软件专委委员,清华大学信息技术研究院操作系统研究中心负责人。主要科研方向:操作系统、系统安全,嵌入式系统,普适计算、高性能计算等。在操作系统相关领域的国际会议如VEE, ICPP, CLUSTER, PACT, MASCOTS, ICPADS等,和国际期刊,如 IEEE Computer, ACM TACO,CCPE, TCJ,发表了学术论文,共计发表论文50余篇,申请专利6项。作为项目负责人承担了核高基子项目3项,国家863项目1项,国家科技支撑计划1项,自然科学基金项目2项,以及国际合作项目6项等。负责研发操作系统分析工具,OS kernel bug分析平台,SkyEye嵌入式系统模拟仿真环境软件系统,ucore教学操作系统等。承担清华大学计算机系本科和研究生的操作系统课程,翻译和出版6本操作系统与嵌入式系统等教材。获省部级一等奖3次,二等奖2次。

精华笔记

  • 21.1 文件系统和文件文件系统是操作系统中管理持久性数据的子系统,提供数据检索和访问功能文件是具有符号名,由字节序列构成的数据项集合文件系统的功能1分配文件磁盘空间2管理文件集合3数据可靠和安全文件属性文件头:1 文件属性;2 文件存储位

    2015-06-01 12:56:39 by ejacky

常见问题

目前还没有常见问题哟!