How is the ROM code loaded/provided on the BeagleBone Black?

I see a few possibilities:

 * It is loaded on in TI's factory and is immutable [unlikely]

 * It is flashed on during manufacture of BeagleBone [most likely]

 * Some other way

If it is open-source, where can it be obtained from?

If it is not open-source, and it is not flashed onto the Sitara by TI, can it be obtained as a binary blob, or can it be extracted from another Sitara?

How would it be flashed (via USB? JTAG?)

Does this ROM code take a similar function as a PC BIOS?  Resetting initial system state (including configuring boot devices), then loading a bootloader?

This question is the sequel to [this one](https://electronics.stackexchange.com/questions/267178/how-would-one-clone-a-beaglebone).

I have been playing with FreeRTOS on some Cortex M3 and F1 boards for a while and I decided to start learning how more complex embedded systems work.