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

LinuxÇý¶¯³ÌÐò¿ª·¢ É豸¿ØÖƽӿÚ

ÐòÑÔ
É豸Çý¶¯³ÌÐòµÄÒ»¸ö»ù±¾¹¦ÄܾÍÊǹÜÀíºÍ¿ØÖÆÉ豸£¬Í¬Ê±ÎªÓû§Ó¦ÓóÌÐòÌṩ¹ÜÀíºÍ¿ØÖÆÉ豸µÄ½Ó¿Ú¡£ÎÒÃÇÇ°ÃæµÄ“Hello World”Çý¶¯³ÌÐòÒѾ­¿ÉÒÔÌṩ¶Áд¹¦ÄÜÁË£¬ÔÚÕâÀïÎÒÃǽ«À©Õ¹ÎÒÃǵÄÇý¶¯ÒÔÖ§³ÖÉ豸¿ØÖƽӿڣ¬ÔÚLinuxÖÐÕâ¸ö½Ó¿ÚÊÇͨ¹ýioctlº¯ÊýÀ´ÊµÏֵġ£
É豸¿ØÖƽӿڣ¨ioctl º¯Êý£©
»ØÏëÒ»ÏÂÎÒÃÇÔÚ×Ö·ûÉ豸Çý¶¯ÖнéÉܵÄstruct file_operations ½á¹¹£¬ÕâÀïÎÒÃǽ«½éÉÜÒ»¸öÐµķ½·¨£º
int (*ioctl) (struct inode *, struct file *, unsigned int, unsigned long);
ÕâÊÇÇý¶¯³ÌÐòÉ豸¿ØÖƽӿں¯Êý£¨ioctlº¯Êý£©µÄÄÚºËÔ­ÐͶ¨Ò壬struct inode * ºÍstruct file* ÃèÊöÁ˲Ù×÷µÄÎļþ£¬unsigned int ÃèÊöÁËioctlÃüÁîºÅ£¬ÕâÊÇÒ»¸öÖØÒªµÄ²ÎÊý£¬ÎÒÃÇÉÔºó»á¶ÔËü×öÏêϸ½éÉÜ¡£×îºóÒ»¸ö²ÎÊýÊÇunsigned longÊý¾ÝÀàÐÍ£¬ÃèÊöÁËioctlÃüÁî¿ÉÄÜ´øÓеIJÎÊý£¬Ëü¿ÉÄÜÊÇÒ»¸öÕûÊý»òÖ¸ÕëÊý¾Ý¡£
ioctlÃüÁîºÅ
ioctlÃüÁîºÅÊÇÕâ¸öº¯ÊýÖÐ×îÖØÒªµÄ²ÎÊý£¬ËüÃèÊöµÄioctlÒª´¦ÀíµÄÃüÁî¡£LinuxÖÐʹÓÃÒ»¸ö32λµÄÊý¾ÝÀ´±àÂëioctlÃüÁËü°üº¬Ëĸö²¿·Ö£ºdir£ºtype£ºnr£ºsize¡£
dir£º
´ú±íÊý¾Ý´«ÊäµÄ·½Ïò£¬Õ¼2룬¿ÉÒÔÊÇ_IOC_NONE£¨ÎÞÊý¾Ý´«Ê䣬0U£©£¬_IOC_WRITE£¨ÏòÉ豸дÊý¾Ý£¬1U£©»ò_IOC_READ£¨´ÓÉ豸¶ÁÊý¾Ý£¬2U£©»òËûÃǵÄÂß¼­»ò×éºÏ£¬µ±È»Ö»ÓÐ_IOC_WRITEºÍ_IOC_READµÄÂß¼­»ò²ÅÓÐÒâÒå¡£
type£º
ÃèÊöÁËioctlÃüÁîµÄÀàÐÍ£¬8λ¡£Ã¿ÖÖÉ豸»òϵͳ¶¼¿ÉÒÔÖ¸¶¨×Ô¼ºµÄÒ»¸öÀàÐͺţ¬ioctlÓÃÕâ¸öÀàÐÍÀ´±íʾioctlÃüÁîËùÊôµÄÉ豸»òÇý¶¯¡£Ò»°ãÓÃASCIIÂë×Ö·ûÀ´±íʾ£¬Èç 'a'¡£
nr£º
ioctlÃüÁîÐòºÅ£¬Ò»°ã8λ¡£¶ÔÓÚÒ»¸öÖ¸¶¨µÄÉ豸Çý¶¯£¬¿ÉÒÔ¶ÔËüµÄioctlÃüÁî×öÒ»¸ö˳Ðò±àÂ룬һ°ã´ÓÁ㿪ʼ£¬Õâ¸ö±àÂë¾ÍÊÇioctlÃüÁîµÄÐòºÅ¡£
size£º
ioctlÃüÁîµÄ²ÎÊý´óС£¬Ò»°ã14λ¡£ioctlÃüÁîºÅµÄÕâ¸öÊý¾Ý³ÉÔ±²»ÊÇÇ¿ÖÆÊ¹Óõģ¬Äã¿ÉÒÔ²»Ê¹ÓÃËü£¬µ«ÊÇÎÒÃǽ¨ÒéÄãÖ¸¶¨Õâ¸öÊý¾Ý³ÉÔ±£¬Í¨¹ýËüÎÒÃÇ¿ÉÒÔ¼ì²éÓû§¿Õ¼äÊý¾ÝµÄ´óСÒÔ±ÜÃâ´íÎóµÄÊý¾Ý²Ù×÷£¬Ò²¿ÉÒÔʵÏÖ¼æÈݾɰ汾µÄioctlÃüÁî¡£
ÎÒÃÇ¿ÉÒÔ×Ô¼ºÀ´Ö±½ÓÖ¸¶¨Ò»¸öioctlÃüÁîºÅ£¬Ëü¿ÉÄܽö½öÊÇÒ»¸öÕûÊý¼¯£¬µ«LinuxÖеÄioctlÃüÁîºÅ¶¼ÊÇÓÐÌØ¶¨º¬ÒåµÄ£¬Òò´Ëͨ³£ÎÒÃDz»ÍƼöÕâô×ö¡£ÆäʵLinuxÄÚºËÒѾ­ÌṩÁËÏàÓ¦µÄºêÀ´×Ô¶¯Éú³ÉioctlÃüÁîºÅ£º
_IO(type,nr)
_IOR(type,nr,size)
_IOW(type,nr,size)
_IOWR(type,nr,size)
ºê_IOÓÃÓÚÎÞÊý¾Ý´«Ê䣬ºê_IORÓÃÓÚ´ÓÉ豸¶ÁÊý¾Ý£¬ºê _IOWÓÃÓÚÏòÉ豸дÊý¾Ý£¬ºê_IOWRÓÃÓÚͬʱÓжÁдÊý¾ÝµÄIOCTLÃüÁî¡£Ïà¶ÔµÄ£¬LinuxÄÚºËÒ²Ìṩ


Ïà¹ØÎĵµ£º

linuxϸü¸ÄÖ÷»úÃû

1.# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=yourname £¨ÔÚÕâÐÞ¸Ähostname£¬°Ñyourname»»³ÉÄãÏëÓõÄÃû×Ö£©
NISDOMAIN=eng-cn.platform.com
2.ÐÞ¸Ä/etc/hostsÀïÃæµÄÃû×Ö
££ vi /etc/hosts
127.0.0.1 localhost.localdomain localhost £¨ÔÚÕâÐÞ¸Ähostname£¬°ÑĩβµÄlocalhost»»³ÉÄãÏëÓõÄÃû×Ö£©
&nbs ......

[ת]linux Äں˷ÖÎöÖ®list_head

linux Äں˷ÖÎöÖ®list_head
 
 
±¾ÎÄÏêϸ·ÖÎöÁË 2.6.x ÄÚºËÖÐÁ´±í½á¹¹µÄʵÏÖ£¬²¢Í¨¹ýʵÀý¶Ôÿ¸öÁ´±í²Ù×÷½Ó¿Ú½øÐÐÁËÏ꾡µÄ½²½â¡£
Ò»¡¢ Á´±íÊý¾Ý½á¹¹¼ò½é
Á´±íÊÇÒ»ÖÖ³£ÓõÄ×éÖ¯ÓÐÐòÊý¾ÝµÄÊý¾Ý½á¹¹£¬Ëüͨ¹ýÖ¸Õ뽫һϵÁÐÊý¾Ý½ÚµãÁ¬½Ó³ÉÒ»ÌõÊý¾ÝÁ´£¬ÊÇÏßÐÔ±íµÄÒ»ÖÖÖØÒªÊµÏÖ·½Ê½¡£Ïà¶ÔÓÚÊý×飬Á´±í¾ßÓиüºÃµÄ¶¯Ì¬Ð ......

linux»·¾³±äÁ¿

LinuxÊÇÒ»¸ö¶àÓû§µÄ²Ù×÷ϵͳ¡£Ã¿¸öÓû§µÇ¼ϵͳºó£¬¶¼»áÓÐÒ»¸öרÓõÄÔËÐл·¾³¡£Í¨³£Ã¿¸öÓû§Ä¬ÈϵĻ·¾³¶¼ÊÇÏàͬµÄ£¬Õâ¸öĬÈÏ»·¾³Êµ¼ÊÉϾÍÊÇÒ»×é»·¾³±äÁ¿µÄ¶¨Òå¡£Óû§¿ÉÒÔ¶Ô×Ô¼ºµÄÔËÐл·¾³½øÐж¨ÖÆ£¬Æä·½·¨¾ÍÊÇÐÞ¸ÄÏàÓ¦µÄϵͳ»·¾³±äÁ¿¡£
³£¼ûµÄ»·¾³±äÁ¿
¶ÔÓÚPATHºÍHOMEµÈ»·¾³±äÁ¿´ó¼Ò¶¼²»Ä°Éú¡£³ý´ËÖ®Í⣬»¹ÓÐÏÂÃæÒ»Ð©³ ......

linuxϵÄnfs·þÎñÅäÖÃ

1¡¢NFS·þÎñÆ÷¶ËÓë¿Í»§¶ËµÄ°²×°£º
sudo apt-get install nfs-kernel-server  nfs-common  portmap
2¡¢ÅäÖÃportmap
Á½ÖÖ·½·¨ÈÎѡһÖ־ͿÉÒÔ£º
sudo emacs /etc/default/portmap
È¥µô -i 127.0.0.1
3¡¢ÅäÖùÒÔØÄ¿Â¼ºÍȨÏÞ
vim /etc/exports
ÔÚ¸ÃÅäÖÃÎļþϼÓÈ룺
/home/nfsboot *(rw,sync)
½âÊÍһϣº
4¡ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ