• IO--磁盘理论


    磁盘从圆心由内向外被分成多个磁道,而每个磁道会被划分成多个连续的扇区

     

    扇区是磁盘寻址的最小单位,而实际上分配空间最小的单位是簇(cluster),因此导致文件大小和实际占用空间大小不一样

     

    磁盘读写数据开销:

    1.寻道时间,磁盘臂移动到特定磁道的开销=启动磁盘臂开销+所需移动磁道数*特定常量

    2.扭转延迟:将目标扇区移动到磁头的时间,与磁盘转数成反比

    3.数据传输:从磁盘读取/写入数据的开销=读写文件大小/(每秒转数*每扇区字节数)

     

    磁盘调度算法:

     

    1.先来先服务算法:first come first service

      对Disk IO进行队列化,一次服务,公平简单,但不能降低寻道时间

    2.最短寻道时间

      优先反复服务离当前最近的请求,减少寻道时间,但会导致离当前磁道较远的请求永远得不到响应

    3.扫描算法

      在最短寻道时间的基础上优化,寻找从当前位置到目标位置中间最近一个服务对象,这样保证离当前磁道最远的目标也能得到响应,但是响应需要等到较长时间

    4.轮回扫描算法:

      类似电梯工作机制,在最外层磁道和最里层磁道间来回移动,寻找最近的服务对象,降低两端磁道请求的响应延长度,相对公平并且能有效减少总体寻道时间。

     

    局部性原理

    空间局部性:当前数据周围的数据有较高可能被读取

    时间局部性:当前数据有可能在后续时间呗再次读取

     

    空间局部性:预读(Read-ahead)

    时间局部性:延迟写(Delay write)

  • 相关阅读:
    linux下编译安装php
    linux下离线安装gcc g++
    linux下编译安装apache
    pg数据库
    原生js隐藏和显示滚动条
    db2_txt转mysql
    各种常见状态码
    laravel 命令生成器
    php7.4 下使用phpExcel
    Katalon Studio命名规则
  • 原文地址:https://www.cnblogs.com/TeyGao/p/3520411.html
Copyright © 2020-2023  润新知