Linux netfilterÔ´Âë·ÖÎö(3)
תÌù×Ô£ºhttp://alexanderlaw.blog.hexun.com/8968782_d.html
Èý¡¢ipt_table±íµÄ×¢²á
init£¨£©º¯Êý³õʼ»¯Ê±µ÷ÓÃÁËipt_register_tableº¯Êý½øÐбíµÄ×¢²á
3.1 ip_tables.c ±íµÄ×¢²á ipt_register_table
int ipt_register_table(struct ipt_table *table)
{
int ret;
struct ipt_table_info *newinfo;
static struct ipt_table_info bootstrap
= { 0, 0, 0, { 0 }, { 0 }, { } };
/*ºêMOD_INC_USE_COUNTÓÃÓÚÄ£¿é¼ÆÊýÆ÷ÀÛ¼Ó£¬Ö÷ÒªÊÇΪÁË·Àֹģ¿éÒ쳣ɾ³ý£¬¶ÔÓ¦µÄºêMOD_DEC_USE_COUNT¾ÍÊÇÀÛ¼õÁË*/
MOD_INC_USE_COUNT;
/*Ϊÿ¸öCPU·ÖÅ乿Ôò¿Õ¼ä*/
newinfo = vmalloc(sizeof(struct ipt_table_info)
+ SMP_ALIGN(table->table->size) * smp_num_cpus);
if (!newinfo) {
ret = -ENOMEM;
MOD_DEC_USE_COUNT;
return ret;
}
/*½«¹æÔòÏ±´µ½Ð±íÏîµÄµÚÒ»¸öcpu¿Õ¼äÀïÃæ*/
memcpy(newinfo->entries, table->table->entries, table->table->size);
/*translate_tableº¯Êý½«newinfo±íʾµÄtableµÄ¸÷¸ö¹æÔò½øÐб߽ç¼ì²é£¬È»ºó¶ÔÓÚnewinfoËùÖ¸µÄipt_talbe_info½á¹¹ÖеÄhook_entriesºÍunderflows¸³ÓèÕýÈ·µÄÖµ£¬×îºó½«±íÏîÏòÆäËûcpu¿½±´*/
ret = translate_table(table->name, table->valid_hooks,
&
Ïà¹ØÎĵµ£º
ÀýÒ»£º·¢ËÍ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£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......
Ó²¼þ¼¼ÊõÒ»Ö±ºÍÈí¼þ¼¼ÊõÏàÒÀÏàËæ£¬Ëæ×Å·þÎñÆ÷Ó²¼þºÍоƬ¼¼ÊõµÄ½ø²½£¬Íƶ¯×Å·þÎñÆ÷²Ù×÷ϵͳ¼¼ÊõµÄ±ä¸ï¡£
¡¡¡¡Ð¾Æ¬¼¼ÊõµÄ·¢Õ¹£º´Óx86µ½Áúо
¡¡¡¡2009Ä꣬¸÷´óоƬ³§É̶¼ÍƳöÁ˶à¿îоƬ²úÆ·£ºÈçIntel¹«Ë¾»ùÓÚNehalem¼Ü¹¹·¢²¼µÄ×ÀÃæ¶ËоƬ²úÆ·¿áî£i7;AMD¹«Ë¾Ò²ÍƳöÁË»ù
ÓÚÐÂFioranoƽ̨µÄ´úºÅΪ“ÒÁ˹̹²¼¶û”µÄÁù ......
Ó¦Óò㣺
#include <unistd.h>
1¡¢unsigned int sleep(unsigned int seconds); Ãë¼¶
2¡¢int usleep(useconds_t usec); ΢Ãë¼¶£º1/10^-6
#define _PO ......
1¡¢´ÓrootÓû§Çл»µ½oracleÓû§
#su - oracle
2¡¢ÀûÓÃnologÑ¡ÏîÆô¶¯sql*plus¹¤¾ß³ÌÐò
$slqplus /nolog
3¡¢ÀûÓÃsysdbaÉí·ÝÆô¶¯oracleÊý¾Ý¿â
sql>connect / as sysdba
sql>startup
4¡¢Æô¶¯Êý¾Ý¿âµÄ¼àÌýÆ÷listener
$lsnrctl start
»ò
$lsnrctl
lsnrctl>start
5¡¢¹Ø±ÕoracleÊý¾Ý¿â¼àÌý
$lsnrctl stop
6¡ ......