Linux Command Line ½âÎö
0
´¦Àí
Ä£ÐÍ
Linux kernel
µÄÆô¶¯°ü
À¨ºÜ¶à×é¼þµÄ³õʼ»¯ºÍÏà¹ØÅäÖã¬ÕâЩÅäÖòÎÊýÒ»°ãÊÇͨ¹ýcommand line
½ø
ÐÐÅäÖõġ£ÔÚ½øÐкóÐø·ÖÎö֮ǰ£¬ÏÈÀ´Àí½âÒ»ÏÂcommand line
µÄ´¦Àí
Ä£ÐÍ£º
Òª´¦ÀíµÄ¶ÔÏóÊÇÒ»¸ö×Ö·û´®£¬ÆäÖаüº¬Á˸÷ÖÖÅäÖÃÐÅÏ¢£¬Í¨³£¸÷¸öÅäÖÃÖ®¼äͨ¹ý¿Õ¸ñ½øÐзÖÀ룬ÿ¸öÅäÖõıí´ïÐÎʽÊÇ
È磺param=value1,value2
»òÕߺܼòµ¥¾ÍÊÇÒ»¸örw
¡£
ÄÇôkernel
¾ÍÐèÒªÌṩ¶ÔÕâЩ
²ÎÊý½øÐд¦ÀíµÄ´¦Àíº¯ÊýÁÐ±í¡£¸ù¾Ý²ÎÊýµÄ×÷ÓÃÒÔ¼°Ö´ÐÐÆÚµÄÏȺó²»Í¬£¬ÕâЩ´¦Àíº¯Êý±»¶¨Òåµ½²»Í¬µÄ¶ÎÖС£Õë¶Ôÿһ¸ö²ÎÊý£¬Kernel
¶¼»áµ½ÏàÓ¦µÄ¶ÎÖвéÕÒÏàÓ¦µÄ´¦Àíº¯Êý£¬×îÖÕ½øÐи÷¸ö×é¼þµÄÅäÖá£
1
ÅäÖÃ
¸ñʽ
³£¼ûµÄÅäÖøñʽÈ磺
console=ttySAC0,115200 root=nfs nfsroot=192.168.1.9:/source/rootfs
initrd=0x10800000,0x14af47
2
ÅäÖÃ
·½Ê½
2.1 Bootloader
¶¯
̬ÅäÖÃ
ÓÉbootloader
½øÐвÎÊýÅä
Öã¬command line
½«×öΪatag_list
µÄÒ»¸ö½Úµã´«µÝµ½Kernel
¡£
2.2 Kernel
¾²Ì¬ÅäÖÃ
ͨ¹ýmake menuconfig
½ø
ÐÐÅäÖãºÔËÐкóÅäÖÃboot options->Default kernel
command string
¡£¸ÃÅäÖý«±»¾²Ì¬±àÒëµ½Kernel
ÖУ¬
ͨ¹ý±äÁ¿default_command_line
·ÃÎÊ¡£
3
½â
ÎöÅäÖÃ
3.1
Ïà¹Ø¶¨Òå
¸ù¾ÝÖ´ÐеÄÏȺó˳Ðò£¬¿ÉÒÔ½«´¦Àíº¯Êý·ÖΪÈý¸ö´óÀ࣬ËûÃÇ·Ö±ð´æÔÚÓÚÏÂÃæÈý¸ö¶ÎÖУ¨²Î¿¼top/arch/arm/kernel/vmlinux.lds
£©:
__setup_start = .; *(.init.setup) __setup_end = .;
__early_begin = .; *(.early_param.init) __early_end = .;
__start___param = .; *(__param) __stop___param = .;
Õâ
Èý¸ö¶ÎÄÚ´æ´¢µÄ²»ÊDzÎÊý£¬¶øÊÇcommand line
²ÎÊýËùÐèÒªµÄ´¦Àíº¯
Êý¡£
3.1.1
.early_param.init
¶Î
“.early_param.init
”
Ëù¶¨ÒåµÄ´¦ÀíÏà¶Ô¿¿Ç°Ò»Ð©£¬ËüËù´¦ÀíµÄ²ÎÊýÀýÈ磺initrd=
£¬cachepolicy=
£¬nocache
£¬ nowb
£¬ ecc=
£¬ vmalloc=
£¬
mem=
£¬µÈµÈ¡£
ÕâЩ´¦Àíº¯ÊýÊÇͨ¹ý__early_param
ºê
À´¶¨ÒåµÄ£¬ÀýÈ磺
static void __init early_initrd(char **p)
{
…… }
__early_param("initrd=", early_initrd);
¶ÔÓÚºê__early_param
£¬
¿ÉÒÔÔÚtop/arch/arm/include/asm/Setup.h
ÖÐ
ÕÒµ½Èç϶¨Ò壺
struct early_params {
const char
*arg;
&n
Ïà¹ØÎĵµ£º
¹ØÓÚÐÂÓ²Å̵ĹÒÔØÖ÷ÒªÓм¸¸ö²½×ࣺ£¨ÎÒÓõÄÊÇUbuntu9.10£©
Ò».Ê×ÏȲ鿴×Ô¼ºµÄÉ豸£¬ÓÃÃüÁî fdisk -l
youlong@ubuntu:~$ sudo fdisk -l
Disk /dev/sda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 51 ......
²»Í¬Ö®´¦Ö÷ÒªÌåÏÖÔÚ×ÅÑ۵㣺
£¨1£©UbuntuÊÇΪÁËÌá¸ßͼÐνçÃæÏµÄÓû§ÌåÑé
ËùÒÔ¹¦·ò¶¼×öÔÚ¼ÒÓûúÉÏÓ²¼þ¼æÈÝÐÔ
³õ¼¶Óû§µÄÒ×ÓÃÐÔ
£¨2£©SuseÊÇΪÁËÌá¸ßÆóÒµÓû§µÄÈÏ¿É
ÐèÒª×î¸ßµÄÎȶ¨ÐÔ£¬ÈÝÒ×µÄÅäÖ÷þÎñ
¿ÉÒÔºÜÈÝÒ×ʹÓÃSuseºÍRethat´î½¨Ò»¸ö¿É¿¿µÄÍøÕ¾
£¨3£©ArchlinuxÊÇΪÁ˼ò»¯Öм¶Ó ......
¡¡Ê²Ã´ÊÇSwap?
¡¡¡¡Swap£¬¼´½»»»Çø£¬³ýÁ˰²×°LinuxµÄʱºò£¬ÓжàÉÙÈ˹ØÐĹýËüÄØ?Æäʵ£¬SwapµÄµ÷Õû¶ÔLinux·þÎñÆ÷£¬ÌرðÊÇWeb·þÎñÆ÷µÄÐÔÄÜÖÁ¹ØÖØÒª¡£Í¨¹ýµ÷ÕûSwap£¬ÓÐʱ¿ÉÒÔÔ½¹ýϵͳÐÔÄÜÆ¿¾±£¬½ÚʡϵͳÉý¼¶·ÑÓá£
¡¡¡¡SwapµÄÔÀíÊÇÒ»¸ö½Ï¸´ÔÓµÄÎÊÌ⣬ÐèÒª´óÁ¿µÄƪ·ùÀ´ËµÃ÷¡£ÔÚÕâÀïÖ»×÷¼òµ¥µÄ½éÉÜ£¬ÔÚÒÔºóµÄÎÄÕÂÖн«ºÍ´ó¼ÒÏêÏ ......
linux coredumpÅäÖÃÓëµ÷ÊÔ
À´Ô´:
ChinaUnix²©¿Í ¡¡ÈÕÆÚ£º
2009.02.09 17:11¡¡(¹²ÓÐ0
ÌõÆÀÂÛ) ÎÒÒªÆÀÂÛ
linux coredumpÅäÖÃÓëµ÷ÊÔ
&nb ......