linux内核函数笔记(二)
信号指定处理函数
void (*signal (int signum,void (*handle)(int)))(int);设置某个信号的处理方法
int sigaction(int signum,const struct sigaction *act,struct sigaction *oldact);用于检查或改变进程在接到信号时的动作
信号集操作函数
static inline void sigaddset(sigset_t *set,int _sig);
static inline void sigdelset(sigset_t *set,int _sig);
static inline void sigismember(sigset_t *set,int _sig);
static inline void sigfindinword(unsigned long word);
static inline void sigemptyset(sigset_t *set);
static inline void sigfillset(sigset_t *set);
信号阻塞
int sigprocmask(int how,const sigset_t *set,sigset_t *oldset);
int sigpending(sigset_t *set);
int siguspend(const sigset_t *mask);
消息管理函数
int msgget(key_t,int flag);
int msgrcv(int msqid,struct msgbuf *msgp,int msgsz,long mtype,int msgflg);
int msgsnd(int msqid,struct msgbuf *msgp,int msgz,int msgflg);
int msgctl(int msgqid,int cmd,struct msqid_ds *buf);
线程操作函数
线程的创建
int pthread_create(pthread_t *thread,pthread_attr_t *attr,void *(*start_routine)(void *),void *arg);
线程取消
void pthread_testcancel(void);
void pthread_cancel(pthread_t thread);
int pthread_setcanceltype(int type,int *oldtype);
线程私有数据
int pthread_key_create(pthread_key_t *_key,void (*_destr_function)(void *_THROW);
int pthreadd_key_delete(pthread_key_t _key) _THROW;
int pthread_setspecific(pthread_key_t _key, _const void *_pointer) _THROW;
void *pthread_getspecific(pthread_key_t _key) THROW;
互斥锁
int pthread_mutex_init (pthread_mutex_t *_testrict _mutex,_const pthread_mutexattr *_restrict _mutex_attr) _THROW;
int pthread_mutex_destroy(pthread_mutex_t *_mutex) _THROW;
int pthread_mutex_trylock(pthread_mutex_t *_mutex) _THROW;
int pthread_mutex_lock(pthread_mutex_t *mutex) _THROW;
int pthread_mutex_unlock(pthread_mutex_t *_mutex) _THROW;
条件变量
int thread_cond_init(pthread_cond_t *_restrict _cond,_const pthread_condattr_t *_restrict _cond_attr) _THROW;
int pthread_cond_destroy(pthread_cond_t *_cond)
相关文档:
例一:发送Signaling Packet:
Signaling Command是2个Bluetooth实体之间的L2CAP层命令传输。所以得Signaling Command使用CID 0x0001.
多个Command可以在一个C-frame(control frame)中发送。
如果要直接发送Signaling Command.需要建立SOCK_RAW类型的L2CAP连接Socket。这样才有机会自己填充Command Code,Identi ......
一:前言
最近在研究android的sensor driver,主要是E-compass,其中用到了Linux input子系统.在网上也看了很多这方面的资料,感觉还是这篇分析的比较细致透彻,因此转载一下以便自己学习,同时和大家分享!
(这篇博客主要是以键盘驱动为例的,不过讲解的是Linux Input Subsystem,可以仔细的研究一下!)
键盘驱动将检 ......
折腾了一番通过几种USB上网卡在Linux下上WCDMA,在此记录一下:
通用配置文件:
/etc/ppp/peers/wcdma :
/dev/ttyACM0
460800
connect '/etc/ppp/chat-wcdma'
noauth
usepeerdns
noipdefault
defaultroute
----
注意,其中的/dev/ttyACM0 是串口设备,后面描述。
/etc/ppp/chat-wcdma
#!/bin/sh
#
# This is ......
linux压缩(解压缩)命令详解
http://blog.csdn.net/hbcui1984/archive/2007/04/25/1583796.aspx
一.tar命令
tar可以为文件和目录创建档案。利用tar,用户可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar 最初被用来在 ......
linux系统单网卡绑定双IP的方法
http://blog.csdn.net/hbcui1984/archive/2009/05/25/4214282.aspx
1. 进入目录:
cd /etc/sysconfig/network-scripts/
2. 使用vi命令编辑ifcfg-eth0,如下:
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.0.255
......