Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

»ñÈ¡Linux 2.6.x sys_call_table


ÔÚlinuxÖÐËùÓеÄsyscall¶¼Êǵ÷ÓÃint 0x80, int 0x80µÄÖжϷþÎñ³ÌÐòΪsystem_call(arch/x86/kernel/traps_32.c:set_system_gate(SYSCALL_VECTOR,&system_call).  system_call (arch/x86/entry_32.S)×îÖÕcall *sys_call_table(,%eax,4)À´Íê³ÉÒ»¸ösyscallµ÷ÓÃ. 
¼´ int 0x80 -> system_call -> sys_call_table, ÕâÑùÎÒÃÇÖ»ÒªÊ×ÏÈ»ñÈ¡int 0x80µÄÖжϷþÎñµØÖ·system_callµØÖ·, È»ºóÔÚsystem_call´úÂëÖÐÖ±½ÓËÑË÷callÖ¸Áî¼´¿ÉÕÒµ½sys_call_tableµØÖ·ÁË!
ÁíÒ»ÖÖ·½·¨¾ÍÊÇÖ±½ÓÐÞ¸Ä
ͨ¹ýcat /boot/System.map-`uname -r` |grep sys_call_table  ²é¿´µ±Ç°sys_call_tableµØÖ·,²¢Óëͨ¹ýÒÔÉÏ·½·¨È¡µÃµÄµØÖ·×ö±È½Ï!
Äں˰汾: ubuntu 2.6.24-19-server
/*
 * Standard in kernel modules
 */
#include <linux/kernel.h>   /* We're doing kernel work */
#include <linux/module.h>   /* Specifically, a module, */
#include <linux/moduleparam.h>  /* which will have params */
#include <linux/unistd.h>   /* The list of system calls */
/*
 * For the current (process) structure, we need
 * this to know who the current user is.
 */
#include <linux/sched.h>
#include <asm/uaccess.h>
unsigned long *sys_call_table = 0;
//EXPORT_SYMBOL ( sys_call_table );
struct {
    unsigned short  limit;
    unsigned int    base;
} __attribute__ ( ( packed ) ) idtr;
struct {
    unsigned short  offset_low;
    unsigned short  segment_select;
    unsigned char   reserved,   flags;
    unsigned short  offset_high;
} __attribute__ ( ( packed ) ) * idt;
unsigned long* find_sys_call_table(void)
{
    unsigned long system_call = 0;          // x80Öжϴ¦Àí³ÌÐòsystem_call µØÖ·
    char *call_hex = "\xff\x14\x85";    // call Ö¸Áî
    char *code_ptr = NULL;
   


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì£¨ËÄ£© L2CAP²ã±à³Ì

£¨L2CAPЭÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPЭÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼­Á¬½Ó¿ØÖƺÍÊÊÅäЭÒé (L2CAP) ΪÉϲãЭÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àЭÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãЭÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......

awk&grep ÃüÁîÍêÈ«½âÎö Ö®linux¸ß¼¶ÃüÁî

awk ÍêÈ«½âÎö
awk´¦ÀíµÄ¹¤×÷ÓëÊý¾Ý¿âµÄ´¦Àí·½Ê½ÓÐÏà֮ͬ´¦£¬ÆäÏàͬ´¦Ö®Ò»¾ÍÊÇawkÖ§³Ö¶Ô¼Ç¼ºÍ×ֶεĴ¦Àí¡£
ÓòºÍ¼Ç¼
awkÖ´ÐÐʱ£¬Æää¯ÀÀÓòÓÃ$1¡¢$2¡¢…¡¢$n±êʶ£¬¶à¸öÓòÖ®¼äÓöººÅ·Ö¸ô£¬Èç$1,$3¡£
$0±êʶÕû¸ö¼Ç¼(ÕûÐÐ)¡£
 
1 ÏÔʾÎı¾ÎļþmyfileÖÐµÚÆßÐе½µÚÊ®ÎåÐÐÖÐÒÔ×Ö·û%·Ö¸ôµÄµÚÒ»×ֶΣ¬µÚÈý×Ö¶ÎºÍµÚÆ ......

»ùÓÚARMµÄǶÈëʽlinux Äں˵IJüôÓëÒÆÖ²


0 ÒýÑÔ
   
΢´¦ÀíÆ÷µÄ²úÉúΪ¼Û¸ñµÍÁ®¡¢½á¹¹Ð¡ÇɵÄCPUºÍÍâÉèµÄÁ¬
½ÓÌṩÁËÎȶ¨¿É¿¿µÄÓ²¼þ¼Ü¹¹£¬ÕâÑù£¬ÏÞÖÆÇ¶Èëʽϵͳ·¢Õ¹µÄÆ¿¾±¾ÍÍ»³ö±íÏÖÔÚÁËÈí¼þ·½Ãæ¡£¾¡¹Ü´Ó°ËÊ®Äê´úÄ©¿ªÊ¼£¬ÒѾ­Â½Ðø³öÏÖÁËһЩǶÈëʽ²Ù×÷ϵͳ(±È½ÏÖø
ÃûµÄÓÐVxwork¡¢pSOS¡¢NeculeusºÍWindows
CE)¡£µ«ÕâЩרÓòÙ×÷ϵͳ¶¼ÊÇÉÌ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ