zoukankan      html  css  js  c++  java
  • fasync函数处理

    为了使设备支持异步通知机制,驱动程序中涉及以下3项工作:
    1. 支持F_SETOWN命令,能在这个控制命令处理中设置filp->f_owner为对应进程ID。
    不过此项工作已由内核完成,设备驱动无须处理。
    2. 支持F_SETFL命令的处理,每当FASYNC标志改变时,驱动程序中的fasync()函数将得以执行。
    驱动中应该实现fasync()函数。

    3. 在设备资源可获得时,调用kill_fasync()函数激发相应的信号


    应用程序:
    fcntl(fd, F_SETOWN, getpid()); // 告诉内核,发给谁

    Oflags = fcntl(fd, F_GETFL);
    fcntl(fd, F_SETFL, Oflags | FASYNC); // 改变fasync标记,最终会调用到驱动的faync > fasync_helper:初始化/释放fasync_struct

    版权声明:本文为博主原创文章,转载请注明文章来源,有需要帮忙可加QQ:871263854
  • 相关阅读:
    8086汇编 学习1
    微信小程序 websocket+node.js(ws)
    kali安装google 浏览器
    bugkuctf Easy_Re
    课设记录-Day06
    GitLab使用教程
    课设记录-Day05
    课设记录-Day04
    课设记录-Day03
    课设记录-Day02
  • 原文地址:https://www.cnblogs.com/Dream998/p/8540506.html
Copyright © 2011-2022 走看看