码迷,mamicode.com
首页 >  
搜索关键字:内核空间    ( 686个结果
进程内核栈、用户栈
进程内核栈、用户栈1.进程的堆栈 内核在创建进程的时候,在创建task_struct的同事,会为进程创建相应的堆栈。每个进程会有两个栈,一个用户栈,存在于用户空间,一个内核栈,存 在于内核空间。当进程在用户空间运行时,cpu堆栈指针寄存器里面的内容是用户堆栈地址,使用用户栈;当进程在内核空间时,cp...
分类:系统相关   时间:2015-04-16 23:30:35    阅读次数:236
进程里的几个栈
很多资料上都写分用户栈、内核栈、中断栈,主要问题就是系统安全和健壮性考虑,用户栈处于用户空间,内核栈处于内核空间,权限不一样。 系统调用 :内核态,运行于进程上下文,内核代表进程运行于内核空间       硬件中断 :内核态,运行于中断上下文,内核代表硬件运行于内核空间; 异常  :...
分类:系统相关   时间:2015-04-16 17:37:01    阅读次数:153
进程的内核栈和用户栈
进程内核栈、用户栈 1.进程的堆栈      内核在创建进程的时候,在创建task_struct的同事,会为进程创建相应的堆栈。每个进程会有两个栈,一个用户栈,存在于用户空间,一个内核栈,存在于内核空间。当进程在用户空间运行时,cpu堆栈指针寄存器里面的内容是用户堆栈地址,使用用户栈;当进程在内核空间时,cpu堆栈指针寄存器里面的内容是内核栈空间地址,使用内核栈。 2.进程用户栈和内核栈的切...
分类:系统相关   时间:2015-04-15 17:17:16    阅读次数:150
专题8-Linux系统调用
1.从用户空间到内核空间的时候需要进行系统调用2.系统调用通过swi指令实现,这个时候会有一个参数,存放到r7寄存器,用来指定要调用的内核态函数。3.一般内核态的实际函数可以再任意的.c文件实现,但是必须在call.S里面加上相应的函数指针(添加表项)4.而且要在unistd.h里面对参数进行声明。...
分类:系统相关   时间:2015-04-15 16:37:34    阅读次数:127
【源码分析】动态分析 C 程序函数调用关系
上篇《静态分析 C 程序函数调用关系图》 介绍了 CallGraph 静态分析 C 语言程序的函数调用,该篇继续分析源码,不过是分析 C 程序运行时的函数调用关系,所以谓之动态分析,主要讲 Gprof 以及 Valgrind 的 Callgrind,外加 Gprof2Dot。这里主要是分析应用空间,下篇将分析 Linux 内核空间的函数调用关系,相应的工具包括 Perf, Ftrace, FlameGraph。...
分类:其他好文   时间:2015-04-15 09:42:06    阅读次数:192
在Ubuntu为Android硬件抽象层(HAL)模块编写JNI方法提供Java访问硬件服务接口(老罗学习笔记4)
在上两篇文章中,我们介绍了如何为Android系统的硬件编写驱动程序,包括如何在Linux内核空间实现内核驱动程序和在用户空间实现硬件抽象层接口。实现这两者的目的是为了向更上一层提供硬件访问接口,即为Android的Application Frameworks层提供硬件服务。我们知道,Android...
分类:移动开发   时间:2015-04-11 20:38:03    阅读次数:213
Linux kmalloc/kfree 源码解读
kmalloc/kfree用于划分和回收内核空间低区内存的方法。改组方法没有直接通过伙伴系统进行内存的划分,通过slab算法进行分配的。同时也为每个CPU提供一个阵列缓存,用于提高分配效率。下面对改组函数进行源码级的分析。内存分配static inline void *kmalloc(size_t ...
分类:系统相关   时间:2015-04-10 17:15:55    阅读次数:249
select与epoll分析
关于select与epoll的区别,网上的文章已是一大堆。不过别人的终究是别人的,总得自己去理解才更深刻。于是在阅读了大量的文章后,再装模作样的看下源码,写下了自己的一些理解。 在开始之前,要明白linux中分用户空间、内核空间,这相当于两块不能直接相互访问的内存。而用户程序要访问设备,包括网...
分类:其他好文   时间:2015-04-04 19:48:37    阅读次数:351
嵌入式系统Linux内核开发工程师必须掌握的三十道题 (转)
1) Linux中主要有哪几种内核锁?2) Linux中的用户模式和内核模式是什么含意?3) 怎样申请大块内核内存?4) 用户进程间通信主要哪几种方式?5) 通过伙伴系统申请内核内存的函数有哪些?6) 通过slab分配器申请内核内存的函数有?7) Linux的内核空间和用户空间是如何划分的(以32位...
分类:系统相关   时间:2015-04-01 23:33:03    阅读次数:192
linux 下处理器的三种状态
在Linux中,任何时候,处理器都处于以下三种状态之一:1)在用户空间,在某个进程中执行用户代码2)在内核空间,处于进程上下文中,执行某个特定的进程3)在内核空间,处于中断上下文中(与进程无关),进行中断处理应用程序、内核与硬件的关系图如下:
分类:系统相关   时间:2015-04-01 15:16:48    阅读次数:152
686条   上一页 1 ... 57 58 59 60 61 ... 69 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!