• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
常春藤的博客
   首页    新随笔       管理    订阅  订阅

软中断、tasklet、工作队列

软中断可以在不同CPU上同时运行,即使是同类型的软中断。它适合需要快速响应的处理函数,比如网络收发。

tasklet不可以在不同CPU上同时运行(同类型,不同类型可以同时运行)。实现方法:在该tasklet上有个变量state,调度时,如果该state不是运行状态,将运行,并且将state设置为running状态,这样其它CPU不能同时运行该类型tasklet。避免了全局变量的锁要求。

工作队列适合需要睡眠的任务,它将任务交给一个内核线程KSoftirq来处理,这个内核线程和基本进程类似,只不过它映射的内存空间是内核空间。

参考资料:http://blog.csdn.net/zhuky/article/details/5418602

posted @ 2011-08-21 22:32  常春藤的博客  阅读(345)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3