Skip to content

操作系统原理与实践

核心课程…… 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
  • 实验自己实现

alt text

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 的特权模式 - 能执行特权指令