- 博客(10)
- 收藏
- 关注
转载 深入浅出 NXLog (二)
转自 http://www.jianshu.com/p/392ab60aa5b01. Nxlog 模块简介在之前的文章当中我已经提到过 Nxlog 的 module 共分为4种,它们分别是 input, output, processor, extension。 Input module 负责从各种数据源(如 file, archive, tcp, udp等)中采集数据,Output module
2017-11-30 14:35:40
2401
转载 深入浅出 NXLog (一)
转自1. NXLog 简介nxlog 是用 C 语言写的一个开源日志收集处理软件,它是一个模块化、多线程、高性能的日志管理解决方案,支持多平台。今天我主要分析一下 nxlog 的启动流程,基于的 code 版本是 nxlog-ce-2.8.1248。2. NXLog 启动流程图上图是 nxlog 启动的一个大致流程图,大家可以先看一眼,对整个流程有个大致认识,具体的解析下面奉上。3. NXLog 启
2017-09-15 17:38:23
4114
转载 Linux用户空间与内核空间
Linux内核地址映射模型x86 CPU采用了段页式地址映射模型。进程代码中的地址为逻辑地址,经过段页式地址映射后,才真正访问物理内存。段页式机制如下图。 Linux内核地址空间划分通常32位Linux内核地址空间划分0~3G为用户空间,3~4G为内核空间。注意这里是32位内核地址空间划分,64位内核地址空间划分是不同的。
2013-04-24 14:00:29
571
转载 wait_event_interruptible() and wake_up()
1. 关于 wait_event_interruptible() 和 wake_up()的使用 读一下wait_event_interruptible()的源码,不难发现这个函数先将 当前进程的状态设置成TASK_INTERRUPTIBLE,然后调用schedule(), 而schedule()会将位于TASK_INTERRUPTIBLE状态的当前进程从runqueue 队
2013-04-22 11:15:00
886
原创 四、注册 i2c_driver
前三步跟平台相关,从这里开始就只与具体的设备驱动相关了,这里我选取FLD00060光距感的驱动进行说明。 // 3rdparty/lsensor/fld60/special/driver/FLD60.cstatic int __init fld60_pls_init(void){ int temp=0; printk("baker :%s\n",
2013-02-14 11:52:19
632
原创 三、创建 i2c_adapter 和 i2c_client
// kernel/drivers/i2c/busses/i2c-sc8810.c/* sc8810_i2c_probe * * called by the bus driver when a suitabledevice is found*/static int sc8810_i2c_probe(struct platform_device *pdev){
2013-02-14 11:41:24
1114
原创 二、注册 platform_driver
// kernel/drivers/i2c/busses/i2c_sc8810.cstatic int __init i2c_adap_sc8810_init(void){ printk(KERN_INFO"I2c:sc8810 driver$Revision:1.0 $\n"); return platform_driver_regist
2013-02-14 11:31:01
645
原创 一、创建 _i2c_board_list 和 platform_device
开始前先熟悉i2c_board_info 结构体以及 I2C_BOARD_INFO 宏。/** * struct i2c_board_info - template for devicecreation * @type: 芯片类型,用于初始化i2c_client.name * @flags: 用于初始化i2c_client.flags * @addr: 存储于i2c_clien
2013-02-14 11:12:24
1773
原创 前言
前一段时间在调试展讯平台外设驱动的时候,顺便看了一下 Linu I2C 架构,现将自己的学习心得与大家分享。由于本人能力有限,文中还有很多不懂以及错误的地方,希望大家多多指正!
2013-02-14 11:04:14
332
原创 位操作实现加减乘除
#include "stdio.h"int add(int,int);int subtract(int,int);int positive_multiply(int,int);int multiply(int,int);int positive_divide(int,int);int divide(int,int);int main(void){
2013-02-14 10:36:04
357
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人