Odpowiedzi:
Ale co to właściwie znaczy?
Oznacza to liczbę bitów używanych do adresowania w pamięci.
Pamięć składa się z ogromnej liczby bajtów. Każdy bajt ma unikalny adres. Pamięć można traktować jako ulicę z domami, gdzie dom reprezentuje bajt *, a numer domu to adres. Teraz wyobraź sobie, że ktoś decyduje, że numery domów powinny zawsze mieć 3 cyfry. Oznacza to, że najniższa liczba domów wynosi 000, a najwyższa 999. Jest to proste i łatwe, ale oznacza to, że nie można mieć więcej niż 1000 domów, po prostu brakuje numerów domów.
To samo dotyczy twojej pamięci: x Bity to liczba cyfr, które adresujesz. Jedyną różnicą jest to, że liczby są binarne. 32-bitowy system operacyjny używa liczb binarnych o dokładnie 32 cyfrach (cyfra binarna = trochę).
Zatem w systemie 32-bitowym możesz mieć 2 ^ 32 możliwych adresów, co stanowi około 4 miliardy. 4 miliardy bajtów to 4 GB. Jeśli twoja pamięć ma więcej niż 4 GB miejsca, co oznacza, że możesz użyć tylko 4 GB dostępnej pamięci, ponieważ po prostu nie masz adresów dla pozostałej części pamięci.
Obecnie stało się normalne posiadanie ponad 4 GB pamięci RAM i oczywiście chcemy korzystać z tej pamięci. W tym przypadku potrzebne jest rozwiązanie, a najprostszą rzeczą, jaką możemy zrobić **, jest zwiększenie przestrzeni adresowej. Podczas gdy jakakolwiek wyższa liczba bitów byłaby wystarczająca, zazwyczaj po prostu podwoilibyśmy liczbę bitów z 32 do 64. Mamy więc adresy dla 2 ^ 64 bajtów, czyli 16 * 2 ^ 60 bajtów lub 16 eksabajtów.
Zauważ, że marketingowcy czasami próbują przekonać nas, że 64-bitowe systemy operacyjne / procesory są w jakiś sposób szybsze niż 32-bitowe odpowiedniki. Nie jest to jednak prawda ***. Faktycznie zwiększenie rozmiaru adresu spowalnia działanie, ponieważ im większa liczba, tym więcej czasu i obliczeń zajmuje się obliczaniem adresów. Korzystanie z 64-bitowego procesora / systemu operacyjnego jest całkowicie bezcelowe, jeśli pamięć jest wystarczająco mała, aby można było w pełni zaadresować ją za pomocą 32-bitowego.
Jaki jest najniższy bit OS i najwyższy bit OS?
Nie ma limitu bitów, których możesz użyć. „Jeden bit systemu operacyjnego” nie ma sensu, ponieważ oznaczałoby to, że komputer nie może mieć więcej niż 2 bajty pamięci. Myślę, że zejście systemów operacyjnych zaczyna się od 8 bitów. 32-bitowy jest najbardziej powszechny, chociaż 64-bitowy znacznie rośnie i ostatecznie zastąpi 32-bitowy. Słyszałem o niektórych komputerach mainframe, które mają 128 bitów, ale nie wydaje mi się, aby istniało coś wyższego, ponieważ 128bit daje już niewyobrażalną dużą liczbę adresów ;-).
* Nie musi to być jeden adres na bajt. Jest to najbardziej powszechna jednostka w dzisiejszej architekturze, ale teoretycznie moglibyśmy również wybrać pojedynczy bit lub wiele bajtów. Na przykład. Wirtualna maszyna Java adresuje czasami w wielokrotności 4 bajty wewnętrznie. Jednak aby móc to wykorzystać, potrzebujesz wsparcia zarówno procesora, jak i systemu operacyjnego.
** Oczywiście są też inne możliwości. Na przykład. istnieje PAE (rozszerzenia adresów fizycznych). To rozwiązanie dzieli pamięć na mniejsze segmenty, w których każdy segment ma nie więcej niż 4 GB. Dzięki PAE możesz adresować do 64 GB. To było powszechnie używane na serwerach, które miały więcej niż 4 GB pamięci RAM, zanim 64-bitowe procesory stały się powszechne.
*** Cóż, nowe 64-bitowe procesory oczywiście są szybsze niż stare 32-bitowe procesory. Ale nie dlatego, że są 64-bitowe, po prostu dlatego, że procesory ewoluowały ogólnie. Gdybyśmy zbudowali nowy 32-bitowy procesor ze wszystkim, czego dowiedzieliśmy się w międzyczasie, byłby szybszy niż dzisiejszy 64-bitowy procesor.
„Bity” procesora mogą w rzeczywistości oznaczać wiele rzeczy; Wewnątrz i na zewnątrz procesora jest sporo rzeczy, które są ograniczone liczbą bitów. Jednak w przypadku procesorów x86 są następujące różnice:
Jeśli chodzi o kompatybilne z PC procesory Intel, najniższym bitowym systemem operacyjnym są 16-bitowe systemy operacyjne, takie jak DOS, CP / M-86, Xenix i Windows 3.x. Intel wyprodukował kilka 8-bitowych układów (8008, 8080), które działały w wariancie CP / M, jeśli się nie mylę, i oczywiście jest stary 4004, który jest 4-bitowym układem, ale nigdy nie działał na żadnym OS. W tej chwili nikt nie produkuje 128-bitowego układu zgodnego z architekturą x86 lub wyższego.