亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? jit.c

?? LINUX設(shè)備驅(qū)動(dòng)程序第二版配套源碼 第一版的內(nèi)容
?? C
字號(hào):
/* * jit.c -- the just-in-time module (v2.1) * * Tested with 2.1.43 on the x86 *//* BUGS: this module is not reentrant: only one file can be read at a time *       the module usage count is not used: you could remove the module *           while reading it, thus asking for troubles */ #ifndef __KERNEL__#  define __KERNEL__#endif#ifndef MODULE#  define MODULE#endif#include <linux/module.h>#define VERSION_CODE(vers,rel,seq) ( ((vers)<<16) | ((rel)<<8) | (seq) )#if LINUX_VERSION_CODE < VERSION_CODE(1,99,4)#  error "This module needs Linux 1.99.4 or newer"#else#include <linux/sched.h>#include <linux/kernel.h> /* printk() */#include <linux/fs.h>     /* everything... */#include <linux/proc_fs.h>#include <linux/errno.h>  /* error codes */#include <linux/types.h>  /* size_t */#include "sysdep-2.1.h"/* * This module is a silly one: it only embeds short code fragments * that show how time delays can be handled in the kernel. */int jit_delay = 1; /* the default delay in read() */char jit_spoke[] = "This is a meaningless string, fiftysix characters long.\n";#define LIMIT (PAGE_SIZE-128) /* don't print any more after this size */static int jit_print(char *buf){    int len = 0;    while(len < LIMIT)        len += sprintf(buf+len,"%s",jit_spoke);    return len;}int jit_read_busy(char *buf, char **start, off_t offset,                   int len, int unused){    /* delay one second (or the chosen value), before printing */    unsigned long j= jiffies + jit_delay * HZ;    while (jiffies < j)	/* nothing */;    return jit_print(buf);}int jit_read_sched(char *buf, char **start, off_t offset,                   int len, int unused){    /* delay one second (or the chosen value), before printing */    unsigned long j= jiffies + jit_delay * HZ;    while (jiffies < j)	schedule();    return jit_print(buf);}int jit_read_queue(char *buf, char **start, off_t offset,                   int len, int unused){    /* delay one second (or the chosen value), before printing */    unsigned long j= jiffies + jit_delay * HZ;        struct wait_queue *wait = NULL;    current->timeout = j;    interruptible_sleep_on(&wait);    return jit_print(buf);}int jit_read_self(char *buf, char **start, off_t offset,                   int len, int unused){    /* delay one second (or the chosen value), before printing */    unsigned long j= jiffies + jit_delay * HZ;    current->timeout = j;    current->state = TASK_INTERRUPTIBLE;    schedule();    current->timeout = 0; /* reset the timeout */    return jit_print(buf);}struct proc_dir_entry jit_proc_busy = {        0,                 /* low_ino: the inode -- dynamic */        7, "jitbusy",      /* len of name and name */        S_IFREG | S_IRUGO, /* mode */        1, 0, 0,           /* nlinks, owner, group */        0, NULL,           /* size - unused; operations -- use default */        &jit_read_busy,    /* function used to read data */        /* nothing more */    };struct proc_dir_entry jit_proc_sched = {        0,                 /* low_ino: the inode -- dynamic */        8, "jitsched",     /* len of name and name */        S_IFREG | S_IRUGO, /* mode */        1, 0, 0,           /* nlinks, owner, group */        0, NULL,           /* size - unused; operations -- use default */        &jit_read_sched,   /* function used to read data */        /* nothing more */    };struct proc_dir_entry jit_proc_queue = {        0,                 /* low_ino: the inode -- dynamic */        8, "jitqueue",     /* len of name and name */        S_IFREG | S_IRUGO, /* mode */        1, 0, 0,           /* nlinks, owner, group */        0, NULL,           /* size - unused; operations -- use default */        &jit_read_queue,    /* function used to read data */        /* nothing more */    };struct proc_dir_entry jit_proc_self = {        0,                 /* low_ino: the inode -- dynamic */        7, "jitself",      /* len of name and name */        S_IFREG | S_IRUGO, /* mode */        1, 0, 0,           /* nlinks, owner, group */        0, NULL,           /* size - unused; operations -- use default */        &jit_read_self,    /* function used to read data */        /* nothing more */    };/* * There is also a silly file returning the current time. */int jit_read_current(char *buf, char **start, off_t offset,                   int len, int unused){    struct timeval tv1, tv2;    unsigned long flags;    do_gettimeofday(&tv1);    save_flags(flags);    cli();    tv2 = xtime;    restore_flags(flags);    len=0;    len += sprintf(buf,"gettime: %9i.%06i\nxtime:   %9i.%06i\njiffies: %li\n",                   tv1.tv_sec, tv1.tv_usec,                   tv2.tv_sec, tv2.tv_usec, jiffies);    return len;}struct proc_dir_entry jit_proc_current = {        0,                 /* low_ino: the inode -- dynamic */        10, "currentime",  /* len of name and name */        S_IFREG | S_IRUGO, /* mode */        1, 0, 0,           /* nlinks, owner, group */        0, NULL,           /* size - unused; operations -- use default */        &jit_read_current, /* function used to read data */        /* nothing more */    };int init_module(void){    /* dynamic: low_ino is 0 */    proc_register_dynamic(&proc_root, &jit_proc_busy);    proc_register_dynamic(&proc_root, &jit_proc_sched);    proc_register_dynamic(&proc_root, &jit_proc_queue);    proc_register_dynamic(&proc_root, &jit_proc_self);    proc_register_dynamic(&proc_root, &jit_proc_current);#ifndef JIT_DEBUG    EXPORT_NO_SYMBOLS;#endif    return 0; /* succeed */}void cleanup_module(void){    proc_unregister(&proc_root, jit_proc_busy.low_ino);    proc_unregister(&proc_root, jit_proc_sched.low_ino);    proc_unregister(&proc_root, jit_proc_queue.low_ino);    proc_unregister(&proc_root, jit_proc_self.low_ino);    proc_unregister(&proc_root, jit_proc_current.low_ino);}#endif /* version 1.99.4 or newer */

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
4438亚洲最大| 久久综合av免费| 色哟哟国产精品免费观看| 99视频在线观看一区三区| 成人性视频免费网站| 波多野结衣精品在线| 国产成人精品三级麻豆| 国产成人在线视频网站| 成人久久久精品乱码一区二区三区| 韩国欧美国产一区| 成人免费毛片高清视频| 成人爱爱电影网址| 91在线一区二区| 欧美猛男gaygay网站| 91精品国产福利在线观看| 日韩亚洲欧美在线| 2020国产精品自拍| 国产美女在线观看一区| 欧美成人精品1314www| 色婷婷精品久久二区二区蜜臂av| 色狠狠色噜噜噜综合网| 欧美日韩国产首页| 欧美电影免费观看高清完整版| www一区二区| 综合色中文字幕| 亚洲国产另类av| 激情久久久久久久久久久久久久久久| 国产成人在线影院| 在线观看国产一区二区| 欧美va在线播放| 国产精品成人午夜| 日韩va欧美va亚洲va久久| 狠狠色狠狠色综合| 99久久久国产精品免费蜜臀| 欧美日韩中文国产| 有码一区二区三区| 全国精品久久少妇| 成人精品国产一区二区4080| 欧美在线免费观看视频| 精品三级在线看| 中文字幕第一页久久| 亚洲在线一区二区三区| 韩国欧美一区二区| 欧美婷婷六月丁香综合色| 日韩一级黄色大片| 亚洲视频一二三| 亚州成人在线电影| 大胆亚洲人体视频| 欧美一区二区三区影视| 亚洲欧洲日韩女同| 麻豆成人在线观看| 一本色道久久综合亚洲精品按摩| 欧美成人精品高清在线播放| 一区二区三区四区不卡视频| 国产综合色产在线精品 | 欧美无砖砖区免费| 久久久亚洲国产美女国产盗摄 | 1区2区3区国产精品| 青青国产91久久久久久| 99精品视频中文字幕| 日韩写真欧美这视频| 亚洲欧美精品午睡沙发| 九九视频精品免费| 欧美视频在线观看一区| 欧美激情在线免费观看| 久久99精品国产.久久久久| 在线欧美小视频| 国产精品天天看| 久久成人av少妇免费| 欧美日韩激情一区| 有码一区二区三区| 99久久精品国产一区| 国产无人区一区二区三区| 欧美96一区二区免费视频| 欧洲av在线精品| 自拍偷自拍亚洲精品播放| 国产91精品一区二区麻豆亚洲| 欧美一区二区三区性视频| 亚洲午夜国产一区99re久久| 色综合一个色综合亚洲| 石原莉奈一区二区三区在线观看| aaa欧美色吧激情视频| 久久精品网站免费观看| 加勒比av一区二区| 欧美岛国在线观看| 日韩在线a电影| 欧美三电影在线| 亚洲综合久久久| 色综合欧美在线视频区| 亚洲女人的天堂| 91猫先生在线| 一区二区三区中文在线| 日本韩国欧美在线| 亚洲精品欧美在线| 欧美做爰猛烈大尺度电影无法无天| 1024精品合集| 91蝌蚪porny成人天涯| 亚洲日本青草视频在线怡红院| 成人av资源在线| 中文字幕一区二区视频| 99视频精品免费视频| 亚洲欧美一区二区视频| 色综合天天做天天爱| 一区二区三区在线观看欧美| 日本高清不卡一区| 午夜精品福利视频网站| 欧美高清www午色夜在线视频| 性欧美大战久久久久久久久| 6080yy午夜一二三区久久| 日韩高清中文字幕一区| 日韩视频免费观看高清完整版在线观看| 首页国产丝袜综合| 51精品秘密在线观看| 蜜桃一区二区三区在线| 精品国产123| 国产成人午夜视频| 亚洲美女免费视频| 欧美另类一区二区三区| 久久精品99国产国产精| 久久久久九九视频| 9久草视频在线视频精品| 亚洲免费在线电影| 欧美裸体bbwbbwbbw| 激情综合一区二区三区| 国产欧美日韩视频一区二区| 97久久精品人人做人人爽50路| 亚洲自拍另类综合| 精品国产一区二区精华| 成人免费va视频| 婷婷六月综合网| 欧美精品一区二区三区蜜臀| a级精品国产片在线观看| 亚洲福利电影网| 久久久久久久久岛国免费| 99天天综合性| 国产+成+人+亚洲欧洲自线| 亚洲精品日日夜夜| 日韩无一区二区| 成人av资源下载| 五月婷婷综合网| 国产婷婷精品av在线| 欧美亚洲尤物久久| 国产精品香蕉一区二区三区| 亚洲精品成a人| 日韩久久精品一区| 成人99免费视频| 男男gaygay亚洲| 亚洲欧美色图小说| 精品国产乱码久久久久久久 | 国产欧美日韩麻豆91| 欧美中文字幕一区二区三区亚洲| 久久精品国产久精国产| 亚洲视频香蕉人妖| 日韩精品中文字幕一区二区三区| 成人av一区二区三区| 免费的成人av| 亚洲精品成人a在线观看| 久久久影院官网| 欧美调教femdomvk| 成人国产电影网| 日本大胆欧美人术艺术动态| 亚洲人成精品久久久久久| 精品国产乱码久久久久久闺蜜 | 亚洲黄色录像片| 久久久三级国产网站| 欧美视频一区二区三区在线观看| 国产高清在线观看免费不卡| 午夜电影久久久| 综合欧美一区二区三区| 久久久久久夜精品精品免费| 884aa四虎影成人精品一区| av日韩在线网站| 国产精品亚洲专一区二区三区| 午夜精品久久久久久久久久| 国产精品久久久久久久久快鸭| 精品奇米国产一区二区三区| 欧美三片在线视频观看| 91麻豆成人久久精品二区三区| 经典三级一区二区| 日本aⅴ免费视频一区二区三区 | 一本久久a久久免费精品不卡| 国产麻豆精品95视频| 毛片不卡一区二区| 日韩主播视频在线| 亚洲一二三四在线观看| 亚洲欧洲日韩在线| 中文字幕视频一区| 国产精品你懂的| 欧美韩国日本不卡| 久久精品男人天堂av| 精品日本一线二线三线不卡| 欧美一级免费观看| 91精品国产入口| 欧美精品丝袜中出| 欧美老肥妇做.爰bbww| 欧美日韩美女一区二区| 欧美日韩精品一区二区天天拍小说 | 欧美色图片你懂的| 在线中文字幕不卡| 91视频91自|