¡¾Linux½»»»·ÖÇø¡¿ ½»»»·ÖÇø¸ñʽdzÎö
	
    
    
	Íê³É±¾ÎÄ£¬Ê¹ÓÃÁËÁ½¸ö¹¤¾ß
 1. strace
 2. google code search
.
----
swap·ÖÇøÓÐÒ»¸ö´óСΪPAGE_SIZEµÄÒ³Ãæ£¬³ÆÎªsignatureÒ³£¬ÉÏÃæ¼Ç¼swap·ÖÇøµÄ»ù±¾ÐÅÏ¢¡£
static struct swap_header_v1 {
        char bootbits[1024];            /* Space for disklabel etc. */
        unsigned int version;
        unsigned int last_page;
        unsigned int nr_badpages;
        unsigned int padding[125];
        unsigned int badpages[1];
} *p;
check_blocks()ȇ
¶ÔÕû¸öÎļþ½øÐÐÒ»´Î˳Ðò¶Á£¬ÔÚv1Éú³ÉÒ»¸ö´ÅÅ̿铺ÿ锺͓»µ¿é”µÄλͼ¡£ÔÚv2ÖÐ,“ºÃ¿é”ÎÞÐè¼Ç¼£¬Ö»¼Ç¼»µ¿é¡£Ò»¸ö´ÅÅ̵ϵ¿éÒ»°ãÀ´Ëµ¼«ÉÙ£¬ÎªÁË
½ÚÊ¡¿Õ¼ä£¬Òò´Ë¼Ç¼·½·¨²»ÔÙÊÇλͼ£¬¸Ä¶øÓÃÊý×éµÄ·½Ê½¡£
p->badpages[badpages] = page; // pageΪ»µ¿éºÅ
ÕâÀïÐèҪעÒâµÄÊÇ£¬ÔÚ
swap_header_v1µÄ¶¨ÒåÖУ¬p->badpagesÊý×é´óСΪ1£¬ÕâÀïʵ¼ÊÉϲúÉúÁËÔ½½ç¡£µ«ÊÇ£¬´ÓCÓïÑÔµÄ֪ʶÎÒÃÇÖªµÀ£¬¼´Ê¹Ô½½ç£¬Ö»
Òª±àÒëÆ÷ûÓмì²â³öÀ´£¬²¢ÇÒʵ¼Ê·ÃÎʵēԽ½çÇø”ÊÇÎÒÃǿɷÃÎʵÄÇøÓò£¬Ôò²»»áÓÐÈκÎÎÊÌâ¡£ÉÏÃæÕâ¾ä´úÂëÊÇÒ»ÖÖ“¿É¿ØµÄ¡¢ÓÐÒâʶµÄÔ½½ç”¡£¿É¿ØµÄ±ß½çÔÚÄÄÀï
ÄØ£¿ 
#define MAX_BADPAGES    ((pagesize-1024-128*sizeof(int)-10)/sizeof(int))  // 637 bad pages over i386
½áºÏswap_header_v1µÄ¶¨Ò壬ÉÏÃæµÄ¹«Ê½²»ÄÑÀí½â
bootbitsÕ¼1024×Ö½Ú£¬Ëæºó4¸ö±äÁ¿·Ö±ðÕ¼4¡¢4¡¢4¡¢4*125×Ö½Ú£¬SIGNATUREÕ¼10×Ö½Ú£¬Ê£ÓàµÄ¶¼¸øbadpagesÁË¡£³¬¹ýÁË
MAX_BADPAGES£¬Ôò»áÒý·¢Ô½½ç·ÃÎÊ¡£ 
swap
·ÖÇø¸ñʽÓÐÁ½¸ö°æ±¾£¬¹ÃÇÒ³ÆÎªv0ºÍv1£¬°æ±¾¿ÉÒÔÔÚÃüÁîÐÐÖÐÖ¸¶¨£¬Èç¹ûȱʡ£¬Ôòmkswap¸ù¾Ýswap·ÖÇøÉ豸/Îļþ´óС×Ô¶¯É趨¡£
write_signature((version == 0) ? "SWAP-SPACE" : "SWAPSPACE2");
ͨ¹ýÉÏÊö²½Ö裬signatureÒ³µÄÄÚÈݶ¼±»³õʼ»¯ºÃ
ÁË£¬ÏÖÔÚд»Øµ½¿éÉ豸ÖÐÈ¥£º
        offset = ((version == 0) ? 0 : 1024);
        if (lseek(DEV, offset, SEEK_SET) != offset)
                error_msg_and_die("unable to rewind swap-device");
        if (write(DEV, (char *) signature_page + offset, pagesize - offset)
                != pagesize - offset)
                error_msg_and_die("unable to write signature page");
¶ÔÓÚv0£¬s
    
     
	
	
    
    
	Ïà¹ØÎĵµ£º
        
    
    1.BIOS×Ô¼ì
        ¼ÆËã»úÔÚ½ÓͨµçÔ´Ö®ºóÊ×ÏȽøÐÐBIOS×Լ죬¼´ÎÒÃÇËù˵µÄpost(power on self test).×Ô¼ìÍê³Éºó£¬È»ºó¸ù¾ÝBIOSÖеÄÉèÖõÄÒýµ¼Ë³Ðò£¬´ÓÓ²ÅÌ¡¢¹âÅÌÒýµ¼£¬Í¨³£ÎÒÃÇʹÓÃÓ²ÅÌÀ´Òýµ¼ÏµÍ³¡£ÔÚÓ²Å̵ĵÚÒ»¸öÉÈÇø£¨0´ÅµÀ0ÖùÃæ1ÉÈÇø£©ÓÐÒ»¶Î´úÂë½Ð×öMBR£¨Master Boot Record.Ö÷Òýµ¼¼Ç¼£©£©£ ......
	
    
        
    
    ¶ÔÓÚUnixϵÁеIJÙ×÷ϵͳ£¬´ó¶à¶¼ÓÐv½Úµã¡£µ«ÊǶÔÓÚlinuxÀ´Ëµ£¬Ö»ÓÐͨÓõÄi½Úµã£¬È´Ã»ÓÐv½Úµã¡£
ÏÂÃæÀ´Ì½ÌÖһϣ¬linuxϵÄi½Úµã¡£
      linuxÖУ¬Îļþ²éÕÒ²»ÊÇͨ¹ýÎļþÃû³ÆÀ´²éÕҵġ£Êµ¼ÊÉÏÊÇͨ¹ýi½ÚµãÀ´ÊµÏÖÎļþµÄ²éÕÒ¶¨Î»µÄ¡£ÎÒÃÇ¿ÉÒÔÐÎÏóµÄ½«i½Úµã¿´×öÊÇÒ»¸öÖ¸Õëfip¡£µ±Îļþ´æ´¢µ½´ÅÅÌÉÏÈ¥µ ......
	
    
        
    
    config.h
/*--   
    
  Copyright   (c)   2004   Shenzhen   Huaren   Education   Co.Ltd   
    
  File   Name:   
  config.h   
  Ver ......
	
    
        
    
    Fedora ÏÂÊÇÓÐ/etc/inittabÎļþµÄ£¬¶øÔÚUbuntuÖÐÊÇûÓÐÕâÒ»¸öÎļþµÄ£¬ÒòΪÔÚubuntuÖУ¬inittabÈí¼þ°üÒѾ±»upstartÈí¼þ°üÌæ»»ÁË£¬ËùÓеÄÅäÖÃÐÅÏ¢¶¼ÔÚ/etc/event.d/Ŀ¼Ï¡£inittabÎļþÔÚinittabÀïÃæÕâÑùÃèÊöµÄ£¬This inittab file describes how the INIT process should set up the system in a certain run-level.¼´ÔÚlin ......
	
    
        
    
    LINUX KERNEL VERSIONS SUPPORTED.
DOCUMENT DATE: May 10, 2010
This document lists the exact versions of Linux kernels supported by
DoubleVision Pro.
Due to subtle differences from one Linux kernel to another, a different
DoubleVision Pro driver is required. If your Linux kernel is not supported
 ......