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

Linuxϼ¸Àý×¥°ü³ÌÐò´úÂë

×¥°ü³ÌÐò1 grub_allpacket.c
#include <stdio.h>
#include <string.h>
#include <errno.h> 
#include <unistd.h>
#include <sys/socket.h>
#include <sys/types.h> 
#include <linux/in.h>
#include <linux/if_ether.h>
#include <net/if.h>
#include <sys/ioctl.h>
#include <stdlib.h>
int main(int argc, char **argv) {
   int sock, n,i;
   char buffer[2048];
   unsigned char *iphead, *ethhead;
   struct ifreq ethreq;
 
   if ( (sock=socket(PF_PACKET, SOCK_RAW,
                     htons(ETH_P_IP)))<0) {
     perror("socket");
     exit(1);
   }
   /* Set the network card in promiscuos mode */
   strncpy(ethreq.ifr_name,"eth0",IFNAMSIZ);
   if (ioctl(sock,SIOCGIFFLAGS,&ethreq)==-1) {
     perror("ioctl");
     close(sock);
     exit(1);
}
   ethreq.ifr_flags|=IFF_PROMISC;
   if (ioctl(sock,SIOCSIFFLAGS,&ethreq)==-1) {
     perror("ioctl");
     close(sock);
     exit(1);
   }
 
   while (1) {
     printf("----------\n");
     n = recvfrom(sock,buffer,2048,0,NULL,NULL);
     printf("%d bytes read\n",n);
     printf("the frame content is :\n");
     for(i=0;i<n;)
 {
 printf("%02x",(unsigned char)buffer[i]);
 fflush(stdout);
 i=i+1;
 if(i%8==0)
  printf("\n");
 else
  printf(":");
 }
     printf("\n");
     /* Check to see if the packet contains at least
&nbs


Ïà¹ØÎĵµ£º

[תÌû]LinuxÇý¶¯¿ª·¢Ñ§Ï°µÄһЩ±ØÒª²½Öè

 1. ѧ»áд¼òµ¥µÄmakefile
2. ±àһЩӦÓÃ
³ÌÐò
£¬¿ÉÒÔÓÃmakefileÅÜÆðÀ´
3. ѧ»áдÇý¶¯
µÄmakefile
4. дһ¼òµ¥charÇý¶¯£¬makefile±àÒëͨ¹ý£¬¿ÉÒÔinsmod£¬ lsmod£¬ rmmod. ÔÚÇý¶¯µÄinitº¯ÊýÀï´òÓ¡hello world£¬insmodºóÓ¦¸ÃÄܹ»Í¨¹ýdmesg¿´µ½Êä³ö
¡£
5. дһÍêÕûÇý¶¯£¬ ¼ÓÉÏread£¬ write£¬ ioctl£¬ pollingµÈ¸ ......

Éú²úÕß Ïû·ÑÕßÎÊÌâʵÏÖ (linuxÏÂCÓïÑÔ)

²Ù×÷ϵͳµÄÒ»¸ö¾­µäÎÊÌâÊÇ"Éú²úÕß-Ïû·ÑÕß"ÎÊÌâ, ÕâÉæ¼°Í¬²½ÐźÅÁ¿ºÍ»¥³âÐźÅÁ¿µÄÓ¦ÓÃ, ÔÚÕâÀï,ÎÒÓÃÏ̵߳Äͬ²½ºÍ»¥³âÀ´ÊµÏÖ.
/*
* author ÕÅÎÄ
* 2008/06/20
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <pthread.h>
#include <semaphore.h> ......

LinuxÖ®¸¸(ÀîÄÉ˹·ÍÐÎÖ×È/Linus Torvalds)

×ÔÓÉÈí¼þ Linux Ö®¸¸£ºÀîÄÉ˹·ÍÐÎÖ×È(Linus Torvalds)
¡¡¡¡µ¼Ó28ËêµÄ·ÒÀ¼ÇàÄêÀîÄÉ˹´´ÔìÁËÒ»¸öȫеÄÊÀ½ç£º¾ÍÊÇÒ»ÖÖÃûΪLinuxµÄ²Ù×÷ϵͳ¡£ËüËù²úÉúµÄÁ¦Á¿¾ö¶¨Á˱à³ÌÁìÓòµÄзÕΧ£¬ÕýÈçÎÒÃǵĻ·¾³¾ö¶¨Á˶¯Ö²ÎïµÄÌØÐÔÒ»Ñù¡£´´Ôì¼ò½àÓÅÑŵijÌÐò£¬Ð´³ö¸É¾»¶øÎÞÈß³¤µÄ´úÂ룬»òÕßÊdz¬Ò»Á÷µÄ³ÌÐò£¬¾Í×ãÒÔÓ®µÃͬÐÐÃǵÄ×ð ......

linux Ðźűí

Ãû³Æ             Ä¬È϶¯×÷    ËµÃ÷
SIGHUP    ÖÕÖ¹½ø³Ì    ÖÕ¶ËÏß·¹Ò¶Ï
SIGINT   ÖÕÖ¹½ø³Ì    ÖжϽø³Ì
SIGQUIT  ½¨Á¢COREÎļþ   ÖÕÖ¹½ø³Ì£¬²¢ÇÒÉú³ÉcoreÎļþ
SIGILL ......

LinuxµÄÆô¶¯²½Öè


Load Bios
Read MBR's config to find out the os
Load the kernel of the os
init Process starts
execute /etc/rc.d /sysinit
start other modules (etc/modules.conf)
execute the run level scripts
execute /etc/rc.d/rc.local
execute /bin/login
shell started
......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ