Timeline for How do operating systems… run… without having an OS to run in?
Current License: CC BY-SA 3.0
17 events
| when toggle format | what | by | license | comment | |
|---|---|---|---|---|---|
| May 23, 2016 at 8:24 | review | Low quality posts | |||
| May 23, 2016 at 11:51 | |||||
| Nov 1, 2012 at 15:21 | comment | added | Martin Beckett | @Coomie - or cthullu.stackexchange.com - this is the PC architecture we are talking about | |
| Oct 26, 2012 at 17:39 | comment | added | mouviciel | The devil is in the details. | |
| Oct 26, 2012 at 14:11 | comment | added | cHao |
@Tobias: In the 8086, the startup address is 0xFFFF0. In the 386, though (the first IA-32 processor in the family, IA-32 being what people generally mean when they say "x86"), it's 0xFFFFFFF0. I imagine most systems will ensure that both addresses contain valid code, in order to stay compatible with DOS. But a 32-bit CPU will use the latter address.
|
|
| Oct 26, 2012 at 13:10 | comment | added | Tobias Kienzler |
@cHao My bad, I skiped the BIOS... Isn't that three F's too many? IIRC the reboot assembler code is JMP F000:FFF0 (or equivalently FFFF:0000, both meaning 0xFFFF0 due to the real mode paging...)
|
|
| Oct 26, 2012 at 12:32 | comment | added | cHao |
@Tobias: "x86" != "IBM". :) Actually, an x86 CPU, execution starts at 0xFFFFFFF0, which (in an IBM-compatible system) usually is a jump into the BIOS code to set itself up and load a boot sector into memory. There's quite a bit of code that runs before 0x7c00 even contains viable instructions, and in a non-IBM-compatible system the boot code may be loaded into a whole other location.
|
|
| Oct 25, 2012 at 6:10 | comment | added | Tobias Kienzler |
@mouviciel The adress in memory is 0x7C00 for any x86 compatible architecture and first has to be filled by the BIOS which usually loads the first sector of whatever bootable device it prefers... Nice answer though :-7
|
|
| Oct 24, 2012 at 19:25 | comment | added | Canadian Luke | ... And on the 7th day, the Man rested with his games | |
| Oct 24, 2012 at 18:02 | comment | added | Midhat | and thus our interface to hardware evolves from bare metal software to the modern GUIs and CLIs over several million microseconds | |
| Oct 24, 2012 at 17:10 | comment | added | Random832 | @Midhat from the switches on the front panel. | |
| Oct 24, 2012 at 12:53 | comment | added | gnat | @mouviciel that sounds like first address is written in stone doesn't it | |
| S Oct 24, 2012 at 12:44 | history | suggested | Cloudy | CC BY-SA 3.0 |
Minor grammar fix
|
| Oct 24, 2012 at 12:42 | review | Suggested edits | |||
| S Oct 24, 2012 at 12:44 | |||||
| Oct 24, 2012 at 10:21 | comment | added | mouviciel | @Midhat - The first address to be fetched by the CPU is hardwired inside it. Usually it is 0. | |
| Oct 24, 2012 at 9:58 | comment | added | Midhat | what is "a given address" where does it come from. Sorry for playing Charles Darwin here. | |
| Oct 24, 2012 at 8:12 | comment | added | Coomie | This answer should be moved to christianity.stackexchange.com | |
| Oct 24, 2012 at 8:01 | history | answered | mouviciel | CC BY-SA 3.0 |