定义:
epoll是Linux内核为处理大批句柄而作改进的poll,是Linux下多路复用IO接口select/poll的增强版本,它能显著的减少程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。因为它会复用文件描述符集合来传递结果而不是迫使开发者每次等待事件之前都必须重新准备要被侦听的....
分类:
系统相关 时间:
2014-05-19 10:13:07
阅读次数:
485
linux中的经典宏定义 offsetof
定义:offsetof在linux内核的include/linux/stddef.h中定义。 #define offsetof(TYPE, MEMBER)
((size_t) &((TYPE *)0)->MEMBER)说明:获得结构体(TYPE)的变量成员...
分类:
系统相关 时间:
2014-05-18 01:30:21
阅读次数:
515
//rbtree.h /* Red Black Trees (C) 1999 Andrea
Arcangeli This program is free software; you can redistribute it and/or modify
it under the terms of the...
分类:
系统相关 时间:
2014-05-18 01:05:37
阅读次数:
489
[地址映射](图:左中)linux内核使用页式内存管理,应用程序给出的内存地址是虚拟地址,它需要经过若干级页表一级一级的变换,才变成真正的物理地址。想一下,地址映射还是一件很恐怖的事情。当访问一个由虚拟地址表示的内存空间时,需要先经过若干次的内存访问,得到每一级页表中用于转换的页表项(页表是存放在内...
分类:
系统相关 时间:
2014-05-17 23:37:26
阅读次数:
476
安卓工具有3种:make、make
sdk、下载安装启动安卓模拟器需要文件:system.img、userdata.img、ramdisk.img(3个安卓镜像文件)、zImage(Linux内核镜像文件)命令:emulator默认使用:zImage:$PATH(/prebuilts/qemu-ke...
分类:
移动开发 时间:
2014-05-17 14:57:34
阅读次数:
304
在确保你安装好git后,我们就可以通过git来下载不同版本的linux kernel了,这时要先说一下...
分类:
系统相关 时间:
2014-05-15 12:12:37
阅读次数:
388
2.6内核
1>修改linux-source-2.6.31/kernel/sys.c文件,在文件末尾添加系统响应函数。函数实现如下:
asmlinkage int sys_mycall(int number)
{
printk("这是我添加的第一个系统调用");
return number;
}
2>在linux-source-2.6.31...
分类:
系统相关 时间:
2014-05-15 02:51:56
阅读次数:
382
【版权声明:转载请保留出处:blog.csdn.net/gentleliu。邮箱:shallnew*163.com】
内核在处理2层数据包之前,必须先处理中断系统,设立中断系统,才有可能每秒处理成千的帧。
当收到一个帧时,驱动程序会代表内核指示设备产生一个硬件中断,内核将中断其他的活动,然后调用一个驱动程序所注册的处理函数,以满足设备的需要。当事件是接收到一个帧时,处理函数...
分类:
系统相关 时间:
2014-05-14 20:12:37
阅读次数:
498
做一件事情首先应该知道它的目的是什么。
container_of的目的:如何通过结构中的某个变量获取结构本身的指针。
总体思路:假想一下,你的结构体中有好几个成员,你如何通过里面的“任一成员”获取
整个结构体的首地址呢。container_of的做法就是通过typeof定义一个与“任一成员”同类型
的指针变量pvar_a(假设变量名就是pvar_a),并让指针变量pvar_a指向这个“...
分类:
系统相关 时间:
2014-05-14 19:56:15
阅读次数:
494
网卡驱动为每个新的接口在一个全局的网络设备列表里插入一个数据结构.每个接口由一个结构 net_device 项来描述, 它在 里定义.每一个接口必须动态分配内存。...
分类:
系统相关 时间:
2014-05-14 19:48:00
阅读次数:
417