Jakie są konsekwencje, jeśli korzystamy z 32-bitowego pliku binarnego na maszynie 64-bitowej. Czy będzie to miało jakikolwiek wpływ, jeśli komputer ma więcej niż 4 GB pamięci RAM (pamięć RAM w systemie jest 8 GB)?uruchamianie 32-bitowego pliku binarnego na maszynie 64-bitowej
Odpowiedz
przy uruchamianiu programów 32-bitowych na maszynach 64-bitowych (zakładając, że system operacyjny pracuje w trybie 64-bitowym), masz następujące ograniczenia:
- binarny nie mogą skorzystać z instrukcji 64bit arytmetycznych. Może to zmniejszyć wydajność.
- Plik binarny nie może adresować więcej niż 4 GB pamięci wirtualnej.
Jednak te 4 GB mogą znajdować się w dowolnym miejscu wewnątrz 8 GB pamięci RAM. Jeśli więc używasz wielu aplikacji 32-bitowych, z których każda używa mniej niż 4 GB, możesz wykorzystać wszystkie swoje 8 GB pamięci RAM.
Należy pamiętać, że z powodu różnych ograniczeń aplikacja może jedynie przydzielić 2 GB pamięci wirtualnej.
Punkt nr. 1 (binarny nie może skorzystać z 64-bitowych instrukcji arytmetycznych) jest fałszywy dla co najmniej dwóch platform. (sparcv9-linux/solaris i [x32 - * - linux] (http://en.wikipedia.org/wiki/X32_ABI)) –
Na x64 32-bitowe pliki binarne nie mają dostępu do 32 górnych bitów [rejestrów ogólnego przeznaczenia] (http://en.wikipedia.org/wiki/X64#Operating_modes). Dlatego przy dodawaniu dwóch liczb 64-bitowych 32-bitowy plik binarny musiałby wydać dwie instrukcje zamiast jednej. @ jørgensen – user1202136
x86-64 dodaje o wiele więcej rzeczy: więcej rejestrów, adresowanie PIC, bezpieczniejszy ABI z wykorzystaniem rejestrów dla wywołań funkcji, co zwykle skutkuje poprawą wydajności, która kompensuje znaczną kompensację spadku wydajności wynikającego z zastosowania większych (bardziej nieprzyjaznych pamięci podręcznej) typy. W innych platformach (sparc64 vs sparc? Mips64 vs mips?) Przejście z 32-bit do 64-bit może faktycznie zmniejszyć wydajność. – ninjalj
- 1. Uruchamianie JIRA na maszynie wirtualnej
- 2. Uruchamianie pliku binarnego bez skryptu najwyższego poziomu w SLURM
- 3. Przesyłanie pliku binarnego na Node.js
- 4. Pobieranie pliku binarnego
- 5. Generowanie losowego pliku binarnego
- 6. Uruchamianie 32-bitowego pliku dll na maszynie 64-bitowej w java
- 7. Lepszy sposób na pobranie pliku binarnego?
- 8. Napisz na środku istniejącego pliku binarnego C++
- 9. Deserializacja części pliku binarnego
- 10. Pisanie i uruchamianie aplikacji node.js w maszynie do pisania
- 11. Numer referencyjny układu pliku binarnego
- 12. Wysyłanie pliku binarnego w Tornado
- 13. Czytanie pliku binarnego z pythonem
- 14. MSBuild.Community.Tasks.Attrib na maszynie x64 zawodzi
- 15. Uruchamianie pliku .jar na stronie JSP
- 16. Uruchamianie uniwersalnego pliku binarnego systemu OS X w trybie 32-bitowym
- 17. Polecenie PowerShell do kopiowania pliku na zdalnej maszynie
- 18. Czytanie i pisanie na środku pliku binarnego w C/C++
- 19. Najszybszy sposób na odczytanie ogromnej ilości int z pliku binarnego
- 20. Instalowanie wstępnie skompilowanego pliku binarnego na systemie Android: "nie znaleziono"
- 21. Jak przekonwertować z pliku binarnego na relokatowany obiekt z powrotem?
- 22. Lua: zapisywanie wartości heksadecymalnych jako pliku binarnego
- 23. Parsowanie pliku binarnego w języku Ruby
- 24. Kodowanie :: UndefinedConversionError podczas zapisu pliku binarnego
- 25. Jak zastąpić niektóre bajty pliku binarnego dd?
- 26. Jak dołączyć dane do pliku binarnego?
- 27. Buforowanie pliku binarnego w języku C#
- 28. Zmniejszenie wydajności zapisu dużego pliku binarnego
- 29. Odczyt i kodowanie base64 pliku binarnego
- 30. FlatBuffers: Zapis i odczyt z pliku binarnego?
Czy odpowiedź "Nie" byłaby wystarczająca? – Mehrdad
Jeśli przez uderzenie masz na myśli pozytywny wpływ, to w pewnym sensie: więcej pamięci RAM oznacza więcej pamięci podręcznej dysku ... – dbrank0