操作系统与进程

操作系统与进程

操作系统知识:

  • 作用:

    1. 控制软硬资源
    2. 调度进程,使进程有序
  • 多道技术

    1. 产生背景

      针对单核,实现宏观上并发

    2. 什么是多道?

      内存中存放多个程序

    3. 宏观/微观

      1. 宏观上并行:多个程序在同时运行
      2. 微观上串行:实际上多道程序轮流使用cpu
    4. 时空上的复用

      1. 时间上复用:切换+保存状态

        遇到io操作切换、占用cpu时间长切换

        切换时保存状态,下次运行时接着上次的状态继续运行

      2. 空间上复用:

        内存中同时存放多个程序

        使用同一套硬件资源

进程知识:

  • 什么是进程?

    1. 是操作系统进行资源分配和调度的基本单位,是操作系统结构的基础,进程是线程的容器

    2. 狭义、广义:

      狭义定义:是正在运行的程序的实例(an instance of a computer program that is being executed)

      广义定义:是一个具有独立功能的程序关于某个数据集合的一次运行活动

    3. 理论角度、实现角度

      理论角度:是对正在运行的程序过程的一种抽象

      实现角度:是一种数据结构,刻画动态系统内部规律

    4. 进程的本质

      本质是程序在多道程序系统中一次执行过程。

  • 进程特征?

    1. 动态性:动态创建动态消亡
    2. 并发性:可同其他进程一起并发执行
    3. 独立性:是一个能独立运行的基本单位
    4. 异步性:进程按各自独立的速度往前执行。
    5. 结构特征:数据、程序、进程控制块三部分组成。
  • 进程与程序的区别

    程序:数据和指令的集合,静态,永久,作为文件资料长期存在

    进程:程序在处理机上的一次执行过程,动态,短暂,有一定生命周期

    注意:同个程序运行两次,就会产生两个进程。

  • 进程的调度算法

    1. 先来先服务(FCFS):有利于长作业(进程),不利于短作业(进程)
    2. 短作业优先:短进程优先调度,不利于长作业
    3. 时间片轮转:将cup处理时间分成固定大小时间片,进程用完时间片时还没执行完,就排到末尾等待下一次调度。
    4. 多级反馈队列:设置多个队列,赋予不同优先级。
      1. 新进程进入内存,放入第一队列,按FCFS调度。
      2. 不能在分配的时间片内完成,降入第二队列,继续按FCFS调度。
      3. 依次降级时,按时间片轮转运行。
  • 进程调度:时间片轮转法+多级反馈队列

  • 进程的并发与并行

    并发:看起来像同时运行

    并行:真正意义上的同时运行

    单核计算机不能实现并行,但可以实现并发。

  • 进程的三种状态

    就绪:进程分配到处cpu之外的所有资源

    运行:进程获得处理机。执行完一个时间片进程还未运行完,变成就绪态。

    阻塞:等待某个事件发生,放弃处理机。I/O操作,等待信号,申请缓冲区等。

  • 同步、异步、阻塞、非阻塞

    同步、异步: 针对任务的提交方式

    ​ 同步:一个任务依赖另一个任务,只有等待被依赖的任务完成,该任务才能算完成,可靠。

    ​ 异步:不需要等待被依赖的任务完成,任务也可以完成,不可靠。

    阻塞、非阻塞:针对程序运行状态

    ​ 阻塞:程序的阻塞态

    ​ 非阻塞:程序处于就绪、运行态

  • 进程的两种创建方式

    ​ 直接使用Process的实例

    ​ 继承Process,重写run方法

  • 僵尸进程、孤儿进程

    ​ 僵尸进程:任何进程都会变成僵尸进程

    ​ 孤儿进程:父类进程意外死亡

  • 守护进程

    ​ p.daemon = True ,必须在start之前创建

    ​ 会在主进程运行结束之后结束

    ​ 不发创建子进程

  • 互斥锁

    acquire() 抢锁

    release() 释放锁

posted @ 2019-08-12 14:48  KbMan  阅读(186)  评论(0编辑  收藏  举报