码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【操作系统】磁臂黏着现象


    文章目录

      • 什么是磁臂黏着?
      • 为什么 FCFS(First Come First Service) 可以避免磁臂黏着?
      • 为什么 scan,cscan 会产生磁臂黏着?
      • 为什么 NsetpScan 可以避免磁臂黏着?
        • NScan 原理简介
        • NScan 避免磁臂黏着的原因
      • 为什么 FScan 可以避免磁臂黏着?

    什么是磁臂黏着?

    • 系统总是访问磁盘的某个磁道而不响应对其他磁道的访问请求,这种现象称为磁臂黏着

    为什么 FCFS(First Come First Service) 可以避免磁臂黏着?

    • FCFC 是先来先服务,不同的磁道的请求只要排队总会排到的
      在这里插入图片描述
    • 请求 2(5 号磁道)会在处理完请求 1 (100 号磁道)后处理,即使后续的 n 个请求都在 100 号磁道

    为什么 scan,cscan 会产生磁臂黏着?

    • 假设初始时刻,磁头从 0 号磁道开始,向右移动
    • 当运动到磁道 100 时,有请求 100, 和 5,如果在处理完请求前,持续有对 100 号磁道的访问请求,那么磁头就会停在 100 号磁道一段时间
    • 只有当右侧的请求处理完成了,磁头才会从右往左,去处理 5 号磁道的请求
    • 那么磁盘请求的处理顺序就是:1,3,4,…,2+n,最后再处理请求 2
      在这里插入图片描述

    为什么 NsetpScan 可以避免磁臂黏着?

    NScan 原理简介

    在这里插入图片描述

    NScan 避免磁臂黏着的原因

    在这里插入图片描述

    • 还是同样的请求,NScan 会将请求分为 N 个队列,假设 N = 2 吧

    • 子队列的划分方法多样,假设第 1 个子队列大小为 3,剩余的请求全部放到第 2 个子队列
      在这里插入图片描述

    • 由于请求 1~3 是最先到达的,因此子队列 1 按照 FCFS 算法会被优先服务
      在这里插入图片描述

    • 虽然请求 2,3 仍然会持续访问 100 号磁道,但这个队列只有 3 个元素,因此 100 号磁道处理完成后,就可以处理 5 号磁道的请求了

    • 特别的,当 N = 1 时,NScan 退化为 FCFS 算法,而 FCFS 不会产生磁臂黏着

    为什么 FScan 可以避免磁臂黏着?

    • FScan 算法实质上是N步SCAN算法的简化,即:FSCAN只将磁盘请求队列分成两个子队列。

      • 一个是由当前所有请求磁盘的进程形成的队列,由磁盘调度按SCAN算法进行处理
      • 另一个是在扫描期间,将新出现的所有请求磁盘I/O的进程放入等待处理的请求队列
    • 这样,所有的新请求都将被推迟到下一次扫描时处理,因此和 NScan 同理

  • 相关阅读:
    Cisco简单配置(十三)—链路聚合
    nvm的安装及使用(入门级)
    报错opencv2:compileDebugJavaWithJavac
    mysql—各种函数的使用
    Android 图表开源库调研及使用示例
    python 图像处理(一阶梯度图像和角度图像)
    Express中的JWT使用
    阿里p8扫地僧最新分享的“Redis深度笔记”,全程精点无废话
    Linux Java环境变量设置教程
    dosbox调试模式下0000:0000地址中内容被修改的原因
  • 原文地址:https://blog.csdn.net/m0_52733659/article/details/133840705
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号