zoukankan      html  css  js  c++  java
  • 异步通知Fasync

    异步通知:当驱动程序可读写时,给应用程序发送一个信号SIGIO,应用程序执行信号处理程序。

    应用程序如何使用异步通知机制
    fcntl(F_SETOWN) // 设置调用进程对描述符的拥有关系,内核知道往哪个进程发送异步信号。
    fcntl(F_SETFL)  // 设置 O_ASYNC标志。导致fasync()驱动方法调用
    sigaction()  //注册SIGIO处理函数

    驱动程序如何使用异步通知
    fasync()
    {
      fasync_helper();
    }

    interrupt_handler()
    {
      kill_fasync(SIGIO,POLL_IN或POLL_OUT) ;发送 SIGIO给对应进程
    }

    如果异步通知要处理多个设备上来的异步事件时,需要借助select等机制。

  • 相关阅读:
    (一)Sturts2概述
    day18,常用的模块,os,sys...等
    day17,模块的导入
    day16
    day15
    day14
    day13
    day12
    day11
    day10
  • 原文地址:https://www.cnblogs.com/bobfly1984/p/14083135.html
Copyright © 2011-2022 走看看