Ponownie stanąłem przed dylematem wyboru pomiędzy systemem 32-bitowym a 64-bitowym. Wszystko za sprawą rozszerzenia pamięci z rozmiaru 3GB do 4GB. Na początku wybór wydawał się oczywisty - przynajmniej do czasu, kiedy potrzebowałem uruchomić kilka programów 32-bitowych. Na szczęście jest klika rozwiązań pozwalających na taką operację.
Multilib - miksujemy i mieszamy
Posiadając 64-bitowy system, rozwiązaniem jest dosłowne wymieszanie architektury 32 i 64-bitowej. W zależności od dystrybucji czynność ta jest mniej lub bardziej skomplikowana. W przypadku dystrybucji Slackware sprawa nie jest taka "hop siup". Znalazłem nawet gotowe repozytorium Aliena, ale biorąc pod uwagę dość mocną ingerencję w kluczowe elementy systemu, odrzuciłem to rozwiązanie już na samym wstępie.
Szczerze mówiąc, nie jestem do końca przekonany do zalet takiej hybrydy w której można łatwo popełnić błąd podczas doinstalowania kolejnych pakietów wymaganych dla programów 32-bitowych. Taka pomyłka może być opłakana w skutkach, na którą po prostu nie mogę sobie pozwolić w życiu codziennym. Problematyczne jest również uruchamianie programów za pomocą dodatkowych skryptów.
Chrootowane środowisko 32-bitowe
Drugim rozwiązaniem jest stworzenie sobie chrootowanej kopii 32-bitowego systemu. Ten sposób jest w miarę bezpieczny, skutecznie separując od siebie obie wersje systemu. O katastrofę jest tutaj trudniej, jednak wadą jest tutaj duży rozmiar 32-bitowego "dodatku". Można powiedzieć, że w czasach kiedy dyski sięgają pojemności rzędu terabajtów, nie jest to problemem. Narzuca to niestety pewną konieczność dbania o dwa systemy jednocześnie pod kątem zarówno aktualizacji jak i prawidłowego jego działania. Ale o tym może innym razem.
PAE
Przypomniałem sobie o PAE (Physical Address Extension) - rozszerzeniu, które umożliwia procesorem z rodziny x86 na dostęp do pomięci fizycznej o rozmiarze większym niż 4GB. W teorii rozszerzenie jest przydatne, kiedy mamy więcej niż 4GB RAM-u. Tak jednak nie jest - dla systemu operacyjnego bez obsługi PAE pozostaje tylko 3GB z hakiem. Zdarzają się również i takie sytuacje w których PAE nie przyniesie żadnego efektu - na przykład z winy barku obsługi po stronie sprzętowej (płyta główna). Reasumując PAE pozwala na zaadresowanie 2^36 (64GB) pamięci w systemach 32-bitowych. Oczywiście PAE ma swoje wady. Pomimo możliwości zaadresowania 64GB pamięci, pojedyncza aplikacja i tak będzie mogła skorzystać z ciągłego obszaru 4GB. Nie zmienia to jednak faktu, że sumarycznie uruchomione aplikacje mogą tą barierę przekroczyć.
Obsługa PAE jest domyślnie włączona w większości dystrybucji. Zdarzają się jednak i takie sytuacje w których musimy przekompilować jądro z jego obsługą.
64 bity nie takie cudowne...
Zacząłem się więc zastanawiać, czy warto pchać się w 64 bity. Nie dość, że korzyści wydajnościowe są prawie żadne, to 64-bitowa wersja systemu pożerała około 30% więcej pamięci. Dla porównania XFCE 4 z uruchomionym Eclipse w 32 bitach zajęłą 728MB pamięci, a odpowiedni tandem w 64 bitach aż 955MB.
Dochodzę do wniosku, że tak naprawdę 64 bity nie są mi obecnie do niczego potrzebne - przynajmniej do momentu, gdy oprogramowanie 32-bitowe odejdzie w niepamięć i na stacji roboczej będę miał 16GB oraz aplikacje wymagające dostępu do dużych jej obszarów.
Skomentuj
Polski typograficzny układ klawiatury
tron / 06 lut 2012 / 12:53
około 2 godzin temu.
Ja dla swoich prywatnych celów chcę zrobić układ, w którym "sz", "cz", "rz" będą miały daszki, podobnie jak w języku ...