zoukankan      html  css  js  c++  java
  • 【操统5】第六章/第七章

    6.18

    readcount同步

    保护?

    哲学家吃饭问题

    https://wenku.baidu.com/view/90e0bb7f1711cc7931b716f9.html

    管程


    死锁

    Bridge Crossing Example

    互为条件的进程发生的死锁/饿死现象

    四个必要条件:

    • 占有和等待

    死锁是两个/两个以上的进程之间的关系(注意可以两个以上)

    必要条件都发生不一定导致死锁。

    资源分配图是有向图,阐述了系统资源和进程状态情况,每个资源和进程使用情况。

     

    什么时候会出现死锁:

    • 图中没有环,则没有发生死锁。
    • 一个实例,有环就死锁
    • 多个实例,有环不一定死锁

    对待死锁的态度:

    1. 不允许出现死锁
    2. 允许进入死锁但可以恢复
    3. 忽略系统进入死锁的情况

    (据说现在的操作系统都是ignore的,如果出现死锁就reset系统)

    怎么防止死锁:

    1. 能共享则共享(但打印机,扫描机这种就不能共享)
    2. 全部占有或全部等待【非常低的资源利用率,有可能饿死】
      1. P1 1,2,3,4,5(要么全部拿走,要么全都不拿走,如果它没法全拿走,那就只能留着等待)
      2. P2
      3. P5
    3. 抢占(系统成本非常高/不稳定)
    4. 循环等待(低资源利用率)

    注:内容渐渐复杂,要多看PPT和课本

     6/23

    安全状态

    确保每一次的系统切换不会进入非安全状态

    如果会有环则不会分配

    S1处于安全状态,可以找到这样的序列(定义)

    所以不存在找不到的情况

    7.5.3 银行家算法

    成本最低

  • 相关阅读:
    scrapy user-agent随机更换
    python框架Scrapy中crawlSpider的使用——爬取内容写进MySQL
    异步代理池2--正确实现并发
    python asyncio异步代理池
    SSH 上传下载文件
    scrapy 自定义扩展
    scrapy pipelines 以及 cookies
    scrapy 去重策略修改
    提车注意事项
    mysql 笔记
  • 原文地址:https://www.cnblogs.com/wfish/p/13156762.html
Copyright © 2011-2022 走看看