linuxϵͳÏÂNS 2£¨ÍøÂç·ÂÕæ¿ªÔ´Èí¼þ£©µÄ°²×°
Ò».ʲôÊÇNS 2
NS 2ÊÇÒ»ÖÖÕë¶ÔÍøÂç¼¼ÊõµÄÔ´´úÂ빫¿ªµÄ¡¢Ãâ·ÑµÄÈí¼þÄ£ÄâÆ½Ì¨£¬Ñо¿ÈËԱʹÓÃËü¿ÉÒÔºÜÈÝÒ׵ĽøÐÐÍøÂç¼¼ÊõµÄ¿ª·¢£¬¶øÇÒ·¢Õ¹µ½½ñÌ죬ËüËù°üº¬µÄÄ£¿é·Ç³£·á¸»£¬¼¸ºõÉæ¼°µ½ÁËÍøÂç¼¼ÊõµÄËùÓз½Ãæ¡£
NS 2£¨Network Simulator, version
2£©ÊÇÒ»ÖÖÃæÏò¶ÔÏóµÄÍøÂç·ÂÕæÆ÷£¬±¾ÖÊÉÏÊÇÒ»¸öÀëɢʼþÄ£ÄâÆ÷¡£ÓÉUC
Berkeley¿ª·¢¶ø³É¡£Ëü±¾ÉíÓÐÒ»¸öÐéÄâʱÖÓ£¬ËùÓеķÂÕæ¶¼ÓÉÀëɢʼþÇý¶¯µÄ¡£Ä¿Ç°NS2¿ÉÒÔÓÃÓÚ·ÂÕæ¸÷ÖÖ²»Í¬µÄIPÍø£¬ÒѾʵÏÖµÄһЩ·ÂÕæÓУºÍøÂç´«ÊäÐÒ飬±ÈÈçTCPºÍUDP£»ÒµÎñÔ´Á÷Á¿²úÉúÆ÷£¬±ÈÈçFTP,
Telnet, Web CBRºÍVBR£»Â·ÓɶÓÁйÜÀí»úÖÆ£¬±ÈÈçDroptail ,
REDºÍCBQ£»Â·ÓÉËã·¨£¬±ÈÈçDijkstraµÈ¡£NS2ҲΪ½øÐоÖÓòÍøµÄ·ÂÕæ¶øÊµÏÖÁ˶ಥÒÔ¼°Ò»Ð©MAC
×Ó²ãÐÒé¡£
¶þ.NS 2µÄ°²×°
1.ÎÒʹÓõÄÊÇubuntu9.04£¬ÎªÈ·±£linuxϵͳÒѾ°²×°gcc .makeÖ®ÀàµÄÈí¼þ
¿ÉÒÔʹÓà sudo apt-get install build-essential
2.³ýÁËÕâЩ»¹Òª°²×°Ò»Ð©±ØÒªµÄÒÀÀµÈí¼þ
sudo apt-get install g++ patch perl gnuplot
sudo apt-get install tcl8.4
sudo apt-get install tcl8.4-dev
sudo apt-get install tk8.4
sudo apt-get install tk8.4-dev
sudo apt-get install libxmu-dev
3.ÏÂÔØNS 2°²×°Èí¼þ°ü
£¨1£©µÇÈëhttp://www.isi.edu/nsnam/ns/ns-build.html
ÏÂÔØ°²×°Èí¼þ°ü£¬ÎÒϵÄÊÇns-allinone-2.34.rar.gz,ÓÉÓÚns-allinoneÌ×¼þÒѾÓÐNS 2ÔÚÖ´ÐÐʱ»áÓõ½µÄÆäËûÄ£×飬Ӧ´Ë°²×°¹ý³Ì½ÏΪ¼òµ¥¡£
£¨2£©ÒÔrootµÇ¼ubuntu£¬ÔÚ/home/velkan(velkan ÊÇÎÒµÄÓû§Ãû)Ͻ¨Á¢ns2Îļþ¼Ð£¬½«ns-allinone-2.34.tar.gz·ÅÔÚ¸ÃÎļþ¼ÐÏ£¬ÔÚÖÕ¶ËÔËÐÐcd
/home/velkan/ns2£¬Ê¹ÓýâѹÃüÁîtar
xvfz
ns-allinone-2.34.tar.gz£¬¼´Éú³É/home/ns2/velkan/
ns-allinone-2.34¡£
&n
Ïà¹ØÎĵµ£º
10.5.2 ¾«Í¨¶¨Ê±Æ÷ÉèÖÃ
º¯ÊýalarmÉèÖõĶ¨Ê±Æ÷Ö»Äܾ«È·µ½Ã룬¶øÒÔϺ¯ÊýÀíÂÛÉÏ¿ÉÒÔ¾«È·µ½Î¢Ã
#include <sys/select.h>
#include <sys/itimer.h>
int getitimer(int which, struct itimerval *value);
int setitimer(int which, const struct itimerval
*value, struct itimerval *ovalue ......
¸÷sectionµÄλÖ÷ֲ¼¿´Äں˵ÄÁ´½Ó½Å±¾
D:\KIDE\target\kernel-version\cgel3.0\linux\include\asm-generic\vmlinux.lds.h
D:\KIDE\target\kernel-version\cgel3.0\linux\arch\powerpc\kernel\vmlinux.lds.S
Kernel¾µÏñÆðʼµØÖ·KERNELBASE = 0xc000 0000£¬ÕâÒâζ×ÅÄں˴úÂëºÍÄÚºËÈ«¾Ö±äÁ¿µÈµÄµØÖ·¿Õ¼äÔÚ3g-4gµÄµØ·½£¬
¶ø ......
ÔÚ½øÈëÕýÎÄǰÏÈ¿´Ò»ÏÂÎÒÔÚÍøÉÏ¿´µ½µÄÌû×Ó£º
ÎÊ£ºatomic_set(v,i)µÄ¶¨ÒåÊÇÕâÑùµÄ:
#define atomic_set(v,i) v->counter=i
µ«ÊÇ£¬ÔÚi386Ìåϵ½á¹¹ÖУ¬²»ÄÜÖ±½Ó°ÑÒ»¸öÄÚ´æ²Ù×÷Êýͨ¹ýÒ»ÌõmovÖ¸Áî´æµ½ÁíÒ»¸öÄÚ´æ²Ù×÷ÊýÖУ¬
±ÈÈçÒª°Ñint32ÀàÐ͵ıäÁ¿ i ÉèÖÃ³É j£¬±ØÐë¾¹ýÁ½ÌõÖ¸Áî:
mov eax,j
mov i,eax
Èç¹ûÕâÑùÀ ......
googleÔõÑùʹÓÃlinux£¨Äںˣ©
½ñÄêµÄlinuxÄں˿ª·¢´ó»áÉÏ£¬googleµÄ¿ª·¢ÈËÔ±Ò²ÉĮ̈×öÁËÃûΪ“how google use linux"µÄÑݽ²¡£ÎÒ¶·µ¨·Òë×¢½âÒ»·¬——À¨ºÅÄÚΪע½â£¬»¶Ó¶ÁÕ߸«Õý¡£
£¨Ç°Ã漸¶Î½²google¶Ôlinux kernel´úÂëµÄ¹ÜÀí¼°¸ú½ø£¬Æ«Ï¸Ë飬²»·ÒëÁË£©
ÔÚgoogleΪlinux¼ÓÈëµÄ´úÂëÖУ¬3/4ÊǶÔÄں˺ËÐÄ ......