Virtual Tape Device Driver on Open Solaris
Hi.. I am currently doing a project on Virtual tape device on Open Solaris along with a couple of my friends at Sun Microsystems. We are trying to simulate the tape device systems which is used in companies to take data backups. The idea is that we should be able to use hard drives/flash drives and make them behave as a tape device. For this we are writing a pseudo tape device driver and using the LDI (Layered Driver Interface) to communicate with the hard disk/ flash disk. The media which we use is abstracted from the pseudo device driver by the LDI interface. We are writing a header which keeps track of the current read and write head and several other data. We should make changes in the header after every read/write/ioctl operation. For this we should perform 'seek' operations on the read/write head of the hard disk to move from the data back up area and the header. Since this is in the kernel level fseek functions will not be of any use. Can anyone kindly help me by suggesting any solution to our problem?
Thank you in advance,