Pytam, czy TRIM jest włączony na iOS, ponieważ od kiedy zabrakło mi pamięci w moim iPhonie (od tego czasu wyczyściłem kilka GB wstecz), wydaje się być wolniejszy niż wcześniej. Podejrzewam, że większość „sektorów” pamięci flash jest obecnie częściowo wykorzystywana, każda operacja zapisu trwa teraz dłużej…

W dużym stopniu polegając na pamięci flash, zastanawiam się, czy iPhone obsługuje TRIM (lub dowolną funkcję „podobną do przycinania”), aby zmaksymalizować wydajność pamięci flash, a konkretnie, jeśli pozwoli mi to rozwiązać problem z wolnym telefonem i / lub dowiedzieć się, czy Chciałbym jailbreak urządzenie, aby włączyć TRIM lub w inny sposób kontrolować pamięć bardziej precyzyjną niż dostarczana jest iOS.

Komentarze

  • I ' usunęliśmy drugą część pytania, ponieważ ' nie można tutaj znaleźć odpowiedzi.
  • Nadal nie mam pomysłu, jeśli iOS wdraża (lub wdroży) obsługę TRIM w przyszłości, ale przynajmniej dla And roid – chociaż zajęło im to trochę czasu – to ' jest dostarczane z nową obsługą TRIM Androida 4.3 . (Wyobrażam sobie, że iOS wygrał ' i nie był daleko w tyle, jeśli już ' t.)
  • Widzę dwa powody, dla których warto to otworzyć, ale nie ' nie wiem, które pytanie naprawdę masz: 1) Tak czy nie – czy ogólnie na iOS jest przycinanie 2) Jak to zrobić zdiagnozować powolny telefon, niezależnie od tego, czy ma TRIM, czy nie. Ponieważ wolimy pytania, które są praktyczne i zniechęcają do odpowiedzi tak / nie, ' edytuję to, zakładając, że naprawdę chcesz wiedzieć # 2 – każdy może edytować to ponownie, a my możemy przejrzeć / zamknij ponownie, jeśli stanie się zbyt szeroki lub nieostry na linii.

Odpowiedz

Ponieważ jestem po prostu zwykły, ciekawy, kto może poszukać informacji w sieci, poczynię tutaj pewne założenia, abyśmy mogli oprzeć się na tych samych podstawach:

  • TRIM to technologia SSD i jako taka może oznaczać za dużo różne rzeczy.
  • iPhone korzysta z MLC NAND pamięć , która jest rzeczywiście dyskiem SSD .
  • My, ludzie (na przykład dhy8386 i może nawet Pan . Brian Klug ) kocham t o mówić głośno o rzeczach, o których nie wiemy wystarczająco głęboko. Aby wiedzieć więcej, mniej ufaj.
  • Apple przeważnie nie ujawnia niczego technicznie istotnego na temat swojej technologii. I korzysta z wielu zastrzeżonych technologii, których nikt inny nie używa.
  • Nawet dziś iPhone będzie działał o wiele bardziej bezbłędnie w warunkach dużego obciążenia (zapełniona pamięć, wiele aplikacji itp.) Niż dowolny Android lub Windows Phone. (tak, użyłem ich wszystkich i obecnie posiadam S3)

Jeśli wystarczająco dokładnie podążasz za każdym powyższym linkiem, możesz zdać sobie sprawę, że to nie jest takie proste. Nawet obsługa TRIM systemu Android prawdopodobnie nie jest tym samym TRIM, którego używa notebook na swoim dysku SSD.

Więc nie ma znaczenia czy obsługuje TRIM, czy nie. Cały sens korzystania z iPhonea polega na zaufaniu Apple i pozwoleniu im na wykonanie hardkorowej pracy technicznej. I cały sens jailbreaking jest w stanie robić rzeczy, na które Apple nie może zezwolić z jakiegokolwiek powodu, takie jak odblokowywanie operatorów. Wszystko inne na JB robi to źle (szczególnie teraz mamy Androida, nawet dla iPhonea ) – i mówię to z moje ciężkie doświadczenie w używaniu jailbreak z iPhonea 3 do 4.

A teraz, aby odpowiedzieć na twoje główne i niezapowiedziane pytanie, najlepiej co możesz zrobić , aby sprawdzić, czy sprzęt nie działa nieprawidłowo, to wykonać kopię zapasową iPhonea i przywrócić ustawienia fabryczne . Następnie wypełnij go muzyką lub zdjęciami, ponieważ podejrzewasz, że zapełniony dysk powoduje awarię i w ogóle unikasz instalowania aplikacji. Prawdopodobnie nie zobaczysz żadnego problemu, a jeśli tak, po prostu wyślij to do gwarancji. Możesz również wysłać go bezpośrednio do gwarancji, ale ryzykujesz, że wróci i straci tylko kilka dni.

Komentarze

  • Nie ' Nie rozumiem, dlaczego zakładasz, że urządzenie jest urządzeniem jailbreak. Pytający nigdy tego nie wskazał i doszedłem do tego pytania, ponieważ podejrzewałem, że mój iPhone może mieć ten sam problem. Mój iPhone nigdy nie był jailbreakiem … ani razu. Jeśli chodzi o różnicę między dyskiem SSD a pamięcią RAM, nie ' nie widzę, jak to ' ma znaczenie. We / wy odgrywa kluczową rolę w wydajności systemu.Jeśli dysk SSD zwalnia, użytkownik zauważy zauważalny wpływ na wydajność.
  • @ Avian00, ponieważ wtedy iPhone nie ' nie miał wielozadaniowość . Byłoby bardzo trudno załadować pamięć bez jailbreak (aby umożliwić wielozadaniowość). Jeśli chodzi o wydajność, ' edytuję pytanie, dodając kilka punktów i aktualizacji, które wydarzyły się od tamtego czasu.
  • @Cawas Moje pytanie nie miało nic wspólnego z dostępną pamięcią RAM lub wielozadaniowość, ale z wydajnością podsystemu pamięci flash przed / po całkowitym zapełnieniu. W jednym przypadku ' osiągniesz przyzwoitą wydajność; po zapełnieniu go i ponownym zwolnieniu pogorszy się. W Androidzie Google wprowadziło obsługę TRIM do Nexusa w najnowszym 4.3 (zajęło im to wystarczająco dużo czasu! 🙂 Zastanawiam się, czy / kiedy Apple robi to samo w iOS.
  • @Cawas Dlaczego do cholery to mieszasz z pamięcią RAM?
  • Co ciekawe, Android 4.3 był pierwszym Androidem obsługującym TRIM na niektórych urządzeniach. Wątpię, czy iOS obsługuje TRIM.

Odpowiedź

To nie jest pytanie, na które można odpowiedzieć tak lub nie ponieważ zależy to zarówno od rodzaju iPhonea (modelu), jak i od wersji iOS, który Cię interesuje.

Ogólnie mogę powiedzieć, że TRIM nie jest używany, po prostu dlatego, że TRIM jest specyficznym poleceniem znalezionym w Protokół SATA. Ponieważ żaden iPhone nie korzysta z interfejsu pamięci SATA, nie może oczywiście zaimplementować TRIM.

Dysk w iPhonie to w rzeczywistości pamięć flash NAND przylutowana bezpośrednio do płytki drukowanej w telefonie. Oznacza to, że jest ” brak złącza SATA, złącza PCIe lub podobnego. Jednak rzeczywiste protokoły elektryczne i logiczne używane do przesyłania danych różnią się w zależności od modelu i wersji systemu iOS.

Układy NAND flash działają inaczej niż staroświecki dysk twardy. Aby jądro i oprogramowanie na iPhonie traktowały je jako liniową przestrzeń „bloków” lub „bajtów”, coś musi się wydarzyć.

W iOS 1 i 2 zostało to zrobione poprzez tłumaczenie flash warstwa o nazwie VFL. W iOS 3 i 4.0 Apple przełączyło się na używanie YaFTL i VSFL. W systemie iOS 4.1 i nowszym zmienili ponownie na PPNFTL dla tych telefonów, które miały fizyczny sprzęt z PPN (Perfect Page New NAND flash). Tylko na sprzęcie PPN znajduje się rzeczywisty kontroler wewnątrz pamięci flash NAND. Jednak większość prac związanych z tłumaczeniem flash nadal odbywa się w oprogramowaniu.

Oprócz obsługi konwersji między rzeczywistymi „rzeczywistościami flash” a logicznym widokiem „liniowej przestrzeni bloków”, FTL jest również odpowiedzialne za wyrównywanie zużycia. Funkcjonalność, którą znasz jako TRIM, jest w rzeczywistości głęboko zakorzeniona w systemie równoważenia zużycia.

Krótka odpowiedź jest taka, że użycie funkcji podobnej do TRIM jest w dużym stopniu zależne od faktycznego modelu sprzętu iPhonea, używanej wersji systemu iOS i tego, czy Apple faktycznie zdecydował się skorzystać z tej funkcji. Jest jednak jasne, że Apple zaprojektowało układy NAND i warstwy tłumaczenia flash, aby faktycznie obsługiwały funkcjonalność podobną do TRIM, i zrobili to wiele lat temu. Więc miałoby sens, że jest również używany. Jednak nie jest udokumentowane publicznie, czy Apple faktycznie używa w praktyce tej funkcji podobnej do TRIM.

Możesz przeczytać więcej o układach i warstwach tłumaczeń flash w iOS / iPhone tutaj:

http://esec-lab.sogeti.com/posts/2012/06/28/low-level-ios-forensics.html

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *