ʹÓÃ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
Ïà¹ØÎĵµ£º
´´½¨×ÀÃæͼ±ê
Ä¿Ç°½«ÍøÂçÓ¦ÓÃÀ©Õ¹µ½×ÀÃæÊÇÒ»¸öÇ÷ÊÆ£¬´æÔÚןܶà½â¾ö·½°¸£¬±¾ÎÄÒÔ Mozilla Prism ΪÀý£¬ÀàËƵķ½·¨Í¬ÑùÊÊÓÃÓÚ Google Chrome ¡£
1. µ½ Mozilla Prism µÄÍøÕ¾ÉÏÏÂÔØ Prism£¬µã»÷ Download Now Ö®ºó»áÌáʾÓÐÁ½ÖÖ£¬Ò»ÖÖÊÇÒÔ Mozilla Firefox À©Õ¹µÄ·½Ê½£¬ÊʺÏÒѾ°²×°ÓÐ Firefox µÄÅóÓÑ£»Ò»Ö ......
ÎÞÂÛ΢ÈíÈçºÎרעÓÚ×ÀÃ棬XµÄÉè¼Æ»¹ÊÇÄÜÈÃËûÃǺ¹ÑÕ¡£±È½ÏÒ»ÏÂWindowsÔ¶³Ì×ÀÃæ(2008ServerÖÕÓÚÓÐËù¸Ä½ø)ºÍXת·¢µÄЧ¹û¾Í¿ÉÒÔÀí½â£¬ÎªÊ²Ã´*nixµÄÊÀ½çÀïÏÔʾGUI»·¾³ÒÀ¿¿µÄ¾¹È»ÊÇServer-Client¼Ü¹¹¡£
ÔÚWindowsÏ£¬Ö»ÒªÊµÏÖÁ½¸öÒªËؾͿÉÒÔʵÏÖXµÄת·¢£º1.X Server·þÎñ£»2.ssh¿Í»§¶Ë¡£Ç°Õß¿ÉÒÔÓÃXming£¬ºóÕß¿ÉÒÔÓÃputty»òopenS ......
understanding linux usb ehci device driver£¨2£©
understanding linux usb ehci device driver(2)
lm_tom@163.com
2. linux ehci device driver(ehci hcd)
2.1. linux usb subsystem arch overview(host)
2.2. ehci_hcd
2.3. ehci ʵÏֵĽӿÚ
2.3.1. ehci_pci_setup() (hc_driver->reset)
2.3.2. ehci_run() ( ......
alarm£¨ÉèÖÃÐźŴ«ËÍÄÖÖÓ£©
Ïà¹Øº¯Êý signal£¬sleep
±íÍ·Îļþ #include<unistd.h>
¶¨Ò庯Êý unsigned int alarm(unsigned int seconds);
º¯Êý˵Ã÷ alarm()ÓÃÀ´ÉèÖÃÐźÅSIGALRMÔÚ¾¹ý²ÎÊýsecondsÖ¸¶¨µÄÃëÊýºó´«Ë͸øÄ¿Ç°µÄ½ø³Ì¡£Èç¹û²ÎÊýseconds Ϊ0£ ......
ͨ¹ý×ÛºÏʹÓöàÖÖ±ê×¼ÎļþϵͳBenchmarks¶ÔExt3, Ext4, Reiserfs, XFS, JFS, Reiser4µÄÐÔÄܲâÊԶԱȣ¬¶Ô²»Í¬Ó¦ÓÃÑ¡ÔñºÏÊʵÄÎļþϵͳ¸ø³öÒÔÏ·½°¸£¬¹©´ó¼Ò²Î¿¼¡£ÎļþϵͳÐÔÄܲâÊÔÊý¾Ý¼û¸½±í¡£
1¡¢´óÁ¿Ð¡Îļþ£¨LOSF, Lost of small files£©I/OÓ¦ÓÃ(ÈçСͼƬ)
Reiserfs(Ê×Ñ¡), Ext4ÎļþϵͳÊʺÏÕâÀฺÔØÌØÕ÷£¬IOµ÷¶ÈË㷨ѡ ......