LinuxÄÚ´æ¿Õ¼ä·ÃÎÊÔý¼Ç(ת)
http://blog.chinaunix.net/u/25764/showart_1882931.html
Òý£º±¾À´´òË㽫Õⲿ·ÖÄÚÈݲ¢Èëµ½¡¶The Linux Kernel Module Programming Guide±Ê¼Ç¡·ÖÐÈ¥£¬µ«ÊÇÏëÏÂÄÚ´æ¿Õ¼ä¹ÜÀí·ÃÎÊÏ൱»ù´¡ÖØÒª¶øÇÒÄÚÈÝÁ¿½Ï´ó£¬ËùÒԾ͵¥¶À¼Ç¼¡£ÔÚ¹ýÈ¥Ò»ÄêÀÓÉÓڳɹ¦¿ª·¢¹ý¼¸¸öÆÄΪ¸´ÔÓµÄÉ豸Çý¶¯£¬¾Í×ÔÒÔÎªÕÆÎÕÁËÇý¶¯¿ª·¢µÄ·½·¨ºÍ¼¼ÇÉ£¬ÊÂʵÉÏÔÚ»ù´¡ÉÏ£¬ÎÒÈ´ÓÐ×ÅÖÂÃüµÄäµã¡£Õâ¸öäµã¾ÍÊÇLinuxµÄÄÚ´æ¹ÜÀí£¬ÆäʵºÜ¾Ã֮ǰ£¬¾ÍÒ»Ö±¾Í¸ã²»¶®MMU¡¢Page¡¢Section¡¢Ò³±íµÈ¸ÅÄÄÇʱÒÔΪÕâЩ²¢²»ÖØÒª¡£ÏÖÔÚ¿´À´ÖÕÓÚ³¢µ½¿à¹ûÁË£¬ÔÚ¿ª·¢Virtual FramebufferµÄʱºò£¬¾ÍÔÚmmapÕâ¸ö½Ó¿ÚʵÏÖÉÏ¿¨×¡ÁË¡£Ë×»°Ëù˵µÄÊéµ½ÓÃʱ·½ºÜÉÙ£¬ÊÇÖÁÀíÃûÑÔ°¡¡£
×¢£ºÔÚx86¼Ü¹¹ÉÏ£¬»á·ÖΪÄÚ´æ¿Õ¼äºÍI/O¿Õ¼ä£¬µ«ÊÇÔÚ´ó¶àÊýǶÈëʽ¿ØÖÆÆ÷ÈçARM¡¢PowerPC²¢²»ÌṩI/O¿Õ¼ä¡£ÎÒÃæÏòµÄÖ÷ÒªÊÇǶÈëʽ·½ÃæµÄÇý¶¯¿ª·¢£¬ËùÒÔÕâÀï²¢²»ÌÖÂÛI/O¿Õ¼äµÄÄÚÈÝ¡£±¾ÎĵÄÄÚÈÝ´ó¶àÊýÊÇժ¼¡¶LinuxÉ豸Çý¶¯¿ª·¢Ïê½â¡·µÄµÚʮһÕ£¬²¢½áºÏÎÒÔÚ¿ª·¢¹ý³ÌµÄһЩÐĵÃÌå»á¡£
Ò»¡¢ÄÚ´æ¹ÜÀíµ¥ÔªMMU
MMU¸¨Öú²Ù×÷ϵͳ½øÐÐÄÚ´æ¹ÜÀí¡¢ÌṩÐéÄâµØÖ·ºÍÎïÀíµØÖ·µÄÓ³Éä¡¢ÄÚ´æ·ÃÎÊȨÏÞ±£»¤ºÍCache»º´æ¿ØÖƵÈÓ²¼þÖ§³Ö£¬¿É¼û£¬Õ⽫ʹµÃLinux²Ù×÷ϵͳÄܵ¥¶ÀΪϵͳµÄÿ¸öÓû§·ÖÅä¶ÀÁ¢µÄÄÚ´æ¿Õ¼ä²¢±£Ö¤Óû§¿Õ¼ä²»ÄÜ·ÃÎÊÄں˿ռäµÄµØÖ·£¬Îª²Ù×÷ϵͳµÄÐéÄâÄÚ´æ¹ÜÀíÄ£¿éÌṩÁËÓ²¼þ»ù´¡¡£
ÔÚs3c2410µÄviviÕâ¸öbootloaderÖУ¬½¨Á¢ÁËÒ»¸ö4GBÎïÀíµØÖ·ÓëÐéÄâµØÖ·Ò»Ò»Ó³ÉäµÄÒ»¼¶Ò³±í£¬ÎÒÃÇ¿ÉÒÔͨ¹ýº¯Êýmem_mapping_linear()À´Ì½Ñ°Ò»ÏÂÆä´´½¨¹ý³Ì
static inline void mem_mapping_linear(void)
{
unsigned long pageoffset, sectionNumber;
/*4GBÐéÄâµØÖ·Ó³Éäµ½ÏàÓ¦µÄÎïÀíµØÖ·ÉÏ£¬¾ù²»ÄÜ»º´æ*/
for (sectionNumber = 0; sectionNumber < 4096; sectionNumber++)
{
pageoffset = (sectionNumber << 20);
*(mmu_tlb_base + (pageoffset >> 20)) = pageoffset | MMU_SECDESC;
//mmu_tlb_baseΪ´æ·ÅÒ³±íµÄÊ×µØÖ·,tlbÊÇת»»ÅÔ·»º´æ£¬ÊÇת»»±íµÄCache
}
/*ʹÄÜDRAMµÄÇøÓò¿É»º´æ*/
 
Ïà¹ØÎĵµ£º
×¼±¸¹¤×÷:
¡¡¡¡Óõ½µÄperl À©Õ¹×é¼þ(modules)ÔÚÉÏÆªÌù³ö.( win32::odbc Ä£¿é
)ÏÂÔØ×é¼þºó°´ÕÕReadmeÎļþ°²×°µ¹ÏìӦĿ¼.ÅäÖúÃÏàÓ¦µÄodbcÊý¾ÝÔ´.
¡¡¡¡
¡¡¡¡³ÌÐòʵÏÖ:
¡¡¡¡Ê¹ÓÃ
¡¡¡¡use
Win32::ODBC;
¡¡¡¡
¡¡¡¡Óï¾ä°üº¬Ó¦Ê¹ÓõÄÄ£¿éÊÇwin32::odbc,д³öÊý¾Ý¿â
Á¬½Ó×Ö·û´®
¡¡¡¡
¡¡¡¡$DSN = "DSN =
My DSN ......
(AIXÃüÁî)iostatÃüÁîÖ÷Ҫͨ¹ý¹Û²ìÎïÀí´ÅÅ̵ĻîԾʱ¼äÒÔ¼°ËûÃÇµÄÆ½¾ù´«ÊäËÙ¶È£¬¼à¿ØÏµÍ³ÊäÈë/Êä³öÉ豸¸ºÔØ.
iostat [¼ä¸ôʱ¼ä] [´òÓ¡´ÎÊý]
exp: iostat 5 2
psÃüÁîÊÇUNIXϵͳÖÐ×î³£¼ûµÄÃüÁËüÖ÷ÒªÏÔʾϵͳÖйØÓÚ½ø³ÌµÄͳ¼ÆºÍ״̬ÐÅÏ¢£¬Èç½ø³ÌID£¬I/OÐÐΪÒÔ¼°CPUÀûÓÃÂʵÈ.
ÏÔʾ10¸öÏûºÄCPU×î¶àµÄ½ø³Ì£º
ps aux |sort ......
ÏÔʾµ±Ç°ÏµÍ³ÄÚ´æÈÝÁ¿£º
free -m
unameÏÔʾϵͳÐÅÏ¢£º
-a £ºËùÓÐϵͳÏà¹ØÐÅÏ¢
-s £ºÏµÍ³ºËÐÄÃû³Æ
-r £ººËÐİ汾
-p £ºcpuÀàÐÍ
-r £ºÓ²¼þƽ̨
½«µ±Ç°ËùÓÐÁª»úºÍ¼àÌýÊý¾ÝÁгöÀ´£º
netstat -a
ÁгöËùÓнø³Ì´ò¿ªµÄÌ×½Ó×ÖÎļþ£º
lsof -u db2inst1 -a -U »ò lsof -u db2inst1 ......
¼Ù¶¨Äã»áCÓïÑÔ£¬¶øÇÒÃ÷°×CÓïÑÔÃæÏò¶ÔÏó±à³ÌµÄschme£¬¶Ô²Ù×÷ϵͳ£¨°üÀ¨µ÷¶È£¬ÄÚ´æ·ÖÅ䣬·ÖÒ³£¬Í¬²½£¬etc£©±È½ÏÁ˽⡣ÄÇôÄã¿ÉÒÔ°´ÕÕÈçÏÂ˳ÐòѧϰLinux Äںˡ£
1.¿´Linux Device DriverÕâ±¾Êé¡£ÕâÊÇΪÁËÈÃÄã¶®µÃ±àÒëÄÚºËÄ£¿éµÄ·½·¨¡£»¹ÓÐΪLinux¸÷ÖÖÉ豸ÁôÏÂһЩӡÏó¡£Í¬Ê±Ò»±é¿´ÊéÒ»±ß¿´Ä³Ð©É豸µÄÔ´´ú ......
ssh³£ÓÃÃüÁî
Ŀ¼£º
1. Basic Instructions /»ù±¾Ö¸Áî
2. wget /ÏÂÔØ¹¤¾ß
3. Crontab /¶¨Ê±ÈÎÎñ
4. tar/tar.gz /ѹËõÎļþ
5. vi /±à¼Æ÷
1. Basic Instructions»ù±¾²Ù×÷ÃüÁî
ͨ³£À´Ëµ£¬Ê¹ÓÃ"$[Instructions] --help"¿ÉÒÔ»ñµÃÒÔϸ÷¸öÃüÁî[instructions]µÄ°ïÖú£¬°üº¬Æä²ÎÊýÁбíµÄ¶¨Òå¡£
-ls Áгöµ±Ç°Îļþ¼Ð ......