On 03/05/2014 04:21 PM, Rafael Machado wrote: > Hi Everyone > > I'm currently doing my MSc in Computer Science and my idea is to do this > task as my final work: > > http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=Tasks/UefiCpuPkg/CpuDxe_MP_support > > I still have some time (two years) to finish the course, but I'l already > talking with a teacher to help me. During our last meeting, the teacher > asked me: > > "What are the goals of doing this ?" > > On my point of view, one of the goals is to be able to use all > processors during the boot process, so the main processor can delegate > taks to the other processors. > > Is this really the idea of this task ?
No answers yet, so I'll give it a shot. I don't know what the original task author had in mind... On Ia32/X64, MpServices is mainly used to initialize the CPU h/w. There are some tasks, such as writing the local APIC, MSRs, and MTRRs, which can only be done from the local CPU. None of these tasks appear to be necessary in a virtual or emulated environment (such as OVMF), which may explain why it hasn't been implemented for OVMF or DUET so far. Some platforms may have special requirements which would benefit from running multiple CPUs at once. For example, you could implement a robust, parallel memory test or coherence test. Or you could port low-level benchmarks such as STREAMS. That may be outside the scope of your project... > As is described on the details of this taks, the Intel material has all > information needed to do this and I'm already reding it, but Is there > any other kind of material that I can read to understand better the boot > of multiprocessor ? I already have some books, but maybe some other > source of information can help even more. SeaBios may have some MP init. code; I'm not sure. BSD would have code for handling a SIPI interrupt on an AP, transitioning to protected mode and long mode, etc. (So would Linux, but the license is incompatible with EDK2. That wouldn't affect your project per se, but would prevent you from submitting the code back to TianoCore.) -- Brian -------------------------------------------------------------------- "I don't believe personal letters sent bulk rate." -- me ------------------------------------------------------------------------------ Subversion Kills Productivity. Get off Subversion & Make the Move to Perforce. With Perforce, you get hassle-free workflows. Merge that actually works. Faster operations. Version large binaries. Built-in WAN optimization and the freedom to use Git, Perforce or both. Make the move to Perforce. http://pubads.g.doubleclick.net/gampad/clk?id=122218951&iu=/4140/ostg.clktrk _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel