ʹÓÃ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 Ê ......
1.SIGHUPÐźÅ
UNIXÖнø³Ì×éÖ¯½á¹¹Îª session (»á»°)°üº¬Ò»¸öǰ̨½ø³Ì×é¼°Ò»¸ö»ò¶à¸öºǫ́½ø³Ì×飬һ¸ö½ø³Ì×é°üº¬¶à¸ö½ø³Ì¡£Ò»¸ösession¿ÉÄÜ»áÓÐÒ»¸ösessionÊ×½ø³Ì£¬¶øÒ»¸ösessionÊ×½ø³Ì¿ÉÄÜ»áÓÐÒ»¸ö¿ØÖÆÖÕ¶Ë¡£Ò»¸ö½ø³Ì×é¿ÉÄÜ»áÓÐÒ»¸ö½ø³Ì×éÊ×½ø³Ì¡£½ø³Ì×éÊ×½ø³ÌµÄ½ø³ÌIDÓë¸Ã½ø³Ì×éIDÏàµÈ¡£Õâ ......
¶ÔÓÚ½ø³ÌµÄÒ»Éú¿ÉÒÔÓÃһЩÐÎÏóµÄ±ÈÓ÷×÷Ò»¸öССµÄ×ܽ᣺
Ëæ×ÅÒ»¾äfork£¬Ò»¸öнø³ÌßÉßÉÂ䵨£¬µ«ËüÕâʱֻÊÇÀϽø³ÌµÄÒ»¸ö¿Ë¡¡£
È»ºóËæ×Åexec£¬Ð½ø³ÌÍÑÌ¥»»¹Ç£¬Àë¼Ò¶ÀÁ¢£¬¿ªÊ¼ÁËΪÈËÃñ·þÎñµÄÖ°ÒµÉúÑÄ¡£
ÈËÓÐÉúÀϲ¡ËÀ£¬½ø³ÌÒ²Ò»Ñù£¬Ëü¿ÉÒÔÊÇ×ÔÈ»ËÀÍö£¬¼´ÔËÐе½mainº¯ÊýµÄ×îºóÒ»¸ö”}”£¬´ÓÈݵØÀëÎÒÃǶøÈ¥£»Ò²¿ÉÒ ......
For ubuntu: [1]http://webonrails.com/2009/07/15/change-timezone-of-ubuntu-machine-from-command-line/
2
Logged in as root, check which timezone your machine is currently using by executing `date`. You'll see something like Mon 17 Jan 2005 12:15:08 PM PST, PST in this case is the cu ......
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 ......