自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

jackywgw的专栏

c/c++ linux php web mysql python tcp/ip shell java

  • 博客(8)
  • 资源 (7)
  • 收藏
  • 关注

原创 linux 内核学习----------模块(LKM:loading kernel module)

可加载内核模块(LKM)Linux内核是模块化组成的,允许内核在运行的时候以模块的形式动态地添加或删除代码。 优点:保证基本内核小,动态增加和删除module_init /module_exitmodule_init 将模块的入口函数注册到系统中 module_exit 将模块的出口函数注册到系统中加载/卸载模块最简单的加载方法是insmod命令, 一般要以root身份运行命令 insmod

2017-06-30 17:25:33 1113

原创 pthread_exit ---- 不能使用局部变量作为参数返回

在使用pthread_exit 返回一个void型指针,该指针指向的数据必须不能是线程内部的局部变量,因为随着线程的退出,局部变量被摧毁,变成不确定的内存内容了。 下面的程序比较了使用线程内部的局部变量和全局变量作为pthread_exit返回指针指向的数据内容。其中全局变量可以返回正确的值,而局部变量设置的值已经不一样了。#include <stdio.h>#include <stdlib.h

2017-06-27 17:54:32 1033

原创 pthread_exit-----在linux主线程中的用途

大家都知道在一个线程中调用pthread_exit表示退出一个线程,并且pthread_exit的参数作为返回值提供给pthread_join函数获取。 那么如果在main函数创建了若干个线程后,在main函数最后调用pthread_exit会怎么样呢?已经创建的线程会不会随着main线程的退出而退出呢? 如果在main函数中调用的是exit,那么答案是所有线程随着main线程退出而退出。 但

2017-06-27 17:18:00 3001

原创 查看linux下进程的环境变量

AH-3f7440:/tmp/root# ps | grep dhcpc 9528 root 47976 S /opt/ah/bin/dhcpc10595 root 2796 S grep dhcpcAH-3f7440:/tmp/root# tr '\0' '\n' < /proc/9528/environUSER=rootLD_LIBRARY_PATH=/l

2017-06-22 15:37:55 4709

原创 Libevent学习-------定时器事件

定时器事件的创建Libevent 一般调用evtimer_new来定义一个定时器事件#define evtimer_new(b, cb, arg) event_new((b), -1, 0, (cb), (arg))从宏定义来看,这个事件和io、signal事件的区别在于fd项为-1,表示并不关注, 并且events项为0, 并不是想象中的EV_TIMEOUT. evtimer_ne

2017-06-14 17:58:54 8264

原创 Libevent学习----信号事件

信号是一种异步事件:信号处理函数和程序的主循环是两条不同的执行路线。很明显,信号处理函数需要尽可能快地执行完毕,以确保该信号不被屏蔽太久(信号在处理期间,系统不会再次触发它)。 上面这幅图是网上找到的,很好地从整体上表述了原理,摘抄到最前面 下图是本人自己总结的信号事件代码级原理图 下面是展开分析代码实现一、初始化信号事件 调用base->evbase = base->evsel->

2017-06-09 16:00:34 995

原创 Libevent 学习--------(eventop)事件多路分发器

一、事件多路分发器一般使用I/O复用接口。 Libvent中使用eventop 结构作为后端I/O复用的统一接口/** Structure to define the backend of a given event_base. */struct eventop {

2017-06-07 16:03:53 1919

原创 Libevent学习-----Reactor的事件处理机制

1.      普通函数的调用机制:       主程序调用某函数à函数执行,保存入参和返回寄存器地址,主程序等待à 函数处理完将结果和控制权返回给主程序 à主程序继续执行void func (){ return;}int main(int argc, char *argv[]){ int a,b;

2017-06-06 16:18:16 437

《Snort 入侵检测系统源码分析》

《Snort 入侵检测系统源码分析》--独孤九贱

2017-07-05

23种设计模式(C++)

23种设计模式(C++)

2017-07-04

TCP/IP 详解2

TCP/IP 详解2

2017-06-06

UNIX网络编程_卷2_进程间通信

unix 网络编程 卷2 进程间通信,是第二版

2014-12-15

用Powerpc汇编写c程序

用Powerpc汇编写c程序,专注于c语言如何变为汇编

2011-05-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除