LinuxÄڴ棺ÄÚ´æ¹ÜÀíµÄʵÖÊ
1. Äں˳õʼ»¯£º
* Äں˽¨Á¢ºÃÄÚºËҳĿ¼ҳ±íÊý¾Ý¿â£¬¼ÙÉèÎïÀíÄÚ´æ´óСΪlen£¬Ôò½¨Á¢ÁË[3G--3G+len]::[0--len]ÕâÑùµÄÐ鵨ַvaddrºÍÎïÀíµØÖ·paddrµÄÏßÐÔ¶ÔÓ¦¹ØÏµ£»
* Äں˽¨Á¢Ò»¸öpageÊý×飬pageÊý×éºÍÎïÀíÒ³ÃæÏµÁÐÍêÈ«ÊÇÏßÐÔ¶ÔÓ¦£¬pageÓÃÀ´¹ÜÀí¸ÃÎïÀíÒ³Ãæ×´Ì¬£¬Ã¿¸öÎïÀíÒ³ÃæµÄÐ鵨ַ±£´æÔÚpage->virtualÖУ»
* Äں˽¨Á¢ºÃÒ»¸öfree_list£¬½«Ã»ÓÐʹÓõÄÎïÀíÒ³Ãæ¶ÔÓ¦µÄpage·ÅÈëÆäÖУ¬ÒѾʹÓõľͲ»Ó÷ÅÈëÁË£» 2. ÄÚºËÄ£¿éÉêÇëÄÚ´ævaddr = get_free_pages(mask,order)£º
* ÄÚ´æ¹ÜÀíÄ£¿é´Ófree_listÕÒµ½Ò»¸öpage£¬½«page->virtual×÷Ϊ·µ»ØÖµ£¬¸Ã·µ»ØÖµ¾ÍÊǶÔÓ¦ÎïÀíÒ³ÃæµÄÐ鵨ַ£»
* ½«page´Ófree_listÖÐÍÑÀ룻
* Ä£¿éʹÓøÃÐéÄâµØÖ·²Ù×÷¶ÔÓ¦µÄÎïÀíÄڴ棻
3. ÄÚºËÄ£¿éʹÓÃvaddr£¬ÀýÈçÖ´ÐÐÖ¸Áîmov(eax, vaddr)£º
* CPU»ñµÃvaddrÕâ¸öÐ鵨ַ£¬ÀûÓý¨Á¢ºÃµÄҳĿ¼ҳ±íÊý¾Ý¿â£¬ÕÒµ½Æä¶ÔÓ¦µÄÎïÀíÄÚ´æµØÖ·£»
* ½«eaxµÄÄÚÈÝдÈëvaddr¶ÔÓ¦µÄÎïÀíÄÚ´æµØÖ·ÄÚ£»
4. ÄÚºËÄ£¿éÊÍ·ÅÄÚ´æfree_pages(vaddr,order)£º
* ÒÀ¾ÝvaddrÕÒµ½¶ÔÓ¦µÄpage£»
* ½«¸Ãpage¼ÓÈëµ½free_listÖУ» 5. Óû§½ø³ÌÉêÇëÄÚ´ævaddr = malloc(size)£º
* ÄÚ´æ¹ÜÀíÄ£¿é´ÓÓû§½ø³ÌÄÚ´æ¿Õ¼ä(0--3G)ÖÐÕÒµ½Ò»¿é»¹Ã»Ê¹ÓõĿռävm_area_struct(start--end)£»
* Ëæºó½«Æä²åÈëµ½task->mm->mmapÁ´±íÖУ»
6. Óû§½ø³ÌдÈëvaddr(0-3G)£¬ÀýÈçÖ´ÐÐÖ¸Áîmov(eax, vaddr)£º
* CPU»ñµÃvaddrÕâ¸öÐ鵨ַ£¬¸ÃÐ鵨ַӦ¸ÃÒѾÓÉglibc¿âÉèÖúÃÁË£¬Ò»¶¨ÔÚ3GһϵÄij¸öÇøÓò£¬¸ù¾ÝCR3¼Ä´æÆ÷Ö¸ÏòµÄcurrent->pgd²éµ±Ç°½ø³ÌµÄҳĿ¼ҳ±íÊý¾Ý¿â£¬·¢ÏÖ¸Ãvaddr¶ÔÓ¦µÄҳĿ¼±íÏîΪ0£¬¹Ê²úÉúÒì³££»
* ÔÚÒì³£´¦ÀíÖУ¬·¢ÏÖ¸Ãvaddr¶ÔÓ¦µÄvm_area_structÒѾ
Ïà¹ØÎĵµ£º
¡¡Ò»¡¢ÒýÑÔ
¡¡¡¡ÏëʹÓÃLinuxÒѾºÜ³¤Ê±¼äÁË£¬ÓÉÓÚûÓÐÓ²ÐÔÈÎÎñһֱҲûÓÐϵͳѧϰ£¬½üÈÕÓÉÓÚ¹¤×÷ÐèÒª±ØÐëʹÓÃLinuxϵÄMySQL¡£±¾ÒÔΪÓÐ
WindowsÏÂʹÓÃSQL
ServerµÄ¾Ñ飬¾õµÃÔÚLinuxϰ²×°MySqlÓ¦¸ÃÊÇÒ×Èç·´ÕÆµÄÊ£¬¿ÉÔÚÕæÕý°²×°ºÍʹÓÃMySQLʱ×ßÁ˺ܶàÍä·£¬Óö¼ûºÜ¶àÎÊÌ⣬±Ï¾¹Linux
ºÍWindows±¾Éí¾ÍÓкܴóÇø±ð¡£ÎªÁËÈà ......
Æô¶¯mysql: /etc/rc.d/init.d/mysql start
ÐÞ¸ÄÃÜÂë: ¸ñʽ£ºmysqladmin -uÓû§Ãû -p¾ÉÃÜÂë password ÐÂÃÜÂë
ʹÓÃÃÜÂëµÇ¼: mysql -u root -p
ÏÔʾÊý¾Ý¿â: show databases;
Ñ¡ÔñÊý¾Ý¿â: use Êý¾Ý¿âÃû;
ÏÔʾ±í: show tables;
ÏÔʾ±í½á¹¹: descibe ±íÃû;
Ô¶³ÌµÇ¼mysqlÐèÒª¿ªÆôÈ ......
<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
Ëùν“×ÀÃæ
Linux”
ÊÇÖ¸Óû§ÍêÈ«¿ÉÒÔ×ÔÓɵØÀí½â¡¢Ê¹ÓÃÓë´«²¥µÄ¸öÈ˼ÆËã»ú½çÃæ¡£ÔÚÕâÀ×ÔÓÉ£¨
Freedom
£©Ò»´ÊµÄ׼ȷº¬ÒåÓë×ÔÖ÷£¨
decide
for oneself
£©µÄÄÚº¸üΪ½Ó½ ......
c[tab][tab]: »ñµÃÒÔc¿ªÍ·µÄshellÃüÁî
alias lm='ls -al' £º È¡±ðÃû
unalias
type [cmd] : ÅжÏÊÇbashÄÚ½¨»¹ÊÇ·ÇÄÚ½¨µÄcmd
":Ë«ÒýºÅÄÚµÄÌØÊâ×Ö·û¿ÉÒÔ±£ÓбäÁ¿ÌØÐÔ
':µ¥ÒýºÅÄÚµÄÌØÊâ×Ö·û¾¡ÎªÒ»°ãµÄ×Ö·û
unset ±äÁ¿Ãû£ºÈ¡Ïû±äÁ¿Ãû
$HOME
$PATH
$SHELL
$MAIL
$LANG
$RANDOM
$HSITSIZE
$ENV
env: Áгöµ±Ç°s ......
(AIXÃüÁî)iostatÃüÁîÖ÷Ҫͨ¹ý¹Û²ìÎïÀí´ÅÅ̵ĻîԾʱ¼äÒÔ¼°ËûÃÇµÄÆ½¾ù´«ÊäËÙ¶È£¬¼à¿ØÏµÍ³ÊäÈë/Êä³öÉ豸¸ºÔØ.
iostat [¼ä¸ôʱ¼ä] [´òÓ¡´ÎÊý]
exp: iostat 5 2
psÃüÁîÊÇUNIXϵͳÖÐ×î³£¼ûµÄÃüÁËüÖ÷ÒªÏÔʾϵͳÖйØÓÚ½ø³ÌµÄͳ¼ÆºÍ״̬ÐÅÏ¢£¬Èç½ø³ÌID£¬I/OÐÐΪÒÔ¼°CPUÀûÓÃÂʵÈ.
ÏÔʾ10¸öÏûºÄCPU×î¶àµÄ½ø³Ì£º
ps aux |sort ......