ʹÓÃDDD¿ª·¢ARM Linux³ÌÐò
ʹÓÃDDD+GDB¿ª·¢ARM Linux³ÌÐò
½ñÌìÓÖÈ¡µÃÁËһЩ½øÕ¹£¬¸Ï¿ìдÏÂÀ´ÒÔÃâ×Ô¼ºÍü¼Ç¡£
×Ô´ÓLinuxÔÚÎҵİå×ÓÉÏÅÜÆðÀ´Ö®ºó£¬ÎÒÒ»Ö±ÔÚÏëÒ»¸öÎÊÌ⣬Ôõôµ÷ÊÔ½«À´Ð´µÄ³ÌÐò¡£ÆäʵÎÒÔÚLinux¿ª·¢·½ÃæÕæµÃºÜÍâÐУ¬µ½Á˽ñÌì²ÅÖªµÀGDBµ½µ×ÊÇ ¸ÉʲôÓõģ¬ºÇºÇ¡£ÎÒÏàÐźܶàÈË´ÓBootloaderµ÷ÊÔ¿ªÊ¼Ò»Ö±¶¼Ê¹ÓÃLED°¡£¬printfÕâÑùµÄ·½·¨À´µ÷ÊÔ¡£ÎÒ×ö±ÏÉèʱ£¬¾ÍÊÇÔÚMTDBLOCK ÀïÃæ»®³öÒ»¸öUSER·ÖÇø£¬È»ºó°Ñ±àÒëºÃµÄ³ÌÐò·ÅÈëÎļþϵͳӳÏñ£¬Í¨¹ýBootloaderÓô®¿Úϵ½NANDÀȻºómountÉϵ÷ÊÔ£¬ÊµÔںܻ¨Ê±¼ä¡£ ½ñÌ죬°×³ÕµÄÎÒÖÕÓÚÕÒµ½ÁËÒ»Ìõ½Ý¾¶£¬ÒѾ²»¿ÈËÔÁË£¡
ÏȽéÉÜÏÂDDDºÍGDB£¬GDBÊÇÒ»ÖÖÓÃÓÚµ÷ÊÔLinuxϳÌÐòµÄ¹¤¾ß£¬Ëü²»½öÄܵ÷ÊÔC/C++£¬»¹¿ÉÒÔµ÷ÊÔPascalµÈºÜ¶àÆäËûÓïÑÔ¡£ÎÒÃÇ¿´¸öÀý×Ó£º ¼ÙÉèÓÐÒ»¸ö³ÌÐò½Ð×ötest.c£¬ÒªÓÃGDBµ÷ÊÔËü£¬Ê×ÏÈ£¬±àÒëµÄʱºòÐèÒª¼ÓÉϲúÉúdebugÐÅϢѡÏî“-g”£¬Èç#arm-linux-gcc test.c -o test -g£»È»ºó£¬ÓÉÓÚÎÒÃDz¢²»ÊÇ¿ª·¢±¾»ú³ÌÐò£¬ÔÚÄ¿±ê»ú£¨arm£©ÉÏÐèÒªÓÃÒ»¸öserverÆô¶¯Õâ¸öº¬Óе÷ÊÔÐÅÏ¢µÄ³ÌÐò£¬µ±È»£¬±¾»úºÍÄ¿±ê»úÖ®¼äµÃÓÐÒ»¶¨µÄÊý ¾Ý¹²Ïí·½Ê½£¨Èçnfs£©ºÍÒ»¶¨µÄͨÐÅ·½Ê½£¨ÈçÒÔÌ«Íø»ò´®¿Ú£©£»×îºó£¬ÔÚ±¾»úÉÏÆô¶¯Ò»¸öGDB¿Í»§¶Ë£¬¾Í¿ÉÒԵǽµ½Ä¿±ê»úµÄserverÉϵ÷ÊÔ³ÌÐòÁË¡£ GDBµÄÔÀíÍøÉÏÒ²ÓкܶàÎÄÕÂ˵£¬¿ÉÒÔËÑË÷Ï£¬µ«ÊÇÎÒÊdzõѧÕߣ¬¾Í²»È¥¿´ÄÇЩÄÚÈÝÁË¡£ÎªÁËÈôó¼Ò¸ü¼ÓÃ÷È·GDBºÍDDDµÄÇø±ð£¬ÎÒÃÇÏÈ¿´Ò»¸öGDBµÄµ÷ÊÔ ¹ý³Ì£º
ÎÒͨ¹ýÒÔÌ«Íøµ÷ÊÔ£¬±¾»úIPµØÖ·192.168.2.31£¬Ä¿±ê»ú£¨arm¿ª·¢°åIPµØÖ·192.168.2.223£©£¬±¾»úͨ¹ýnfs¹²Ïí¿ª·¢Ä¿Â¼lgraphics¡£
Ê×Ïȱ¾»úÉϱàÒ룺
lxz@lxzlinux:~/lgraphics> arm-linux-gcc lgraphics.c -o lg -g
Çл»µ½Ä¿±ê»ú£º
[root@(none) lgraphics]# gdbserver 192.168.2.31:2345 lg
Process lg created; pid = 402
Listening on port 2345
Çл»µ½±¾»ú£º
lxz@lxzlinux:~/lgraphics> arm-linux-gdb lg
GNU gdb 6.6
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "--host=i686-pc-linux-gnu --target=arm-linux"...
(gdb) target remote 192.168.2.223:23
Ïà¹ØÎĵµ£º
tar ÎļþÓëĿ¼ѹËõÃüÁî
tar [-cxtzjvfpPN] ÎļþÓëĿ¼ ....
²ÎÊý£º
-c £º½¨Á¢Ò»¸öѹËõÎļþµÄ²ÎÊýÖ¸Áî(create µÄÒâ˼)£»
-x £º½â¿ªÒ»¸öѹËõÎļþµÄ²ÎÊýÖ¸Á
-t £º²é¿´ tarfile ÀïÃæµÄÎļþ£¡
ÌØ±ð×¢Ò⣬ÔÚ²ÎÊýµÄÏ´ïÖУ¬ c/x/t ½öÄÜ´æÔÚÒ»¸ö£¡²»¿Éͬʱ´æÔÚ£¡ÒòΪ²»¿ÉÄÜͬʱѹËõÓë½âѹËõ¡£
-z £ºÊÇ·ñͬʱ¾ßÓÐ gzip µÄ ......
ת×Ôhttp://blog.csdn.net/colorant/archive/2007/04/12/1561837.aspx
1 ÊäÈë×Óϵͳ¼Ü¹¹Overview
ÊäÈë×Óϵͳ£¨Input Subsystem£©µÄ¼Ü¹¹ÈçÏÂͼËùʾ
ÊäÈë×ÓϵͳÓÉ ÊäÈë×ÓϵͳºËÐIJ㣨 Input Core £©£¬Çý¶¯²ã ......
Ò»¡¢POSIX Ïß³ÌÏê½â
1¡¢
Ò»ÖÖÖ§³ÖÄÚ´æ¹²ÏíµÄ¼ò½Ý¹¤¾ß
2¡¢³Æ×÷»¥³â¶ÔÏóµÄÐ¡ÍæÒâ
3¡¢Ê¹ÓÃÌõ¼þ±äÁ¿Ìá¸ßЧÂÊ
¶þ¡¢PosixÏ̱߳à³ÌÖ¸ÄÏ
1¡¢
Ï̴߳´½¨ÓëÈ¡Ïû
2¡¢
Ïß³Ì˽ÓÐÊý¾Ý
3¡¢Ïß³Ìͬ²½
4¡¢Ïß³ÌÖÕÖ¹
5¡¢ÔÓÏî
......
ͨ¹ý×ÛºÏʹÓöàÖÖ±ê×¼ÎļþϵͳBenchmarks¶ÔExt3, Ext4, Reiserfs, XFS, JFS, Reiser4µÄÐÔÄܲâÊԶԱȣ¬¶Ô²»Í¬Ó¦ÓÃÑ¡ÔñºÏÊʵÄÎļþϵͳ¸ø³öÒÔÏ·½°¸£¬¹©´ó¼Ò²Î¿¼¡£ÎļþϵͳÐÔÄܲâÊÔÊý¾Ý¼û¸½±í¡£
1¡¢´óÁ¿Ð¡Îļþ£¨LOSF, Lost of small files£©I/OÓ¦ÓÃ(ÈçСͼƬ)
Reiserfs(Ê×Ñ¡), Ext4ÎļþϵͳÊʺÏÕâÀà¸ºÔØÌØÕ÷£¬IOµ÷¶ÈË㷨ѡ ......
ÔÚǶÈëʽLinuxÖУ¬´®¿ÚÊÇÒ»¸ö×ÖÉ豸£¬·ÃÎʾßÌåµÄ´®Ðж˿ڵıà³ÌÓë¶Á£¯Ð´ÎļþµÄ²Ù×÷ÀàËÆ£¬Ö»Ðè´ò¿ªÏàÓ¦µÄÉ豸Îļþ¼´¿É²Ù×÷¡£´®¿Ú±à³ÌÌØÊâÔÚÓÚ´®¿ÚͨÐÅʱÏà¹Ø²ÎÊýÓëÊôÐÔµÄÉèÖá£Ç¶ÈëʽLinuxµÄ´®¿Ú±à³ÌʱӦעÒ⣬ÈôÔÚ¸ùÎļþÖÐûÓд®¿ÚÉ豸Îļþ£¬Ó¦Ê¹ÓÃmknodÃüÁî´´½¨£¬ÕâÕâÀï¼ÙÉè´®¿ÚÉ豸ÊÇ/dev/ttyS0£¬½éÉÜһϴ®¿ÚµÄ±à³Ì¹ý³Ì¡ ......