ÔÚÇ°ÃæµÄ²©ÎÄÀÎÒÃǽ²½âÁË»ùÓÚ80x86ÌåϵµÄLinuxÄں˷ֶκͷÖÒ³»úÖÆ£¬²¢ÏêϸµØÌÖÂÛÁËLinuxµÄÄÚ´æ²¼¾Ö¡£ÓÐÁËÕâЩ»ù±¾¸ÅÄîÒÔºó£¬ÎÒÃǾÍÀ´ÏêϸÌÖÂÛÄÚºËÈçºÎ¶¯Ì¬µØ¹ÜÀíÄÇЩ¿ÉÓõÄÄÚ´æ¿Õ¼ä¡£
¶ÔÓÚ80386ÕâÖÖ32λµÄ´¦ÀíÆ÷½á¹¹£¬Linux²ÉÓÃ4KBÒ³¿ò´óС×÷Ϊ±ê×¼µÄÄÚ´æ·ÖÅäµ¥Ôª¡£Äں˱ØÐë¼Ç¼ÿ¸öÒ³¿òµÄµ±Ç°×´Ì¬£¬ÀýÈç£¬Çø·ÖÄÄЩҳ¿ò°üº¬µÄÊÇÊôÓÚ½ø³ÌµÄÒ³£¬¶øÄÄЩҳ¿ò°üº¬µÄÊÇÄں˴úÂë»òÄÚºËÊý¾Ý¡£Äں˻¹±ØÐëÄܹ»È·¶¨¶¯Ì¬ÄÚ´æÖеÄÒ³¿òÊÇ·ñ¿ÕÏУ¬Èç¹û¶¯Ì¬ÄÚ´æÖеÄÒ³¿ò²»°üº¬ÓÐÓõÄÊý¾Ý£¬ÄÇôÕâ¸öÒ³¿ò¾ÍÊÇ¿ÕÏеġ£ÔÚÒÔÏÂÇé¿öÏÂÒ³¿òÊDz»¿ÕÏеģº°üº¬Óû§Ì¬½ø³ÌµÄÊý¾Ý¡¢Ä³¸öÈí¼þ¸ßËÙ»º´æµÄÊý¾Ý¡¢¶¯Ì¬·ÖÅäµÄÄÚºËÊý¾Ý½á¹¹¡¢É豸Çý¶¯³ÌÐò»º³åµÄÊý¾Ý¡¢ÄÚºËÄ£¿éµÄ´úÂëµÈµÈ¡£
ÄÚºËÓÃÊý¾Ý½á¹¹pageÃèÊöÒ»¸öÒ³¿òµÄ״̬ÐÅÏ¢£¬ËùÓеÄÒ³ÃèÊö·û´æ·ÅÔÚÈ«¾Ömem_mapÊý×éÖУ¬ÆäÊý×éµÄϱêΪҳ¿òºÅ£¨pfn£©¡£ÒòΪÿ¸öÃèÊö·û³¤¶ÈΪ32×Ö½Ú£¬ËùÒÔmem_mapËùÐèÒªµÄ¿Õ¼äÂÔСÓÚÕû¸öRAMµÄ1%¡£
ÄÇôһ¸öÒ³ÃèÊö·ûÔõÑùÓëÒ»¸öÕ¼¾Ý4kµÄÒ³¿òÏàÁªÏµ£¨Ó³É䣩Ĩ£¿ÓÐÁËmem_mapÊý×飬Õâ¸öÎÊÌâ¾ÍºÜ¼òµ¥ÁË¡£ÒòΪÈç¹ûÖªµÀÁËpageÊý¾ÝµÄµØÖ·pd£¬ÓÃpdÈ¥¼õÈ¥mem_map¾ÍµÃµ½ÁËpdµÄÒ³¿òºÅpfn¡£ÄÇôÕâ¸öÎïÀíÒ³µÄÎïÀíµØÖ·ÊÇphysAddr = p ......
ºÍWindowsϵͳһÑùLinuxÒ²Óо²Ì¬/¶¯Ì¬Á´½Ó¿â£¬ÏÂÃæ½éÉÜ´´½¨ºÍʹÓ÷½·¨£º
¼ÙÉèÓÐÏÂÃæ¼¸¸öÎļþ£º
Í·ÎļþString.h£¬ÉùÃ÷Ïà¹Øº¯ÊýÔÐΣ¬ÄÚÈÝÈçÏ£º
Strlen.c£ºº¯ÊýStrlenµÄʵÏÖ£¬»ñÈ¡¸ø¶¨×Ö·û´®µÄ³¤¶È£¬ÄÚÈÝÈçÏ£º
Strlnen.c£ºº¯ÊýStrNlenµÄʵÏÖ£¬»ñÈ¡¸ø¶¨×Ö·û´®µÄ³¤¶È£¬Èç¹ûÊäÈë×Ö·û´®µÄ³¤¶È´óÓÚÖ¸¶¨µÄ×î´ó³¤¶È£¬Ôò·µ»Ø×î´ó³¤¶È£¬·ñÕß·µ»Ø×Ö·û´®µÄʵ¼Ê³¤¶È£¬ÄÚÈÝÈçÏ£º
Éú³É¾²Ì¬¿â£º
ÀûÓÃGCCÉú³É¶ÔӦĿ±êÎļþ£º
gcc –c Strlen.c Strnlen.c
Èç¹û¶ÔÓ¦µÄÎļþûÓдíÎó£¬gcc»á¶ÔÎļþ½øÐбàÒëÉú³ÉStrlen.oºÍStrnlen.oÁ½¸öÄ¿±êÎļþ(Ï൱ÓÚwindowsϵÄobjÎļþ)¡£È»ºóÓÃar´´½¨Ò»¸öÃû×ÖΪlibstr.aµÄ¿âÎļþ£¬²¢°ÑStrlen.o ºÍStrnlen.oµÄÄÚÈݲåÈëµ½¶ÔÓ¦µÄ¿âÎļþÖС££¬Ïà¹ØÃüÁîÈçÏ£º
ar –rc libstr.a Strlen.o Strnlen.o
ÃüÁîÖ´Ðгɹ¦ÒԺ󣬶ÔÓ¦µÄ¾²Ì¬¿âlibstr.aÒѾ³É¹¦Éú³É¡£
/***********************************
Filename : String.h
Description :
Author : HCJ
Date : 2006-5-7
************************************/
int Strlen(char *pStr);
int StrNlen(char *pStr, unsigned long ulMaxLen);
/******* ......
ÎÒµÄϵͳÊÇubuntu6.06£¬×î½üÐÂ×°ºÃµÄmysqlÔÚ½øÈëmysql¹¤¾ßʱ£¬×ÜÊÇÓдíÎóÌáʾ:
# mysql -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
ʹÓÃÍøÉϽéÉܵķ½·¨ÐÞ¸ÄrootÓû§µÄÃÜÂ룺
# mysqladmin -uroot -p password 'newpassword'
Enter password:
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: YES)'
ÏÖÔÚÖÕÓÚ±»ÎÒÕÒµ½Á˽â¾ö·½·¨£¬ÈçÏ£¨ÇëÏȲâÊÔ·½·¨Èý£¬Ð»Ð»£¡£©£º
·½·¨Ò»£º
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
# /etc/init.d/mysql restart
# mysql -uroot -p
Enter password: <ÊäÈëÐÂÉèµÄÃÜÂënewpassword>
mysql>
·½·¨¶þ£º
Ö±½ÓʹÓÃ/etc/mysql/debian.cnfÎļþÖÐ[client]½ÚÌṩµÄÓû§ÃûºÍÃÜÂë:
# mysql -udebian-sys-maint -p
Enter password ......
ÎÒµÄϵͳÊÇubuntu6.06£¬×î½üÐÂ×°ºÃµÄmysqlÔÚ½øÈëmysql¹¤¾ßʱ£¬×ÜÊÇÓдíÎóÌáʾ:
# mysql -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
ʹÓÃÍøÉϽéÉܵķ½·¨ÐÞ¸ÄrootÓû§µÄÃÜÂ룺
# mysqladmin -uroot -p password 'newpassword'
Enter password:
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: YES)'
ÏÖÔÚÖÕÓÚ±»ÎÒÕÒµ½Á˽â¾ö·½·¨£¬ÈçÏ£¨ÇëÏȲâÊÔ·½·¨Èý£¬Ð»Ð»£¡£©£º
·½·¨Ò»£º
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
# /etc/init.d/mysql restart
# mysql -uroot -p
Enter password: <ÊäÈëÐÂÉèµÄÃÜÂënewpassword>
mysql>
·½·¨¶þ£º
Ö±½ÓʹÓÃ/etc/mysql/debian.cnfÎļþÖÐ[client]½ÚÌṩµÄÓû§ÃûºÍÃÜÂë:
# mysql -udebian-sys-maint -p
Enter password ......
ÓÃApacheÅäÖÃÐéÄâÖ÷»ú
apache²»½öÖ§³Ö»ùÓÚÓòÃûµÄÐéÄâÖ÷»ú£¬»¹Ö§³Ö»ùÓÚIPµÄÐéÄâÖ÷»ú£¬Ã¿Ò»¸öapacheÐéÄâÖ÷»ú¶¼Óе¥¶ÀµÄÅäÖÃÎļþÔÚ/etc/apache2/sites-availableÖУ¬defaultÊÇĬÈϵÄÐéÄâÖ÷»ú£¬Õâ¸öÐéÄâÖ÷»úÔÚ°²×°Ê±ÒѾ±»Á´½Óµ½ /etc/apache2/sites-enabled Ŀ¼Ï£¬ÔÚä¯ÀÀÆ÷ÖзÃÎÊ·þÎñÆ÷IPµØÖ·£¬½«»á³öÏÖ “It Works”¡£
´´½¨Ò»¸öеÄÐéÄâÖ÷»ú£º
¼ÙÉèÎÒÃÇÒª´´½¨Ò»¸öÓòÃûΪ blog.mytest.com µÄÐéÄâÖ÷»ú£¬ÏȽ«defaultÐéÄâÖ÷»ú¸´ÖÆÒ»·Ý£¬ÒÔ±ãÔÚ´Ë»ù´¡ÉÏÐ޸ġ£
sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/blog.mytest.com
ÔÚÓÃ±à¼Æ÷±à¼ÅäÖÃÎļþ£¬sudo nano /etc/apache2/sites-available/blog.mytest.com
ÔÚ´ò¿ªµÄ±à¼Æ÷ÖУ¬½«µÚÒ»ÐÐNameVirtualHostÖ¸Áîɾ³ý£¬È»ºó½«DocumentRootµÄ·¾¶ÐÞ¸ÄΪ /var/www/blog.mytest.com/£¬
½«<Directory /var/www/>ÐÞ¸ÄΪ<Directory /var/www/blog.mytest.com/>£¬È»ºó±£´æ¡£
Èç¹ûÓжà¸öÐéÄâÖ÷»ú£¬½¨ÒéÐÞ¸ÄErrorLogºÍCustomLogµÄ·¾¶£¬ÕâÑù¿ÉÒÔ°Ñÿ¸öÐéÄâÖ÷»úµÄÈÕÖ¾·Ö¿ª£¬ÓÐÀûÓÚ¹ÜÀíά»¤¡£
µ±±£´æÍêºó´´½¨ÏàӦĿ¼£¬sudo mkdir /var/www/blog.mytest.com £¬²¢´´½¨Ò»¸ ......
-------------
¡¡¡¡ÎĵµÄ¿Â¼
¡¡¡¡-------------
¡¡¡¡1 ʲôÊÇsyslogd
¡¡¡¡2 ÅäÖÃsyslogdµÄ˵Ã÷
¡¡¡¡3 syslogdºÍϵͳÖзþÎñÅäÖÃÖÐÈÕÖ¾µÄ¹ØÏµ
¡¡¡¡4 ʲôÊÇlogrotate
¡¡¡¡5 ÅäÖÃlogrotateµÄ˵Ã÷
¡¡¡¡-------------
¡¡¡¡ÎĵµÕýÎÄ
¡¡¡¡-------------
¡¡¡¡1 ʲôÊÇsyslogd
¡¡¡¡syslogd¿ÉÒÔ¼òµ¥µØ±»³ÆÎª¼Ç¼ϵͳ»î¶¯µÄÒ»¸ödaemons¡£±ÈÈç¿ÉÒԼǼˣ¬ÔÚʲôʱ¼ä£¬ÔÚÄÄÀ×öÁËʲôÊÂÇé(ÏñÊÇÔÚд¼ÇÐðÎİ¡)£»Ò²¿ÉÒԼǼÄúµÄÏµÍ³Ôø¾·¢Éú¹ýʲôÊÂÇ飬±ÈÈçʲôʱºòÖØÐÂÒýµ¼¹ý¡¢ÈíÓ²¼þµÄ´íÎóÐÅÏ¢µÈ£»µ±È»Ò²¼Ç¼×ÅÄúϵͳÉÏÔËÐÐ×ŵķþÎñµÄÐÅÏ¢¡£
¡¡¡¡ºÜ¶àʱºò£¬ÓÐÅóÓÑÉÏÀ´¾ÍÎÊ£¬“ÎÒµÄX²»ÄÜÆô¶¯ÁËÊÇÔõô»ØÊ°¡£¿£¡”ÎʺźÍ̾ºÅÕâÑùʹÓÃÔÚÓïÎĹ淶ÉÏÊDz»ÔÊÐíµÄ£¬µ«ÊÇÎÒÃÇ¿ÉÒÔ»ñÖª£¬ËûµÄÐÄÇéÊǼ±ÆÈµÄ¡£¿ÉÊÇΪʲôÄú²»ÏÈ¿¼ÂÇÒ»ÏÂÄú×öÁËʲô¸ü¸Ä£¬ÎªÊ²Ã´²»ÏÈ¿´¿´ÊÇ·ñÓдíÎóÊä³ö£¬ÎªÊ²Ã´²»¿´¿´ÈÕÖ¾Îļþ£¿ÆðÂ룬ÈÕ־Ϊ½â¾öÎÊÌâÌṩÁ˺ܺõIJο¼°¡¡£ºÜ¶àÈ˽²×Ô¼ºµÄij¸öÉ豸²»¹¤×÷£¬dmesgµÄÐÅÏ¢ÄúÊÇ·ñÈÏÕæ²Î¿¼ÁË£¿
¡¡¡¡syslogd×öµÄÊÇËöËéµÄ¹¤×÷£¬µ«È´ÊÇÏàµ±ÖØÒªµÄ¹¤×÷¡£ºÜ¶àÅóÓÑΪÁËÌá¸ßϵͳµÄÐÔÄÜ£¬½ÚÊ¡ÄÇÒ»µãµã×ÊÔ´¾Í¾ö¶¨°ÑÕâ¸ödaemonsÍ£µô¡£ÎÒÈÏΪ£¬ÕâÊDz»¿ÉÈ¡µÄ¡£
¡¡¡¡ ......
LinuxÖÐtty¡¢pty¡¢ptsµÄ¸ÅÄîÇø±ð
»ù±¾¸ÅÄ
1> tty(ÖÕ¶ËÉ豸µÄͳ³Æ):
ttyÒ»´ÊÔ´ÓÚTeletypes£¬»òÕßteletypewriters£¬ÔÀ´Ö¸µÄÊǵ紫´ò×Ö»ú£¬ÊÇͨ¹ý´®ÐÐÏßÓôòÓ¡»ú¼üÅÌͨ¹ýÔĶÁºÍ·¢ËÍÐÅÏ¢µÄ¶«Î÷£¬ºóÀ´Õâ¶«Î÷±»¼üÅÌÓëÏÔʾÆ÷È¡´ú£¬ËùÒÔÏÖÔÚ½ÐÖն˱ȽϺÏÊÊ¡£
ÖÕ¶ËÊÇÒ»ÖÖ×Ö·ûÐÍÉ豸£¬ËüÓжàÖÖÀàÐÍ£¬Í¨³£Ê¹ÓÃttyÀ´¼ò³Æ¸÷ÖÖÀàÐ͵ÄÖÕ¶ËÉ豸¡£
2> pty£¨ÐéÄâÖÕ¶Ë):
µ«ÊÇÈç¹ûÎÒÃÇÔ¶³Ìtelnetµ½Ö÷»ú»òʹÓÃxtermʱ²»Ò²ÐèÒªÒ»¸öÖն˽»»¥Ã´£¿Êǵģ¬Õâ¾ÍÊÇÐéÄâÖÕ¶Ëpty(pseudo-tty)
3> pts/ptmx(pts/ptmx½áºÏʹÓ㬽ø¶øÊµÏÖpty):
pts(pseudo-terminal slave)ÊÇptyµÄʵÏÖ·½·¨£¬Óëptmx(pseudo-terminal master)ÅäºÏʹÓÃʵÏÖpty¡£
LinuxÖÕ¶Ë£º
ÔÚLinuxϵͳµÄÉè±¸ÌØÊâÎļþĿ¼/dev/Ï£¬ÖÕ¶ËÌØÊâÉ豸ÎļþÒ»°ãÓÐÒÔϼ¸ÖÖ£º
1¡¢´®Ðж˿ÚÖÕ¶Ë(/dev/ttySn)
´®Ðж˿ÚÖÕ¶Ë(Serial Port Terminal)ÊÇʹÓüÆËã»ú´®Ðж˿ÚÁ¬½ÓµÄÖÕ¶ËÉ豸¡£¼ÆËã»ú°Ñÿ¸ö´®Ðж˿ڶ¼¿´×÷ÊÇÒ»¸ö×Ö·ûÉ豸¡£ÓжÎʱ¼äÕâЩ´®Ðж˿ÚÉ豸ͨ³£±»³ÆÎªÖÕ¶ËÉ豸£¬ÒòΪÄÇʱËüµÄ×î´óÓÃ;¾ÍÊÇÓÃÀ´Á¬½ÓÖÕ¶Ë¡£ÕâЩ´®Ðж˿ÚËù¶ÔÓ¦µÄÉ豸Ãû³ÆÊÇ/dev/tts/0(»ò/dev/ttyS0), /dev/tts/1(»ò/dev/ttyS1)µÈ£¬É豸ºÅ·Ö±ðÊÇ(4,0), (4,1 ......