cd burning: kernel / userspace?

From: Alan Jenkins
Date: Tue Aug 10 2004 - 05:00:03 EST


I've followed the latest cdrecord "discussion" on the list, and I can't see why you have to use a userspace program which talks SCSI in order to burn a cd.

The current Mount Rainer allows you to treat a MR formatted CD-RW as a big floppy disk - to read and write to /dev/cdrecorder just like /dev/floppy. The packet writing patch takes a different approach - using a separate device which is bound to the cdrecorder device, but AFAIK this is a temporary measure, and the ultimate goal is make this work the same way - the way the user would expect:

1. Insert a recordable media (e.g. cdrw).
2. Perform any necessary formatting (e.g. cdmrw -d /dev/cdrecorder -f full)
3. Access cdrecorder device (e.g. mount /dev/cdrecorder -tudf -onoatime /mnt/cdrecorder)

Why can't a similar method be used for DAO writing? Packet writing and Mount Rainer support belongs in the kernel - why not normal cd burning? On modern "burnproof" hardware, it should be possible to use dd to write your disk image to the cdrecorder device. I'm guessing that this just isn't as interesting, especially with userspace programs available to do the job.

Unfortunately I'm no kernel hacker, so I have no idea whether this is practical, and if so how much work would be involved. I have plenty of time to investigate the idea, and upgrade myself from a mere C programmer. Any advice would be appreciated.

Alan Jenkins
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/