Re: How to debug kernel before there is no printk mechanism?

From: linux-os
Date: Wed Mar 30 2005 - 11:50:18 EST


On Wed, 30 Mar 2005, krishna wrote:

Hi all,

How can one debug kernel before there is no printk mechanism in kernel.

Regards,
Krishna Chaitanya

Write directly to screen memory at 0x000b8000, or write to the
RS-232C UART while polling the TX buf empty bit, or just write
bits that mean something to you out the printer port.

Screen - memory is 16-bit words with the high-word being
an attibute byte. FYI 0x07 is a good B&W byte. You can
initialize a pointer to it as:

unsigned short *screen = 0xc00b8000; Since low memory
is always mapped, the above cheat will work. The 0xc0000000
is PAGE_OFFSET.

An early '486 was brought up into a 32-bit protected-mode
(non linux) operating system using these debugging methods.
The first time I got to see some symbol written to the
screen in protected-mode marked the start of a week-end-
long party. Have fun!

Cheers,
Dick Johnson
Penguin : Linux version 2.6.11 on an i686 machine (5537.79 BogoMips).
Notice : All mail here is now cached for review by Dictator Bush.
98.36% of all statistics are fiction.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/