xen串口調試配置(雙機)

我們在啓動xen的時候,剛開始的輸出都是直接輸出到屏幕上,但是domain0啓動之後xen裏面調試信息的輸出就看不到了(應該是爲了防止 domain0的輸出和xen中的輸出混雜着吧),但是我們看xen的代碼可以看到裏面還有很多printk操作,這些printk打印輸出的內容是到哪 裏了呢? 嗯,沒錯是輸出到串口了
內核調試,因爲較難進行單步調試,希望是能夠通過一些打印信息幫助我們定位到自己寫的內核代碼的錯誤位置(完全黑黑的屏幕看得人很糾結,review代碼找錯誤的痛苦只有自己經歷了才知道)
ok,廢話到這,下面說一下如何配置xen使其能夠通過串口輸出信息,幫助我們調試or其他xxx的事情

1.準備兩臺機器(帶xen的主機,用於調試的從機),準備一根串口線,通過主機箱背後的串口接口將倆機器連接起來(有的機器沒有串口的,可以買一個串口-USB的轉接線,這樣就可以一端用串口,一端用USB,不過不便的是還需要安裝一個USB驅動才行)
2.修改主機xen啓動選項:
/boot/grub/grub.conf

kernel /boot/xen-3.4.gz sched=credit loglvl=all guest_loglvl=all debug_stack_lines=80 console=vga,com1 com1=115200,8n 1
module /boot/vmlinuz-2.6.18.8-xen ro root=LABEL=/ console=tty0 max_loop=128 xencons=ttyS0,115200
module /boot/initrd-2.6.18.8-xen.img
3.從機可以通過超級終端或者是putty來連接到主機,我是用的putty,大概步驟如下:
1)新建一個session,在connection下的serial項中修改如下
serial line to connect to  COM1
speed(baud)             115200
Data bits                       8
Stop bits                       1
Parity                            None
Flow control                   XON/XOFF

 

2)回到最開始的session處,在Connection type處選擇Serial 。選擇後對應上面一行的內容也會改變,在Serial line下框中填入:COM1 , Speed下框中填入115200

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章