看操作系统_清华大学(向勇、陈渝) 笔记 1.2 1.3

1.2 什么是操作系统
– 用户角度上,操作系统是一个控制软件
– 管理用户程序
– 为应用程序提供服务
– 杀死应用程序

系统软件 架构
硬件之上 应用程序之下

linux,windows,android的界面属于外壳(shell),而不是内核(kernel),kernel是这节课的重点

cpu的调度器

内存的管理 虚拟 物理

文件系统的管理
中断处理与设备驱动

os kernel特征
并发
– 并发 一段时间
– 并行 一个时间点 计算机系统同时处理多个运行的程序 多个cpu才行
共享
– “同时”访问
– 互斥共享
虚拟
– 利用多道程序设计技术,让每个用户都觉得有一个计算机专门为他服务
异步
– 程序的执行不是一贯到底,而是走走停停,向前推进的速度不可预知。
– 但只要运行环境相同,OS需要保证程序运行的结果也要相同

1.3 为什么学习操作系统

综合不同的课程
– 程序设计语言
– 数据结构
– 算法
– 计算机体系结构
– 材料
– 操作系统概念和原理, 源代码
– 技能
– 操作系统设计和实现

操作系统还在不停的发展,工控等各种领域有强烈的需求。
很酷很有用。
对操作系统设计了解的话,对其他大型软件的设计也会有用。

操作系统: 计算机科学研究的基石之一
– 计算机系统的基本组成部分
– 由硬件的发展和应用需求所驱动
– 学术和工业的持续推进

操作系统顶级会议
– SOSP
– USENIX

为什么操作系统有挑战
– window代码量巨大
– 管理并发
– 管理原始硬件
– 代码必须高效,可靠
– 系统安全的基础

操作系统需要权衡
– 空间和时间
– 性能和可预测性
– 公平和性能

硬件方面,操作系统需要
– 良好的操作管理
– 合理的资源分配
– 例如硬盘速度跟cpu,内存相差很多,操作系统需要协调处理

All posts

Other pages

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注