当前位置: 技术问答>linux和unix
模块编译时可不可以使用库函数
来源: 互联网 发布时间:2016-09-17
本文导语: 比如spintf、strcpy等 信号量在驱动模块里怎么使用? | 1、可以使用。 2、内核中提供了信号量,主要函数如下: void sema_init(struct semaphore *sem,int val); DECLARE_MUTEX(name); DECLARE_MUTEX_LOCKED(name); void init_MUTEX(stru...
比如spintf、strcpy等
信号量在驱动模块里怎么使用?
信号量在驱动模块里怎么使用?
|
1、可以使用。
2、内核中提供了信号量,主要函数如下:
void sema_init(struct semaphore *sem,int val);
DECLARE_MUTEX(name);
DECLARE_MUTEX_LOCKED(name);
void init_MUTEX(struct semaphore *sem);
void init_MUTEX_LOCKED(struct semaphore *sem);
void down(struct semaphore *sem);
void down_interruptible(struct semaphore *sem);
int down_trylock(struct semaphore *sem);
void up(struct semaphore *sem);
2、内核中提供了信号量,主要函数如下:
void sema_init(struct semaphore *sem,int val);
DECLARE_MUTEX(name);
DECLARE_MUTEX_LOCKED(name);
void init_MUTEX(struct semaphore *sem);
void init_MUTEX_LOCKED(struct semaphore *sem);
void down(struct semaphore *sem);
void down_interruptible(struct semaphore *sem);
int down_trylock(struct semaphore *sem);
void up(struct semaphore *sem);
|
模块中不要用glib C,内核编程的基本准则,不用?那怎么编啊?内核都有相应的“替代品”。
|
信号量就别想了
常见的字符串处理还是有的
linux/lib/string.c
常见的字符串处理还是有的
linux/lib/string.c
|
#include