disco FAT16 se niega a montar en Mountain Lion

1

Recientemente he reanudado un pequeño proyecto de sistema operativo desde cero en la Asamblea que comencé hace varios meses en Lion. Parte del proyecto consiste en compilar un archivo binario con NASM (el que se incluye previamente) y luego crear una imagen de disco basada en ese binario. El punto importante proviene del hecho de que el binario se escribe en el primer sector de la imagen para que se pueda iniciar desde otro hardware (el binario se compila con un FAT16 BPB), que pruebo con VirtualBox.

Desafortunadamente, cada vez que compilo e intento montar la imagen en Mountain Lion, aparece un cuadro de diálogo que dice " No se pudo abrir el siguiente disco: boot.img - no hay sistemas de archivos montables ". Pensé que esto era algo extraño en mi código, así que hice una imagen de disco FAT16 en blanco con la Utilidad de Disco, luego comparé mi disco con el creado en un editor hexadecimal, y luego modifiqué mi código en consecuencia. Desafortunadamente, aunque logró montar después, mi código ya no funcionó después de realizar dichos cambios.

Entonces, sabiendo que logré compilar con éxito el código antes (y no lo había tocado desde hace poco), entré en Time Machine y saqué mi antiguo directorio de trabajo. Probé la imagen en VirtualBox, y funciona. Sin embargo, obtengo el mismo error de montaje . Encontré esto muy peculiar, así que copié la imagen del disco en una unidad física, la enchufé en una vieja caja de Ubuntu y, de hecho, se montó. Incluso envié la imagen del disco a un amigo (que todavía está ejecutando la última versión de Lion), y pudo montar la imagen del disco .

TL; DR : ¿Por qué una imagen de disco FAT16 que tengo montada correctamente en Lion, pero no en Mountain Lion? Intenté el montaje intentando open boot.img , hdid boot.img , mount boot.img some_folder y mount -t msdos boot.img some_folder , ninguno de los cuales funcionó. He adjuntado la imagen del disco en cuestión a través de Droplr .

    
pregunta Kyle Lacy 17.08.2012 - 06:13

1 respuesta

0

Finalmente conseguí que el disco se montara al mismo tiempo que conservaba la compatibilidad con mi cargador de arranque. Para cualquiera que se lo pregunte, el conflicto de compatibilidad estaba en el FAT BPB (bloque de parámetros del BIOS). Básicamente, el BPB tiene un campo para especificar cuántos sectores componen un clúster FAT, donde yo proporcioné manualmente un valor de 1. Sin embargo, al cambiar esto a 4 se solucionó el problema. Para obtener más información sobre el BPB, puede ver esta página de referencia (quieres ver el byte 13).

Para cualquiera que encuentre esta respuesta al azar, esto básicamente significa que algunos discos más antiguos (como los disquetes copiados por dd ) ya no podrán ser montados por OS X Mountain Lion. Esto es solo una hipótesis basada en las observaciones de mi propio proyecto, pero espero que esto ayude a alguien más que se encuentre con este problema inverosímil.

    
respondido por el Kyle Lacy 18.08.2012 - 06:00

Lea otras preguntas en las etiquetas