Jag frågar om TRIM är aktiverat på iOS eftersom, ända sedan jag fick slut på minne på min iPhone (har sedan rensat några GB tillbaka), det verkar vara långsammare än det var tidigare. Min misstanke är att med de flesta ”flashminnes” sektorer ”som nu delvis används, tar varje skrivoperation längre tid …
För att lita på flashminnet, undrar jag om iPhone implementerar TRIM (eller någon ”trimliknande” funktion) för att maximera flashminnets prestanda och specifikt om det låter mig felsöka en långsam telefon och / eller veta om Jag vill jailbreaka enheten för att aktivera TRIM eller på annat sätt styra lagring tätare än iOS levereras.
Kommentarer
- I ' har tagit bort den andra delen av din fråga eftersom det här ' inte kan besvaras här.
- Jag har fortfarande ingen ideia om iOS implementerar (eller kommer att implementera) TRIM-stöd i framtiden, men åtminstone för And roid – även om det tog dem ett tag – det ' kommer med det nya Android 4.3 TRIM-stöd . (Jag antar att iOS inte kommer ' att vara långt efter när det gör det, om det inte ' t redan.)
- Jag ser två skäl att öppna detta, men jag vet inte ' vilken fråga du verkligen har: 1) Ja eller nej – finns det trim på iOS i allmänhet 2) Hur gör jag diagnostisera en långsam telefon om den har TRIM eller inte. Eftersom vi föredrar frågor som är praktiska och avskräcker ja / nej, kommer jag ' att redigera detta förutsatt att du verkligen vill veta # 2 – vem som helst är fri att redigera detta igen och vi kan granska / stäng igen om det blir för brett eller ofokuserat längs linjen.
Svar
Eftersom jag bara är en generisk nyfiken som kan undersöka på nätet, jag kommer att göra några antaganden här så att vi kan vara på samma grunder:
- TRIM är en SSD -teknologi och kan som sådan betyda för många olika saker.
- iPhone använder MLC NAND minne , vilket verkligen är en SSD .
- Vi människor (som dhy8386 och kanske till och med Mr . Brian Klug ) älskar t o prata stort om saker vi inte vet tillräckligt djupt. Om du vill veta mer litar du mindre på.
- Apple avslöjar mestadels inget tekniskt meningsfullt om deras teknik. Och den använder många patenterade teknologier som ingen annan gör.
- Även idag kommer iPhone att fungera mer felfritt under djup stress (fylld minne, många applikationer osv.) Än valfri Android eller Windows Phone. (ja, jag har använt dem alla och jag äger för närvarande en S3)
Om du följer varje länk ovan djupt nog kanske du inser att det inte är så enkelt. Även Android: s TRIM-stöd är förmodligen inte samma TRIM som en bärbar dator använder på sin SSD.
Så det spelar ingen roll om det stöder TRIM eller inte. Hela poängen med att gå med en iPhone är att lita på Apple och låta dem göra det hårdporrtekniska arbetet. Och hela poängen med jailbreaking kan göra saker som Apple inte kan tillåta av någon anledning, till exempel att avblockera operatörer. Allt annat på JB gör det fel (speciellt nu har vi android, även för iPhone ) – och jag säger det från min tunga erfarenhet av att använda jailbreak från iPhone 3 till 4.
Nu, för att ta itu med din huvudsakliga och oanmälda fråga, bäst sak du kan göra för att testa om din maskinvara inte fungerar är att säkerhetskopiera din iPhone och återställa till fabrik . Fyll sedan i den med musik eller bilder, eftersom du misstänker att en hel disk orsakar felfunktionen och undvik att installera program alls. Du kommer förmodligen inte att se några problem och, om du gör det, bara skicka det till garanti. Du kan också skicka det till garantin direkt, men du riskerar att det kommer tillbaka och bara förlorar några dagar där.
Kommentarer
- Jag don ' t förstår varför du antar att enheten är en jailbreak-enhet. Frågaren indikerade aldrig det, och jag kom fram till den här frågan eftersom jag misstänkte att min iPhone kunde ha själva problemet. Min iPhone har aldrig fängslats … inte ens en gång. När det gäller skillnaden mellan SSD och RAM, ser jag inte ' hur det ' är relevant. I / O spelar en viktig roll i systemets prestanda.Om SSD saktar ner kommer användaren att se en märkbar inverkan på prestandan.
- @ Avian00 eftersom iPhone då inte ' t multitasking . Det skulle vara mycket svårt att ladda upp minnet utan att ha jailbreak (för att tillåta multitasking). När det gäller prestanda ändrar jag ' frågan för att lägga till några poäng och uppdateringar som har hänt sedan dess.
- @Cawas Min fråga hade inget att göra med tillgängligt RAM eller multitasking, men med prestanda för delsystemet för flashlagring före / efter att det hade fyllts helt. Du ' skulle få anständig prestanda i ett fall, det skulle bli värre efter att ha fyllt i det och frigjort det igen. I Android tog Google TRIM-stöd till Nexus under den senaste 4.3 (tog dem tillräckligt länge! 🙂 Jag undrar om / när Apple gör detsamma i iOS.
- @Cawas Varför i helvete blandar du det upp med RAM ??
- Intressant nog var Android 4.3 den första Android som stödde TRIM på vissa enheter. Jag tvivlar på att iOS stöder TRIM.
Svar
Det är ingen fråga som kan besvaras med ja eller nej eftersom det beror på vilken typ av iPhone (modell) och version av iOS du är intresserad av.
I allmänhet kan jag säga att TRIM inte används, helt enkelt för att TRIM är ett specifikt kommando som finns i SATA-protokollet. Eftersom ingen iPhone använder ett SATA-lagringsgränssnitt kan de naturligtvis inte implementera TRIM.
Disken på iPhone är faktiskt en NAND-blixt direkt lödd till PCB i telefonen. Det betyder att det ” s ingen SATA-kontakt eller PCIe-kontakt eller liknande. De faktiska elektriska och logiska protokollen som används för överföring av data skiljer sig dock beroende på modell och iOS-versioner.
NAND-flashchips fungerar annorlunda än en gammaldags hårddisk. För att kärnan och applikationsmjukvaran på en iPhone ska behandla dem som ett linjärt utrymme med ”block” eller ”byte” måste något hända.
På iOS 1 och 2 gjordes detta genom en snabb översättning lager som heter VFL. På iOS 3 och 4.0 bytte Apple till att använda YaFTL och VSFL. På iOS 4.1 och senare bytte de igen till PPNFTL för de telefoner som hade fysisk hårdvara med PPN (Perfect Page New NAND-blixt). Endast på PPN-hårdvaran finns det en faktisk styrenhet inuti NAND-blixten. Men det mesta av flashöversättningsarbetet sker faktiskt fortfarande i programvara.
Förutom att hantera omvandlingen mellan faktiska ”flashrealiteter” och den ”linjära utrymmet av block” logisk vy, är FTL också ansvarig för gör slitageutjämning. Funktionaliteten du känner till som TRIM är faktiskt djupt rotad i slitnivelleringssystemet.
Det korta svaret är att användningen av en ”TRIM-liknande” funktionalitet är mycket beroende av din faktiska iPhone-maskinvarumodell, iOS-versionen som används och om Apple faktiskt har beslutat att använda funktionaliteten eller inte. Det är dock tydligt att Apple utformade NAND-layouterna och flash-översättningslagren för att faktiskt stödja en TRIM-liknande funktionalitet, och det gjorde de för många år sedan. Så det vore vettigt att det också används. Det är dock inte dokumenterat offentligt huruvida Apple faktiskt använder denna TRIM-liknande funktion i praktiken.
Du kan läsa mer om layouterna och flashöversättningslagren i iOS / iPhone här:
http://esec-lab.sogeti.com/posts/2012/06/28/low-level-ios-forensics.html