码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 假脱机技术——实现独占设备变成共享设备


    文章目录

    • 什么是脱机技术
    • 假脱机技术——SPOOLing
        • 输入井和输出井
        • 输入进程与输出进程
        • 输入输出缓冲区
    • 共享打印机原理分析—假脱机技术的一种应用

    什么是脱机技术

    在这里插入图片描述

    在这里插入图片描述

    • 因为我们的手工操作阶段,主机之间从I/O设备获得数据,由于设备由人工操作,主机速度很快,但是人机速度很慢,主机会浪费很多时间来等待设备
    • 批处理阶段引入了脱机输入/输出技术
      • 在外围控制机的控制下,慢速输入设备的数据提前被输入到速度更快的磁带上,之后主句可以从快速的磁带读入数据
      • 我们从I/O设备将数据放入我们的高速磁带中,是不需要主机的控制,所以叫脱机

    假脱机技术——SPOOLing

    • 在脱机技术的基础上人们发明了更好的假脱机技术

    输入井和输出井

    在这里插入图片描述

    • 输入井和输出井在我们的磁盘上
    • 输入井模拟脱机输入时的磁带,用于收容I/O设备的输入的数据
    • 输出井模拟脱机输出时的磁带,用于收容用户进程输出的的数据

    输入进程与输出进程

    在这里插入图片描述

    • 输入进程模拟脱机输入时的外围控制机
    • 输出进程模拟脱机输出时的外围控制机
    • 所以要实现假脱机的基础是必要有多道程序技术的支持

    输入输出缓冲区

    在这里插入图片描述

    • 输入缓冲区和输出缓冲区是在内存中的
    • 在输入进程的控制下,输入缓冲区用于暂存从输入设备输入的数据,之后再转存到输出井中
    • 在输出进程的控制下,输出缓冲区用于暂存从输出井送来的数据,之后再传送到输出设备上

    共享打印机原理分析—假脱机技术的一种应用

    • 我们的打印机是一种输出设备

    在这里插入图片描述

    在这里插入图片描述

    • 在多个用户进程提出输出打印的请求的时候,系统会答应它们的请求,但是并不是把真正的打印机分配给它们,而是由假脱机管理进程为每个进程做两件事
      1. 在磁盘输出井中为进程申请应该空闲缓冲区(在磁盘上的),并将要打印的数据送入其中
      2. 为用户进程申请一张空白的打印请求表,并将用户的打印请求填入表中(其实就是用来说明用户打印数据的存放位置等),在将该表挂到假脱机文件队列上
        • 当打印机空闲的时候,输出进程会从文件队列的队头取出一张打印请求表,并根据表中的要求将打印的数据从输出井传送到输出缓冲区,再输出到打印机进行打印
  • 相关阅读:
    (1)(1.7) GY-US42声纳
    【杂项学习】Open3D的基本使用
    正则表达式的限定符、或运算符、字符类、元字符、贪婪/懒惰匹配
    Java 设计模式实战系列—策略模式
    ElasticSearch 升级指导
    [SWPUCTF 2021 新生赛]crypto2
    【报错记录】spring boot 版本升级2.6.8 到之后的swagger3报错
    RetinaNet与点云聚类耦合的深度学习个体树分割方法研究
    基于探针的分布式追踪工具
    使用cpolar发布群晖NAS上的网页(2)
  • 原文地址:https://blog.csdn.net/qq_50985215/article/details/127741996
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | 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号