hennep
reading can seriously damage your ignorance
Ik heb een Samsung Galaxy S Plus telefoon en deze gebruik ik voor app ontwikkeling. Nu vraag ik mij af in hoeverre de levensduur van de telefoon wordt beinvloed door het constant installeren en deinstalleren van apps.
Ik weet dat de write cycles van nieuwe flash geheugens steeds hogere en dus betere getallen laten zien maar ik verwacht eigenlijk niet dat fabrikanten de betere en dus dure chips zullen toepassen. Alles draait om de centen, zeker bij grote aantallen.
Wie kan hier meer over vertellen?
Weet iemand welke flash geheugens in telefoons worden gebruikt?
In een standaard uC wordt flash gegarandeerd voor 10.000 write-cycles. Da's iedere dag 3x dezelfde apps installeren, voor 10 jaar. Volgens mij heb je tegen die tijd allang een andere telefoon..
hennep
reading can seriously damage your ignorance
Denk jij dat je maar 3 keer per dag een app compileert? Ik denk vaker dan 30 keer. En als je debug't op de hardware stuur je regelmatig nieuwe code naar het apparaat.
Dus ik hoop toch dat de cycles beter zijn dan 10000x.
Als mijn telefoon minder dan een jaar mee gaat dan moet ik toch afspraken daarover gaan maken met mijn baas.
Sjoerd Kreyns
Golden Member
SMD weerstandjes zoeken in grijze vloerbedekking is ook een uitdaging ... 8*1=255 ... Het nadeel van ruimte: Als je het hebt, staat het binnen de kortste keren weer vol.
Die 10.000 x is per adres / geheugencel volgens mij. Als je een paar keer dezelfde app installeerd, schrijft hij (daar mag je meen ik van uit gaan) niet in dezelfde geheugencel. Daar zorgt de flash controller voor.
Bij een PIC is dat anders. Maar voordat je die 10.000x geprogrammeerd hebt.... 30x per dag, dan ben je een jaar verder.
Overigens, als jij voor je werk apps maakt, dan verwacht ik dat je werkgever ook zorgt voor de spullen om dat te doen, en niet dat je op je eigen telefoon moet ontwikkelen. Tenzij je dat zelf makkelijker vindt, of op een ander platform wilt ontwikkelen dan wat d'r 'standaard' wordt gebruikt.
Overigens kan ik me zelfs voorstellen dat je baas het niet OK vindt dat je op je eigen telefoon ontwikkeld ivm eigendomsrechten, ontwikkelstandaarden etc.
Tommyboy
Zo goed als het vroeger was, is het nooit geweest.
Gooi die apps dan niet naar het ingebouwde geheugen, maar naar de SD kaart. Als die dan eindelijk na 15 jaar opgebrand is, kan je voor 2 euro een nieuwe kopen.
Maar even reëel: Zelfs met de beste wil ga je dat flash geheugen niet naar de kloten krijgen. Althans, niet binnen de economische levensduur van die telefoon.
hennep
reading can seriously damage your ignorance
@Alex278
Mijn baas gedraagt zich als een kruidenier, als ik het betaal dan hoeft hij het niet te doen. Als mijn telefoon een maand minder lang mee gaat dan zit ik daar niet mee. Als mijn telefoon binnen een jaar kapot gaat dan wil ik daarover afspraken maken. Maar dit is geen arbeidsvoorwaardenforum dus laten we het over de technische aspecten hebben.
Het gaat dus om de vrije ruimte waarin cyclisch wordt geschreven. Op dit moment heb ik nog 4Gb vrij maar ik heb bijna geen apps in gebruik en ook nog geen mp3's op mijn telefoon gezet en dat is wel het plan. Hoe kleiner de vrije ruimte des te eerder de 10000 cycli "op zijn".
@Tommyboy
Ik wil het graag onderbouwd hebben. De getallen die nu genoemd worden zijn schattingen, 10000 cycles, 30+ apps per dag. Het zal best zo zijn dat bij normaal gebruik de levensduur vele jaren is maar ik kan niet zorgeloos met zo'n ding ontwikkelen als je in je achterhoofd de gedachte hebt dat veel compileren een soort russische roulette voor de telefoon wordt. Ontwikkelen kan ik denk ik ook geen normaal gebruik noemen.
Hopelijk is hier iemand te vinden die weet welke chip in telefoons wordt gebruikt zodat ik met echte getallen kan rekenen.
flipflop
"We cannot solve our problems with the same thinking we used when we created them" - Albert Einstein
Ga je een jaar lang, elke dat, 30+ keer programmeren? Geloof d'r niks van. Als dat wel zo is, zou ik er niet over prakiseren om m'n eigen spullen daarvoor te gebruiken. Voor een werkgever zijn 10 telefoons per jaar (desnoods) maar minimale kosten. BTW voordeel bv.
Maar zouden verschillende toestellen soms niet een verschillende fouten kunnen geven?
Als jij full time apps ontwikkeld voor android en dat alleen test op 1 model telefoon met 1 android versie. lijkt me dat gezien het debuggen niet heel handig.
Je zou die willen testen op meerdere modellen, fabrikanten, versies.
Ligt natuurlijk ook natuurlijk ook wat voor app het is. Voor simpele dingen lijkt het me niet zo´s probleem.
Tommyboy
Zo goed als het vroeger was, is het nooit geweest.
Op 27 augustus 2012 10:46:49 schreef hennep:
Hopelijk is hier iemand te vinden die weet welke chip in telefoons wordt gebruikt zodat ik met echte getallen kan rekenen.
Schroef je telefoon open, dan weet je dat. Dit zal namelijk per batch verschillen.
Maar je maakt je zorgen om niets. Dit valt ten eerste onder de garantie, en bovendien is de geheugencontroller heel erg goed in het compenseren van dit soort problemen. Als die controller doorkrijgt dat een sector slecht wordt (doordat hij veel gebruik moet maken van ECC) wordt die sector automagisch niet meer gebruikt. Pas als 10 a 20% van de sectoren kaputt zijn, ben je de sjaak.
Geloof mij maar, gaat niet happennen. En als je je er toch zo druk om maakt, moet je baas maar gewoon lappen voor een ontwikkeltoestel.
Waarom test je trouwens niet gewoon in een emulator op je PC?
hennep
reading can seriously damage your ignorance
Zullen we het over de technische aspecten van flash geheugen hebben.
Ik heb hier al veel discussies voorbij zien komen die een slotje kregen omdat ze op tweakers hoorden. Wat een werkgever wil betalen en hoevaak ik compileer laat ik dus even terzijde.
@Tommyboy
Als ik de achterkant van de telefoon haal dan zie ik geen printplaat. Alle electronica is mooi verpakt, mijn hoop is dat iemand hier weet wat er in zit.
Mijn telefoon is nog te nieuw om de garantie op de geven en het ding verder open te halen.
Geloof mij maar, gaat niet happennen.
Dit hoor ik al te vaak van managers en verkopers.
Ik wil graag getallen zien, vandaar mijn vraag: "Wat zit er voor hardware in?"
De getallen die nu genoemd worden zijn schattingen, 10000 cycles, 30+ apps per dag
Nee eigenwijze druif, dat is harde data uit de datasheet van een atmega32. Kan prima zijn dat dat getal ondertussen alweer hoger ligt, is sowieso een totaal ander ding dan wat d'r in jouw telefoon zit, maar was bedoeld om een idee te geven van de houdbaarheid van flash, en hoe hard je je best moet doen om die flash kaduuk te krijgen.
Schrijft zo'n telefoon niet alles weg op µSD-kaart? Of is dat ouderwets:P?
En hoe zit het eigenlijk met die SD kaartjes dan? Verspreiden die de cycles ook over het flashgeheugen?
RobK
Vertel welk probleem je wilt oplossen, niet met welke oplossing je een probleem hebt.
Voor de meeste grote (> 1Gb) NAND FLASH geheugens wordt een 'typical' waarde van 100.000 cycles per sector opgegeven. En dat is dan over het volle temperatuurbereik.
hennep
reading can seriously damage your ignorance
@Alex278
Je hoeft niet erg je best te doen om een defect te krijgen bij 10000 cycles.
- Zorg dat je flash bijna vol staat met data.
(Als ik er vanuit mag gaan dat de controller zijn schrijfacties roteert in de vrije geheugenruimte)
- Debug direct op de telefoon i.p.v. op de emulator.
(Dit is voor sommige acties noodzakelijk omdat niet alle hardware wordt geemuleerd)
Op die manier schrijf je een paar honderd keer per dag de app naar de telefoon, in een klein geheugengebied.
De omstandigheden spelen dus een grote rol in het rekensommetje.
@RobK
Aan deze info heb ik meer, dat verlengt de levensduur al met een factor 10 t.o.v. de vorige schattingen. Ik heb 5Gb interne flash in de telefoon.
Ik heb thuis een SSD al ruim 2 jaar draaien. OCZ Vertex 2, ja die beruchte gevallen van OCZ (gekocht toen het merk nog niet zo berucht bekend stond). Anyway, ik draaide van dit voorjaar (denk 2 maanden terug) eens de SSD health check tool. Er stond 95% health remaining.
Ik heb de schijf in die 2 jaar continu gebruikt. Hij staat meestal propvol (1-3GB over van de 120GB). De pagefile gebruik ik vaak hevig als iemand die alles laat open staan (games met ontwikkeling omgevingen, 15 browser tabs en andere meuk) op een systeem met MAAR 4GB (ik inmiddels geupgrade , meteen 16GB genomen, wat een verademing - maar dat terzijde). Deze pagefile staat natuurlijk op de SSD vanwege de snelle access times.
Dus na 2 jaar continu gebruik, inclusief pagefile read/writes, enz. 95% health resterend. Zo'n schijf is dan natuurlijk met een andere controller en wellicht ander FLASH geheugen, waardoor er soms wat reserve in is gebouwd, maar ik was daar tevreden mee.
Als jij voor je 'baas' 50x een app recompileert en herschrijft, 5 dagen per week, 50 weken per jaar, 2 jaar lang.
50*5*50*2=25000 writes.
Je applicatie is b.v. 10MB groot. Je hebt 100MB ruimte over. Dan zou, bij een ideale verdeling, elke sector 2500 keer overschreven zijn.
Dan zal je nog moeten bepalen hoeveel je FLASH geheugen mee kan. Ik denk niet dat je daar zomaar achter komt. Hoewel, stel we nemen de Nexus 7 tablet als voorbeeld. Teardown photo.
Google op Kingston geheugen: https://www.google.com/search?btnG=1&pws=0&q=Kingston+KE44B026…
Helaas. Sja, kom daar maar eens achter als die datasheets niet gepost worden 
Maargoed, offtopic dan maar. Je zou natuurlijk eerst kunnen testen in zo'n Android simulatoor (hoewel ik er van uit ga dat je dat al doet).
En gewoon telefoons van de zaak. Ik ken iemand die ontwikkelt security apps voor grotere onderneming. Die gozer heeft een dozijn aan telefoons her en der verspreid. Maargoed, dat had je al gehoord, dus laten we daar over ophouden 
maartenbakker
Golden Member
www.elba-elektro.nl | "The mind is a funny thing. Sometimes it needs a good whack on the side of the head to jar things loose."
Maar 15 tabs? Dan zit je op misschien 200MB in een fatsoenlijke browser.
Maar inderdaad, lekker veel RAM, niet swappen, altijd goed voor de levensduur van een SSD. Met de huidige RAM-prijzen is dat de enige juiste manier.
Er zijn ook kaartjes die langer meegaan, die worden bijvoorbeeld gebruikt in dataloggers. Ik heb hier industrial CF kaartjes (CSM) van 64MB die dat kunnen, alleen kosten die 180 euro. Daarvoor krijg je ipv 10.000 write cycles wel 3.000.000 write cycles.
In jouw geval zinloos, knappe vent die een geheugenkaartje verslijt in z'n telefoontje. Al die smartphones zijn van zo'n ongehoorde baggerkwaliteit dat de kaartjes de telefoon lang overleven.
hennep
reading can seriously damage your ignorance
Op 27 augustus 2012 12:31:19 schreef GJ_:
Daarvoor krijg je ipv 10.000 write cycles wel 3.000.000 write cycles.
Ik had al in een ander topic gelezen van jouw superflash.
Wat kost dit type flash en denk je dat telefoonfabrikanten dat toepassen?
Natuurlijk gebruiken telefoonfabrikanten standaard flash zoals iedereen. Pas als het echt nodig is, zoals die dataloggers, gebruik je de dure industrial flash kaarten. Dan zijn de kosten van dataverlies in veel gevallen een veelvoud van dat iets duurdere kaartje.
De prijzen weet ik niet exact, maar de 64MB hier op m'n bureau was iets van 180 euro.
"Mijn" kaartjes komen van CSM Gmbh (lekker heldere site....not). Ik koop ze oa via Jumu.
Arco
Special Member
Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Op 27 augustus 2012 11:56:15 schreef hennep:
Op die manier schrijf je een paar honderd keer per dag de app naar de telefoon, in een klein geheugengebied.
Als ik een programma een paar honderd keer per dag moet downloaden, zou ik toch serieus aan mijn programmeercapaciteiten gaan twijfelen.
Programmeren is niet "iets veranderen en kijken wat er dan gebeurt", maar proberen het probleem te doorgronden en op te lossen...
Een standaard SD card van Sandisk heeft trouwens een Write endurance van > 100.000 cycles per cel....
Ik denk dat het wel mee valt hoeveel sneller je telefoon er door kapot gaat. En als hij er echt veel sneller door kapot gaat kun je het toch gewoon onder garantie terug sturen.
En ik neem aan dat je ook virtueel test? Ik zelf test in het begin alleen virtueel(tussendoor soms even op hardware) en als de app in een verder stadium is ga ik pas debuggen op hardware.
Ik heb ik het hele topic overigens nog niemand het verschil tussen SLC en MLC Flash geheugen horen noemen.
SLC Flash chips gaan langer mee, omdat elke cel maar twee niveau's kent (Single Level Cell). De de cellen kennen dus slechts twee stabiele toestanden, welke lekker ver uit elkaar liggen en dus goed en duidelijk van elkaar te onderscheiden zijn. Als door slijtage / veroudering die uiterste stabiele toestanden dichter bij elkaar komen te liggen, duurt het nog heel lang voor het onderscheid in niveau's te vaag wordt voor betrouwbaar teruglezen.
Bij MLC Flash (Multi Level Cell) echter heeft elke cel meerdere stabiele toestanden. Dat heeft als voordeel dat er meer bits per cel opgeslagen kunnen worden, met als gevolg dat grotere capaciteiten relatief goedkoop kunnen zijn. Nadeel van deze techniek is wel dat de afzonderlijke celniveau's dichter bij elkaar liggen en dat het moment waarop die niveau's niet goed meer van elkaar te onderscheiden zijn, sneller optreedt.
In consumentenelektronica wordt vrijwel altijd MLC Flash gebruikt. De veroudering die optreed kan vrij lang worden 'gecompenseerd' door intelligente algoritmes die voorkomen dat eenzelfde blok flashcellen niet te vaak wordt beschreven en zorgt voor een gelijkmatige verdeling van die schrijfacties over alle blokken. Daarbij willen mensen (uiteraard) zo veel mogelijk geheugencapaciteit voor zo weinig mogelijk geld. MLC Flash is daarvoor prima geschikt.
Voor industriële toepassingen wordt echter een veel hogere (langdurige) betrouwbaarheid vereist en zijn de kosten die daarvoor nodig zijn van ondergeschikt belang. Die lange-termijn betrouwbaarheid wordt uitstekend geleverd door SLC Flash (die overigens óók van die intelligente algoritmes gebruik maakt). Ook het grotere temperatuurbereik waaronder SLC Flash betrouwbaar blijft werken is een stuk groter.
Het overgrote deel van de SSD drives voor de consumenten-computerwereld bevatten overigens MLC Flash. Er zijn wel SSD drives met SLC Flash, maar die zijn (heel) veel duurder dan de MLC versie van dezelfde capaciteit.
Als je echte exacte getallen wilt, zoek dan een teardown op van jou telefoon op internet of youtube en kijk of je het merk/type van de flash chips kunt achterhalen (of je schroeft je telefoon zelf open, maar dat is niet aan te raden met die telefoons van tegenwoordig... Verrekte plastic clips en lijm en tape en plakfolies.....). Dan zoek je de datasheet van dat chipje op en dan weet je precies wat de fabrikant voorschrijft over dat ding.
Samsung gebruikt voor zijn Galaxy smartphones het moviNAND geheugen uit de eigen keuken.
Waarschijnlijk zal dat bij deze telefoon ook wel het geval zijn, maar zeker weten doe je het alleen als je de specs opvraagt of het toestel open maakt.
Ik heb er wel specs van gevonden maar daarin wordt niet gerept over het aantal erase/write cycli, ik heb wel eens ergens gelezen van 1.000.000 cycli maar kan dat niet terugvinden.
Dit kan bij verschillende generaties natuurlijk ook nog wat verschillen.