linux Ó²Á´½ÓÓëÈíÁ¬½ÓµÄÇø±ð
Ê×ÏÈÎÒÃÇÐèÒªÁ˽âlinux
ÏÂÓ²Á´½ÓÒÔ¼°ÈíÁ¬½ÓµÄ»ù±¾¸ÅÄî.
Ó²Á´½Ó£ºÐ½¨µÄÎļþÊÇÒѾ´æÔÚµÄÎļþµÄÒ»¸ö±ðÃû£¬µ±ÔÎļþɾ³ýʱ£¬Ð½¨µÄÎļþÈÔÈ»¿ÉÒÔʹÓÃ.
ÈíÁ´½Ó£ºÒ²³ÆÎª·ûºÅÁ´½Ó£¬Ð½¨µÄÎļþÒÔ“
·¾¶”
µÄÐÎʽÀ´±íʾÁíÒ»¸öÎļþ£¬ºÍWindows
µÄ¿ì½Ý·½Ê½Ê®·ÖÏàËÆ£¬Ð½¨µÄÈíÁ´½Ó¿ÉÒÔÖ¸Ïò²»´æÔÚµÄÎļþ.
ÏÂÃæÏêϸ½éÉÜÒ»ÏÂÓ²Á´½ÓºÍÈíÁ¬½ÓÖ®¼äµÄÇø±ð.
1.
Ó²Á´½ÓºÍÔÀ´µÄÎļþûÓÐÊ²Ã´Çø±ð£¬¶øÇÒ¹²ÏíÒ»¸ö
inode
ºÅ£¨ÎļþÔÚÎļþϵͳÉϵÄΨһ±êʶ£©£»¶øÈíÁ´½Ó²»¹²Ïí inode
£¬Ò²¿ÉÒÔ˵ÊǸöÌØÊâµÄ inode
£¬ËùÒÔºÍÔÀ´µÄ inode
ÓÐÇø±ð¡£
2.
ÈôÔÎļþɾ³ýÁË£¬Ôò¸ÃÈíÁ¬½ÓÔò²»¿ÉÒÔ·ÃÎÊ£¬¶øÓ²Á¬½ÓÔòÊÇ¿ÉÒԵġ£
3.
ÓÉÓÚ·ûºÅÁ´½ÓµÄÌØÐÔ£¬µ¼ÖÂÆä¿ÉÒÔ¿çÔ½´ÅÅÌ·ÖÇø£¬µ«Ó²Á´½Ó²»¾ß±¸Õâ¸öÌØÐÔ.
ÁíÍâÔÚ×ªÔØÒ»ÏÂÍøÉϵĽéÉÜ.
Ó²Á´½Ó(hard
link)
UNIX
ÎļþϵͳÌṩÁËÒ»ÖÖ½«²»Í¬ÎļþÁ´½ÓÖÁͬһ¸öÎļþµÄ»úÖÆ£¬ÎÒÃdzÆÕâÖÖ»úÖÆÎªÁ´½Ó¡£Ëü¿ÉÒÔʹµÃµ¥¸ö³ÌÐò¶ÔͬһÎļþʹÓò»Í¬µÄÃû×Ö¡£ÕâÑùµÄºÃ´¦ÊÇÎļþϵ
ͳֻ´æÔÚÒ»¸öÎļþµÄ¸±±¾¡£ÏµÍ³¼òµ¥µØÍ¨¹ýÔÚĿ¼Öн¨Á¢Ò»¸öеĵǼÇÏîÀ´ÊµÏÖÕâÖÖÁ¬½Ó¡£¸ÃµÇ¼ÇÏî¾ßÓÐÒ»¸öеÄÎļþÃûºÍÒªÁ¬½ÓÎļþµÄinode
ºÅ(inode
ÓëÔÎļþÏàͬ)
¡£²»ÂÛÒ»¸öÎļþÓжàÉÙÓ²Á´½Ó£¬ÔÚ´ÅÅÌÉÏÖ»ÓÐÒ»¸öÃèÊöËüµÄinode
£¬Ö»Òª¸ÃÎļþµÄÁ´½ÓÊý²»Îª0
£¬¸ÃÎļþ¾Í±£³Ö´æÔÚ¡£Ó²Á´½Ó²»ÄܶÔĿ¼½¨Á¢Ó²
Á´½Ó£¡
Ó²Á¬½ÓÊÇÖ±½Ó½¨Á¢ÔÚ½Úµã±íÉϵģ¨inode
£©£¬½¨Á¢Ó²Á¬½ÓÖ¸ÏòÒ»¸öÎļþµÄʱºò£¬»á¸üнڵã±íÉÏÃæµÄ¼ÆÊýÖµ¡£¾Ù¸öÀý×Ó£¬Ò»¸öÎļþ±»Á¬½ÓÁËÁ½´Î£¨Ó²Á¬½Ó£©£¬Õâ ¸ö ÎļþµÄ¼ÆÊýÖµÊÇ3
£¬¶øÎÞÂÛͨ¹ý3
¸öÎļþÃûÖеÄÈκÎÒ»¸ö·ÃÎÊ£¬Ð§¹û¶¼ÊÇÍêȫһÑùµÄ£¬µ«ÊÇÈç¹ûɾ³ýÆäÖÐÈÎÒâÒ»¸ö£¬¶¼Ö»ÊǰѼÆÊýÖµ¼õ1
£¬²»»áɾ³ýʵ¼ÊµÄÄÚÈݵģ¬ £¨ÈκδæÔÚµÄÎļþ±¾Éí¾ÍËãÊÇÒ»¸öÓ²Á¬½Ó£©Ö»ÓмÆÊýÖµ±ä³É0
Ò²¾ÍÊÇûÓÐÈκÎÓ²Á¬½ÓÖ¸ÏòµÄʱºò²Å»áÕæÊµµÄɾ³ýÄÚÈÝ¡£
ÈíÁ´½Ó(symbolic
link)
ÎÒÃǰѷûºÅÁ´½Ó³ÆÎªÈíÁ´½Ó£¬ËüÊÇÖ¸ÏòÁíÒ»¸öÎļþµÄÌØÊâÎļþ£¬ÕâÖÖÎļþµÄÊý¾Ý²¿·Ö½ö°üº¬ËüËùÒªÁ´½ÓÎļþµÄ·¾¶Ãû¡£ÈíÁ´½ÓÊÇΪÁ˿˷þÓ²Á´½ÓµÄ²»×ã¶øÒýÈëµÄ£¬Èí
Á´½Ó²»Ö±½ÓʹÓÃinode
ºÅ×÷ΪÎļþÖ¸Õ룬¶øÊÇʹÓÃÎļþ·¾¶Ãû×÷ΪָÕ루ÈíÁ´½Ó£ºÎļþÃû +
Êý¾Ý²¿·Ö-->
Ä¿±êÎļþµÄ·¾¶Ãû£©¡£Èí¼þÓÐ×Ô¼ºµÄinode
£¬²¢ÔÚ´ÅÅÌÉÏÓÐһСƬ¿Õ¼ä´æ·Å·¾¶Ãû¡£Òò´Ë£¬ÈíÁ´½ÓÄܹ»¿çÎļþϵͳ£¬Ò²¿ÉÒÔºÍĿ¼Á´½Ó£¡ Æä¶þ£¬ÈíÁ´½Ó¿ÉÒÔ¶ÔÒ»¸ö²»´æÔÚµÄÎļþÃû
Ïà¹ØÎĵµ£º
Öܺ£ºº /ÎÄ
2010.4.22
¿´¼¯ÈºµÄ¶«Î÷ʱÎÞÒâÖп´µ½¼¸ÄêǰÁ÷Ðеķֲ¼Ê½¿ÆÑ§¼ÆËãseti@home£¬ÃÀ¹ú²®¿ËÀû´óѧµÈ¿ÆÑ§½çÓÃÓÚ¼ÆËãÌìÌåÊý¾ÝµÄ¡£SETI@home ÊÇÒ»ÏîÀûÓÃÈ«ÇòÁªÍøµÄ¼ÆËã»ú¹²Í¬ËÑѰµØÍâÎÄÃ÷£¨SETI£©µÄ¿ÆÑ§ÊµÑ鼯»®¡£Äã¿ÉÒÔͨ¹ýÔËÐÐÒ»¸öÃâ·Ñ³ÌÐòÏÂÔØ²¢·ÖÎö´ÓÉäµçÍûÔ¶¾µ´«À´µÄÊý¾ÝÀ´¼ÓÈëÕâ¸öÏîÄ¿¡£ ²»¹ýÎÒÔÙ´ÎʹÓÃÆä¿Í»§¶ËÊ ......
£¨1£©ÔÚ\drivers\input\Input.cÖС£
A£¬subsys_initcall(input_init);
B£¬static int __init input_init(void)ÖÐÍê³É¼¸¸öÖØÒªµÄ²Ù×÷£º
err = class_register(&input_class);ÒÔÊäÈëÀ෽ʽע²áÀà
input_proc_init(); //´´½¨procϵÄĿ¼ºÍ ......
ͨ¹ý×ÛºÏʹÓöàÖÖ±ê×¼ÎļþϵͳBenchmarks¶ÔExt3, Ext4, Reiserfs, XFS, JFS, Reiser4µÄÐÔÄܲâÊԶԱȣ¬¶Ô²»Í¬Ó¦ÓÃÑ¡ÔñºÏÊʵÄÎļþϵͳ¸ø³öÒÔÏ·½°¸£¬¹©´ó¼Ò²Î¿¼¡£ÎļþϵͳÐÔÄܲâÊÔÊý¾Ý¼û¸½±í¡£
1¡¢´óÁ¿Ð¡Îļþ£¨LOSF, Lost of small files£©I/OÓ¦ÓÃ(ÈçСͼƬ)
Reiserfs(Ê×Ñ¡), Ext4ÎļþϵͳÊʺÏÕâÀà¸ºÔØÌØÕ÷£¬IOµ÷¶ÈË㷨ѡ ......
ʹÓÃDDD+GDB¿ª·¢ARM Linux³ÌÐò
½ñÌìÓÖÈ¡µÃÁËһЩ½øÕ¹£¬¸Ï¿ìдÏÂÀ´ÒÔÃâ×Ô¼ºÍü¼Ç¡£
×Ô´ÓLinuxÔÚÎҵİå×ÓÉÏÅÜÆðÀ´Ö®ºó£¬ÎÒÒ»Ö±ÔÚÏëÒ»¸öÎÊÌ⣬Ôõôµ÷ÊÔ½«À´Ð´µÄ³ÌÐò¡£ÆäʵÎÒÔÚLinux¿ª·¢·½ÃæÕæµÃºÜÍâÐУ¬µ½Á˽ñÌì²ÅÖªµÀGDBµ½µ×ÊÇ ¸ÉʲôÓõģ¬ºÇºÇ¡£ÎÒÏàÐźܶàÈË´ÓBootloaderµ÷ÊÔ¿ªÊ¼Ò»Ö±¶¼Ê¹ÓÃLED°¡£¬printfÕâÑùµÄ·½·¨À´µ÷ÊÔ¡ ......
which Óï·¨ which command ˵Ã÷ ÒÀÐò´Ópath»·¾³±äÁ¿ËùÁеÄĿ¼ÖÐÕÒ³öcommandµÄλÖ㬲¢ÏÔʾÍêÕû·¾¶µÄÃû³Æ¡£ÔÚÕÒµ½µÚÒ»¸ö·ûºÏÌõ¼þµÄ³ÌÐòÎļþʱ£¬¾ÍÁ¢¿ÌÍ£Ö¹ËÑË÷£¬Ê¡ÂÔÆäÓàδËÑË÷Ŀ¼¡£ ·¶Àý£¬ÕÒ³ölsÃüÁîµÄ³ÌÐòÎļþµÄλÖ㺠which ls ϵͳÊä³ö£º /usr/bin/ls whereis Óï·¨ whereis [option] name ˵Ã÷ ÕÒ³öÌØ¶¨ ......