Nowe posty

xx Problem ze sterownikami. (5)
2024-04-13, 21:25:16
xx Instalacja xfce4 (2)
2024-04-13, 16:20:17
xx Serie kompilacji bez instalacji dla “emerge” w Gentoo (2)
2024-04-08, 18:40:04
xx Plasma 6 w Neonie ssie trochę mniej ... (17)
2024-04-05, 10:03:46
xx Problem z Linux Lite po instalacji (3)
2024-04-03, 14:23:40
xx Jak właczyć num locka przy starcie systemu debian 12? (12)
2024-04-02, 17:43:54
xx Brak dźwieku w systemie. (5)
2024-04-02, 16:13:41
xx Dystrybucja pod HP Omen (7)
2024-03-29, 11:33:05
xx [Poradnik] Wyszukiwanie Sterowników (2)
2024-03-27, 21:08:23
xx Ile pingwinów? (1)
2024-03-27, 08:59:24

Autor Wątek: Jaka różnica między 32 bit a 64 bit w linuksie?  (Przeczytany 8575 razy)

duzy_tom

  • Gość
Jaka różnica między 32 bit a 64 bit w linuksie?
« dnia: 2013-04-27, 08:23:41 »
Witam

Mam obecnie zainstalowany ubuntu 32 bit. Jak jest różnica w działaniu między 32 bit a 64 bit? Czy w szybkości? Jest sens instalować ubuntu 64 bit? Mam procek Core i5 2.80 ghz. Of course 64 bit.

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2765
  • 1709
    • Zobacz profil
Jaka różnica między 32 bit a 64 bit w linuksie?
« Odpowiedź #1 dnia: 2013-04-27, 12:10:22 »
Jest różnica :

- w szybkości , nie zawsze ,  ale zazwyczaj  jest różnica w szybkości .
Im bardziej obciążony procesor tym większa różnica.
[usunięto fragment]
Czemu nie które programy działają tak samo?
To zależy od programów, czy dany program można podzielić na kilka procesów
(np. działanie na liczbie pi zawsze obciąży tylko 1 rdzeń) oraz liczy się czy dany program został skompilowany na więcej niż 1 rdzeń/procesów/wątków (make -j).
( Dla systemu 64 bit zazwyczaj większość programów jest specjalnie kompilowana,
aby miały możliwość użycia wiecej niz 1 rdzeń, więc tym nie musisz się martwić)

- 64 bit obsługuje powyżej 4 GB bez zadnych obejść np. zastosowanych w kernelach PAE

____
Sprostowanie ,
Cytuj
W 64 bit procesy są dzielone na ilość rdzeni dzięki czemu w danej chwili może wykonywać tyle procesów na raz ile rdzeni posiada procesor.
-Tak jak niżej koledzy piszą, systemy 32 również potrafią obsługiwać wiele rdzeni
Przeopraszam za wprowaniedze w błąd.
Warto rwniez poczytać tez ( odnosi się do pamięci )
http://pl.wikipedia.org/wiki/X86_64
Cytuj
1 rdzeń/procesów/wątków (make -j)
-to takie moje ogólnikowe wyjaśnienie, przypuszczam, że make -j dzieli zadania na rdzenie
( i zakładam że jobs, zadania i wątki to to samo )
Po za tematem, różnica między rdzeniem procesora jedno-wątkowym , ale wielo-wątkowym
http://elektronikab2b.pl/images/stories/43578:tech_multicore_rys1.jpg
http://www.0-komp.pl/procesor-ilosc-rdzenie-watki/
PS: Brak polskiej czcionki, nie jest to brak lenistwa, a jej brak w systemie i brak czasu na reczne poprawki.

duzy_tom

  • Gość
Jaka różnica między 32 bit a 64 bit w linuksie?
« Odpowiedź #2 dnia: 2013-04-27, 12:57:35 »
Ale czy mam rozumieć że linux 32 bit obsługuje tylko 1 rdzeń? A 64 bit więcej? Ja mam procek core i5 2.80 ghz który ma 4 rdzenie.

piotrektt

  • Gość
Jaka różnica między 32 bit a 64 bit w linuksie?
« Odpowiedź #3 dnia: 2013-04-27, 14:31:41 »
pewnie że 32 pokaże, że obsługuje 4 rdzenie ale to może być tak jak u mnie. Na 32 bitach mialem 4 rdzenie a potem jak przelaczylem sie na system 64bity okazalo sie ze 1 rdzen jest uszkodzony i system nawet sie nie uruchamial (musialem w biosie znalezc wadliwy rdzen i go wylaczyc)
64bity zostaly stworzone wlasnie po to zeby obslugiwac wiele rdzeni, duze ilosci pamieci... dorze to widac jak zaczniesz bawic sie w wirtualizacje maszyn. 32bity w tym srodowisku w zasadzie nie istnieja.
Tak jak kolega napisał jeśli masz powyżej 4GB ram - to nawet nie masz co sie zastanawiać. 64bit only. Jeśli mniej to można przemyśleć.

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3056
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Jaka różnica między 32 bit a 64 bit w linuksie?
« Odpowiedź #4 dnia: 2013-04-27, 16:13:44 »
1. "Bitowość" systemu nie ma nic wspólnego z liczbą obsługiwanych rdzeni. W każdym razie dla komputerów mających mniej niż 512 procesorów :p .

2. Procesor w trybie 64-bitowym ma do dyspozycji dwa razy więcej dwa razy dłuższych rejestrów. Ma to znaczenie w aplikacjach obliczeniowych - kompilatory mogą dzięki temu lepiej optymalizować kod wynikowy.

3. W systemie 32-bitowym segment pamięci ma max. 4GB. Ogranicza to rozmiar pamięci dla pojedynczego procesu. Dzięki technologii PAE w procesorze cały system może zobaczyć do 64GB, ale pojedynczy program tylko 4GB (Windows generalnie olewa PAE, dlatego system WIN32 widzi max tylko ~3,5%GB.) W trybie 64-bitowym nie ma rozsądnego górnego limitu.
Dostęp do tak dużych obszarów pamięci przez jeden proces jest rzadko potrzebne zwykłemu userowi - to jet domena programów obliczeniowych (zwłaszcza MPP) i baz danych.

4. Ze względu na więcej dłuższych rejestrów adresowych system 64-bitowy powoduje większe ciśnienie na pamięć - a zwłaszcza na stos - w czasie pracy. Dlatego powstała hybryda nazywana x32. Tam adresowanie jest 32bitowe, więc nie stresuje tak pamięci, pozostawiając pozostałe zalety systemów 64-bitowych. Technologia w fazie eksperymentu, ale jest już eksperymentalne Gentoo kompilowane w ten sposób. Benchmarki pokazują - OIDP - że x32 jest o ~10% szybszy od x64 (dzięki "odpuszczeniu" pamięci) i o 15-20%  od tradycyjnego x86 (dzięki nowym rejestrom).


TL;DR
Zwykłemu użytkownikowi nie robi różnicy
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

piotrektt

  • Gość
Jaka różnica między 32 bit a 64 bit w linuksie?
« Odpowiedź #5 dnia: 2013-04-27, 18:04:50 »
Cytat: pkraszewski
1. "Bitowość" systemu nie ma nic wspólnego z liczbą obsługiwanych rdzeni. W każdym razie dla komputerów mających mniej niż 512 procesorów :p .
Jest to prawda, ale podany przykład (z walniętym 1 rdzeniem) ilustruje zależność między "bitowością" a rdzeniami. Więc sama ilość może nie znaczy tak wiele jak sposób jej obsługi. A więc coś jednak ma wspólnego :)

Offline mateo86

  • Users
  • Guru
  • *****
  • Wiadomości: 647
    • Zobacz profil
Jaka różnica między 32 bit a 64 bit w linuksie?
« Odpowiedź #6 dnia: 2013-04-28, 01:01:21 »
Cytat: piotrektt
Cytat: pkraszewski
1. "Bitowość" systemu nie ma nic wspólnego z liczbą obsługiwanych rdzeni. W każdym razie dla komputerów mających mniej niż 512 procesorów :p .
Jest to prawda, ale podany przykład (z walniętym 1 rdzeniem) ilustruje zależność między "bitowością" a rdzeniami. Więc sama ilość może nie znaczy tak wiele jak sposób jej obsługi. A więc coś jednak ma wspólnego :)
Guzik prawda. Czy 32 bity, czy 64 ilość rdzeni i sposób ich obsługi na nowoczesnym procesorze jest taka sama. Architektura amd64/EM64T rozszerza tylko rejestry, pozwalając na przechowywanie dłuższych adresów do pamięci. Tak jak pkraszewski napisał.

To że u Ciebie nie działa któryś rdzeń w 64 bitach, prawdopodobnie spowodowane jest tym, że masz uszkodzone te rozszerzone rejestry, a nie że ilość rdzeni na procesorze jest zależna od ilości bitów.

Będę zgadywał - Masz u siebie procesor, który był zrobiony jako czterordzeniowy (bądź trzyrdzeniowy), ale jako że jeden był uszkodzony, to producent go fabrycznie zablokował. Pozostały Ci 3 (lub 2) rdzenie. Znalazłeś w internecie, że można ten 4 odblokować - więc odblokowałeś. Dopóki Twoim systemem był windows XP, wszystko było ok, bo XP w zatrważającej większości kopii był 32 bitowy. Pewnego dnia zapragnąłeś zainstalować system nowszy, w każdym razie 64 bitowy i pojawiły się schody. Zablokowałeś rdzeń, który wcześniej był przez Ciebie odblokowany, i nagle wszystko zaczęło działać. Nie przyszło Ci do głowy, że producent z jakiegoś dość istotnego powodu go zablokował, a nie tylko że miał taki kaprys, żebyś pomyślał, że ilość bitów ma wpływ na ilość rdzeni?

piotrektt

  • Gość
Jaka różnica między 32 bit a 64 bit w linuksie?
« Odpowiedź #7 dnia: 2013-04-28, 12:19:58 »
Cytat: mateo86
Cytat: piotrektt
Cytat: pkraszewski
1. "Bitowość" systemu nie ma nic wspólnego z liczbą obsługiwanych rdzeni. W każdym razie dla komputerów mających mniej niż 512 procesorów :p .
Jest to prawda, ale podany przykład (z walniętym 1 rdzeniem) ilustruje zależność między "bitowością" a rdzeniami. Więc sama ilość może nie znaczy tak wiele jak sposób jej obsługi. A więc coś jednak ma wspólnego :)
Guzik prawda. Czy 32 bity, czy 64 ilość rdzeni i sposób ich obsługi na nowoczesnym procesorze jest taka sama. Architektura amd64/EM64T rozszerza tylko rejestry, pozwalając na przechowywanie dłuższych adresów do pamięci. Tak jak pkraszewski napisał.
Rzeczywiście rozszerzenie rejestrów pamięci nie jest dużą różnicą w obsłudze. Pomyliłem się.