Your question probably has no sense today, because on today's disk even the hardware is handling disk sectors logically: two "consecutive" disk sectors are not physically near, because the hard disk controller is remapping them. Read also about SATA. Some controllers are even able to re-order pending disk requests.
BTW, an SSD does not have any physical geometry (for sectors), but does give the appearance of sector numbering.
In addition, the operating system kernel (notably Linux) is managing the page cache so a write
usually won't write directly the disk. See e.g. the sync(2) syscall.
At last, write(2) is (on Linux and most Unixes) a syscall, and happens inside the kernel. So you won't be able to change its behavior in your libc.
Read also about SMART.