- 博客(3)
- 资源 (3)
- 收藏
- 关注
原创 Linux编译链接问题----静态库和动态库
<br /><br />1. Linux静态库和动态库的命名规则:<br />静态函数库:静态库的名字一般是libxxx.a,利用静态库编译生成的文件比较大,因为整个静态库所有的数据都会被整合进目标代码中。<br />a) 优点:编译后,可执行文件不需要外部支持;<br />b) 缺点:生成的可执行程序大;静态库改变了,就需要重新编译可执行程序。<br /> <br />动态函数库:动态库的名字一般是libxxx.so,相对于静态库,动态函数库在编译的时候并没有被编
2011-05-10 18:15:00 8719 1
原创 Linux-2.6-32的内核栈和用户空间栈关系
<br /> <br />1.进程的堆栈<br />内核在创建进程的时候,在创建task_struct的同事,会为进程创建相应的堆栈。每个进程会有两个栈,一个用户栈,存在于用户空间,一个内核栈,存在于内核空间。当进程在用户空间运行时,cpu堆栈指针寄存器里面的内容是用户堆栈地址,使用用户栈;当进程在内核空间时,cpu堆栈指针寄存器里面的内容是内核栈空间地址,使用内核栈。<br /> <br />2.进程用户栈和内核栈的切换<br />当进程因为中断或者系统调用而陷入内核态之行时,进程所使用的堆栈也要从用户栈
2011-05-10 09:30:00 2127
转载 Linux-2.6 内核软中断(softirq)执行分析
<br /> 今天无意中看了眼 2.6 内核的软中断实现,发现和以前我看到的大不相同(以前也是走马观花,不大仔细),能说改动非常大。连 softirq 的调用点都不相同了,以前是三个调用点,今天搜索了一下原始码,发目前多出了ksoftirqd 这个东西后,softirq 在系统中的调用点仅是在 ISR 返回时和使用了 local_bh_enable() 函数后被调用了。网卡部分的显示调用,我觉得应该不算是系统中的调用点。ksoftirqd 返回去调用 do_softirq() 函数应该也只能算
2011-05-05 09:56:00 2223
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人