源码解析
文章平均质量分 85
小小黄
这个作者很懒,什么都没留下…
展开
-
linux2.6.22.6驱动源码框架分析
1.Input驱动事件处理层(drivers/input/evdev.c、drivers/input/tsdev.c、drivers/input/joydev.c、drivers/input/mousedev.c等)核心层(drivers/input/input.c)硬件驱动层(drivers/input/keyboard/s3c2410ts.c、...) 2.LCD驱动F原创 2013-02-25 22:01:50 · 448 阅读 · 0 评论 -
tcpdump and libpcap
调用过程---------------------------------------------------------------------------------------------char * device; /* 用来捕获数据包的网络接口的名称 */pcap_t * p; /* 捕获数据包句柄,最重要的数据结构 */struct bpf_program fcode; /原创 2015-11-02 13:31:56 · 354 阅读 · 0 评论 -
netlink_进程与进程_进程与内核间通信
进程与进程间通信方式IPC:1. 早期unix IPC:管道,FIFO,信号2. System V IPC(贝尔实验室): system V消息队列,system V信号灯,system V共享内存3. socket IPC (BSD)4. Posix IPC: Posix消息队列,Posix信号灯,Posix共享内存 线程间通信:1. 全局变量2. 线程锁3....原创 2015-11-02 13:36:04 · 2026 阅读 · 0 评论 -
Linux源码
Linux启动分析Linux根文件系统挂载过程2.6.12: start_kernel() -> rest_init() -> init() -> do_basic_setup() -> do_initcalls() -> prepare_namespace() -> mount_root()原创 2016-05-05 12:01:44 · 377 阅读 · 0 评论 -
Linux USB驱动
CPU通过USB主机控制器和USB设备打交道。USB总线以轮询方式工作。所有数据传输必须由主机发起。USB通信最基本形式是通过USB设备里的端点,端点和主机通过管道连接。端点有方向。所有的USB设备必须具有端点0,作为缺省的控制管道,它可以作为in端点,也可以作为out端点。低速设备做多拥有2个端点,高速设备做动15个in端点和15个out端点。这些端点在设备内部拥有固定唯一的端点号。原创 2017-03-24 15:56:46 · 407 阅读 · 0 评论 -
wpa_supplicant-0.8源码解析
【启动】main()global = wpa_supplicant_init(¶ms)eap_register_methods()eloop_init()random_init()wpa_supplicant_global_ctrl_iface_init(global)wpas_notify_supplicant_原创 2015-11-06 17:23:02 · 1908 阅读 · 0 评论 -
Linux常用API
用pthread_cond_timedwait()代替sleep及时唤醒睡眠线程。1. 初始化mutex和cond。pthread_mutex_init(&mutex, NULL);pthread_cond_init(&cond, NULL);2. 在睡眠线程中调用pthread_cond_timedwait()进入睡眠状态。该函数内部睡眠前会自动释放锁,唤醒后自动加锁。 注意原创 2016-12-05 16:33:38 · 865 阅读 · 0 评论 -
Android知识点
--------------------------Android三种方式设置和获取属性:1. Native层使用property_get和property_set,头文件cutils/properties.h和libcutil库。2. Java层使用System.getProperty和System.setProperty方法。该系统属性与native层系统属性存储空间不同。3. Ja...原创 2017-05-18 18:29:03 · 872 阅读 · 0 评论 -
Android编译分析
Android编译分析 Makefile build/core/main.mk include $(BUILD_SYSTEM)/config.mk include $(BUILD_SYSTEM)/envsetup.mk FIND_LEAVES_EXCLUDES := $(addprefix --pru原创 2017-10-11 11:23:15 · 338 阅读 · 0 评论 -
Debug
Android C/C++ Logsystem/core/include/cutils/log.h // ALOGV,ALOGD,ALOGI,ALOGW,ALOGEsystem/core/include/log/log.h // ALOGV ALOGD ...system/core/include/android/log.h // __android_log_print ...And...原创 2015-08-31 10:33:04 · 889 阅读 · 0 评论 -
用ioctl配置网络
#include #include #include #include #include #include #include #include #include #define AEIDEBUGERROR printf#define AEIDEBUGIMPORTANTINFO printf/*! * * * Return: * * \author Ocean原创 2016-12-02 15:58:21 · 991 阅读 · 0 评论 -
Linux显卡驱动
显示器的接口,早期的有D-SUB(即VGA),S-Video,近期的有DVI,HDMI和DisplayPort。D-SUB接口:即VGA接口,D型头三排15针,模拟信号。由于带宽限制,不能传输较大分辨率的图像。目前只有低端的显卡和显示器支持。S-Video接口:全称Separate Video,模拟信号,日本开发,将亮度和色度分离传输,避免了混合视频信号传输时亮度和色度的相互干扰。五芯接口原创 2016-11-17 16:30:09 · 1324 阅读 · 0 评论 -
linux2.6.22.6的链接结构分析
1. 链接顺序链接文件arch/arm/kernel/vmlinux.lds.S反应了内核在各单个源文件编译好之后(arm平台),在链接时各段的排列顺序,也就反应了向内存加载代码时的内存布局。2. 链接地址:3. 重要宏宏EXPORT_SYMBOL()、EXPORT_SYMBOL_GPL()、EXPORT_SYMBOL_GPL_FUTURE()将数据放到__ksymta原创 2013-02-23 22:49:18 · 314 阅读 · 0 评论 -
socket类型
参考:http://blog.csdn.net/jnu_simba/article/details/12371127int socket(int domain, int type, int protocol)domain :地址族,主要有PF_INET,PF_PACKET,PF_NETLINK等 ( /usr/src/linux-headers-3.16.0-30/incl原创 2015-11-02 17:23:16 · 2315 阅读 · 0 评论 -
wpa_supplicant-0.8_state_machine
wpa.c实现了WPA状态机、四次/Group Key握手处理。eap.c实现了EAP状态机和method接口。eapol_supp_sm.c实现了EAPOL状态机和802.1X处理。原创 2016-03-21 15:27:11 · 624 阅读 · 0 评论 -
Busybox源码
Busybox-1.22.1注意:头文件applet_tables.h是在编译时生成的,还有其他几个文件如autoconf.h/usage.h/...也是。libbb/appletlib.c/main()applet_name = argv[0] // 命令namerun_applet_and_exit(applet_name, argv)原创 2016-06-03 03:25:17 · 1084 阅读 · 0 评论 -
TestSSLServer
/* * Command-line tool to test a SSL/TLS server for some vulnerabilities. * ===================================================================== * * This application connects to the provided SSL/转载 2015-10-09 08:34:13 · 2739 阅读 · 0 评论 -
linux_netfilter
内核实现:netfilter 应用管理:iptables转载 2015-11-02 13:33:38 · 313 阅读 · 0 评论 -
wpa_supplicant事件分析
WPA Client Persistent Connect Event[Thu May 19 11:50:52.031 2016] P2P-INVITATION-RECEIVED sa=f6:5c:89:91:82:1b persistent=1[Thu May 19 11:50:53.062 2016] CTRL-EVENT-SCAN-STARTED [Thu May 19 11原创 2016-05-20 02:18:15 · 5541 阅读 · 0 评论 -
wpa_supplicant-2.5源码解析
主程序wpa_supplicant/main.c/main()wpa_supplicant_init(¶ms)wpa_supplicant_add_iface(global, &ifaces[i], NULL)wpa_supplicant_run(global)wpa_supplicant_initwpa_supplicant_init(原创 2016-02-25 14:09:44 · 6031 阅读 · 0 评论 -
myiwpriv_mywpacli
My iwprivbug: wifi_iwpriv() socket close need close #include <sys/types.h>#include <sys/ioctl.h>#include <stdio.h>#include <errno.h>#include <fcntl.h>#include...原创 2016-11-04 17:37:46 · 772 阅读 · 0 评论 -
USB2.0驱动分析Kernel3.10.24
可以用wireshark+usbmon捕捉usb协议数据包。/******************************************************** 加载usbcore* 添加hub interface driver* 添加hub interface device**************原创 2017-12-26 17:29:45 · 1014 阅读 · 0 评论