automatic bootloader without PC software
Your concept makes no sense.  Of course a program needs to run on the PC in order for it to communicate over the serial port.  Whether this code is part of the operating system or something that runs in user mode doesn't change that it takes code to use the serial port.  In the former case, the "program" is just part of the operating system, but you will be stuck with whatever protocol it implements.  This likely won't be very convenient for just getting the data from a HEX file.