Voltar ao blog

Dentro de um simulador do Xcode de 9,8 GB: os apps ocupavam 350 MB

Medi a pasta de dados de dez simuladores de iOS. Os contêineres de apps ocupavam de 0,07 a 0,34 GB. Snapshots dos pôsteres da Tela Bloqueada, logs, assets da Siri e caches de símbolos ocupavam o resto.

Publicado 26 de outubro de 2026 Autor Vladimir Chemeris Tempo de leitura 6 min de leitura
XcodeSimulatorDeveloper Cleanup

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

  1. Encontre os simuladores pesados: du -sh ~/Library/Developer/CoreSimulator/Devices/* | sort -h | tail.
  2. Associe cada UDID a um nome com xcrun simctl list devices.
  3. Olhe dentro de um deles: du -h -d 4 ~/Library/Developer/CoreSimulator/Devices/<UDID>/data | sort -h | tail -20.
  4. Se você não precisa mais do estado dele, desligue e limpe o simulador: xcrun simctl shutdown <UDID>, depois xcrun simctl erase <UDID>.
  5. 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.

Gráfico de barras da pasta de dados de 9,81 GB do simulador de QA: PRBPosterExtensionDataStore 2,88 GB, var/db/diagnostics 2,07 GB, private/var/MobileAsset 2,03 GB, coresymbolicationd 1,13 GB, var/db/uuidtext 0,49 GB, todo o resto 0,87 GB e Containers com todos os apps 0,34 GB
A pasta de dados do simulador de QA. Todos os contêineres de apps juntos formam a barra mais curta.
Pasta dentro de dataTamanho
Library/Application Support/PRBPosterExtensionDataStore2,88 GB
var/db/diagnostics2,07 GB
private/var/MobileAsset2,03 GB
Library/Caches/com.apple.coresymbolicationd1,13 GB
var/db/uuidtext0,49 GB
Containers, todos os contêineres de apps0,34 GB
Pasta data inteira9,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.

Gráfico de barras empilhadas das pastas de dados de dez simuladores, de 0,63 a 9,81 GB. Os contêineres de apps ocupam de 0,07 a 0,34 GB em cada dispositivo. O repositório de pôsteres só é grande nos dois dispositivos com iOS 27.0 inicializados. O log do sistema e o MobileAsset ocupam a maior parte do resto.
Dez simuladores, divididos em contêineres de apps, repositório de pôsteres, log do sistema (diagnostics mais uuidtext), MobileAsset e todo o resto. Um ponto marca os dispositivos que estavam inicializados.
SimuladoriOSEstadodataRepositório de pôsteresdiagnosticsMobileAssetContainers
Dispositivo de QA, iPhone 18 Pro27.0Inicializado9,812,882,072,030,34
iPad Pro 13-inch (M5)27.0Inicializado4,591,650,211,700,16
iPhone 1618.6Desligado3,140,031,220,790,24
iPhone SE (3rd generation)26.5Inicializado2,620,040,361,000,31
iPhone 11 Pro26.5Desligado2,360,000,151,210,12
iPhone 16, build de dogfood18.6Desligado2,030,030,360,900,11
iPhone 16 Pro Max18.6Inicializado1,580,050,050,900,15
iPhone 16 Pro Max27.0Desligado1,530,170,020,170,16
iPad Pro 11-inch (M4)18.6Desligado1,470,030,090,780,07
iPhone SE (3rd generation), segundo app18.6Desligado0,630,030,010,210,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 assetsTamanho
com_apple_MobileAsset_UAF_Siri_Understanding805 MB
com_apple_MobileAsset_UAF_LinguisticData409 MB
com_apple_MobileAsset_UAF_Siri_TextToSpeech289 MB
com_apple_MobileAsset_UAF_SearchQueryUnderstanding106 MB
com_apple_MobileAsset_TTSAXResourceModelAssets96 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 unavailable remove 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.

Tela Developer caches do StorageRadar: Xcode DerivedData com 41,8 GB em Safe to clean, com uma nota de que o próximo build o reconstrói, e CoreSimulator Data com 34,6 GB em Review before cleaning
No Dev Cleanup do StorageRadar, 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.

Sobre o autor

Vladimir Chemeris

Fundador, StorageRadar

Vladimir Chemeris desenvolve o StorageRadar, um app de macOS para análise de armazenamento com foco em privacidade, limpeza com revisão prévia, armazenamento de desenvolvedor e comparação antes e depois.

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.

Fontes e referências

Veja cada simulador ao lado do resto do seu armazenamento de desenvolvedor.

O Disk Map do StorageRadar detalha cada pasta de simulador. O Dev Cleanup lista o CoreSimulator em Review before cleaning e roda um Dry Run antes de qualquer remoção.