How does BIOSes identify a bootsector on a disk nowadays?Often, you will see a boot signature (0xAA55) at the end. Older versions of BIOSes looked for this in order to identify a boot sector on a disk. It is evidently unnecessary nowadays.
Why is the 0x55AA signature unnecesary nowadays?
-
- Posts: 13
- Joined: Sun Nov 05, 2017 1:46 pm
- Libera.chat IRC: 4dr14n31t0r
Why is the 0x55AA signature unnecesary nowadays?
I am following the babystep tutorial http://wiki.osdev.org/Babystep1 but somewhere says:
Re: Why is the 0x55AA signature unnecesary nowadays?
Unnecessary for emulators like QEMU.4dr14n31t0r wrote:I am following the babystep tutorial http://wiki.osdev.org/Babystep1 but somewhere says:Often, you will see a boot signature (0xAA55) at the end. Older versions of BIOSes looked for this in order to identify a boot sector on a disk. It is evidently unnecessary nowadays.
The boot sector is always the first 512 bytes of the first sector of the media.4dr14n31t0r wrote:How does BIOSes identify a bootsector on a disk nowadays?
The BIOS uses various criteria to verify that it is a legitimate boot sector before executing it.
-
- Posts: 13
- Joined: Sun Nov 05, 2017 1:46 pm
- Libera.chat IRC: 4dr14n31t0r
Re: Why is the 0x55AA signature unnecesary nowadays?
But what are the criterias of BIOS? Where can I find more information about that?mikegonta wrote:The BIOS uses various criteria to verify that it is a legitimate boot sector before executing it.
Re: Why is the 0x55AA signature unnecesary nowadays?
You can download the 3-volume BIOS manual by Phoenix. It can be considered a full programming reference for 16 and 32-bit BIOS from standard PCs of the 90's which largely reaches modern BIOSes at the basic services, but not newer ones:
http://archive.org/details/Phoenix_PC_BIOS_Books
Listen the first volume:
http://www.youtube.com/edit?o=U&video_id=gdUipEt4WPk
You can carefully study the BIOS code from Bochs to see how it does things.
You can see the 286 BIOS code from here:
http://www.intel-assembler.it/portale/5 ... e-code.asp
You can look at Ralf Brown BIOS Interrupt List:
http://www.ctyme.com/rbrown.htm
You will need to study the code from different OS development tutorials, the code from VisOpSys, MenuetOS, Linux, ReactOS, etc. Study boot methods from floppy, hard disk partitions, CDs/DVDs, network. That should clear out the topic of detecting valid boot media:
http://devel.archefire.org/mirrors/
Information about many newer BIOS services, specifically INT 15h EAX=E801h/E820h:
https://www.google.com/search?q=bios+e801+specification
http://wiki.osdev.org/Detecting_Memory_(x86)
http://www.esapcsolutions.com/ecom/draw ... serMan.pdf
http://download.intel.com/support/mothe ... onv10a.pdf
http://www.scs.stanford.edu/05au-cs240c ... bbs101.pdf
http://www.dmtf.org/sites/default/files ... _3.0.0.pdf
http://uefi.org/sites/default/files/res ... ACPI_1.pdf
http://www.rmprepusb.com/tutorials/biostestmem
Inspect your existing disks with the specification documents, and try to reconstruct the overall booting sequence, maybe in an x86 emulator.
http://archive.org/details/Phoenix_PC_BIOS_Books
Listen the first volume:
http://www.youtube.com/edit?o=U&video_id=gdUipEt4WPk
You can carefully study the BIOS code from Bochs to see how it does things.
You can see the 286 BIOS code from here:
http://www.intel-assembler.it/portale/5 ... e-code.asp
You can look at Ralf Brown BIOS Interrupt List:
http://www.ctyme.com/rbrown.htm
You will need to study the code from different OS development tutorials, the code from VisOpSys, MenuetOS, Linux, ReactOS, etc. Study boot methods from floppy, hard disk partitions, CDs/DVDs, network. That should clear out the topic of detecting valid boot media:
http://devel.archefire.org/mirrors/
Information about many newer BIOS services, specifically INT 15h EAX=E801h/E820h:
https://www.google.com/search?q=bios+e801+specification
http://wiki.osdev.org/Detecting_Memory_(x86)
http://www.esapcsolutions.com/ecom/draw ... serMan.pdf
http://download.intel.com/support/mothe ... onv10a.pdf
http://www.scs.stanford.edu/05au-cs240c ... bbs101.pdf
http://www.dmtf.org/sites/default/files ... _3.0.0.pdf
http://uefi.org/sites/default/files/res ... ACPI_1.pdf
http://www.rmprepusb.com/tutorials/biostestmem
Inspect your existing disks with the specification documents, and try to reconstruct the overall booting sequence, maybe in an x86 emulator.
YouTube:
http://youtube.com/@AltComp126
My x86 OS/software:
https://sourceforge.net/projects/api-simple-completa/
Donate to get more food/programming resources/computers:
https://www.paypal.com/donate/?hosted_b ... QS2YTW3V64
http://youtube.com/@AltComp126
My x86 OS/software:
https://sourceforge.net/projects/api-simple-completa/
Donate to get more food/programming resources/computers:
https://www.paypal.com/donate/?hosted_b ... QS2YTW3V64
Re: Why is the 0x55AA signature unnecesary nowadays?
Oh FFS.... really? I mean, friggin' REALLY?~ wrote:Listen the first volume:
http://www.youtube.com/edit?o=U&video_id=gdUipEt4WPk
First off, the link you provided doesn't even work.
Second, and I thought we had been through this before -- a technical reference of several hundred pages, funneled through a speech processor and read to you by an artificial voice over the course of close to ten hours?
That is worse than useless. This is sorry twits desperate to generate some content and traffic for their YT channel. What's next, the Yellow Pages of New Hampshire?
Every good solution is obvious once you've found it.