Nie wiem, czy używać obrazu Intel x86 czy AMD64 na moim komputerze. Mam Macbooka Air 2011 z Sandy Bridge i7 i Intel HD3000, jest jednak zdecydowanie zdolny do obsługi 64 bitów, dzięki brzmieniu w witrynie Ubuntu . Mówi się, że Intel x86 powinien być używany na prawie wszystkich komputerach, a także na nowszych komputerach Intel Mac. Skoro mam komputer Mac z procesorem Intel, czy powinienem używać obrazu Intel x86?

Pobierz

Ubuntu MATE jest obecnie dostępny dla czterech osób architektury, PC (Intel x86), 64-bitowy PC (AMD64), Mac (PowerPC) i IBM-PPC (POWER5) i Raspberry Pi 2 aarch32 (ARMv7).

PC (Intel x86) Dla prawie wszystkich komputerów. Dotyczy to większości komputerów z procesorami typu Intel / AMD / etc i prawie wszystkich komputerów z systemem Microsoft Windows, a także nowszych systemów Apple Macintosh opartych na procesorach Intel. Wybierz tę opcję, jeśli nie masz pewności.

64-bitowy komputer (AMD64) Wybierz tę opcję, aby w pełni wykorzystać możliwości komputerów opartych na architekturze AMD64 lub EM64T (np. Athlon64, Opteron, EM64T Xeon, Core 2). Jeśli masz inny niż 64-bitowy procesor wyprodukowany przez AMD lub potrzebujesz pełnej obsługi kodu 32-bitowego, użyj zamiast tego obrazów Intel x86.

Mac (PowerPC) i IBM-PPC (POWER5) Dla komputerów Apple Macintosh G3, G4 i G5, w tym iBooków i PowerBooków, a także starszych komputerów IBM OpenPower 7xx.

Komentarze

  • Jak duża jest Twoja pamięć RAM?
  • Jeśli ' re ram is > = 4GiB, potrzebujesz 64-bitowego systemu operacyjnego lub jeśli planujesz zwiększyć go do tego rozmiaru, potrzebujesz 64-bitowy system operacyjny, w przeciwnym razie wystarczy 32-bitowy system operacyjny. 32-bitowy system operacyjny zajmie trochę mniej miejsca i trochę mniej pamięci RAM w czasie wykonywania. Może działać nieco gorzej na niektórych operacjach (+ nieco lepiej na innych; charakterystyka wydajności tych dwóch jest zwykle bardzo podobna).
  • Możesz zainstalować 64-bitowy system operacyjny nawet na intel macs, nawet na Macbooku z 2007 roku.

Odpowiedź

Zdecydowanie wybierz wersję 64-bitową. Nadal możesz uruchamiać aplikacje 32-bitowe, np. Wino 32-bitowe. Jedynym minusem, jaki możesz napotkać, jest rozwój projektów, które chcesz skompilować do architektury 32-bitowej, ale w tym przypadku istnieje „dobrze działające obejście z narzędziami lxc .

Plusem jest lepsza wydajność. 64-bitowy kod musi być szybszy, a są powody:

  • Konwencja wywołania funkcji. Ogólnie 32-bitowy kod przechodzi parametry przez stos – który jest pamięcią; podczas gdy 64-bitowy kod wykorzystuje rejestry procesora do przekazywania argumentów. Nawet przypuszczalnie, że pamięć podręczna procesora zmniejszyłaby wydajność do minimum, istnieje narzut kopiowania parametrów do stosu.
  • Większy rozmiar rejestrów – rejestr CPU może teraz pomieścić dwukrotnie większą wartość.
  • Więcej numerów rejestrów – 64-bitowy kod ma dostęp do dwukrotnie większej liczby rejestrów. Oznacza to, że w przypadkach, w których 32-bitowy kod musi przechowywać wartość w pamięci, 64-bitowy kod może po prostu pozostawić ją w procesorze.

Jest pewna wada, chociaż wskaźniki mają teraz dwa razy większy rozmiar, ale wydaje mi się, że zalety są nadal silniejsze.

Komentarze

  • Isn ' t x32 zupełnie inny ABI, taki sam jak ani i386, ani amd64 / x86_64? Nie ' nie sądzę wersja Ubuntu została skompilowana dla tej architektury.
  • @Celada cóż, nie ' nie oznaczało dokładnego ABI; właściwie nie ' wiem, że istnieje ' ABI, który nazywa się dokładnie x32 ABI. Używałem go jako synonimów x32 / x64 32-bitowy / 64-bitowy . Dla jasności: istnieje wiele różnych konwencji wywołań dla kodu 32- i 64-bitowego, ale ' to tendencja do używania konwencji 32-bitowych stosu częściej niż kod 64-bitowy. Powodem jest oczywiście mniejsza liczba rejestrów. Dziękuję, ' edytuję odpowiedź w celu zastąpienia " synonimów " 😄
  • 64-bitowy kod nie jest ' t zawsze szybszy, to zależy od tego, co robi kod. x86_64 jest zwykle szybszy niż x86_32, głównie dlatego, że x86_64 ma więcej rejestrów. Ale 64-bitowy kod może być również wolniejszy, skomplikowany z kodem symbolicznym (kod, który manipuluje wieloma wskaźnikami) z powodu dodatkowego obciążenia pamięci.

Odpowiedź

x86 to wersja 32-bitowa, która powinna działać na większości sprzęcie Intel / AMD „PC” i nowszych Apple.

AMD64 to 64-bitowa wersja, która powinna działać na nowoczesnym sprzęcie Intel / AMD „PC” i nowszych Apples.

Architektura 32-bitowa ma Limit 4 GB pamięci RAM (przy niektórych chipsetach obsługujących PAE i do 64 GB pamięci RAM), podczas gdy 64-bitowy może obsłużyć ogromną ilość pamięci RAM.

Intel i7 jest zdecydowanie 64-bitowym procesorem, dlatego powinieneś rozważyć użycie architektury AMD64. Procesor x86 również będzie działał, ale możesz osiągnąć limit 4 GB pamięci RAM.

Phoronix przetestowany w testach Ubuntu 14.10 zarówno jako 32-bitowy, jak i 64- bit, a ten ostatni wypadł najlepiej w większości przypadków testowych.

Jeśli nie masz powodu, aby używać wersji 32-bitowej, wybierz wersję 64-bitową (AMD64).

Komentarze

  • AFAIK Ubuntu x32 używa PAE, więc ' ma więcej niż 4 GB adresowalnych.
  • @Hi -Anioł – dziękuję. ' odpowiednio zredagowałem.

Odpowiedź

Cóż, to nie jest „witryna Ubuntu”, prawda? To witryna „ubuntu-mate” (cokolwiek to jest – nie wiem).

cytowany tekst jest bardzo mylący i miejscami prawdopodobnie błędny. Na przykład sformułowanie „jeśli potrzebujesz pełnej obsługi kodu 32-bitowego […]” jest po prostu błędne, ponieważ Ubuntu obsługuje instalację pakietu 32-bitowego nawet w systemach 64-bitowych, więc zdecydowanie nie ma potrzeby „obniżania” do 32-bitowe tylko dlatego, że musisz zainstalować jakieś 32-bitowe oprogramowanie.

Co ważniejsze, x86 prawdopodobnie oznacza zarówno systemy 32-bitowe (i386), jak i 64-bitowe (amd64 lub x86_64), co czyni go mylącym terminologia.

Naprawdę, jeśli masz 64-bitowy procesor, to jest bardzo proste: powinieneś zainstalować wersję 64-bitową. A jeśli spróbujesz, a twój procesor nie jest w końcu 64-bitowy , dowiesz się bardzo szybko: w ogóle nie działa, nawet się nie uruchamia.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *