Re: czy warto kupić używany sprzęt?

Autor: wer <bofh_at_nano.pl>
Data: Mon 29 Oct 2007 - 08:44:37 MET
Message-ID: <fg4310$d05$1@news.supermedia.pl>
Content-Type: text/plain; charset=ISO-8859-2; format=flowed

Eneuel Leszek Ciszewski pisze:
>
>> Ale programów używam kilku jednocześnie.
>
> I tutaj mylisz się. Używasz w danej chwili jednego.

To po co są procesory dwurdzeniowe? Bo jeśli naraz korzysta się z
jednego programu to drugi rdzeń nie ma sensu. A co powiesz o procesorach
z czterema rdzeniami? A nie daj Boże maszynę z 4 procesorami 4
rdzeniowymi? Też jeden program naraz się wykonuje?

>
> I tutaj trzeba zakończyć te wywody. Od 80286 CPU wspomaga SWAPowanie.
> Sam zaś mechanizm takiej wirtualnej pamięci pochodzi z dużych komputerów
> i z lat minionych, gdy myślenie było w cenie. Ani Linuks, ani Windows tego
> nie wymyślił.

Mylisz CPU z MMU. CPU przez rejestry adresowe adresuje pamięć i nie
obchodzi go, czy jest to pamięć RAM, pamięć cache czy pamięć wirtualna.
Pamięć wirtualna musi być wspierana i przez sprzęt (MMU) i przez system
operacyjny. System operacyjny musi reagować jakoś na przerwania
generowane przez MMU, a MMU musi "oszukiwać procesor", że ma więcej
pamięci dostępnej. Drobna uwaga MMU nie musi być zawarte w procesorze,
może być zainstalowane obok niego.

Na początku pisałeś o swapie, teraz o pamięci wirtualnej. A to dwie
różne rzeczy. Swap nie musi być pamięcią wirtualną. Swapowanie pamięci
występowało np w Atari 130XE, gdzie MMU nie pozwalał adresować więcej
niż 65536 bajtów, a Atari 130XE miało tej pamięci dwa razy więcej.
Sztuczka polegała na tym, że można było przełączać przez MMU banki
pamięci. Wywalić z przestrzeni adresowej jeden bank i wpiąć inny.
Procesor miał do dyspozycji cały czas 64KB, ale pamięci RAM było więcej
(są przeróbki do wielkości ponad 1MB).
Niektóre programy miały własny swap, teraz praktycznie się tego nie
używa. Np Photoshop miał tak, że tworzył własny plik wymiany. Calamus na
Atari ST też korzystał z dysku. (MMU do 68000 nie obsługiwał pamięci
wirtualnej).

A co do samego początku. Swapowanie jest złe i takim pozostanie dopóki
czas dostępu do danych na dysku nie będzie mniejszy niż czas dostępu do
pamięci. Odczyt pamięci z dysku jest dużo wolniejszy, co jest odczuwalne
przez użytkownika. Pomijam już kwestie zużycia sprzętu. Pamięć wirtualna
jest protezą powstałą w czasach gdy pamięć RAM była cholernie droga i
optymalizowało się wszystko pod wykorzystanie pamięci łącznie z
komendamu systemowymi (mv, cp, ls). Dorobienie kolejnej nóżki adresowej
na procesorze jest tańsze niż zapewnienie całej przestrzeni adresowej
prawdziwego RAM. Przy 48 bitowej szynie adresowej możesz teoretycznie
zaadresować 281.474.976.710.656 bajtów pamięci.

Przy obecnych programach i systemach operacyjnych 512MB RAM to jest
minimum, podwyższenie tej wielkości do 1GB często zwiększa wygodę
użytkowania komputera. Chyba, że ktoś jest nałogowym kawoszem i lubi
wykorzystywać przerwy w pracy komputera na robienie sobie n-tej
filiżanki kawy. Sam proces swapowania zajmuje cykle procesora, szynę
DMA, przerwania I/O. Lepiej tego uniknąć. Napisz sobie program, który
alokuje 8GB RAM, a potem losowo zapisuje jakieś dane w tej przestrzeni
adresowej, daj go do tła. A potem włącz sobie dowolny program, np
outlooka i spróbuj poczytać newsy.

wer
Received on Mon Oct 29 08:45:11 2007

To archiwum zostało wygenerowane przez hypermail 2.1.8 : Mon 29 Oct 2007 - 08:51:34 MET