2.4 设备管理

embedded/2024/12/28 17:00:09/

文章目录

  • 设备管理概述
  • 设备管理技术
  • 磁盘调度

设备管理概述

在这里插入图片描述
设备管理是操作系统中最繁杂、与硬件关系紧密的部分。
设备可以按照数据组织、资源分配、数据传输率分类。

  • 数据组织:分为块设备(ex. 磁盘)、字符设备(ex. 打印机)。
  • 资源分配:独占设备(ex. 打印机)、共享设备(ex. 磁盘)、虚拟设备(假脱机技术使一台变多台)。
  • 数据传输率:低速设备(ex. 键盘)、中速设备(ex. 打印机)、高速设备(ex. 磁盘机)。

设备管理的目标:提高设备利用率,为用户提供方便统一的界面。
设备管理的任务:多进程竞争设备时,分配和管理各设备。具体的,记录设备状态、分配和释放设备、管理缓冲区、实现物理I/O设备操作、提供用户接口、设备访问与控制。

设备管理技术

在这里插入图片描述
设备管理技术包括通道、DMA(直接内存存取)、缓冲和spooling技术(假脱机技术)。

  • 通道技术:让数据的传输独立于CPU。
  • DMA技术:实现数据在内存和I/O设备间的块传送,提高传送效率。
  • 缓冲技术:缓和CPU与I/O速读不匹配的矛盾,让外设尽可能处于忙状态。
  • spooling技术:使用一类物理设备模拟另一类物理设备,使独占设备变成多台虚拟设备。

spooling系统中包含程序和数据两大块。spooling系统记录作业表(登记所有作业名、状态、预输入表位置),每个作业记录各自的预输入表(登记该作业各文件情况)。
作业通过输入设备,被预输入程序捕捉,将作业信息装入输入井。经过作业调度程序,某个作业进入可运行状态,通过井管理程序,从输入井获取输入信息,并执行作业。作业执行完毕后,通过井管理程序,将输出结果放入输出井。输出井中的结果信息,经过缓输出程序,传送到输出设备上。

磁盘调度

在这里插入图片描述
磁盘是很多盘片堆叠而成的,磁盘的调度主要分移臂调度和旋转调度。
移臂调度确定移动臂在盘片纵向的位置,如图中红色箭头方向所示。
由于磁盘访问最耗时的是移臂寻道,有很多移臂调度算法,用于缩短平均寻道时间,包括先来先服务(FCFS),最短寻道时间优先(SSTF),扫描算法(SCAN),单向扫描算法(CSCAN)。这些算法都是用于决定移动臂的移动方向的。

  • 先来先服务:哪个进程先提出请求,移动臂就先去对应的磁道。
  • 最短寻道时间优先:先访问离当前磁头最近的磁道。
  • 扫描算法:从内向外,再从外向内不断扫描,也叫电梯调度算法。
  • 单向扫描算法:磁头只做单一方向的移动,到头后立刻回到起点。

旋转调度是移动臂定位后,确定不同进程访问柱面的顺序。

  • 访问不同编号扇区:先到达磁头下方的扇区先做数据传输。
  • 访问不同磁道相同编号扇区:任意磁头下的扇区先做数据传输。

http://www.ppmy.cn/embedded/148531.html

相关文章

精准提升:从94.5%到99.4%——目标检测调优全纪录

🚀 目标检测模型调优过程记录 在进行目标检测模型的训练过程中,我们面对了许多挑战与迭代。从初始模型的训练结果到最终的调优优化,每一步的实验和调整都有其独特的思路和收获。本文记录了我在优化目标检测模型的过程中进行的几次尝试&#…

List直接使用removeAll报错

List直接使用removeAll报错 需要先将list转换才能使用 原因是: removeAll 方法在 Java 中用于从当前列表中删除另一个列表中存在的所有元素。如果直接对 List 接口的一个实现使用 removeAll 方法抛出异常,可能的原因有: 不同的List实现&am…

攻防世界 web view_source

开启场景 右键用不了就 F12 试试,然后看见了 flag cyberpeace{62caa734bc21cc4f9dc97ece9a882cd3}

Docker 镜像加速和配置的分享 云服务器搭建beef-xss

前言 最近很多的docker镜像加速都鸡鸡了 找点资源是越来越不容易了 什么事docker 因为我是个业余的人 我简单的说 docker就是比如我们的软件商店的 下载 docker镜像(之前就是我们在服务器上搭建网站 和环境的很费力费时 之后就有了这个 镜像 :这…

电气设计 | 低压接地系统:TN-C 、TN-S、TN-C-S、TT适用哪些场所?

电气设计 | 低压接地系统:TN-C 、TN-S、TN-C-S、TT适用哪些场所? 1、低压配电系统简介2、各种低压配电系统介绍2.1、TN-C系统2.2、TN-S系统2.3、TN-C-S 系统2.4、TT 系统2.5、IT 系统 1、低压配电系统简介 低压配电系统有TN-C、TN-S、TN-C-S、TT和IT五种…

解析CGI(通用网关接口)技术

在互联网技术飞速发展的今天,CGI(Common Gateway Interface,通用网关接口)作为一种常见的服务器端脚本技术,依然在许多老旧网站和小型网站中广泛使用。尽管如今有许多更现代的技术替代了CGI,但它仍然是理解…

Docker-如何启动docker

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。 我们在上一章,讲了虚拟化,虚拟化是把硬件虚拟化,然后创建出来的虚拟机完全隔离&#xff…

项目底链华为链切换长安链经验总结

项目底链华为链切换长安链经验总结 前言业务需求分析智能合约重写k-v存储结构设计设计上链存储的结构体使用迭代器查询历史记录长安链合约编辑器历史记录返回错误材料上链非必传字段 Int 类型自动赋值长安链cmc工具部署合约ca证书需齐全分页查询截取处理,返回 nil处…