Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB
ÈÈÃűêÇ©£º c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 ×îÐÂÎÄÕ : linux

ÔÚLinux²¿ÊðÏîĿʱ£¬jdkµÄÎÊÌâ

Ò»°ãÔÚlinuxÉϲ¿ÊðÏîĿʱ£¬Ö±½Ó°ÑÔÚwindowÉϱàÒë³öÀ´µÄjarÎļþ²¿ÊðÉÏÈ¥£¬ÔÙÔËÐоͿÉÒÔÁË£¬µ«ÊǽñÌìÅöµ½µÄÎÊÌâ £º
Exception in thread "main" java.lang.NoClassDefFoundError: DataServer
   at gnu.java.lang.MainThread.run(libgcj.so.7rh)
Caused by: java.lang.ClassNotFoundException: DataServer not found in gnu.gcj.runtime.SystemClassLoader{urls=[file:./,file:/root/test/jar/dom4j-1.6.1.jar,file:/root/test/jar/jaxen-1.1-beta-6.jar,file:/root/test/jar/log4j-1.2.15.jar], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
   at java.net.URLClassLoader.findClass(libgcj.so.7rh)
   at gnu.gcj.runtime.SystemClassLoader.findClass(libgcj.so.7rh)
   at java.lang.ClassLoader.loadClass(libgcj.so.7rh)
   at java.lang.ClassLoader.loadClass(libgcj.so.7rh)
   at gnu.java.lang.MainThread.run(libgcj.so.7rh)
Ô­Òò£º²»Êǰ汾µÄÔ­Òò£¬ËäÈ»ÔËÐÐʱ»·¾³ºÍ±àÒëʱ»·¾³°æ±¾²»Ò»ÖÂͨ³£»áµ¼ÖÂһЩÎÊÌ⣬µ«ÎÒ¾õµÃ²»ÊÇÄãÕâ¸öÎÊÌâµÄ¹Ø¼üËùÔÚ¡£¹Ø¼üÊÇClassÎ ......

´ÓºÎ´¦¿ªÊ¼ÔĶÁLinuxÔ´´úÂë(ת)

 ÏñLinuxÄÚºËÕâÑùÅÓ´ó¶ø¸´ÔӵijÌÐò¿´ÆðÀ´È·ÊµÈÃÈËÍû¶øÉú磬ËüÏóÒ»¸öºÜ´óµÄÇò£¬Ã»ÓÐÆðµãºÍÖյ㡣ÔÚ¶ÁÔ´´úÂëµÄ¹ý³ÌÖУ¬Äã»áÓöµ½ÕâÑùµÄÇé¿ö£¬µ±¶Áµ½Äں˵Äijһ²¿·ÖʱÓÖ»áÉæ¼°µ½ÆäËü¸ü¶àµÄÎļþ£¬µ±·µ»Øµ½Ô­À´µÄµØ·½Ïë¼ÌÐøÍù϶Áʱ£¬ÓÖÍüÁËÔ­À´¶ÁµÄÄÚÈÝ¡£ÔÚinternetÉÏ£¬ºÜ¶àÈËΪ´Ë¸¶³öÁ˺ܴóµÄŬÁ¦£¬ÖÆ×÷³öÁËÔ´´úÂëµ¼º½Æ÷£¬ÕâΪԴ´úÂëÔĶÁÌṩÁËÁ¼ºÃµÄÌõ¼þ£¬Õ¾µãΪ£ºhttp://lxr.linux.no/source£¬ÏÂÃæ¸ø³öÔĶÁÔ´´úÂëµÄһЩÏßË÷¡£
1. ϵͳµÄÆô¶¯ºÍ³õʼ»¯
    ÔÚ»ùÓÚIntelµÄϵͳÉÏ£¬µ± loadlin.exe »ò LILO°ÑÄÚºË×°Èëµ½ÄÚ´æ²¢°Ñ¿ØÖÆÈ¨´«µÝ¸øÄÚºËʱ£¬Äں˿ªÊ¼Æô¶¯¡£¹ØÓÚÕâÒ»²¿·Ö£¬¿´arch/i386/kernel/head.S £¬head.S½øÐÐÌØ¶¨½á¹¹µÄÉèÖã¬È»ºóÌø×ªµ½init/main.cµÄmain()Àý³Ì¡£
2. ÄÚ´æ¹ÜÀí
    ÄÚ´æ¹ÜÀíµÄ´úÂëÖ÷ÒªÔÚ/mm£¬µ«Ìض¨½á¹¹µÄ´úÂëÔÚarch/*/mm¡£È±Ò³Öжϴ¦ÀíµÄ´úÂëÔÚmm/memory.c £¬¶øÄÚ´æÓ³ÉäºÍÒ³¸ßËÙ»º´æÆ÷µÄ´úÂëÔÚmm/filemap.c¡£»º³åÆ÷¸ßËÙ»º´æÊÇÔÚmm/buffer.c ÖÐʵÏÖ£¬¶ø½»»»¸ßËÙ»º´æÊÇÔÚmm/swap_state.c ºÍ mm/swapfile.cÖÐʵÏÖ¡£
 
3. ÄÚºË
     ÄÚºËÖУ¬Ìض¨½á¹¹µÄ´úÂëÔÚarch/*/kernel£¬µ÷¶È³ÌÐòÔ ......

linuxÍøÂç±à³Ì

 ¹ØÓÚlinuxµÄ¶Áд²Ù×÷
½¨Á¢ÁËÁ¬½Ó,¾Í¿ÉÒÔ½øÐÐͨѶÁË,ÍùÎļþÃèÊö·ûÀï¶Áд,ºÍ¶ÁдÎļþÊÇÒ»ÑùµÄ.
дº¯Êý:
ssize_t write(int fd,(void *)buf,size_t nbytes)
½«bufÖеÄnbytesдÈëµ½fdÖÐ,³É¹¦Ê±·µ»ØËùдµÄ×Ö½ÚÊý,ʧ°Üʱ·µ»Ø-1,²¢Ð´Èëerrno±äÁ¿.
µ±ÎÒÃÇÏóÌ×½Ó×ÖдÊý¾Ýʱ,¿ÉÄÜ»áÓÐÁ½ÖÖÇé¿ö:
a.writeµÄ·µ»ØÖµ´óÓÚ0,±íʾдÁ˲¿·Ö»òÕßÊÇÈ«²¿µÄÊý¾Ý
b.·µ»ØµÄֵСÓÚ0,´Ëʱ³öÏÖÁË´íÎó.ÎÒÃÇÒª¸ù¾Ý´íÎóÀàÐÍÀ´´¦Àí
Èç¹û´íÎóΪEINTR±íʾÔÚдµÄʱºò³öÏÖÁËÖжϴíÎó.
Èç¹ûΪEPIPE±íÊ¾ÍøÂçÁ¬½Ó³öÏÖÁËÎÊÌâ(¶Ô·½ÒѾ­¹Ø±ÕÁËÁ¬½Ó).
¶Áº¯Êý:
ssize_t read(int fd,(void *)buf,size_t nbytes)
´ÓfdÖжÁÄÚÈÝ,µ±¶Á³É¹¦Ê±,·µ»Ø¶ÁÈëµÄ×Ö½ÚÊý,·µ»ØÊÇ0,Ôð±íʾÒѾ­¶ÁÈëµ½Îļþ½áÊøÁË,СÓÚ0±íʾ³öÏÖÁË´íÎó.
Êý¾Ý±¨µÄ·¢ËÍ:
int recvfrom(int sockfd,void *buf,int len,unsigned int flags,struct sockaddr *from,int *fromlen);
int sendto(int sockfd,const void *msg,int len,unsigned int flags,struct sockaddr *to,int tolen);
sockfd,buf,lenµÄÒâÒåºÍread,writeÒ»Ñù,·Ö±ð±íʾÌ×½Ó×ÖÃèÊö·û,·¢ËÍ»ò½ÓÊյĻº³åÇø¼°´óС.recvfrom¸ºÔð´Ósockfd½ÓÊÕÊý¾Ý,Èç¹ûfrom²»NULL,ÄÇôÔÚfromÀïÃæ´æ´¢ÁËÐ ......

¡¾×ª¡¿How Google uses Linux?

KS2009: How Google uses Linux
By Jonathan Corbet
October 21, 2009
LWN's 2009 Kernel Summit coverage
There may be no single organization which runs more Linux systems than Google. But the kernel development community knows little about how Google uses Linux and what sort of problems are encountered there. Google's Mike Waychison traveled to Tokyo to help shed some light on this situation; the result was an interesting view on what it takes to run Linux in this extremely demanding setting.
Mike started the talk by giving the developers a good laugh: it seems that Google manages its kernel code with Perforce. He apologized for that. There is a single tree that all developers commit to. About every 17 months, Google rebases its work to a current mainline release; what follows is a long struggle to make everything work again. Once that's done, internal "feature" releases happen about every six months.
This way of doing things is far from ideal; it means that Google lags far ......

linux É豸½ÚµãÏêϸ½éÉÜ


LinuxÉ豸Îļþ¼ò½é
 
 
LinuxÉ豸Îļþ¼ò½é
¸ÅÊö
É豸¹ÜÀíÊÇlinuxÖбȽϻù´¡µÄ¶«Î÷£¬µ«ÊÇÓÉÓÚLinuxÖÇÄ̶ܳȵÄÔ½À´Ô½¸ß£¬UdevµÄʹÓÃÔ½À´Ô½¹ã·º£¬Ê¹µÃÔ½À´Ô½¶àµÄLinuxÐÂÓû§¶Ô /dev Ŀ¼ÏµĶ«Î÷±äµÃ²»ÔÙÊìϤ¡£ÓÐʱºòÓö¼ûÎÊÌâ¾Í»á±äµÃ×¥¿ñ¡£
Linux ÖеÄÉ豸ÓÐ2ÖÖÀàÐÍ£º×Ö·ûÉ豸(ÎÞ»º³åÇÒÖ»ÄÜ˳Ðò´æÈ¡)¡¢¿éÉ豸(Óлº³åÇÒ¿ÉÒÔËæ»ú´æÈ¡)¡£Ã¿¸ö×Ö·ûÉ豸ºÍ¿éÉ豸¶¼±ØÐëÓÐÖ÷¡¢´ÎÉ豸ºÅ£¬Ö÷É豸ºÅÏàͬµÄÉ豸ÊÇͬÀàÉ豸(ʹÓÃͬһ¸öÇý¶¯³ÌÐò)¡£ÕâЩÉ豸ÖУ¬ÓÐЩÉ豸ÊǶÔʵ¼Ê´æÔÚµÄÎïÀíÓ²¼þµÄ³éÏ󣬶øÓÐЩÉ豸ÔòÊÇÄÚºË×ÔÉíÌṩµÄ¹¦ÄÜ(²»ÒÀÀµÓÚÌØ¶¨µÄÎïÀíÓ²¼þ£¬ÓÖ³ÆÎª"ÐéÄâÉ豸")¡£Ã¿¸öÉ豸ÔÚ /dev Ŀ¼Ï¶¼ÓÐÒ»¸ö¶ÔÓ¦µÄÎļþ(½Úµã)¡£¿ÉÒÔͨ¹ý cat /proc/devices ÃüÁî²é¿´µ±Ç°ÒѾ­¼ÓÔØµÄÉ豸Çý¶¯³ÌÐòµÄÖ÷É豸ºÅ¡£ÄÚºËÄܹ»Ê¶±ðµÄËùÓÐÉ豸¶¼¼Ç¼ÔÚÔ­ÂëÊ÷Ï嵀 Documentation/devices.txt ÎļþÖС£ÔÚ /dev Ŀ¼Ï³ýÁË×Ö·ûÉ豸ºÍ¿éÉ豸½ÚµãÖ®Í⻹ͨ³£»¹»á´æÔÚ£ºFIFO¹ÜµÀ¡¢Socket¡¢Èí/Ó²Á¬½Ó¡¢Ä¿Â¼¡£ÕâЩ¶«Î÷ûÓÐÖ÷/´ÎÉ豸ºÅ¡£
É豸Îļþ
LinuxÄÚºËËùÄÜʶ±ðµÄËùÓÐÉ豸¶¼¼Ç¼ÔÚ
http://www.lanana.org/docs/device-list/
¶øÄÚºËÔ­ÂëÊ÷ÖÐµÄ Documentation/devices.txt ¿ÉÄܲ»ÊÇ× ......

ÌØ´óϲѶ£ºÀ¥É½ÐùÔ¯Linux¿ª·ÅʵÑéÊÒÀ²£¡£¡£¡

 À¥É½ÐùÔ¯Linux¿ª·ÅʵÑéÊÒ
¼ò½é
        Ϊ·½±ã¹ã´óLinuxÈí¼þ¿ª·¢Õߣ¬ÐùÔ¯¸ß¶ËITÅàѵÖÐÐÄÓÚ2009Äê10ÔÂÉèÁ¢ÁËLinux¿ª·ÅʵÑéÊÒ£¬ÐùÔ¯Linux¿ª·ÅʵÑéÊÒÌṩÁËÍêÕûµÄLinux Èí¼þ¿ª·¢»·¾³£¬°üÀ¨£ºC/C++£¨GCC¡¢GDB£©¡¢make¡¢Java¡¢Python¡¢Perl¡¢C++ Boost¡¢C++ ACE¡¢C++ OTL¡¢Oracle¡¢MySQL¡¢Tomcat...£¬ÄÒÀ¨ÁËÍøÂç¡¢¶àÏ̡߳¢Êý¾Ý¿âµÈ·þÎñÆ÷¶ËÈí¼þ¿ª·¢µÄ¸÷¸ö·½Ãæ¡£
Linux¿ª·ÅʵÑéÊÒµäÐÍÓÃ;
    * ÊìϤLinux²Ù×÷ϵͳ£¬ÈçϵͳÃüÁî¡¢Shell±à³Ì¡¢viµÈ±à¼­Æ÷£»
    * C++ÓïÑÔµÄѧϰÓëÈí¼þ¿ª·¢£¬°üÀ¨»ùÓÚBoostºÍACEµÄÈí¼þ¿ª·¢£»
    * C++Êý¾Ý¿â¿ª·¢£¬OTL£»
    * JavaÓïÑÔµÄѧϰÓëÈí¼þ¿ª·¢£»
    * JavaÊý¾Ý¿â¿ª·¢£¬jdbc£»
    * Python¡¢PerlµÈ½Å±¾ÓïÑÔµÄѧϰÓëÈí¼þ¿ª·¢£»
    * ¸ü¶àÄúÄÜ·¢¾òµ½µÄÓÃ;...
¿ª·¢»·¾³
    * ²Ù×÷ϵͳ£ºRedhat Enterprise Linux 5.4£»
    * C/C++£ºGCC¹¤¾ßÁ´£¨g++/gcc 4.4.0/4.1.2/3.4.0¡¢gdb 6.8£©¡¢GNU make 3.81¡¢GNU autotools 2.59µÈ£»
   ......
×ܼǼÊý:5772; ×ÜÒ³Êý:962; ÿҳ6 Ìõ; Ê×Ò³ ÉÏÒ»Ò³ [856] [857] [858] [859] 860 [861] [862] [863] [864] [865]  ÏÂÒ»Ò³ βҳ
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ