关闭

lk中的idle thread

391人阅读 评论(0) 收藏 举报
分类:
和kernel中的start_kernel一样最后会变成idle,lk中kmain最后也是调用thread_become_idle
将自己编程idle thread
void thread_become_idle(void)
{
thread_set_name("idle");
thread_set_priority(IDLE_PRIORITY);
idle_thread = current_thread;
idle_thread_routine();
}


修改当前thread的name为idle,修改优先级为IDLE_PRIORITY,将idle_thread赋值为current_thread
最后调用idle_thread_routine来设置idle是做的事情。
static void idle_thread_routine(void)
{
for(;;)
arch_idle();
}
死循环调用arch_idle
FUNCTION(arch_idle)
#if ARM_CPU_CORTEX_A8
.word 0xe320f003 /* wfi */
#elif PLATFORM_MSM7K
/* TODO: safely handle wfi */
#elif ARM_CPU_ARM1136 || ARM_CPU_ARM926
mov r0, #0
mcr p15, 0, r0, c7, c0, #4
#elif ARM_CPU_ARM7
/* nothing to do here */
#else
#error unknown cpu
#endif
bx lr

就是让cpu 处于wfi状态。
由于idle 优先级最低,所以没有thread 运行是就运行idle,当有new 一个thread的时候,
由于新thread的优先级比idle 的高,所以就会抢占idle thread来运行.
0
0
查看评论

异常--Interrupting idle Thread

今天遇到系统无法访问问题,检查日志异常如下。 异常信息 |WARNING|glassfish3.1.2|com.sun.grizzly.config.GrizzlyServiceListener|_ThreadID=14;_ThreadName=Thread-2;|GRIZZLY0023: In...
  • u010926176
  • u010926176
  • 2015-02-12 14:58
  • 1775

MTK lk源码解析3( lk 阶段thread.c解析)

http://blog.csdn.net/xichangbao/article/details/51484585 从thread_resume(thread_create("bootstrap2", &bootstrap2, NULL, DEFAULT_PRIO...
  • ffmxnjm
  • ffmxnjm
  • 2017-04-18 17:19
  • 467

Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: PermGen space

问题:Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: PermGen space 运行环境:intellij idea 12.1.6、tomcat7、mac系统 解决方案: ...
  • T867797806
  • T867797806
  • 2014-01-21 14:13
  • 10408

android lk解读

之前看过lk但是都是零散,也记不住,这次好好记录一下,就当自己的随笔看看 lk的第一个函数 void kmain(void) { // get us into some sort of thread context thread_init_early(); // early arch st...
  • u013308744
  • u013308744
  • 2016-08-23 10:16
  • 562

idea报 Exception in thread "RMI TCP Connection(idle)"

错误内容:Exception in thread "RMI TCP Connection(idle)"   java.lang.OutOfMemoryError: PermGen space 有时候从svn当下来的项目运行总是报错,虚拟机内存不够用,在tomcat中...
  • u014001717
  • u014001717
  • 2017-10-11 09:17
  • 204

IDEA - MySql / Spring mvc : Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryErro

运行Intellij idea 时output窗口出现该问题:Exception in thread “RMI TCP Connection(idle)” java.lang.OutOfMemoryError: PermGen space导致有些功能不能继续执行。运行环境:intellij idea...
  • LABLENET
  • LABLENET
  • 2016-04-13 22:55
  • 1226

Tomcat内存溢出的原因--Exception in thread “RMI TCP Connection(idle)” ---OutOfMemoryError: PermGen space

原址:点击打开链接 Idea 设置:Edit configurations --> VM options:     -Xms258m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=256m 在生产环境中tomcat内存设置不好...
  • u011461420
  • u011461420
  • 2016-04-21 10:04
  • 2406

一段关于死锁的讨论

转自:http://topic.csdn.net/u/20080222/23/70e12272-2f9c-4004-81a5-85bdac086729.html /*******************************************************************...
  • coder_jack
  • coder_jack
  • 2011-10-21 10:48
  • 1165

idea报 Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: PermGen space

最近老是遇到这个问题: Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: PermGen space,每次从SVN上边拉下来一个项目就会报这个错误,导致项目跑不起来,每次报错都要在...
  • wojiaohuangyu
  • wojiaohuangyu
  • 2017-03-28 11:14
  • 2403

异常--Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: PermGen space

Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: PermGen space 解决办法:在tomcat中的以下位置配置vm,数据大小根据自己需要, -Xms256m -...
  • A0001AA
  • A0001AA
  • 2017-06-05 15:32
  • 577
    个人资料
    • 访问:316526次
    • 积分:14118
    • 等级:
    • 排名:第1050名
    • 原创:1133篇
    • 转载:0篇
    • 译文:11篇
    • 评论:9条
    最新评论