Dual booting arduino

Hey guys, I was just wondering if arduino supported dual booting. Consider this scenario: Suppose there is an arduino that is running in a remote location. I send it a firmware patch or something and it recieves it. It upgrades the firware and then runs more smoothly now from the new firware. So is this possible / feasible ?? Please let me know ! Also ideas about it would be greatly appreciated !

The Arduino sketch is not allowed to write into FLASH memory so a sketch can't really update itself.

Here is information about a bootloader that can read from an SD card: http://harizanov.com/2012/05/flashing-arduino-from-sd-card/

I'm sure I saw somewhere a project for uploading a stock Arduino from another Arduino. You just need to connect to the ICSP header.

Nick Gammon has documented both updating the bootloader from another Arduino, and uploading a sketch from SD cards. http://www.gammon.com.au/forum/?id=11635 http://www.gammon.com.au/forum/?id=11638