linuxÖеÄÓ²Á´½ÓºÍ·ûºÅÁ´½Ó
Ë÷Òý½Úµã¡¢Ó²Á¬½ÓºÍÁ¬½Ó¼ÆÊý
Ë÷Òý½Úµãinode£º
LinuxΪÿ¸öÎļþ·ÖÅäÒ»¸ö³ÆΪË÷Òý½ÚµãµÄºÅÂëinode£¬¿ÉÒÔ½«inode¼òµ¥Àí½â³ÉÒ»¸öÖ¸Õ룬ËüÓÀÔ¶Ö¸Ïò±¾ÎļþµÄ¾ßÌå´æ´¢Î»Öá£ÏµÍ³ÊÇͨ¹ýË÷Òý½Úµã(¶ø²»ÊÇÎļþÃû)À´¶¨Î»Ã¿Ò»¸öÎļþ¡£
ÀýÈ磺¼ÙÉèÎÒÃÇÔÚÓ²Å̵±Ç°Ä¿Â¼Ï½¨Á¢ÁËÒ»¸öÃûΪmytextÎı¾Îļþ£¬ÆäÄÚÈÝÖ»ÓÐÒ»ÐУº This is my file.
1¡¢µ±È»ÕâÐÐÎÄ×ÖÒ»¶¨ÊÇ´æ´¢ÔÚ´ÅÅÌÊý¾ÝÇøij¸ö¾ßÌåλÖÃÀï(ÎïÀíÉÏҪͨ¹ý´ÅÍ·ºÅ¡¢ÖùÃæºÅºÍÉÈÇøºÅÀ´ÃèÊö£¬ÔÚ±¾ÀýÖмÙÉè·Ö±ðÊÇ1¡¢20¡¢30)¡£
2¡¢¼ÙÉèÆäinodeÊÇ262457£¬ÄÇôϵͳͨ¹ýÒ»¶Î±ê×¼³ÌÐò£¬¾ÍÄܽ«Õâ¸öinodeת»»³É´æ·Å´ËÎļþµÄ¾ßÌåÎïÀíµØÖ·(1´ÅÍ·¡¢20ÖùÃæ¡¢30ÉÈÇø)£¬×îÖÕ¶Á³öÎļþµÄÄÚÈÝ£º“This is my file.”
3¡¢ËùÒÔinodeÊÇÖ¸ÏòÒ»¸öÎļþÊý¾ÝÇøµÄÖ¸ÕëºÅÂ룬һ¸öinode¶ÔÓ¦×ÅϵͳÖÐΨһµÄһƬÎïÀíÊý¾ÝÇø£¬¶øλÓÚÁ½¸ö²»Í¬ÎïÀíÊý¾ÝÇøµÄÎļþ±Ø¶¨·Ö±ð¶ÔÓ¦×ÅÁ½¸ö²»Í¬µÄinodeºÅÂë¡£
Îļþ¿½±´ÃüÁ
ÎÒÃǼüÈëÃüÁcp /home/zyd/mytext newfile ¡£ÔÚµ±Ç°¹¤×÷Ŀ¼½¨Á¢ÁËÒ»¸öÐÂÎļþnewfile£¬Æäʵ¼Ê²Ù×÷Ö÷Òª°üÀ¨ÈçÏÂÈý²½£º
1¡¢ÔÚµ±Ç°Ä¿Â¼ÖÐÔö¼ÓÒ»¸öĿ¼ÏÆäÎļþÃûÓòÌîÈënewfile£¬²¢·ÖÅäÁËÒ»¸öеÄinode£¬¼ÙÉèÊÇ262456¡£
2¡¢½«ÔÎļþ(ÔÚ1´ÅÍ·¡¢20ÖùÃæ¡¢30ÉÈÇø)µÄÄÚÈݸ´ÖÆÁËÒ»·Ýµ½ÐµĿÕÏÐÎïÀí¿é(¼ÙÉèÊÇ1´ÅÍ·¡¢20ÖùÃæ¡¢31ÉÈÇø)¡£
3¡¢ÌîдһЩÆäËû¹Ø¼üÐÅÏ¢£¬Ê¹ÏµÍ³Í¨¹ýÕâЩÐÅÏ¢¼°inodeºÅÂë¿ÉÒÔÍê³ÉÎïÀíµØÖ·µÄת»»¡£
ËùÒÔÎļþ¸´ÖÆÒª·ÖÅäеÄinodeºÍеÄÊý¾ÝÇø£¬ËäÈ»Á½¸öÎļþµÄÄÚÈÝÊÇÒ»ÑùµÄ¡£
Ó²Á¬½Óhardlink£º
ÎÒÃÇʵ¼ÊʹÓÃÎļþʱһ°ãÊÇͨ¹ýÎļþÃûÀ´ÒýÓõġ£Í¨¹ýÉÏÃæµÄÌÖÂÛ£¬ÎÒÃÇÖªµÀ£º
1¸öinodeºÅÂë¿Ï¶¨ºÍһƬÍêÈ«ÊôÓÚÒ»¸öÎļþµÄÊý¾ÝÇøÒ»Ò»¶ÔÓ¦¡£ÄÇôһ¸öÎļþϵͳÖÐÁ½¸ö»ò¸ü¶à¸ö²»Í¬µÄÎļþÃûÄÜ·ñ¶ÔӦͬһ¸öÎļþÄØ£¿´ð°¸Êǿ϶¨µÄ¡£
ÎÒÃÇÖªµÀinodeºÅÂëÊǼǼÔÚÎļþÃû¶ÔÓ¦µÄĿ¼ÏîÖеģ¬ÎÒÃÇ¿ÉÒÔʹÁ½¸ö»ò¶à¸öÎļþµÄĿ¼Ïî¾ßÓÐÏàͬµÄinodeÖµ£¬Êµ¼ÊÉϾÍʹËüÃǶÔÓ¦×Åͬһ¸öÎļþ¡£
Óм¸¸öĿ¼Ïî¾ßÓÐÏàͬµÄinodeºÅ£¬ÎÒÃǾÍ˵Õâ¸öÎļþÓм¸¸öÓ²Á¬½Ó(hardlink)£¬¶ÔÓÚÆÕͨÎļþ£¬ls -lÃüÁîµÄÁ¬½Ó¼ÆÊýcountÓòµÄÊýÖµ¾ÍÊDZ¾ÎļþÓµÓеÄÓ²Á¬½ÓÊý¡£Ó²Á¬½Ó¿ÉÒÔͨ¹ýlnÃüÁÁ¢£¬
ÀýÈ磺
ln /home/zyd/mytext hardlink_mytext
¾Í½¨Á¢ÁËÒ»¸öеÄÎļþhardlink_mytext£¬Õâ¸öÎļ
Ïà¹ØÎĵµ£º
Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâƪ·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´ËתÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨Õâƪ²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......
ºÜ¼òµ¥µÄÒ»¸ö³ÌÐò,subÄ£¿éÌṩÁ½¸öº¯Êýsub_integer,add_integer£¬²¢½«Æäµ¼³öµ½Äں˷ûºÅ±íÖУ¬sub_testÄ£¿é¶ÔÕâÁ½¸öº¯Êý½øÐе÷Óá£ÕâËãÊÇ×Ô¼ºÐ´µÄµÚÒ»¸öÄÚºËÄ£¿é³ÌÐò°É£¬¼ÍÄîÒ»ÏÂ.
sub.c:
#include<linux/init.h>
#include<linux/kernel.h>
#include<linux/module.h>
MODULE_LICENSE("Dual BSD/GPL") ......
Ò»¡¢ Í·Îļþ 1 ¡°¡±ÖеÄÍ·Îļþ£¬ÔÚÔ´Îļþµ±Ç°Ä¿Â¼²éÕÒ 2 -I ÖÐÖ¸¶¨Ä¿Â¼ 3 gccµÄ»·¾³±äÁ¿ C_INCLUDE_PATH, CPLUS_INCLUDE_PATH, OBJC_INCLUDE_PATH 4 ±àÒëÆ÷Ô¤Éè·¾¶¡¢ÄÚ¶¨Ä¿Â¼£º /usr/include /usr/local/include /usr/lib/gcc-lib/i386-linux/2.95.2/include /usr/lib/gcc-lib/i386-linux/2.95.2/../../../.. ......