Upokorzenie smakuje tak samo w ustach każdego człowieka.
78 pokrywaj¹ uk³ady wy³¹czone z ruchu. Procesory AP uaktywniane s¹ dopiero w momencie zakoñczenia czynnoœci wstêpnych zwi¹zanych z rozruchem. Do momentu za³adowania systemu operacyjnego i przekazania mu sterowania, uk³ad stanowi maszynê jednoprocesorow¹ dobrze znan¹ z architektury komputera PC/AT. Z punktu widzenia kontrolerów APIC, uk³ad przechodzi do trybu pracy zwanego PIC-Mode. Przerwania omijaj¹ elementy APIC i kierowane s¹ bezpoœrednio do obs³ugi przez procesor BSP. Wymuszenie tego trybu odbywa siê za poœrednictwem bitu bO rejestru IMCR. Dostêp do niego mo¿liwy jest poprzez dwa porty I/O: 0x22 (adres) i 0x23 (sterowanie): mov al , 0x70 ; out 0x22 , al ; selekcja IMCR mov al , 0x00 ; out 0x23 , al ; wymuszenie trybu PIC Przejœcie do pracy symetrycznej Za³adowanie systemu operacyjnego koñczy fazê przygotowawcz¹ i pozwala na przejœcie do wykonywania aplikacji w trybie wieloprocesorowym. Tym razem dezaktywowany zostaje kontroler 8259A. Jego linie wejœciowe zostaj¹ albo zamaskowane albo zmuszone do pracy równoleg³ej z uk³adem I/O APIC. Skierowanie Ÿróde³ przerwañ do uk³adów I/O APIC oraz odblokowanie procesorów AP uzyskuje siê poprzez ustawienie bO w rejestrze steruj¹cym IMCR: mov al , 0x70 ; out 0x22 , al ; selekcja IMCR mov al , 0x01; out 0x23 , al ; wymuszenie trybu symetrycznego System Dual-Pentium PCI Specyfikacja MP predeflniuje kilka dwuprocesorowych konfiguracji sprzêtowych. Z szerokiego grona mniej lub bardziej egzotycznych zestawów, na dok³adniejsze omówienie zas³uguje model maszyny z magistral¹ PCI bazuj¹cej na dwóch procesorach typu Pentium wyposa¿onych w kontrolery Local-APIC (rysunek 1.80). ¯aden z procesorów nie jest w jakikolwiek sposób wyró¿niony. Obydwa musz¹ byæ jednakowego typu (albo z serii ze scalonym Local-APIC albo MMX) i dostosowane do taktowania tym samym zegarem. Jedyny stan asymetrii pojawia siê w momencie aktywowania linii INIT (reset systemu). Wtedy to procesor AP przechodzi w stan zawieszenia HALT i pozostaje w tym trybie a¿ do otrzymania od systemu operacyjnego polecenia STARTUP IPI. Kontroler APIC I/O posiada 16 linii wejœciowych, które przyporz¹dkowane zostaj¹ nastêpuj¹cym Ÿród³om sygna³ów przerwañ: Wejœcie APICI/O; Sygna³; Komentarz; INTINO; PIÆ 8259A; Wyjœcie INTR uk³adu Master 8259A INTIN1; IRQ1; Sygna³ przepe³nienia bufora klawiatury INTIN2; IRQO; Programowany timer 8254 INTIN3; IRQ3; INTIN4; IRQ4; INTIN5; IRQ5; INTIN6; IRQ6; INTIN7; IRQ7; INTIN8; IRQ8; Zegar czasu rzeczywistego; INTIN9; IRQ9; INTIN10; IRQ10; INTIN11; IRQ11; INTIN12; IRQ12; INTIN13; IRQ13; Przerwanie od koprocesora arytmet.; INTIN14; IRQ14; INTIN15; IRQ15; Nap³ywaj¹ce z magistrali PCI przerwania zewnêtrzne wp³ywaj¹ do jednego z czterech kana³ów wejœciowych: INTA, INTB, INTC i INTD. Specjalny uk³ad programowanego routera pozwala na przypisanie kana³om PCI odpowiednich linii IRQ. Uk³ady APIC-Local wyposa¿one s¹ w dwa wejœcia, które w omawianej w³aœnie konfiguracji wykorzystuje siê w nastêpuj¹cy sposób: Wejœcie APIC-Local; Sygna³; Komentarz LINTINO; PIÆ 8259A; Wyjœcie INTR uk³adu Master 8259A LINTIN1; NMI; Przerwanie niemaskowalne Sprzêtowe skojarzenie sygna³ów INTR i NMI do po³¹czonych równolegle wejœæ uk³adów APIC-Local pozwala na bardzo elastyczne sterowanie. Dziêki niemu system operacyjny mo¿e decydowaæ w trakcie pracy (maskuj¹c wybrane linie LINTINx), który z procesorów przejmie obs³ugê danego przerwania. Tabela konfiguracji M P System operacyjny musi mieæ dostêp do informacji okreœlaj¹cych konfiguracjê uk³adu wieloprocesorowego. Zgodnie ze specyfikacj¹ MP niezbêdne dane zebrane s¹ w tabeli zwanej tablic¹ konfiguracji (MP Configuration Table)