64bitowe procesory - jak to w końcu jest na prawdę?

Ostatnio czytam test Core i7 na egieldzie i trafiam na rozdział dotyczący 64bitów. Najpierw dziwi mnie fakt niewiedzy redaktora(ów), a następnie czytam: “procesory Intela oferują prawdziwe wsparcie dla środowiska 64-bit, a nie jak wielu sugeruje, że jest to tylko wirtualna implementacja” i ciągle wzmianki o 64bitowym słowie.

Na stronie Intela, ani AMD nie sposób znaleźć zdania, że obecne procesory korzystają z innych bloków (słów), niż 32bity, mowa jest tylko o dodatkowych rejestrach, wsparcia dla pamięci etc. (http://www.intel.com/technology/intel64/ , http://www.amd.com/us-en/Processors/Pro … 93,00.html - przepraszam, że po angielsku, ale tłumaczenie dla osób nieznających tego języka będzie bezcelowe)

Jednym z niewielu procesorów prawdziwie 64bitowych od Intel’a były procesory Itanium IA-64 (co prawda niewypał, ale jednak).

Dla mnie jest to ewidentna nieznajomość procesorów przez redaktora(ów) egieldy, ale w związku z tym, że sam nie projektowałem tych procesorów, to wolę się upewnić co do swoich racji.

Kto potwierdza moje zdanie, a kto zaprzeczy (tylko oficjalnymi źródłami, bo widać nawet egielda jest chyba w sprzeczności ze stronami Intel’a, ale mogę się mylić).

A więc tak:

Itanium (pierwsza wersja) jest procesorem w pełni 64 bitowym, lecz nie zgodnym z architekturą x86. Aplikacje 32 bitowe były na nim emulowane i działały bardzo, bardzo wolno. Vista 64 nie uruchomi się na Itanium, To samo tyczy się WindowsXP Pro 64. Jedynym “domowym” systemem operacyjnym, który zadziała na Itanium jest pierwsza wersja WindowsXP 64.

Kolejne wersje Itanium były już zgodne z x86.

Athlon, Phenom jest w pełni 64 bitowym procesorem zgodnym z architekturą x86. Po prostu zwiększono szerokość rejestrów z 32 bitów do 64.

Procesory Intela (Core2 Duo, Quad, i7) są 64 bitowe w takim samym stopniu co układy AMD. Po prostu obie firmy co dwa lata wymieniają się technologiami (vide SSE, AMD64 itp.)

Obecne układy 64 bitowe mają co prawda małe ograniczenie, lecz jest ono póki co marginalne. Otóż nie potrafią zaadresować 64 bitów pamięci, tylko 40 (48 PAE). Co i tak daje astronomiczną ilość możliwej do obsłużenia pamięci fizycznej (nie pamiętam już ile, ale w setkach gigabajtów). Wynika to z potrzeby uproszczenia budowy układu (szczególnie ilości wyprowadzonych pinów).

x86 to architektura CPU. Określenie to nie oznacza, że procesor jest 32, czy 64 bitowy. Wiele osób myli te pojęcia. Np. pierwszy pentium posiada architekturę x86, tak samo jak Core i7/Phenom.

“Athlon, Phenom jest w pełni 64 bitowym” czyli przesyła “słowa” o długości 64bit? Jakiś dowód na stronie AMD? Rejestry to nie słowo…

Z tą wymianą to doskonale wiem.

Ktoś może się jeszcze orientuje?

Dodane 12.01.2009 (Pn) 20:55

Przykładowo procesory Intela mają EM64T czyli powtarzając za Wikipedią http://pl.wikipedia.org/wiki/EM64T “Extended Memory 64-bit Technology Są to nałożone na architekturę x86 [czyli 32bity] dodatkowe instrukcje umożliwiające obsługę 32- i 64-bitowych aplikacji.”

Dodane 15.02.2009 (N) 22:21

“Microsoft Windows XP 64-bit Edition był wersją systemu Windows XP firmy Microsoft, zaprojektowaną dla procesorów Intel Itanium, działających w natywnym trybie 64-bitowym. Systemu tego nie należy mylić z Windows XP Professional x64 Edition, wersją przeznaczoną dla procesorów z rodziny x86 obsługujących rozkazy 64-bitowe.” http://pl.wikipedia.org/wiki/Microsoft_ … it_Edition

Rozkazy 64bitowe i przetwarzanie w blokach 32 bitowych, to co innego niż natywny tryb 64bitowy.