ʹÓÃQemuÀ´µ÷ÊÔlinuxÄÚºË
QemuÊÇÒ»¸öÓÅÐãµÄ¿ªÔ´ISAÄ£ÄâÆ÷£¬Ö§³ÖºÜ¶àÌåϵ½á¹¹£¬µ±È»°üÀ¨x86¡£QemuÌṩµ÷ÊÔ¹¦ÄÜ£¬¿ÉÒÔ¶Ô±»Ä£Äâ½øÐе÷ÊÔ¡£
QemuÖ÷Ò³http://fabrice.bellard.free.fr/qemu/
QemuÏÂÔØÒ³Ãæhttp://fabrice.bellard.free.fr/qemu/download.html °üÀ¨Ô´Â룬¿ÉÖ´ÐÐÎļþ£¬ÒÑÖÆ×÷ºÃµÄdisk fileµÈ
QemuÓÐʹÓÃ˵Ã÷Îĵµhttp://fabrice.bellard.free.fr/qemu/qemu-doc.html£¬ÍøÉÏÒ²¿ÉÒÔËÑË÷µ½Ò»Ð©ËµÃ÷£¬µ«ÊÇÕâЩ˵Ã÷²»¹»Çå³þÉõÖÁÓдíÎóµÄµØ·½£¬²»×ãÒÔ°ïÖú±ðÈ˳ɹ¦Ê¹ÓÃQemuÀ´µ÷ÊÔkernel£¬ËùÒÔÎÒ°Ñ×ÔÉí¿ÉÐеķ½·¨¼Ç¼ÏÂÀ´¡£
1¡£ÏÂÔØQemu, qemuÓÐÖ±½ÓµÄ¿ÉÖ´ÐÐÎļþ°ü£¬½âѹµ½ / ¼´¿ÉʹÓÃ
2¡£ÏÂÔØQemu ÌṩµÄ²âÊÔdisk image file;
3¡£²âÊÔQemuÊÇ·ñ¿ÉÒÔÔËÐУ¬ qemu -hda linux-0.2.img -append "root=/dev/hda"
-no-kqemu(linux-0.2.imgΪ֮ǰÏÂÔØºÃµÄdisk image file)£¬Õý³£Çé¿öÏ»áÌø³ö´°¿Ú¿ªÊ¼ÔËÐÐlinuxϵͳ
»ù±¾°²×°ÕýÈ·Ö®ºó£¬¿ªÊ¼½øÈëµ÷ÊÔ½×¶Î
1¡£±àÒë×Ô¼ºÐèÒªµÄkernelÄںˣ¬²úÉúimageÎļþbzImage£¬kernel elfÎļþvmlinuz
2¡£ÔËÐÐQemu£¬Æô¶¯µ÷ÊÔģʽ¡£ÕâÀïÊÇÐèҪעÒâµÄµØ·½£¬Qemu¸ø³öµÄ˵Ã÷ÊÇÕâÑùµÄ£º
In order to use gdb, launch qemu with the '-s' option. It will wait for a gdb connection:
> qemu -s -kernel arch/i386/boot/bzImage -hda root-2.4.20.img \
-append "root=/dev/hda"
Connected to host network interface: tun0
Waiting gdb connection on port 1234
ºÜ¶àÍøÉÏ×ÊÁÏÒ²ÊÇÕâô˵µÄ£¬µ«ÊÇÎÒÊÔÁ˶à´Î£¬Ê¹ÓÃÕâÑùµÄÃüÁ²»»á³öÏÖ“Connected to host network interface: tun0 Waiting gdb connection on port 1234”×ÖÑù£¬linuxϵͳҲÊÇÖ±½ÓÔËÐÐÆðÀ´£¬Ã»Óе÷ÊԵĻú»á¡£Ò»¸ö¸öÃǸæËßÎÒÓÃ-S£¨´óS£©¾ÍÄܴﵽЧ¹û¡£ -S µÄÒâ˼ÊÇfreeze CPU ata startup¡£
²½ÖèÈçÏÂ
1¡£Æô¶¯Qemu,ʹÓôóS²ÎÊý qemu -kernel bzImage -hda linux-0.2.img -append "root=/dev/hda" -S£¬ÏµÍ³»áÌø³öÒ»¸öºÚÏÔʾ½çÃæ£¬ÎÞÈκÎÄÚÈÝ¡£´Ëʱͨ¹ý ctrl+alt+1 Óë ctrl+alt+2¿ÉÒÔÇл»£¬Ò»¸öÊÇÆÁÄ»Êä³ö£¬Ò»¸öÊÇqemu¿ØÖÆÌ¨¡£
2¡£Çл»µ½qemu¿ØÖÆÌ¨£¬ÊäÈëÃüÁîgdbserver 1234
3¡£Í¬Ê±´ò¿ªgdb³ÌÐò£¬Í¨¹ýqemu˵Ã÷ÖÐÌṩµÄ·½·¨¼È¿É½øÐе÷ÊÔ£º
Then launch gdb on the 'vmlinux' executable:
> gdb vmlinux
In gdb, connect to QEMU:
(gdb) target remote localhost:1234
Äã¿ÉÒÔÉèÖöϵãÈçbreak start_
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
QT Linuxϰ²×°ÊÖ²á
By Jackie
on June 13, 2008 4:04 PM
|
3 Comments
| Previous
|
Next
| EDIT
QTµÄ°²×°°ì·¨Óкܶ࣬°Ù¶ÈÒ»ÏÂÓÐÒ»´ó¶Ñ£¬µ«ÊǴ󲿷ֵÄÊֲᶼÊǸ´ÖÆÕ³ÌùµÄ£¬²¢²»ÄÜʹÓá£
¾ßÌåµÄ ......
1. ´´½¨Ä¿Â¼
mkdir
NO1. ÔÚµ±Ç°Â·¾¶´´½¨Ò»¼¶Ä¿Â¼
[root@rehat root]# mkdir test
NO2. ÔÚµ±Ç°Â·¾¶´´½¨¶à¼¶Ä¿Â¼
[roo ......
Ò³ÉêÇëµÄºËÐĵ÷ÓÃÊÇ: __alloc_pages(). Ò³ÉêÇë˳ÐòÈçÏ£º
Ê×ÏÈÕÒ×î´óÄÜ·ûºÏµÄ¿é, Èç¹ûÒ»¸ö¿ÕÏп鲻ÄÜÂú×ã, ¸ü¸ßÒ»¼¶µÄ¿é½«·Ö¸î³É2¸öbuddy, Ò»¸ö±»Õ¼ÓÃ, Ò»¸ö·ÅÈëµÍÒ»¼¶µÄfreelist.
µ±¿é±»ÊÍ·Åʱ, ¼ì²éÿ¶Ôbuddy, Èç¹ûÁ½Õß¶¼¿ÕÏÐ, °ÑËûÃǺϲ¢µ½¸ü¸ßÒ»¼¶µÄ¿éÊý×é ......
1 ¶¨ÒåÎļþ
linux/errno.h
#ifndef _LINUX_ERRNO_H
#define _LINUX_ERRNO_H
#include <asm/errno.h>
#ifdef __KERNEL__
/* Should never be seen by user programs */
#define ERESTARTSYS 512
#define ERESTARTNOINTR 513
#define ERESTARTNOHAND 5 ......