Kopiowanie systemu Windows to prawdziwy bałagan od czasów systemu Windows Vista. Nawet Microsoft twierdzi, że poprawił wydajność, z punktu widzenia użytkownika, nie jest to całkiem widoczne. Nawet w przypadku pojedynczego pliku okno kopiowania pojawia się zbyt długo na „Obliczanie”, a następnie dokończenie kopiowania (nawet po 100% ukończeniu okno dialogowe pozostaje aktywne).
W tym samym czasie tworzyłem kopie zapasowe niektórych plików w systemie Ubuntu Linux. Czułem, że to jest naprawdę szybkie. Może to być uczucie spowodowane szybszymi aktualizacjami interfejsu użytkownika.
Przeczytałem post informacyjny Jeffa Atwooda kilka lat temu na temat kopiowania plików Windows . ale jakie są moje konkretne pytania
- Czy wydajność pliku (Ubuntu) Linux jest lepsza niż Windows-7?
- Czy oba algorytmy, Windows i Linux wykorzystują wiele wątków i mechanizm potokowy do poprawy prędkości? Jeśli tak, który z nich jest lepszy?
xcopy
, a nawetrobocopy
. Dużo lepiej. Na przykład za pomocą tego drugiego można wykonać dwa przejścia, po pierwsze, aby utworzyć wszystkie katalogi, ale nie kopiować żadnych plików, a po drugie, aby skopiować rzeczywiste pliki, nie powodując fragmentacji obiektu docelowego.ext3/4
, co konkuruje tutaj z NTFS. Możesz także spróbowaćreiserfs
ixfs
- oba są zoptymalizowane do szybkich operacji z małymi plikami.Odpowiedzi:
Standardowe
copy
wbudowane w Windows nie jest zbyt dobre, ale Windows zawiera dwa zaawansowane polecenia, które są znacznie bardziej wydajne:xcopy
irobocopy
. Narzędzie to jest szczególnie przydatne, gdy potrzebujesz pełnej kontroli nad zaawansowanymi funkcjami systemu plików, takimi jak listy ACL lub alternatywne strumienie danychrobocopy
.Na przykład, jeśli kopiujesz dużą strukturę katalogów, możesz chcieć, aby cel nie był podzielony . Standardowe wywoływanie
robocopy
jest już całkiem dobre, ale ponieważ wpisy katalogu są aktualizowane w miarę tworzenia podkatalogów, nadal można uzyskać pofragmentowane katalogi. Aby temu zapobiec, możesz uruchomićrobocopy
w dwóch przebiegach, z których pierwszy tworzy tylko docelową strukturę katalogów bez kopiowania zawartości pliku, a drugi w rzeczywistości kopiuje treści plików.Podsumowując,
robocopy
jest bardzo wydajny i w pełni świadomy funkcji NTFS.źródło
/CREATE
opcji tworzone są puste pliki i podkatalogi, które nie zajmują miejsca, a tym samym pozwalają na jednoznaczne zapisanie pozycji katalogu.Szybkość, jaką widzisz w systemie Ubuntu Linux, to prawdopodobnie buforowanie plików. O ile mi wiadomo, kopiowanie plików w systemie Linux nie stara się zminimalizować użycia pamięci podręcznej plików.
W systemie Linux, gdy kopiujesz plik, który jest mniejszy niż około 50% pamięci RAM, cały plik jest kopiowany do pamięci podręcznej plików, a następnie zapisywany na dysk w miarę upływu czasu. Wygląda na to, że jest bardzo szybki, ale zmusza inne, bardziej przydatne pliki, do opuszczenia pamięci podręcznej. Mogą to być pliki pamięci podręcznej, wiadomości e-mail, pliki konfiguracji, pliki czcionek itp.
System Windows XP służył również do kopiowania bez względu na pamięć podręczną plików. Ale w systemie Windows Vista Microsoft zmienił Eksploratora, aby podczas kopiowania zużywał ograniczoną pamięć podręczną plików . Zmniejsza to wpływ dużych kopii plików na resztę systemu. Ale zmniejsza również szybkość nawet stosunkowo niewielkich kopii plików do prędkości dysku twardego.
źródło
W systemie Windows użyj Teracopy - rozwiąże ogólny problem głupoty, jaki ma Explorer.
W Ubuntu uważam, że kopiowanie plików jest bardzo szybkie.
Nadal okno dialogowe „Obsługa plików” nie znika, gdy używasz dysków wymiennych. Jeśli spróbujesz bezpiecznie wysunąć dysk natychmiast po zniknięciu okna dialogowego, pojawi się komunikat o błędzie. Dane jednak przechodzą.
Aktualizacja: operacje na plikach systemu Windows są powolne, prawdopodobnie z powodu całej integracji z usługami i rejestrem. Nautilus (w Gnome) jest tylko prostym procesem lub przynajmniej nie ma obciążenia / przerw, które ma Explorer.
źródło
Przenoszenie i kopiowanie plików w systemie Linux jest oczywiście szybką operacją. Powodem, dla którego możesz szybko przenosić i kopiować pliki, jest to, że źródło i miejsce docelowe znajdują się na tej samej partycji. Operacja wymaga jedynie zmiany i-węzłów. Przenoszenie plików między różnymi partycjami jest nadal bardzo szybkie (tylko około minuty dla pliku 1-gig). W systemie Windows przeniesienie plików do miejsc docelowych na tej samej partycji zajmuje trochę czasu, ponieważ zarządzanie plikami w systemie Windows jest nieuporządkowane. (Pomyśl o fragmentacji plików i sposobie formatowania dysków twardych przez system Windows).
źródło