以下のソフトを見つけたのですが、こういう機能はC言語だけで書けるのでしょうか?
http://www.zdnet.co.jp/products/tdk/hddataclear.html

それともアセンブラも必要なのでしょうか?

別にこの機能が欲しいわけじゃなくて、どういう原理でできているのかなぁ?
と思いまして、書き込みました。

よろしくお願いします。