• IO的理解和等待队列和阻塞和非阻塞的理解


                                                     IO就是读数据或者写数据     包含一个时间概念在里面  包含一个system概念 

                                                     读数据的策略  

                                                     

                               

    阻塞和非阻塞时设备访问的两种基本形式。使用这两种形式,驱动程序可以灵活地支持阻塞和非阻塞的访问。select函数底层实现,里面实现用就是等待队列。

    阻塞调用时指调用结果返回之前,当前线程挂起。函数只有得到结果之后才会返回。

    等待队列可以用来同步对系统资源的访问,例如完成一项工作之后,才允许完成另一项工作。尤其是在中断处理,进程同步和定时等场合,

    可以使用等待队列实现阻塞进程的唤醒,它以队列为基础的数据结构,与进程调度机制紧密结合,能够用于实现内核中的异步事件通知机制,同步对系统资源的访问。

    阻塞就是等待队列去了。

    等待队列需要的操作:

     

     总结: 

            阻塞和非阻塞在驱动程序中经常用到。 阻塞在IO操作暂时不能进行时,让进程进入等待队列。

    后者在IO操作暂时不能进行时,立刻返回。阻塞和非阻塞就是由等待队列实现的。 

        

                          

                                                    

    一勤天下无难事。
  • 相关阅读:
    杭州电acm理工大舞台版
    String.Split()功能
    android layout物业介绍
    讨厌OpenSSL
    Android Bundle类别
    多项式回归
    如何直接串行电缆以及空调制解调器串行电缆之间的区别?
    为什么写科技博客是情侣如此重要?
    SSH框架总结(帧分析+环境结构+示例源代码下载)
    RapidXml用法
  • 原文地址:https://www.cnblogs.com/nowroot/p/12637529.html
Copyright © 2020-2023  润新知