操作系统原理与实践
核心课程…… 5 学分啊
- 实验 40%
- 出勤、讨论 10%
- 期末 50% - 3 张 A4 纸
回顾
- 冯·诺伊曼 - fomulize 了计算机体系结构
- 三个部分:I/O System、CPU、Memory
- 香农 - Memory 是计算机里所有以二进制形式存储的信息
- 意思取决于怎么解释
- CPU - 用来改内存(比内存快 400 倍
- 寄存器
- 简化成三个阶段 - Fetch-Decode-Execute
- Direct Memory Access - DMA Controler 从 CPU 得到数据传输的信息,传输完成后再 interupt CPU
- Memory Hierarchy - Cache(一般 3 级,L3 共享
- 利用 Temporal Locality 和 Spatial Locality
- 摩尔定律、多核
OS OverView
主要分为三个部分
- 概念
- Linux 的 demo
- 实验自己实现
start_kernel() - C 语言执行的第一行
Dennis Ritchies(也是 C 语言之父), Brian Kernighan - Unix 之父
Richard Stallman - 开源之父,Emacs 和 GNU,以及 GCC
什么是操作系统 - 介于硬件和 app 之间的软件层
- resource abstrctor - 内存抽象为文件,CPU 时间抽象为进程……
- resource allocator
操作系统启动
- 等待事件
- 从 Single-user mode 到 Batch processing
- Time-Sharing - 交替运行不同程序
Ubuntu = Linux core + GNU……
Android = Linux Kernel + 一大堆
想让操作系统与硬件交互,app 和硬件隔离
- CPU 的特权模式 - 能执行特权指令