内核线程学习笔记

1,内核线程大部分操作和驱动模块一样,有init和exit,也使用insmod命令加载.ko文件,加载后内核线程自动执行,不受用户影响,具体情况以后再续

2,当我加载了一个ko文件后用ps查看,可见,多出来了一个mythread。

3,用top命令可以查看各个进程,相当于windows的任务管理器,cpu使用,内存使用等情况动态刷新

4,当运行一个试验版的内核线程且无其他特殊任务的时候,该线程占用了cpu99%的时间,可以说整个cpu就在跑这么一个线程了。当然如果开启了其他进程,比如播放视频,那就不一样了,相当于两者竞争使用cpu。

5,    while(!kthread_should_stop())
        {
//            key = (s3c2410_gpio_getpin(S3C2410_GPG(11)) && 0x800);
//            if(!key)
            leds_all_on();
 //           printk("SW7 = %d\n", key);
 //           printk("%s,leds ON\n",mydata);
            SLEEP_MILLI_SEC(1);
            leds_all_off();
 //           SLEEP_MILLI_SEC(500);
 //           printk("%s,leds OFF\n",mydata);
        }

如上,在线程内只做gpio翻转和sleep 1个ms,现象:gpio翻转周期约3us,占空比为50%;cpu几乎完全被占用,触屏等失效。痛苦的是我把它加到启动脚本了,这下又要刷机才能解决问题了,哭啊

6,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值