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

linuxÄÚºËÏà¹Ø»ù´¡£¨Ðø£©

½ø³Ì
½ø³ÌµÄÌØÐÔ£º
¶ÀÁ¢ÐÔ¡¢¶à̬ÐÔ¡¢²¢·¢ÐÔ¡£
²¢·¢ÐԺͶദÀí»ú²¢ÐÐÊÇÁ½¸ö²»Í¬µÄ¸ÅÄî¡£²¢ÐÐÖ¸ÔÚͬһʱ¿ÌÄÚ£¬ÓжàÌõÖ¸ÁîÔÚ¶à¸ö´¦Àí»úÉÏͬʱִÐУ¬¶ø²¢·¢Ö¸ÔÚͬһʱ¿ÌÄÚ¿ÉÄÜÖ»ÓÐÒ»ÌõÖ¸ÁîÖ´ÐУ¬µ«¶à¸ö½ø³ÌµÄÖ¸Áî±»¿ìËÙÂÖ»»Ö´ÐУ¬Ê¹µÃÔÚºê¹ÛÉϾßÓжà¸ö½ø³ÌͬʱִÐеÄЧ¹û¡£
Ò»°ãµÄ£¬½ø³ÌµÄ3ÖÖ״̬£º
¾ÍÐ÷̬¡¢×èÈû̬¡¢ÔËÐÐ̬¡£
ÔÚlinuxÖУ¬½«¸÷ÖÖ״̬½øÐÐÁËÖØÐÂ×éÖ¯£¬Óɴ˵óölinux½ø³ÌµÄ¼¸¸ö״̬£º
¡òRUNNING£ºÕýÔÚÔËÐÐ
¡òUNINTERRUPTABLE:²»¿ÉÖжÏ×èÈû״̬
¡òINTERRUPTABLE£º¿ÉÖжÏ×èÈû״̬
¡òSTOPPED:¹ÒÆð״̬
¡òZOMBIE:½©ËÀ״̬
ÔÚlinuxÖУ¬½ø³Ì¼äͨÐÅÓÐÒÔϼ¸ÖÖ£º
¡ò¹ÜµÀ»úÖÆ
¡òÏȽøÏȳö£¨FIFO£©»úÖÆ
¡òIPC»úÖÆ£¨IPC×ÊÔ´°üÀ¨ÐźÅÁ¿¡¢ÏûÏ¢¶ÓÁк͹²ÏíÄڴ漸ÖÖ£©¡£
0ºÅ½ø³ÌºÍ1ºÅ½ø³Ì
linuxÖгýÁË0ºÅ½ø³ÌÊÇÆô¶¯Ê±ÓÉϵͳ´´½¨£¬ÆäÓà½ø³Ì¶¼ÊÇÓÉÆäËû½ø³Ì×ÔÐд´½¨µÄ¡£
start_lernel()º¯ÊýÒ»°ãÀ´Ëµ¾ÍÊÇlinuxϵͳµÄ0ºÅ½ø³Ì¡£init½ø³Ì£¨1ºÅ½ø³Ì£¬ÆäÖ´ÐдúÂë´Óinit()º¯ÊýÈë¿Ú£©Ê×ÏȽøÐÐϵͳÅäÖã¬Ö´ÐÐÓÃshell±àдµÄ³õʼ»¯³ÌÐò¡£init½ø³Ì×öÍê³õʼ»¯¹¤×÷ºó£¬×ªÈëÓû§Ì¬ÔËÐС£
initµÄ¹¤×÷°üÀ¨£º
¡òµ÷Óú¯Êýdo_basic_setup()×öϵͳ³õʼ»¯µÄ¹¤×÷¡£
¡ò´ò¿ª¿ØÖÆÌ¨É豸£¬Ö´ÐÐÏà¹ØµÄÖ¸ÁîÎļþ£¨Èç/etc/init,/sbin/init,bin/init,/bin/sh£©¡£
¡ò°´Ë³ÐòÖ´ÐÐһϵÁеijõʼ»¯¡£
ÖжÏ
linuxÖÐΪÁ˱ÜÃâ“ËÀ»ú”£¬¾Í½«ÄÇЩִÐÐʱ¼ä¿ÉÄܱȽϳ¤µÄÖжϳÌÐòÒ»·ÖΪ¶þ¡£³ÆÎªtop halfºÍbottom half¡£ÆäÖÐtop halfÎªÒ»Ð©ÖØÒªµÄ¡¢ÓëÉ豸½ôÃÜÏà¹ØµÄ³ÌÐò£¬ÕâЩ³ÌÐòÒ»¶¨Òª¹ØÖжÏÖ´ÐУ¬¶øbottom halfÖÐΪÆäÓàµÄһЩ´¦Àí³ÌÐò£¬ÕâЩ³ÌÐò¶¼ÊǶÔÄÚ´æ½øÐвÙ×÷£¬²»Å±»´ò¶Ï¡£
ÔÚlinuxÖУ¬´¦ÓÚÓû§Ì¬µÄ³ÌÐò³Æ×÷½ø³Ì£¬¶ø´¦ÓÚÄÚºË̬µÄÖ¸Áî³ÆÎªÈÎÎñ¡£´ÓÓû§Ì¬½øÈëÄÚºË̬µÄΩһ;¾¶ÊÇͨ¹ýϵͳµ÷Ó᣽ø³Ì¾ßÓв¢·¢ÐÔ£¬¶øÈÎÎñ²»¾ßÓв¢·¢ÐÔ£¬ËùÒÔ˵linux¾ßÓÐÒ»¸ö·ÇÇÀռʽµÄÄںˡ£
×ÔÐýËø
ÔÚµ¥´¦Àí»úµÄÇé¿öÏ£¬ÓùØÖеķ½·¨¿ÉÒÔʵÏÖÔ­×Ó²Ù×÷¡£È»¶ø£¬ÔÚ¶à´¦Àí»úSMPµÄÇé¿öÏ£¬¹ØÖеķ½·¨¾ÍÎÞ·¨¶ÔÁÙ½çÇø½øÐб£»¤ÁË¡£ÓÚÊÇ£¬linuxÖÐÒýÈëÁË×ÔÐýËøµÄ»úÖÆ¡£
×ÔÐýËøµÄ˼Ïë¾ÍÊÇÔÚÒ»¸öÃÜ·âµÄÑ­»·Öмá³Ö·´¸´³¢ÊÔ¶áȡһ¸ö×ÊÔ´£¨Ò»°ÑËø£©£¬Ö±µ½³É¹¦ÎªÖ¹¡£×ÔÐýËøµÄ×îÖØÒªÌØµã¾ÍÊÇÏß³ÌÔڵȴýËø±»ÊÍ·Åʱһֱռ¾Ý´¦Àí»ú¡£
×ÔÐýËøµÄ»ù±¾Ç°ÌáÊÇÏß³ÌÔÚij´¦Àí»úÉÏæµÈ´ýÒ»¸ö×ÊÔ´£¬¶øÁíÒ»¸öÏß³ÌÔÚ²»Í¬µÄ´¦Àí»úÉÏÕýʹÓÃÕâ¸ö×ÊÔ´£¬ÕâÖ»ÓÐÔÚ¶à´¦Àí»úÉϲÅÓпÉÄÜ¡£ÔÚµ¥´¦Àí»úÉÏ£¬Èç¹ûÒ»¸öϵͳÊÔͼ»ñȡһ¸


Ïà¹ØÎĵµ£º

linux ifconfig ÃüÁîÏê½â

 Óï¡¡¡¡·¨£ºifconfig [ÍøÂçÉ豸][down up -allmulti -arp -promisc][add<µØÖ·>][del<µØÖ·>][<ÍøÂçÉ豸ÀàÐÍ> <Ó²¼þµØÖ·>][io_addr][irq ][media<ÍøÂçý½éÀàÐÍ>][mem_start<ÄÚ´æµØÖ·>][metric<ÊýÄ¿>][mtu<×Ö½Ú>][netmask<×ÓÍøÑÚÂë>][tunnel<µØÖ·>][-broadc ......

linuxÏÂddnsʵÏÖ¶¯Ì¬dnsʵÏÖÓòÃû½âÎö(×ªÔØ±¸Íü)

ºÇºÇÒ»Ö±Ò»À´ÔÚWINDOWSÏÂÓл¨Éú¿ÇµÈÖÚ¶àµÄDDNSÈí¼þʵÏÖ¶¯Ì¬ÓòÃû½âÎö¡£µ«¶¼ÊÇÔÚWINDOWSϵġ£
½ñÌìÕÒµ½ÁËÒ»¸ö½ðÍòά¹«Ë¾ÌṩµÄÃâ·ÑDDNS·þÎñ¡£Ö÷ÒªÊÇÌṩÓÐLINUXϵݲװ¿Í»§¶Ë 
°²×°·½·¨£ºµÃµ½½ðÍòάgnhostlinux¶¯Ì¬ÓòÃûLinux/UnixÏ¿ͻ§¶ËÈí¼þ
wget http://www.gnway.com/download/gnhostlinux1.2.6.tgz 
......

¹ØÓÚLinux KernelÖеĺ궨ÒålikelyºÍunlikely

ת×Ôhttp://blog.163.com/ericxia_gnikam/blog/static/969208792008102545614453/
 
ÔÚLinux kernelµÄÔ´´úÂëÖУ¬¾­³£Äܼûµ½if(likely(x))»òif(unlikely(x))Ö®ÀàµÄÓ÷¨£¬ÆäÈ·Çк¬ÒåÐèҪ˵Ã÷һϣ¬ÒÔ±ã¸üºÃµÄÀí½âkernelµÄÔ´´úÂë¡£
likelyÓëunlikelyÕâÁ½¸öºêÔÚlinux/compiler.hÖе͍ÒåÈçÏ£º
#define likely ......

linux ƽ̨µÝ¹é¶ÁÈ¡¶ÁÈ¡ËùÓÐÎļþ¼ÐºÍÎļþÃû³Æ

 #include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<sys/stat.h>
#include<fcntl.h>
#include<sys/types.h>
#include<dirent.h>
#define MAX 1024
char path[100];
char *strmin(char *des,const char *min)
{
 int i=strlen(des);
&nbs ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ