-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2008-05-21 a las 17:46 +0200, Camaleón escribió:
El 21/05/08, Carlos E. R. escribió:
para que metas otro disquete.
Creo que si pulsas una tecla sigue con la carga del sistema operativo... quizá dependa del tipo de bios, sí.
Está bajo el control absoluto del programa que haya en el sector de arranque del disquete. Si quiere te mete el virus de la pelotita y luego arranca.
No todas las bios hacen eso. La mia no, por ejemplo, se queda ahí, y tengo que entrar en la bios y quitar el arranque de CD, o sacar el CD.
Pues no sé, es posible que las más modernas hayan cambiado en éso :-?. Hoy en día casi todos se dejan un dvd dentro para hacer el backup O:-)
O no. Ya te digo, eso no está definido y no es tan sencillo de hacer. Si ve un programa ahí y le pasa el control, la bios no puede hacer nada más porque ya ha salido.
Se trata de que la bios "no vea nada ahí" por eso defines una secuencia de inicio "fake", falsa, tramposa... para que no sea capaz más que de pasar a la controladora scsi tal y como hace ahora...
A ver, intento explicarlo de nuevo. El caso del CD me lo salto porque no lo conozco bien. Lo que hace la bios es leer el primer sector del disco (el que sea, disco, disquete, etc), y meterlo en una posición determinada desde que IBM inventó el PC en memoria. Una vez cargado ahí, hace un "JMP ADDRESS_ABSOLUTE" y la bios ya ha terminado, es responsabilidad completa y absoluta de ese programa que acaba de cargar, y que sea lo que tenga que ser. Si eso que está en el primer sector eran ceros o era el quijote en verso, da igual: lo ejecuta, y que pase lo que tenga que pasar. Si el disco no tiene sistema, lo normal es que quien hizo ese programita, que lo tienen hasta los discos de sólo datos, es decir "oye, que a mí no me puedes arrancar, pulsa una tecla y lo intentamos de nuevo", y a continuación, salta a otro punto de la bios definido desde el principio de los tiempos. No se hacen comprobaciones: eso es para los pusilámines. Esto es un puenting sin mirar la cuerda. Todo lo más se mira que la cuerda existe (o sea, se mira un checksum o algo parecido). En el caso de los CDs no te puedo dar detalles, pero en floppies y discos duros es eso.
Es el programa de arranque que está en el disco no arrancable el que tiene que devolver la pelota a la bios llamando a no recuerdo que interrupción.
El programa de arranque es muy simple, está en assembler, y ocupa 512 bytes incluyendo la tabla de particiones (4 primarias). No hay sitio para florituras.
Jolines, que me lo tuve que estudiar... hace lustros, de acuerdo ;-)
La teoría es clara, pero no me refiero a éso.
Tienes una secuencia de arranque de CD, disquete y sata4. En la unidad de CD no hay nada, en la disquetera tampoco y en el puerto sata 4 de la placa no hay pinchado nada físicamente (porque el disco de datos sata está conectado al puerto sata1).
No haber nada es no haber disco. Si hay disco, lee lo que haya ahí y ejecuta sea lo que sea que haya.
Podría pasar dos cosas:
a) Que la bios (por iniciativa propia) revisara todos los puertos sata1,2,3 / usb / red / zip (que también podría estar definido así y no ser configurable, ojo) para ver si hay algo conectado y "arrancable" antes de seguir con las tarjetas pci...
Algo conectado sí, algo arrancable no. No hay manera de saber que el código que hay en el inicio es un arranque de verdad o es otra cosa. Hace la suposición de que sea un arranque, e intenta arrancarlo. Lo que pasa es que el programa que haya ahí puede devolver la pelota.
b) O que la bios siga con su secuencia lógica de inicio (cd, disquete, sata4 sin nada conectado --> tarjetas pci).
Mi duda es qué haría en este caso :-?
Depende de cada bios. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4-svn0 (GNU/Linux) iD8DBQFINJYTtTMYHG2NR9URAnrHAJ9SkJsEhu4aUaLZpeNWEbE8HUVXBwCfWuUs GtNayd3xygkTLMa7WciWMZ4= =lC8i -----END PGP SIGNATURE-----