码迷,mamicode.com
首页 >  
搜索关键字:内核线程    ( 183个结果
Linux内核堆栈调用实现分析
1 内核线程 内核为每个线程分配8K的栈空间, 在每个堆栈的顶部放着struct thread_info 结构体,用来保存线程相关信息. 其中有几个重要变量: Preempt_count : 此变量分为四部分 0-7bit :当前进程是否能抢占的标志 8-15bit:softirq  使能标志 16-23bit :hardirq 使能标志 24bit:PREEMPT_ACTIVE...
分类:系统相关   时间:2014-12-13 10:52:06    阅读次数:485
第十三章 进程、线程类的实现
第十三章   进程、线程类的实现         多线程是指在一个进程内可以同时运行多个任务,每个任务由一个单独的线程来完成。线程是进程运行的基本单位,一个进程中可以同时运行多个线程。如果程序被设置为多线程方式,可以提高程序运行的效率和处理速度。 多个线程共用一个进程的资源;进程的调度、切换是在10ms的“时钟滴答”定时中断程序里进行。如果一个线程获得CPU,那么在下一个Tick到来前;是不可...
分类:编程语言   时间:2014-12-10 19:50:59    阅读次数:309
用户线程和内核线程
1.内核级线程:切换由内核控制,当线程进行切换的时候,由用户态转化为内核态。切换完毕要从内核态返回用户态;可以很好的利用smp,即利用多核cpu。windows线程就是这样的。用户态转化为内核态的时候需要进行上下文的切换,是耗时的操作,因为有寄存器值的保存装载,内存缓存的失效和载入,中断程序的执行等。 2. 用户级线程内核的切换由用户态程序自己控制内核切换,不需要内核干涉,少了进出内核态...
分类:编程语言   时间:2014-12-08 23:05:08    阅读次数:334
linux内核中的线程创建接口
介绍一些内核给我们提供的用于在内核中创建线程的内核接口函数。其实在linux内核中,无论是进程还是线程,都是用structtask_struct结构体来表示的。用于创建一个内核线程的函数:structtask_struct*kthread_create(int(*threadfn)(void*data),void*data,constcharnamefmt[]);th..
分类:编程语言   时间:2014-11-26 16:48:13    阅读次数:164
Java多线程模型
谈到Java多线程就涉及到多线程的模型及Java线程与底层操作系统之间的关系。正如我们熟知,现代机器可以分为硬件和软件两大块,如图2-5-1-1,硬件是基础,软件提供实现不同功能的手段。而且软件可以分为操作系统和应用程序,操作系统专注于对硬件的交互管理并提供一个运行环境给应用程序使用,应用程序则是能实现若干功能的并且运行在操作系统环境中的软件。同样,线程按照操作系统和应用程序两层次可以分为内核线程...
分类:编程语言   时间:2014-11-08 23:42:33    阅读次数:325
kobox : key_waitqueue.c -v1 怎样内核线程,怎样使用等待队列
怎样内核线程,怎样使用等待队列...
分类:编程语言   时间:2014-10-17 00:46:23    阅读次数:411
kobox -- key_tasklet.c -v1
将key.c中的timer机制、key_wq.c中的workqueue机制改成tasklet机制,完成中断的下半部 需要特别注意:tasklet中不可休眠,其上下文是中断,而workqueue是可以休眠的,wq的上下文是内核线程 所以这里并没有去除抖动,如果需要延时去抖动,timer或者workqueue更合适 如果需要休眠,就不能选择tasklet #include "key.h...
分类:其他好文   时间:2014-10-15 23:59:21    阅读次数:497
linux 内存地址空间管理 mm_struct
Linux对于内存的管理涉及到非常多的方面,这篇文章首先从对进程虚拟地址空间的管理说起。(所依据的代码是2.6.32.60) 无论是内核线程还是用户进程,对于内核来说,无非都是task_struct这个数据结构的一个实例而已,task_struct被称为进程描述符(process descriptor),因为它记录了这个进程所有的context。其中有一个被称为'内存描述符‘(memory de...
分类:系统相关   时间:2014-09-24 12:32:06    阅读次数:365
linux常见进程与内核线程
kthreadd:这种内核线程只有一个,它的作用是管理调度其它的内核线程。它在内核初始化的时候被创建,会循环运行一个叫做kthreadd的函数,该函数的作用是运行kthread_create_list全局链表中维护的kthread。可以调用kthread_create创建一个kthread,它会被加...
分类:编程语言   时间:2014-09-18 14:46:23    阅读次数:285
内核级线程与用户级线程
这两天在写这篇blog的时候,顺带复习操作系统的资料,遇到了一个之前没有弄明白的问题,就是关于内核级线程与用户级线程。在查阅了一些资料之后,发表一下我个人简介。 线程已经在许多系统中实现,到那时各个操作系统实现方式不完全相同。 比如在有的系统中,特倍是一些数据库管理系统如IBM的infomix系统,所实现的用户级线程(UserLevel Threads ,ULT);而另一些系统如(Mac os的前...
分类:编程语言   时间:2014-09-01 10:48:03    阅读次数:261
183条   上一页 1 ... 15 16 17 18 19 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!