Serial write time

won't the hardware deal with the bits without using any IRQ?

No, because write() just puts the character in the SW fifo and makes sure interrupts are turned on; it never puts data directly into the uart.