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

LinuxÄں˼°ARMµÄÄÚ´æ¹ÜÀí

ÓÐÐí¶àÊ£¬ÐèÒª»Øµ½u-boot²ÅÄÜ˵Çå³þ……
include\configs\XXXX.hÖУ¨XXXXÊÓ¾ßÌåÆ½Ì¨¶ø¶¨£©£¬Ò»°ã»á×÷ÀàËÆÈç϶¨Ò壺
#define CONFIG_BOOTCOMMAND "mmcinit; fatload mmc 0 0x81c00000 uImage; bootm 0x81c00000"
±àÒëʱ¸ÃºêCONFIG_BOOTCOMMAND´«µÝ¸øÒ»¸öENVÏîbootcmd£¬¶øÔÚcommon\main.cÖУ¬º¯Êýmain_loopÈ¡³öÁ˸ÃenvÏ×÷ΪbootµÄ¹ý³Ì¿ªÊ¼Æô¶¯kernel£º
s = getenv ("bootcmd");
debug ("### main_loop: bootcmd=\"%s\"\n", s ? s : "<UNDEFINED>");
if (bootdelay >= 0 && s && !abortboot (bootdelay)) {
# ifdef CONFIG_AUTOBOOT_KEYED
int prev = disable_ctrlc(1); /* disable Control C checking */
# endif
# ifndef CFG_HUSH_PARSER
run_command (s, 0);
ÎÒÃǹØÐĵÄÊÇ×îºóÒ»ÌõÃüÁîbootm£¬ÔÚÎļþcommon\cmd_bootm.cÖÐÒѾ­¶¨Ò壺
U_BOOT_CMD(
  bootm, CFG_MAXARGS, 1, do_bootm,
  "bootm   - boot application image from memory\n",
  "[addr [arg ...]]\n    - boot application image stored in memory\n"
  "\tpassing arguments 'arg ...'; when booting a Linux kernel,\n"
  "\t'arg' can be the address of an initrd image\n"
);
¼´£¬ÕæÕýÒªÔËÐеijÌÐòÊÇdo_bootm¡£
һЩ¹Ø¼üµÄÊý¾Ý½á¹¹£º
1¡¢gd_t
ÔÚÎļþinclude\asm-arm\global_data.hÖж¨Ò壬ÔÚu-bootÖй㷺ʹÓã¬Í¨¹ýºê£º
DECLARE_GLOBAL_DATA_PTR;
½«¸ÃÊý¾Ý½á¹¹µÄÖ¸Õë·ÅÈë¼Ä´æÆ÷r8¡£
gdÕâ¸öÊý¾Ý½á¹¹£¬ÔÚlib-arm\board.cÎļþÖеÄstart_armbootº¯ÊýÖнøÐгõʼ»¯£¬Ïêϸ·ÖÎöÒÔºóÔÙ¿´¡£
2¡¢bd_t
ÔÚÎļþinclude\asm-arm\u-boot.hÖж¨Ò壬×÷Ϊu-bootµÄ½Ó¿Ú¡£
3¡¢image_header_t
ÔÚÎļþinclude\image.hÖж¨Ò壬ÊÇu-boot¼´½«¼ÓÔØµÄ¾µÏñÎļþÍ·ÐÅÏ¢£¬u-boot½«¸ù¾Ý¸ÃÍ·ÐÅϢȷ¶¨¾µÏñÎļþÊÇ·ñÕýÈ·£¬Ð£Ñ飬¾µÏñÎļþµÄÆðʼµØÖ·ÒÔ¼°Èë¿ÚµØÖ·µÈÐÅÏ¢¡£
typedef struct image_header {
uint32_t ih_magic; /* Image Header Magic Number */
uint32_t ih_hcrc; /* Image Header CRC Checksum */
uint32_t ih_time; /* Image Creation Timestamp */
uint32_t ih_size; /* Image Data Size */
uint32_t ih_load; /* Data Load  Address */
uint32_t ih_ep; /* Entry Point Address */
uint32_t ih_dcrc; /* Image Data CRC Checksum */
uint8_t ih_os;


Ïà¹ØÎĵµ£º

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

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

LinuxÏÂÈí¼þµÄ°²×°ÓëÐ¶ÔØ£¨×ª£©

ÔÚWindowsϰ²×°Èí¼þʱ£¬Ö»ÐèÔËÐÐÈí¼þµÄ°²×°³ÌÐò£¨setup¡¢installµÈ£©»òÕßÓÃzipµÈ½âѹËõÈí¼þ½â¿ª¼´¿É°²×°£¬ÔËÐз´°²×°³ÌÐò£¨uninstall¡¢unware¡¢¡°Ð¶ÔØ¡±µÈ£©¾ÍÄܽ«Èí¼þÇå³ý¸É¾»£¬ÍêȫͼÐλ¯µÄ²Ù×÷½çÃæ£¬¼òµ¥µ½Ö»ÒªÓÃÊó±êÒ»Ö±µã»÷¡°ÏÂÒ»²½¡±¾Í¿ÉÒÔÁË¡£¶øLinuxºÃÏó¾Í²»Ò»ÑùÁË£¬ºÜ¶àµÄ³õѧÕß¶¼±§Ô¹ÔÚLinuxϰ²×°ºÍÐ¶ÔØÈí¼þ·Ç³ ......

linux zImageÉú³É¹ý³ÌÏê½â


Äں˱àÒëÍê³Éºó»áÉú³ÉzImageÄں˾µÏñÎļþ¡£¹ØÓÚbootloader¼ÓÔØzImageµ½Äںˣ¬²¢ÇÒÌø×ªµ½zImage¿ªÊ¼µØÖ·ÔËÐÐzImageµÄ¹ý³Ì£¬ÏàÐÅ´ó¼Ò¶¼ºÜÈÝÒ×Àí½â¡£µ«¶ÔÓÚzImageÊÇÈçºÎ½âѹµÄ¹ý³Ì£¬¾Í²»ÊÇÄÇôºÃÀí½âÁË¡£±¾ÎĽ«½áºÏ²¿·Ö¹Ø¼ü´úÂ룬½²½âzImageµÄ½âѹ¹ý³Ì¡£
¡¡¡¡ÏÈ¿´¿´zImageµÄ×é³É°É¡£ÔÚÄں˱àÒëÍê³Éºó»áÔÚarch/arm/boot/ÏÂÉú ......

LinuxÏÂpsÃüÁîÏê½â


linuxÉϽø³ÌÓÐ5ÖÖ״̬:
1. ÔËÐÐ(ÕýÔÚÔËÐлòÔÚÔËÐжÓÁÐÖеȴý)
2. ÖжÏ(ÐÝÃßÖÐ, ÊÜ×è, Ôڵȴýij¸öÌõ¼þµÄÐγɻò½ÓÊܵ½ÐźÅ)
3. ²»¿ÉÖжÏ(ÊÕµ½ÐźŲ»»½ÐѺͲ»¿ÉÔËÐÐ, ½ø³Ì±ØÐëµÈ´ýÖ±µ½ÓÐÖжϷ¢Éú)
4. ½©ËÀ(½ø³ÌÒÑÖÕÖ¹, µ«½ø³ÌÃèÊö·û´æÔÚ, Ö±µ½¸¸½ø³Ìµ÷ÓÃwait4()ϵͳµ÷ÓúóÊÍ·Å)
5. Í£Ö¹(½ø³ÌÊÕµ½SIGSTOP, SIGSTP, ......

ÈçºÎÔÚLinuxÏÂÀ´²é¿´OSϵͳ¿éµÄ´óС

Skate
¡¡
¡¡¡¡²é¿´osϵͳ¿éµÄ´óС
¡¡
¡¡¡¡[root]# /sbin/tune2fs -l /dev/sda1
¡¡
¡¡¡¡²é¿´osϵͳҳµÄ´óС
¡¡
¡¡¡¡[oracle@skate-test ~]$ getconf PAGESIZE
¡¡
¡¡¡¡4096
¡¡
¡¡¡¡Ð޸ĿéµÄ´óС£º
¡¡
¡¡¡¡´´½¨Îļþϵͳʱ£¬¿ÉÒÔÖ¸¶¨¿éµÄ´óС¡£Èç¹û½«À´ÔÚÄãµÄÎļþϵͳÖÐÊÇһЩ±È½Ï´óµÄÎļþµÄ»°£¬Ê¹ÓýϴóµÄ¿é´óС ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ