Does someone know how to initialize a Powe开发者_如何学编程rPC 32-bit processor (e.g. PPC-440), similar to Intel's x86 protected mode switch and consequent initialization of address tables and the like? Is there documentation about the first steps an OS should take care of on these processors?
Regards,
The PPC440x6 user's manual has an entire chapter on initialization; section 3.4 provides an enumerated list of the exact steps you need to follow. Similar content is available in the PPC440x5 and PPC440x4 manuals.
If you're referring to Linux code, according to IBM, you'll want to make sure that you're referring to Linux 2.6.27 or later -- earlier versions failed to clear some TLB control bits.
The PPC does not have nearly the initialization nightmare that x86 has. You don't need to disable the world's most complicated segmentation unit by starting each segment at zero.
You might want to check one of the various free OS kernels, such as NetBSD, FreeBSD, and Linux that all manage to start up on PPC. You can probably also find app notes from Motorola and IBM that cover startup, as well as example diagnostic and other standalone code.
I do not know of a reference, however looking at how various operating systems, such as FreeBSD or Linux, bootstrap on PPC can be enlightening.
精彩评论