Escribir en una unidad flash USB totalmente encriptada en Mavericks es extremadamente lento.
El modelo de unidad que utilicé para probar fue un Kingston DataTraveler Ultimate 3.0 G3 (64 GB). Probé las velocidades de transferencia leyendo / escribiendo un archivo grande desde / hacia una unidad cifrada y no cifrada. Probé en un Macbook actual con Mavericks y en una máquina más antigua con Mountain Lion. Utilicé la Utilidad de Discos para formatear el disco como Mac OS Extended (con registro) y Mac OS Extended (con registro, cifrado).
MacBook Pro (2013) con USB 3.0 con OS X 10.9.2 (13C64)
Escritura: 86.16 MB / seg (cifrado: 0.62 MB / seg)
Lectura: 181,66 MB / seg (cifrado: 151,15 MB / seg)
MacBook Pro (2007) con USB 2.0 con OS X 10.8.5 (12F45)
Escritura: 23.57 MB / seg (cifrado: 5.04 MB / seg)
Lectura: 36,23 MB / seg (cifrado: 37,87 MB / seg)
Como puede ver en la máquina más antigua, la velocidad de escritura disminuye claramente al escribir en el volumen cifrado, pero sigue siendo aproximadamente diez veces más rápida en comparación con la máquina más nueva que ejecuta Mavericks. ¿Podría ser este un problema recientemente introducido en FileVault o CoreStorage?
Actualización (2014-06-28)
La unidad USB parece haber tenido un defecto de hardware desde el principio. Obtuve una unidad de reemplazo (mismo modelo) que todavía no entrega los resultados que esperaría, pero al menos la velocidad de escritura cifrada del MBP 2013 ahora está a la par con el MBP 2007.
MacBook Pro (2013) con USB 3.0 con OS X 10.9.3 (13D65)
Escritura: 135,41 MB / s (encriptado: 9,29 MB / s)
Lectura: 196,22 MB / s (encriptado: 187,04 MB / s)
MacBook Pro (2007) con USB 2.0 con OS X 10.8.5 (12F45)
Escritura: - MB / seg. (Cifrado: 9.39 MB / seg.)
Lectura: - MB / seg. (Codificado: 37.79 MB / seg.)
Sin embargo, esto todavía deja la pregunta de por qué la velocidad de escritura cifrada en la unidad USB en el MBP 2013 es inferior al diez por ciento de la velocidad de escritura normal. También comparé las velocidades de lectura / escritura antes y después de activar FileVault en la SSD interna del 2013 MBP y allí no pude detectar ninguna desaceleración.
time
,dd
yawk
. Blackmagic me da los mismos resultados: goo.gl/bn32fC (sin cifrar) frente a goo.gl/yghyqA (cifrado).Respuestas:
Tengo el mismo problema, que estoy bastante seguro de que se debe a una combinación de la forma en que funcionan las operaciones de escritura en la memoria flash y la forma en que funciona el cifrado de almacenamiento central (o cualquier volumen completo).
Primero, escriba el comportamiento: a diferencia de la memoria volátil (lo que se usa en la memoria de su computadora) o los discos duros, donde cualquier bit se puede escribir en 0 o 1 en cualquier momento, la memoria flash tiene dos estados principales: escrito y borrado. Dentro de "escrito" se encuentran 0 y 1. Cuando necesite escribir en la memoria flash, debe escribir un bloque completo que se encuentre actualmente en estado borrado. El software del sistema de archivos en el sistema operativo puede saber qué bloques son gratuitos, pero el controlador y el almacenamiento en un dispositivo flash no. Se ha ideado una forma especial para que el sistema operativo le indique a un SSD que haga que los bloques estén disponibles para los SSD "conectados al bus": se llama TRIM. Las pilas de protocolo USB, que yo sepa, no son compatibles con TRIM. Entonces, básicamente, la memoria flash continúa llenándose hasta que no hay bloques borrados reales, momento en el cual el sistema de archivos tiene que borrar y reescribir bloques al leerlos, fusionar los nuevos datos, borrarlos y volver a escribirlos. Es por eso que ve que el rendimiento de escritura de archivos pequeños se degrada en las SSD con el tiempo.
Las circunstancias especiales de los volúmenes encriptados son interesantes: dependiendo de la forma en que funciona el encriptado, en realidad puede encriptar un volumen completo, llenando todos los bloques con lo que parecen ser datos aleatorios, incluso si los bloques en realidad no se usan y contienen ceros. Entonces, cuando activa FileVault (o habilita el cifrado de almacenamiento principal), básicamente consume todo el volumen, sin dejar espacio para las operaciones de escritura. El sistema de archivos tiene que leer, borrar y reescribir bloques constantemente para poder reescribirlos con cualquier información cifrada que desee poner.
Ahora diré aquí que esto es especulación basada en una comprensión razonable de cómo funcionan las cosas, pero hay personas que realmente conocen los detalles, que pueden corregir o mejorar mi explicación y espero que lo hagan.
fuente
hdiutil attach
, luego lo usorsync
para sincronizar con mi carpeta local, luego desmonto el paquete disperso conhdiutil detach
y expulso la unidad de discodiskutil eject
.