Linux a 64 bitů

Michal Ludvig	<mludvig@suse.cz>

Vojtěch Pavlík	<vojtech@suse.cz>

SUSE Labs

02.04.04

64 čeho?

„bitovost“ procesoru je určena velikostí jeho registrů (GPR – general purpose register)

běžně používané architektury tyto registry používají jak na výpočty, tak na adresování paměti

typické PC má 32-bitový procesor třídy x86. Může tedy adresovat 232 bajtů paměti (4GB) a jednoduše počítat s nejvýše 32 bitovými čísly

K čemu 64 bitů?

64-bitový procesor umožňuje adresovat více paměti.

64-bitové registry umožňují rychlejší práci s 64-bitovými čísly.

64-bitové procesory přinášejí obvykle další výhody, například více registrů.

64-bitový režim není zpětně kompatibilní se 32-bitovými aplikacemi, takže mohou se napravit chyby v designu předchozích generací.

A co ztratíme?

Něco málo peněz – nové 64-bitové procesory jsou nové a tudíž dražší.

Nějakou paměť – 64-bitová čísla a pointery potřebují dvakrát tolik místa v paměti.

A který tedy?

IBM nabízí S390x. Ale tu si hned tak někdo dovolit nemůže.

Intel vám bude chtít vnutit Itanium.

Apple kontruje s PowerMac G5 s procesorem PowerPC64

Když vynecháme mrtvoly Alpha, SPARC64 a PA-RISC

A vysmějeme se EM64T

Nakonec koupíme AMD64 – Opteron nebo Athlon64

A co na tom poběží?

Na AMD64? Můžeme si vybrat:

Třeba starý dobrý 16-bitový MS-DOS – poběží úžasně rychle

Nebo libovolný 32-bitový OS, poběží taky úžasně rychle

Na Windows XP 64 si budeme muset ještě tak 64 let počkat

Takže Linux. Samozřejmě od SUSE.

Linux na AMD64

64-bitové jádro dovoluje libovolně kombinovat 32-bitové
a 64-bitové programy.

Například není problémem spustit 32-bitovou Mozillu
na 64-bitovém X-serveru.

Naprostá většina programů v SUSE Linuxu je zkompilovaná 64-bitově, takže mohou využít výhody, které to přináší

Architektura AMD64

Rozdíly oproti "běžným" procesorům řady x86

Nové instrukce, širší registry, větší počet registrů.

Long mode - nový operační mód ve kterém běží 64b procesy

Architektura AMD64

Integrovaný North Bridge => Memory Controller přímo v procesoru:

umí adresovat zároveň L1, L2 i hlavní paměť.

mnohem lepší škálovatelnost.

IOMMU - umožňuje 32b PCI kartám přístup do celého 64b adresního prostoru.

HyperTransport - velmi rychlá sběrnice, mj. nahrazuje FSB.

Jak vlastně vypadá?

V každé slideshow musí být obrázek chipu ...

Socket 940, 9-layer 130nm SOI, 160 mm2

Low-K SiCOH dielectric

AMD64 má první klon

Intel zjistil, že architektura AMD64 (známá též jako x86-64 nebo Hammer) má úspěch, takže přišel s vlastní verzí nazvanou IA32e.

Za pár dní bylo IA32e přejmenováno na stejně nesmyslné EM64T.

Jako většina klonů, ani EM64T nedosahuje kvalit originálu.

Proč si nekoupit EM64T

Má mírně odlišnou instrukční sadu (místo AMD 3Dnow! používá SSE3).

Neintegruje Memory Controller, takže v SMP systémech se procesory perou o paměť.

Nemá IOMMU (zatím ani externí), takže práce 32b PCI karet může být dokonce pomalejší než se 32b procesory.

Nemá HyperTransport ani podobnou vysokorychlostní sběrnici, jen FSB připojující North Bridge.

64 bitů v SUSE

Vývojáři SUSE portovali Linux na AMD64 a dodnes a AMD úzce spolupracují.

Kromě AMD64 (vč. EM64T) SUSE ve svých Linuxech podporuje PowerPC64, IA64 a S/390x a samozřejmě celou paletu 32b procesorů.

Linux a 64 bitů

Linux AMD64 EM64T PowerPC AMD Intel IBM SUSE

Vojtech Pavlik

2004-03-24T13:20:32

Michal Ludvig