В качестве веселого проекта я подумал, что напишу программу для создания iso-файлов.Насколько я могу сказать, это работает, но читает только 4 КБ каждые 30 секунд.Я использовал eject -x 11, чтобы замедлить мой привод cdrom до разумной скорости.Без этого привод работает на полной скорости и довольно быстро убивает процесс.Будем очень благодарны за любые предложения, чтобы сделать это быстрее / лучше.
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define BUFFSIZE 4092
int main(int argc, char **argv)
{
FILE *fp = fopen("/dev/cdrom", "r");
FILE *file = fopen(strcat(argv[1], ".iso"), "w");
printf("Copying...\n");
while(!feof(fp))
{
char *line=(char *)malloc(sizeof(char) * BUFFSIZE);
fgets(line, BUFFSIZE, fp);
fprintf(file, "%s",line);
free(line);
}//end while
fclose(fp);
fclose(file);
printf("Done!\n");
return 0;
}//end main