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

Autor: Eneuel Leszek Ciszewski <prosze_at_czytac.fontem.lucida.console>
Data: Mon 29 Oct 2007 - 10:37:27 MET
Message-ID: <fg49m0$p98$1@flis.man.torun.pl>
Content-Type: text/plain; charset="iso-8859-2"

"wer" fg4310$d05$1@news.supermedia.pl

> >> Ale programów używam kilku jednocześnie.

> > I tutaj mylisz się. Używasz w danej chwili jednego.

> To po co są procesory dwurdzeniowe?

Ten problem był co najmniej raz poruszony na tej grupie,
ale nikt ze speców nie poprostował obiegowej opinii
dwurdzeniowej pracy. Twoim zdaniem dwurdzeniowy procesor
naraz obrabia dwa procesy? Jeden rdzeń dla jednego procesu?

A taki klaster z tysiącem rdzeni obrabia naraz tysiąc procesów?

BTW -- przed kilkunastoma laty DEC zbudowała procesor Alpha AXP
i zapowiedziała, że zwiększy szybkość tysiąckrotnie:

 -- dziesięć razy wzrośnie częstotliwość
 -- dziesięć razy wzrośnie liczba rdzeni
 -- dziesięć razy wzrośnie coś jeszcze, ale nie pamiętam teraz co

DEC zaginęła (bo i co ją mogło spotkać po współpracy z M$)
a dziesięciordzeniowych procesorów powszechnego użycia raczej nie ma.

> Bo jeśli naraz korzysta się z jednego programu to drugi rdzeń nie ma sensu.

Może i nie ma. Ale dlaczego nie ma?

> 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?

Są maszyny z tysiącami rdzeni.

> > 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.

No, może i mylę. ;) (Ty zaś najwyraźniej już googlowałeś -- poniekąd
słusznie, ale jeszcze zacznij myśleć)

> 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.

Z tym się zgadzam. (może nie do końca zgadzam, ale od biedy może być)
Musi być wspierana i przez sprzęt, i przez sam 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.

Nie oszukuje.

> Drobna uwaga MMU nie musi być zawarte w procesorze,

Nie musi. (i nie zawsze był) Ale w tym typie komputera jest.

> może być zainstalowane obok niego.

Owszem. Koprocesor też nie musi być umieszczony w tej samej kostce,
co ,,procesor właściwy'' i nawet w tym typie komputera nie zawsze był.

> Na początku pisałeś o swapie, teraz o pamięci wirtualnej.

Bo jedno z drugim się łączy jednoznacznie.

> A to dwie różne rzeczy.

I różne, i nie. Pamięć wirtualna nie jest SWAPem, ale plik
stronicowania jest jednoznacznie związany z pamięcią wirtualną.

> Swap nie musi być pamięcią wirtualną.

I nie jest. :) Nigdy nie jest. Pamięć wirtualna to (z definicji
wirtualności i definicji pamięci) po prostu pamięć wirtualna.
Pamięć nierzeczywista, ale możliwa do zaistnienia.

> Swapowanie pamięci
> występowało np w Atari 130XE,

Być może.

> gdzie MMU nie pozwalał adresować więcej
> niż 65536 bajtów, a Atari 130XE miało tej pamięci dwa razy więcej.

Nie znam Atari. Pamiętam tylko, że używano tam uszkodzonych pamięci.
Pamięć miała jeden błąd i można było z niej wykorzystać połowę.
A jak pracowała ta pamięć -- nie mam pojęcia.

> 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).

Może i tak.

> 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).

Photoshopy itp. programy (pamięciożerne) do dnia dzisiejszego budują własne
pliki wymiany. Także programy graficzne na PeCeta budują własne pliki wymiany,
gdy brakuje im RAMu. W każdym razie budują te, których ja używam, czyli nieco
przestarzałe, jako że ja najnowszych nie używam.

> 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.

W takim razie dyski twarde są złe w ogóle.
No i RAM też jest zły, bo kesze w procesorach mają szybsze pamięci. :)
Dlaczego więc nie zbudować komputera opartego o pamięć tak szybką, jak
szybki kesz procesora?

> Odczyt pamięci z dysku jest dużo wolniejszy,

Ale megabajt na dysku/HDD jest niepomiernie tańszy od megabajta RAMu.

> co jest odczuwalne przez użytkownika.

Ale komputer może pracować i wówczas, gdy zabraknie RAMu na wszystkie procesy.

> Pomijam już kwestie zużycia sprzętu.

Dyski/HDD są praktycznie niezużywalne, o ile pracują w dobrych warunkach.
A RAM też nie jest wieczny. (a jedynie praktycznie niezużywalny) Sam kiedyś
kupiłem 64 MiB RAMu uszkodzonego. Dokładniej -- ja twierdziłem (na podstawie
twierdzeń programów diagnostycznych) że RAM jest uszkodzony, a sprzedawca
twierdził, że jest sprawny. Doszliśmy do porozumienia i wymienił mi bez
dopłaty na inny :) tej samej wielkości -- sprawny wg mnie i wg sprzedawcy.

> Pamięć wirtualna
> jest protezą powstałą w czasach gdy pamięć RAM była cholernie droga

Nadal taka jest w zestawieniu z cenami tradycyjnych dysków.

> 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.

2^48=281474976710656

No właśnie -- dlaczego bajtów, nie bitów?
To pytanie kiedyś [nie] padło przy wyjaśnianiu niedostępności RAMu powyżej
3 GiB w systemach operacyjnych 32-bitowych, czyli takich jak WXP czy Vista.
Kawecki wyjaśnił, że nieprzekraczanie granicy 3 (z kawałkiem) GB nie jest
żadnym błędem, ale konsekwencją 32-bitowości systemu.

Jak wiadomo -- dziś już ta granica nie obowiązuje. :)

2^32=4294967296=4 Gi[B]
((2^32/1024)/1024)/1024=4

Dlaczego napisałeś o bajtach, nie bitach? Na dobrą sprawę trzeba by napisać bitów:

((2^32/1024)/1024)/8=512 Mi[B]

((((2^48/1024)/1024)/1024)/1024)/8=32 Ti[B]

> 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.

Ja zwiększyłem ze 192 MiB do 256 MiB, ale nie zwiększyłem wygody. :)
Mam WXP. Zwiększyłbym, gdybym miał ze 40 GiB RAMdysku. ;) Ale wcale
nie czułbym się wówczas komfortowo, znając cenę takiego rozwiązania.

> Chyba, że ktoś jest nałogowym kawoszem i lubi
> wykorzystywać przerwy w pracy komputera na robienie sobie n-tej
> filiżanki kawy.

0. Te przerwy nie są aż tak długie.
1. Nie zawsze praca z komputerem ma charakter interaktywnej [pracy].
   Czasami komputer nadzoruje pracę czegoś i czasami po prostu zlecamy
   liczenie czegoś, gdy nas nie ma w pobliżu lub gdy śpimy. :)

Tak jak CPU nie obrabia naraz wszystkich uruchomionych procesów, lecz przełącza
się pomiędzy nimi, tak samo nie ma potrzeby trzymania wszystkiego w RAMie. Po
co trzymać tam to, co zostanie użyte za dwa dni? :) Rozumiem, że 95% użytkowników
korzysta z komputera jak z ,,nowoczesnej'' ;) (czytać --> uciążliwej i stale
zawieszającej się) maszyny do pisania lub ,,konsoli gier'', ale to nie powód,
dla którego należy okaleczać urządzenie zwane komputerem. :)

> 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.

I co mam osiągnąć dzięki temu? Mam zobaczyć, jak obciąża SWAPowanie?

-=-

BTW OE -- ze SWAPem czy bez, znienacka pochłania cały komputer, gdy przysysa się do dysku. :)
Trwa to rzadko, ale jest przykre, bo na ułamek sekundy cały komputer staje w miejscu.

-=-

A najwięcej czasu pochłania po prostu ściąganie czegoś po wolnych łączach.

--
   .`'.-.          ._.                          .-.
   .'O`-'      ., ; o.'   eneuel@@gmail.com    '.O_'
   `-:`-'.'.   '`\.'`.'   ~'~'~'~'~'~'~'~'~    o.`.,
  o'\:/.d`|'.;. p \ ;'. . ;,,. ; . ,.. .;. ;. .;\|/....
Received on Mon Oct 29 10:40:15 2007

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