El master boot record esta compuesto de instrucciones de lenguaje máquina en modo real. Ese código pasa, normalmente, el control mediante chain loading al volume boot record de la partición (primaria) activa, aunque algunos gestores de arranque reemplazan ese código convencional por el suyo.
El código convencional del MBR espera que se use el esquema de la tabla de particiones del MBR, y escanea la lista de entradas de particiones (primarias) en la tabla de particiones buscando una que esté marcada con active flag. Luego carga y ejecuta el Volume Boot Record para esa partición (así que el master boot record, como otros sectores de arranque, es un blanco para los virus que infectan el sector de arranque).
El código del MBR, modificado por algunos gestores de arranque, puede realizar una serie de tareas que son distintas según el gestor de arranque. Por ejemplo, en algunos gestores, ese código carga el resto del código del gestor de arranque desde la primera pista del disco (que es espacio libre no asignado a ninguna partición de disco) y lo ejecuta. En otros, usa una tabla de posiciones de disco, que se encuentra en el mismo espacio que el código, para localizar el código del resto del gestor de arranque y poder cargarlo y ejecutarlo. Ambas formas tienen problemas. La primera confía en el comportamiento (que no es el mismo en todas) de las utilidades de particionado de disco y la segunda requiere que la tabla de posiciones de disco se actualice una vez se hayan hecho los cambios para localizar el resto del código.
No hay comentarios:
Publicar un comentario