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

LinuxÉ豸Çý¶¯³ÌÐò¿ª·¢Á÷³ÌʾÀý

ÒÔϵÄһЩÎÄ×ÖÖ÷ÒªÀ´Ô´ÓÚkhg£¬johnsonmµÄWrite linux device driver£¬Brennan's Guide to Inline Assembly£¬The Linux A-Z£¬»¹ÓÐÇ廪BBSÉϵÄÓйØdevice driverµÄһЩ×ÊÁÏ. ÕâЩ×ÊÁÏÓеÄÒѾ­¹ýʱ£¬ÓеϹÓÐһЩ´íÎó£¬ÎÒÒÀ¾Ý×Ô¼ºµÄÊÔÑé½á¹û½øÐÐÁËÐÞÕý.
Ò»¡¢Linux device driver µÄ¸ÅÄî
    ϵͳµ÷ÓÃÊDzÙ×÷ϵͳÄں˺ÍÓ¦ÓóÌÐòÖ®¼äµÄ½Ó¿Ú£¬É豸Çý¶¯³ÌÐòÊDzÙ×÷ϵͳÄں˺ͻúÆ÷Ó²¼þÖ®¼äµÄ½Ó¿Ú.É豸Çý¶¯³ÌÐòΪӦÓóÌÐòÆÁ±ÎÁËÓ²¼þµÄϸ½Ú£¬ÕâÑùÔÚÓ¦ÓóÌÐò¿´À´£¬Ó²¼þÉ豸ֻÊÇÒ»¸öÉ豸Îļþ£¬ Ó¦ÓóÌÐò¿ÉÒÔÏó²Ù×÷ÆÕͨÎļþÒ»Ñù¶ÔÓ²¼þÉ豸½øÐвÙ×÷.É豸Çý¶¯³ÌÐòÊÇÄں˵ÄÒ»²¿·Ö£¬ËüÍê³ÉÒÔÏµĹ¦ÄÜ:
1.¶ÔÉ豸³õʼ»¯ºÍÊÍ·Å.
2.°ÑÊý¾Ý´ÓÄں˴«Ë͵½Ó²¼þºÍ´ÓÓ²¼þ¶ÁÈ¡Êý¾Ý.
3.¶ÁȡӦÓóÌÐò´«Ë͸øÉ豸ÎļþµÄÊý¾ÝºÍ»ØËÍÓ¦ÓóÌÐòÇëÇóµÄÊý¾Ý.
4.¼ì²âºÍ´¦ÀíÉ豸³öÏֵĴíÎó.
    ÔÚLinux²Ù×÷ϵͳÏÂÓÐÁ½ÀàÖ÷ÒªµÄÉ豸ÎļþÀàÐÍ£¬Ò»ÖÖÊÇ×Ö·ûÉ豸£¬ÁíÒ»ÖÖÊÇ¿éÉ豸.×Ö·ûÉ豸ºÍ¿éÉ豸µÄÖ÷񻂿±ðÊÇ:ÔÚ¶Ô×Ö·ûÉ豸·¢³ö¶Á/дÇëÇóʱ£¬Êµ¼ÊµÄÓ²¼þI/OÒ»°ã¾Í½ô½Ó×Å·¢ÉúÁË£¬¿éÉ豸Ôò²»È»£¬ËüÀûÓÃÒ»¿éϵͳÄÚ´æ×÷»º³åÇø£¬µ±Óû§½ø³Ì¶ÔÉ豸ÇëÇóÄÜÂú×ãÓû§µÄÒªÇ󣬾ͷµ»ØÇëÇóµÄÊý¾Ý£¬Èç¹û²»ÄÜ£¬¾Íµ÷ÓÃÇëÇóº¯ÊýÀ´½øÐÐʵ¼ÊµÄI/O²Ù×÷.¿éÉ豸ÊÇÖ÷ÒªÕë¶Ô´ÅÅ̵ÈÂýËÙÉ豸Éè¼ÆµÄ£¬ÒÔÃâºÄ·Ñ¹ý¶àµÄCPUʱ¼äÀ´µÈ´ý.
   ÒѾ­Ìáµ½£¬Óû§½ø³ÌÊÇͨ¹ýÉ豸ÎļþÀ´Óëʵ¼ÊµÄÓ²¼þ´ò½»µÀ.ÿ¸öÉ豸Îļþ¶¼¶¼ÓÐÆäÎļþÊôÐÔ(c/b)£¬ÁíÍâÿ¸öÎļþ¶¼ÓÐÁ½¸öÉ豸ºÅ£¬µÚÒ»¸öÊÇÖ÷É豸ºÅ£¬±êʶÇý¶¯³ÌÐò£¬µÚ¶þ¸öÊÇ´ÓÉ豸ºÅ£¬±êʶʹÓÃͬһ¸öÉ豸Çý¶¯³ÌÐòµÄ²»Í¬µÄÓ²¼þÉ豸£¬±ÈÈçÓÐÁ½¸öÈíÅÌ£¬¾Í¿ÉÒÔÓôÓÉ豸ºÅÀ´Çø·ÖËûÃÇ¡£É豸ÎļþµÄµÄÖ÷É豸ºÅ±ØÐëÓëÉ豸Çý¶¯³ÌÐòÔڵǼÇʱÉêÇëµÄÖ÷É豸ºÅÒ»Ö£¬·ñÔòÓû§½ø³Ì½«ÎÞ·¨·ÃÎʵ½Çý¶¯³ÌÐò.¡£
    ×îºó±ØÐëÌáµ½µÄÊÇ£¬ÔÚÓû§½ø³Ìµ÷ÓÃÇý¶¯³ÌÐòʱ£¬ÏµÍ³½øÈëºËÐÄ̬£¬Õâʱ²»ÔÙÊÇÇÀÏÈʽµ÷¶È.Ò²¾ÍÊÇ˵£¬ÏµÍ³±ØÐëÔÚÄãµÄÇý¶¯³ÌÐòµÄ×Óº¯Êý·µ»Øºó²ÅÄܽøÐÐÆäËûµÄ¹¤×÷.Èç¹ûÄãµÄÇý¶¯³ÌÐòÏÝÈëËÀÑ­»·£¬²»ÐÒµÄÊÇÄãÖ»ÓÐÖØÐÂÆô¶¯»úÆ÷ÁË£¬È»ºó¾ÍÊÇÂþ³¤µÄfsck.//hehe ¡£
¡¡¶þ¡¢ÈçºÎ±àдLinux²Ù×÷ϵͳϵÄÉ豸Çý¶¯³ÌÐò
    ʵÀýÆÊÎö
    ÎÒÃÇÀ´Ð´Ò»¸ö×î¼òµ¥µÄ×Ö·ûÉ豸Çý¶¯³ÌÐò¡£ËäÈ»ËüʲôҲ²»×ö£¬µ«ÊÇͨ¹ýËü¿ÉÒÔÁ˽âLinuxµÄÉ豸Çý¶¯³ÌÐòµÄ¹¤×÷Ô­Àí.°ÑÏÂÃæµÄC´úÂëÊäÈë»úÆ÷£¬Äã¾Í»á»ñµÃÒ»¸öÕæÕýµÄÉ豸Çý¶¯³ÌÐò.²»¹ýÎ


Ïà¹ØÎĵµ£º

LinuxÃüÁmodinfoÏÔʾkernelÄ£¿éÐÅÏ¢

modinfo(module infomation)
¹¦ÄÜ˵Ã÷£ºÏÔʾkernelÄ£¿éµÄÐÅÏ¢¡£
Óï¡¡¡¡·¨£ºmodinfo [-adhpV][Ä£¿éÎļþ]
²¹³ä˵Ã÷£ºmodinfo»áÏÔʾkernelÄ£¿éµÄ¶ÔÏóÎļþ£¬ÒÔÏÔʾ¸ÃÄ£¿éµÄÏà¹ØÐÅÏ¢¡£
²Î¡¡¡¡Êý£º
  -a»ò--author ¡¡ÏÔʾģ¿é¿ª·¢ÈËÔ±¡£ 
  -d»ò--description ¡¡ÏÔʾģ¿éµÄ˵Ã÷¡£& ......

linuxÖгö´í´¦Àí

linuxÖУ¬ÔÚÖ§³Ö¶àÏ̵߳Ļ·¾³ÖУ¬Í¨³£Ã¿¸öÏ̶߳¼ÓÐÊôÓÚ×Ô¼ºµÄerrno±äÁ¿£¬ÊÇÓÃÀ´±íÊ¾ÌØ¶¨´íÎóµÄ³£Á¿¡£
ÒÔÏÂÊÇ<errno.h>Öж¨ÒåµÄËùÓгö´íerrno³£Á¿
#define EPERM            1      /* Operation not permitted */
#define ENOEN ......

linuxµÄѧϰ¹æ»®

   °´ÒÔϲ½ÖèÀ´,ÏÈдÕâô¶àÀ´ÌáÐÑÏÂ×Ô¼º:
       1.ÊìϤlinuxµÄ»ù±¾»·¾³,ÊìϤlinuxµÄ»ù±¾ÃüÁî.
       2.ÊìϤlinuxµÄ½»²æ±àÒë»·¾³µÄµÄÅäÖÃ.
       3.¸´Ï°»ù±¾µÄCÓïÑÔ֪ʶ.
     &nbs ......

Linux ubuntuÉèÖÃrootÃÜÂë

Ubuntu 7.10
ÔÚ°²×°Ê±£¬Ã»ÓÐÉèÖÃrootÃÜÂ룬ËùÒÔÕâ¾Í±ØÐëÔÚ°²×°Íê³ÉºóÉèÖà ÃüÁîÈçÏ£º
$ sudo passwd root
ÊäÈëÄãÏ£ÍûµÄrootÓû§µÄÃÜÂë
ÆäËüÃüÁ
Ò»¡¢°²×°Grub
$ grub
$ find /boot/grub/stage1
(hd0,*)
$ root (hd0,*)
$ setup (hd0,*)
$ quit
$ sudo dd if=/de ......

Linux»ñÈ¡ºÁÃ뼶ʱ¼ä


Linux»ñÈ¡ºÁÃ뼶ʱ¼ä
Moakap
ÔÚÈí¼þÉè¼ÆÖо­³£»áÓõ½¹ØÓÚʱ¼äµÄ´¦Àí£¬ÓÃÀ´¼ÆËãÓï¾ä¡¢º¯ÊýµÄÖ´ÐÐʱ¼ä£¬Õâʱ¾ÍÐèÒª¾«È·µ½ºÁÃëÉõÖÁÊÇ΢ÃîµÄʱ¼ä¡£
 
int gettimeofday(struct
timeval *tv, struct timezone *tz);
int settimeofday(const
struct timeval *tv , const struct timezone *tz);
 
struc ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ