Meu simulador de QA ocupava 9,8 GB, e o motivo não era o meu app. Os contêineres de apps dele ocupavam 0,34 GB. O iOS preenchia o resto: um cache de snapshots dos pôsteres da Tela Bloqueada, o log do sistema, assets baixados da Siri e de idiomas e um cache de símbolos. Medi dez simuladores no meu Mac, e a parte dos apps ficou pequena em todos eles.
Regra principal: meça um simulador antes de redefini-lo e depois redefina ou remova o simulador com xcrun simctl. Não apague à mão pastas dentro da pasta de dados dele.
Resposta rápida
- Encontre os simuladores pesados:
du -sh ~/Library/Developer/CoreSimulator/Devices/* | sort -h | tail. - Associe cada UDID a um nome com
xcrun simctl list devices. - Olhe dentro de um deles:
du -h -d 4 ~/Library/Developer/CoreSimulator/Devices/<UDID>/data | sort -h | tail -20. - Se você não precisa mais do estado dele, desligue e limpe o simulador:
xcrun simctl shutdown <UDID>, depoisxcrun simctl erase <UDID>. - Remova os simuladores que você nunca usa com
xcrun simctl delete <UDID>.
Para onde foram 9,8 GB em um simulador
Na minha primeira medição, um simulador de QA ocupava metade da pasta Devices. Um leitor perguntou o que havia dentro dele, então abri a pasta data. O dispositivo é um simulador de iPhone 18 Pro com iOS 27.0, e estava inicializado durante a medição.
Pasta dentro de data | Tamanho |
|---|---|
Library/Application Support/PRBPosterExtensionDataStore | 2,88 GB |
var/db/diagnostics | 2,07 GB |
private/var/MobileAsset | 2,03 GB |
Library/Caches/com.apple.coresymbolicationd | 1,13 GB |
var/db/uuidtext | 0,49 GB |
Containers, todos os contêineres de apps | 0,34 GB |
Pasta data inteira | 9,81 GB |
Containers guarda os apps instalados, os contêineres de dados deles, os app groups e os dados de extensões. Tudo o que meu app e os testes dele gravaram cabe nesses 0,34 GB.
Dez simuladores lado a lado
Meu Mac tem 53 simuladores. Quarenta e três deles ocupam cerca de 20 MB cada, o tamanho de um dispositivo que nunca rodou um app. Os outros dez são os que eu uso. Os tamanhos estão em GB.
diagnostics mais uuidtext), MobileAsset e todo o resto. Um ponto marca os dispositivos que estavam inicializados.| Simulador | iOS | Estado | data | Repositório de pôsteres | diagnostics | MobileAsset | Containers |
|---|---|---|---|---|---|---|---|
| Dispositivo de QA, iPhone 18 Pro | 27.0 | Inicializado | 9,81 | 2,88 | 2,07 | 2,03 | 0,34 |
| iPad Pro 13-inch (M5) | 27.0 | Inicializado | 4,59 | 1,65 | 0,21 | 1,70 | 0,16 |
| iPhone 16 | 18.6 | Desligado | 3,14 | 0,03 | 1,22 | 0,79 | 0,24 |
| iPhone SE (3rd generation) | 26.5 | Inicializado | 2,62 | 0,04 | 0,36 | 1,00 | 0,31 |
| iPhone 11 Pro | 26.5 | Desligado | 2,36 | 0,00 | 0,15 | 1,21 | 0,12 |
| iPhone 16, build de dogfood | 18.6 | Desligado | 2,03 | 0,03 | 0,36 | 0,90 | 0,11 |
| iPhone 16 Pro Max | 18.6 | Inicializado | 1,58 | 0,05 | 0,05 | 0,90 | 0,15 |
| iPhone 16 Pro Max | 27.0 | Desligado | 1,53 | 0,17 | 0,02 | 0,17 | 0,16 |
| iPad Pro 11-inch (M4) | 18.6 | Desligado | 1,47 | 0,03 | 0,09 | 0,78 | 0,07 |
| iPhone SE (3rd generation), segundo app | 18.6 | Desligado | 0,63 | 0,03 | 0,01 | 0,21 | 0,08 |
Três padrões se destacam:
- Containers nunca passou de 0,34 GB. Os apps que eu testo são um erro de arredondamento perto dos dados do sistema.
- O MobileAsset aparece em todos os simuladores. Ele variou de 0,17 a 2,03 GB.
- O repositório de pôsteres só ficou grande nos dois dispositivos com iOS 27.0 inicializados. No iOS 18.6 e no 26.5, ficou abaixo de 0,05 GB. Dois dispositivos não bastam para culpar o iOS 27.0, mas a diferença é grande.
O que cada pasta guarda
PRBPosterExtensionDataStore: snapshots dos pôsteres da Tela Bloqueada
O nome da pasta, junto com GalleryCache e SnapshotCache.cachedb, é uma string no PosterBoard.framework privado do runtime do simulador do iOS 27.0. O runtime também traz um app do sistema, PosterBoard.app, com o identificador com.apple.PosterBoard. Dentro da pasta, as subpastas levam os IDs das extensões de pôster da Apple: WeatherPoster, EmojiPoster, PhotosPosterProvider, KaleidoscopePoster e outras. O guia da Apple para criar uma Tela Bloqueada personalizada lista Tempo, Astronomia e fotos entre os papéis de parede da Tela Bloqueada.
No meu dispositivo de QA, a pasta tinha 6.776 arquivos. Desses, 2.911 eram arquivos de snapshot .atx de cerca de 1 MB cada, com os nomes Composite.atx, Background.atx, Foreground.atx e Floating.atx, e somavam 2,9 GB. No iPad, todos os 939 arquivos de snapshot tinham como data de modificação o dia da medição, então o dispositivo grava esse cache enquanto roda. Não sei o que o faz crescer, e a Apple não documenta isso.
var/db/diagnostics e var/db/uuidtext: o log do sistema
Essas pastas guardam os dados do sistema de log unificado. O man log descreve um repositório de logs como um banco de dados de log do sistema igual ao de /var/db/diagnostics, com um diretório uuidtext igual a /var/db/uuidtext ao lado. Cada simulador mantém a própria cópia dentro da pasta de dados. Nos meus dispositivos, ela variou de 0,01 a 2,07 GB, mais 0,49 GB de uuidtext no dispositivo de QA.
private/var/MobileAsset: assets que o iOS baixa
No dispositivo de QA, AssetsV2 tinha conjuntos de assets com nomes de recursos da Siri e de idioma:
| Conjunto de assets | Tamanho |
|---|---|
com_apple_MobileAsset_UAF_Siri_Understanding | 805 MB |
com_apple_MobileAsset_UAF_LinguisticData | 409 MB |
com_apple_MobileAsset_UAF_Siri_TextToSpeech | 289 MB |
com_apple_MobileAsset_UAF_SearchQueryUnderstanding | 106 MB |
com_apple_MobileAsset_TTSAXResourceModelAssets | 96 MB |
O simulador baixa esses assets por conta própria. Um desenvolvedor nos Apple Developer Forums relatou a mesma pasta crescendo dezenas de gigabytes no iOS 26.5, baixados pelo nsurlsessiond. A thread não tem resposta.
com.apple.coresymbolicationd: cache de símbolos
A man page do coresymbolicationd o descreve como um “daemon para gerenciar o cache de símbolos de depuração” das bibliotecas do sistema operacional. O cache ocupava 1,13 GB no dispositivo de QA e quase nada nos outros.
O que eu faço com um simulador pesado
Não abro essas pastas para apagar arquivos. A Apple não as documenta, e não sei dizer o que um repositório de pôsteres ou de logs apagado pela metade faz com um simulador. As ferramentas suportadas trabalham com o dispositivo inteiro:
xcrun simctl erase <UDID>limpa o conteúdo e os ajustes e mantém o dispositivo. Desligue o dispositivo antes.xcrun simctl delete <UDID>remove o dispositivo.xcrun simctl delete unavailableremove os dispositivos que o SDK atual do Xcode não suporta mais.
Um erase leva embora os apps instalados, os dados deles e todas as pastas do sistema acima, então você reinstala o app e faz login de novo. Guarde os dispositivos cujo estado você ainda precisa para um bug ou um teste. O repositório de pôsteres, o log e os assets podem voltar a crescer quando o dispositivo rodar de novo, então um erase libera espaço, mas não corrige o crescimento.
CoreSimulator Data fica em Review before cleaning, separado do DerivedData, que o próximo build recria. Captura de tela de um scan anterior, por isso os tamanhos diferem dos deste artigo.Como medi
Medi em 26 de outubro de 2026, em um Mac mini com M4, macOS 27.0.1 e Xcode 27.1. Todos os comandos só leem dados:
xcrun simctl list devices --json
du -sk ~/Library/Developer/CoreSimulator/Devices/<UDID>/data
du -k -d 4 ~/Library/Developer/CoreSimulator/Devices/<UDID>/data | sort -rn | head -20
find ~/Library/Developer/CoreSimulator/Devices/<UDID>/data/Library/Application\ Support/PRBPosterExtensionDataStore -name '*.atx' | wc -l
Os tamanhos vêm do du, divididos por 1024 duas vezes, nas mesmas unidades binárias que o du -h mostra. As pastas de cada linha não se sobrepõem, exceto que Containers inclui as próprias subpastas. Simuladores inicializados continuam gravando, então os números deles mudam de hora em hora.
Conclusão
Um simulador grande costuma guardar dados do iOS, não do seu app. No meu Mac, os contêineres de apps ocupavam de 0,07 a 0,34 GB por dispositivo, enquanto snapshots de pôsteres, logs, assets baixados e caches de símbolos chegavam a 9,5 GB. Meça a pasta de dados, guarde os dispositivos cujo estado você precisa e redefina ou remova o resto com simctl.
Perguntas frequentes
Por que meu simulador de iOS é tão grande se meu app é pequeno?
Seu app é uma parte pequena dele. No meu simulador de QA, os contêineres de apps ocupavam 0,34 GB de 9,8 GB. O resto era o próprio iOS: um cache de snapshots dos pôsteres da Tela Bloqueada, o log do sistema, assets baixados da Siri e de idiomas e um cache de símbolos.
O que é PRBPosterExtensionDataStore no Simulador do iOS?
Uma pasta dentro da pasta de dados de cada simulador que pertence ao PosterBoard, o componente do iOS por trás dos pôsteres da Tela Bloqueada. O nome é uma string no PosterBoard.framework privado do runtime do iOS 27.0. No meu Mac, ela ocupava 2,9 GB em um simulador, quase tudo em arquivos de snapshot .atx.
Posso apagar à mão pastas dentro da pasta de dados de um simulador?
Eu não apago. A Apple não documenta essas pastas, então ninguém consegue dizer o que quebra. Use xcrun simctl erase para limpar o conteúdo e os ajustes de um simulador, ou xcrun simctl delete para remover o dispositivo.
Redefinir um simulador com erase remove o runtime do iOS dele?
Não. O erase limpa a pasta de dados do dispositivo e mantém o dispositivo e o runtime dele. Os runtimes são imagens de disco separadas, que você remove com xcrun simctl runtime delete.
Qual pasta pertence a qual simulador?
As pastas em ~/Library/Developer/CoreSimulator/Devices têm o UDID como nome. Rode xcrun simctl list devices para associar cada UDID a um nome de dispositivo, um runtime e um estado.