ATtiny 2313 e HV programming, tutti in sciopero

Ecco cosa passa l'IDE quando si flasha il Blink sull'Arduino (la lunghezza della path è data dalla posizione della mia cartella di Arduino):

/home/leo/Documenti/Software/Programmazione/Arduino/arduino-1.0.1/hardware/tools/avrdude -C/home/leo/Documenti/Software/Programmazione/Arduino/arduino-1.0.1/hardware/tools/avrdude.conf -v -v -v -v -patmega328p -carduino -P/dev/ttyACM0 -b115200 -D -Uflash:w:/tmp/build6022567018533228354.tmp/Blink.cpp.hex:i

Ero stato tratto in inganno dal parametro -D, pensavo si riferisse alla Eeprom, invece riguarda la Flash. Leggo però nel manuale che col parametro -D non viene cancellata la Flash e, in aggiunta, vengono sovrascritte nella Flash solo le pagine effettivamente da scrivere, senza toccare le altre. Ciò significa che se io scrivo un firmware di 1024 byte sopra ad un precedente firmware che occupava più memoria, la parte di Flash non sovrascritta dal nuovo programma mantiene il suo contenuto? Se lo fanno per preservare la Flash, mi pare alquanto inutile dato che le prime locazioni verranno sempre sovrascritte. O lo fanno per preservare il bootloader, che altrimenti verrebbe cancellato? Però questo dovrebbe risiedere in una zona di memoria protetta, no?