February 22, 2020

426 words 1 min read

计算机操作系统

计算机操作系统

操作系统相关知识

本文整理计算机操作系统相关知识

  1. 进程和线程

    进程

  2. 线程

    线程

  3. 进程的切换

    进程状态切换

  4. 进程通信方式:

    • 共享内存
    • 消息队列
    • 管道通信
    • 套接字:不同机器之间的进程通信
  5. 进程同步方式:

    • 信号量
    • 条件变量
  6. 线程通信方式:

    • 信号量
  7. 线程同步方式:

    • 信号量
    • 临界区
  8. PV操作及信号量的概念都是由荷兰科学家E.W.Dijkstra提出的。信号量S是一个整数,S大于等于零时代表可供并发进程使用的资源实体数,但S小于零时则表示正在等待使用共享资源的进程数。

    • P操作申请资源:   (1)S减1;   (2)若S减1后仍大于等于零,则进程继续执行;   (3)若S减1后小于零,则该进程被阻塞后进入与该信号相对应的队列中,然后转入进程调度。
    • V操作 释放资源:   (1)S加1;   (2)若相加结果大于零,则进程继续执行;   (3)若相加结果小于等于零,则从该信号的等待队列中唤醒一个等待进程,然后再返回原进程继续执行或转入进程调度。

https://www.cnblogs.com/youngforever/p/3250270.html

  1. 死锁:多个进程因竞争资源而造成的一种僵局(类似交通阻塞)
    • 解决方法:
      • 预防死锁
      • 避免死锁:银行家进餐
      • 检测及消除
      • 撤销进程