資源簡介
簡單驅動程序
代碼片段和文件信息
//nodevfs.c
#ifndef?__KERNEL__
#define?__KERNEL__
#endif
#ifndef?MODULE
#define?MODULE
#endif
#include?
#include?
#include?
#include?
#include????/*?printk()?*/
#include????/*?kmalloc()?*/
#include???
#include?????/*?error?codes?*/
#include?????/*?size_t?*/
#include?
#include?????/*?O_ACCMODE?*/
#include?????/*?COPY_TO_USER?*/
#include??????/*?cli()?*_flags?*/
#define?DEVICE_NAME?“evan“
#define?evan_MAJOR?99
#define?evan_MINOR?0
static?int?MAX_BUF_LEN=1024;
static?char?drv_buf[1024];
static?int?WRI_LENGTH=0;
static?void?do_write()
{
int?i;
int?len=WRI_LENGTH;
char?tmp;
for(i=0;i<(len>>1);i++len--)
{
tmp=drv_buf[len-i];
drv_buf[len-i]=drv_buf[i];
drv_buf[i]=tmp;
}
}
static?ssize_t?evan_write(struct?file?*filp?char?*buffer?size_t?count)
{
if?(count>MAX_BUF_LEN)?count=MAX_BUF_LEN
- 上一篇:Linux優先級時間片調度C++源碼
- 下一篇:QT的TCP服務器DEMO
評論
共有 條評論