Acceso directo al disco duro sin FS del programa C en Linux

Quiero acceder a todo el disco duro directamente desde un programa en C. No hay FS en él y nunca será uno.

Solo quiero abrir / dev / sda (por ejemplo) y hacer E / S en el nivel de bloque / sector del disco.

Estoy planeando escribir algunos programas para aprender programación en C en el entorno Linux (conozco el lenguaje C, Python, Perl y Java) pero carecen de confianza con el entorno Linux.

Para mis propósitos de aprendizaje, estoy pensando en jugar con kyoto-cabinet y guardar el valor correspondiente al hash calculado directamente en un "bloque / sector" del disco duro, registrando el par: "referencia de hash, bloque / sector" en un archivo de base de datos hash de kyoto-cabinet.

No sé si esto es factible utilizando las funciones estándar de E / S C o de lo contrario tendría que escribir un "controlador de dispositivo" o algo así como ...

Respuestas a la pregunta(3)

Su respuesta a la pregunta