【复习】操作系统&计组核心概念

1 运行环境

1.1 内核态和用户态

什么是操作系统内核?
内核是一个提供硬件抽象、磁盘与文件系统控制、多功能的系统软件

1.2 中断与异常

1.3 系统调用

2 进程与线程

2.1 基本概念

2.1.1 进程

进程定义

PCB

进程状态:状态切换

2.1.2 什么是线程

用户级线程,内核级线程

线程控制块

2.2 进程通信

  • 共享内存
  • 消息队列
  • 管道
  • 信号量
  • 套接字
  • 信号

2.3 cpu调度与上下文切换

2.3.1 进程/线程切换

上下文:cpu寄存器和程序计数器

更新PCB

系统进行用户态和内核态的切换时会发生进程调度吗?

2.3.2 调度

【调度算法分类】

  • 非抢占式调度:当有新的更高优先级进程需要使用处理机,正在运行的进程不会被剥夺资源。
  • 抢占式调度:剥夺cpu使用权

【调度算法】

  • FCFS:先来先服务
  • SJF:短作业优先
  • 优先级调度
  • 高响应比优先:$响应比 = \frac{等待时间+服务时间}{服务时间} $,使用这一算法不会饿死
  • 时间片轮转
  • 多级队列调度

2.4 并发程序设计

2.4.1 同步与互斥

解决临界资源访问或实现互斥的方法

  • 互斥锁
  • 信号量
  • 管程
    • 条件变量

2.4.2 死锁

3 存储系统