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

LinuxÉ豸Çý¶¯³ÌÐòѧϰ֮¸ß¼¶×Ö·ûÇý¶¯³ÌÐò

LinuxÉ豸Çý¶¯³ÌÐòѧϰ±Ê¼ÇϵÁÐÎÄÕÂÔ­×÷ÕßÊÇ£ºTekkaman Ninja£¬Ëû²©¿ÍµØÖ·£º
http://blog.chinaunix.net/u1/34474/showart_404278.html
ÔÚ´ËÏòTekkaman Ninja±íʾ¸Ðл£¬Ð´³öÕâôºÃµÄÎÄÕ£¬Ê¹ÎÒÉÙ×ßÁ˺ܶàÍä·¡£
½ñÌì½øÈë¡¶LinuxÉ豸Çý¶¯³ÌÐò£¨µÚ3°æ£©¡·µÚÁùÕ¸߼¶×Ö·ûÇý¶¯³ÌÐò²Ù×÷µÄѧϰ¡£
Ò»¡¢ioctl
´ó²¿·ÖÉ豸³ýÁ˶ÁдÄÜÁ¦£¬»¹¿É½øÐг¬³ö¼òµ¥µÄÊý¾Ý´«ÊäÖ®ÍâµÄ²Ù×÷£¬ËùÒÔÉ豸Çý¶¯Ò²±ØÐë¾ß±¸½øÐи÷ÖÖÓ²¼þ¿ØÖƲÙ×÷µÄÄÜÁ¦. ÕâЩ²Ù×÷³£³£Í¨¹ý ioctl ·½·¨À´Ö§³Ö£¬ËüÓкÍÓû§¿Õ¼ä°æ±¾²»Í¬µÄÔ­ÐÍ:
int (*ioctl) (struct inode *inode, struct file *filp,
              unsigned int cmd, unsigned long arg);
ÐèҪעÒâµÄÊÇ£º²»¹Ü¿ÉÑ¡µÄ²ÎÊýargÊÇ·ñÓÉÓû§¸ø¶¨ÎªÒ»¸öÕûÊý»òÒ»¸öÖ¸Õ룬Ëü¶¼ÒÔÒ»¸öunsigned longµÄÐÎʽ´«µÝ¡£Èç¹ûµ÷ÓóÌÐò²»´«µÝarg²ÎÊý, ±»Çý¶¯ÊÕµ½µÄ arg ÖµÊÇ䶨ÒåµÄ¡£ÒòΪÔÚarg²ÎÊýÉϵÄÀàÐͼì²é±»¹Ø±ÕÁË,ËùÒÔÈôÒ»¸ö·Ç·¨²ÎÊý´«µÝ¸ø ioctl£¬±àÒëÆ÷ÊÇÎÞ·¨±¨¾¯µÄ£¬ÇÒÈκιØÁªµÄ´íÎóÄÑÒÔ²éÕÒ.
Ñ¡ÔñioctlÃüÁî
ΪÁË·ÀÖ¹Ïò´íÎóµÄÉ豸ʹÓÃÕýÈ·µÄÃüÁÃüÁîºÅÓ¦¸ÃÔÚϵͳ·¶Î§ÄÚΨһ¡£Îª·½±ã³ÌÐòÔ±´´½¨Î¨Ò»µÄ ioctl ÃüÁî´úºÅ£¬ ÿ¸öÃüÁîºÅ±»»®·ÖΪ¶à¸öλ×ֶΡ£Òª°´ Linux Äں˵ÄÔ¼¶¨·½·¨ÎªÇý¶¯Ñ¡Ôñ ioctl µÄÃüÁîºÅ, Ó¦¸ÃÊ×ÏÈ¿´¿´ include/asm/ioctl.h ºÍ Documentation/ioctl-number.txt¡£ ҪʹÓõÄλ×ֶηûºÅ¶¨ÒåÔÚ <linux/ioctl.h> :
type(»ÃÊý)£º8 λ¿í(_IOC_TYPEBITS)£¬²Î¿¼ioctl-number.txtÑ¡ÔñÒ»¸öÊý£¬²¢ÔÚÕû¸öÇý¶¯ÖÐʹÓÃËü¡£
number£¨ÐòÊý£©£ºË³Ðò±àºÅ£¬8 λ¿í(_IOC_NRBITS)¡£
direction£¨Êý¾Ý´«Ë͵ķ½Ïò£©£º¿ÉÄܵÄÖµÊÇ _IOC_NONE(ûÓÐÊý¾Ý´«Êä)¡¢_IOC_READ¡¢ _IOC_WRITEºÍ _IOC_READ|_IOC_WRITE (Ë«Ïò´«ÊäÊý¾Ý)¡£¸Ã×Ö¶ÎÊÇÒ»¸öλÑÚÂ루Á½Î»£©, Òò´Ë¿ÉʹÓà AND ²Ù×÷À´³éÈ¡_IOC_READ ºÍ _IOC_WRITE¡£
size£¨Êý¾ÝµÄ´óС£©£º¿í¶ÈÓëÌåϵ½á¹¹ÓйØ,ARMΪ14λ.¿ÉÔÚºê _IOC_SIZEBITS ÖÐÕÒµ½Ìض¨ÌåϵµÄÖµ. 
 <linux/ioctl.h> Öаüº¬µÄ <asm/ioctl.h>¶¨ÒåÁËһЩ¹¹ÔìÃüÁî±àºÅµÄºê:
_IO(type,nr)/*ûÓвÎÊýµÄÃüÁî*/
_IOR(type, nr, datatype)/*´ÓÇý¶¯ÖжÁÊý¾Ý*/
_IOW(type,nr,datatype)/*дÊý¾Ý*/
_IOWR(type,nr,datatype)/*Ë«Ïò´«ËÍ*/
/*type ºÍ number ³ÉÔ±×÷Ϊ²ÎÊý±»´«µÝ, ²¢ÇÒ size ³ÉԱͨ¹ýÓ¦Óà sizeof µ½ datatype ²ÎÊý¶øµÃµ½


Ïà¹ØÎĵµ£º

20100416 Linux±Ê¼Ç

1¡¢ÒýÓÃÔÚº¯Êý¼äÊDZØÐë´«µÝµÄ£¬Ö»ÒªÔø¾­ÊÇÒ»¸öÒýÓ㬾Ͳ»Äܲ»ÒýÓÃ
2¡¢log4ϵÁкܺÃÓ㬲»¹ýÅäÖÃÌ«Âé·³ÁË£¬¿ÉÒԲμû
http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/DailyRollingFileAppender.html
ÏÂÖܼƻ®:
1¡¢¶àÏ̴߳¦Àí
2¡¢SDMCÄ£¿éǶÈë ......

Linux slab ·ÖÅäÆ÷ÆÊÎöÖ®Ò»£ºslab µÄ¸ÅÄî

      ÄÚ´æ¹ÜÀíµÄÄ¿±êÊÇÌṩһÖÖ·½·¨£¬ÎªÊµÏÖ¸÷ÖÖÄ¿µÄ¶øÔÚ¸÷¸öÓû§Ö®¼äʵÏÖÄÚ´æ¹²Ïí¡£ÄÚ´æ¹ÜÀí·½·¨Ó¦¸ÃʵÏÖÒÔÏÂÁ½¸ö¹¦ÄÜ£ºÒ»ÊÇ×îС»¯¹ÜÀíÄÚ´æËùÐèµÄʱ¼ä£»¶þÊÇ×î´ó»¯ÓÃÓÚÒ»°ãÓ¦ÓõĿÉÓÃÄڴ棨×îС»¯¹ÜÀí¿ªÏú£©¡£ÄÚ´æ¹ÜÀíʵ¼ÊÉÏÊÇÒ»ÖÖ¹ØÓÚȨºâµÄÁãºÍÓÎÏ·¡£Äú¿ÉÒÔ¿ª·¢Ò»ÖÖʹÓÃÉÙÁ¿ÄÚ´æ½øÐйÜÀíµÄËã· ......

ÊÇË­±àдÁËLinux:ÃÀ¹ú¹«Ë¾

    À´Ô´£ºcnbeta ×÷Õߣºcnbeta 2008-10-31 ³ö´¦£ºpcdog.com
    ÎÒ²»ÖªµÀΪʲô“Ö»ÓÐ0.10068£¥µÄLinuxÄں˿ª·¢ÕßÁìнˮ”ÕâÖÖÏ¡ÀïºýÍ¿µÄÏë·¨Á÷´«²»Ï¢,µ«ËüȷʵÔÚÁ÷´«.ËùÒÔ,ÎÒÖ»ÏëÒ»ÀÍÓÀÒݵØËµ,¾Í¾ø´ó²¿·Ö¶øÑÔ,LinuxÊÇÓÉһЩÖ÷ÒªµÄÃÀ¹ú¹«Ë¾¹ÍÓõÄÈí¼þ¹¤³Ìʦ ......

Fedora Linux ϰ²×° source navigator µÄ bug shoot!

°²×°ºó
ÔËÐÐsnavigator
³öÏÖ
Can't find a usable tk.tcl in the following directories: 
/opt/sourcenav/share/tk8.3
/opt/sourcenav/share/tk8.3/tk.tcl: no event type or button # or keysym
no event type or button # or keysym
while executing
"bind Listbox <MouseWheel> {
%W yview scroll ......

linuxÔ´´úÂëÔĶÁ¹¤¾ß½ø½×

WindowsϵÄÔ´ÂëÔĶÁ¹¤¾ßSouce Insightƾ ½è×ÅÆäÒ×ÓÃÐԺͶàÖÖ±à³ÌÓïÑÔµÄÖ§³Ö£¬ÎÞÒÉÊÇÕâ¸öÁìÓòµÄ“´øÍ·´ó¸ç”¡£Linux/UNIX»·¾³ÏÂÄØ£¿ËƺõÈÔÈ»ÊÇ´¦ÓÚ°Ù»¨Æë·Å£¬¸÷ÓÐǧÇïµÄ´ºÇïÕ½¹úʱ´ú£¬Êµ ¼ÊÉÏ£¬ËƺõÆä»·¾³ÏµÄÈκÎÈí¼þ¶¼ÊÇ´¦ÓÚÒ»ÖÖÖð¹ÖÐÔ­µÄÌ¬ÊÆ£¬Ò²ÐíÕâ¾ÍÊÇ“¼¯ÊД֮ÓÚ“´ó½ÌÌÔµÄÓÅÊÆËù ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ