ファイルを作成し、システム コール操作によって 256 MB サイズのランダムな文字をコピーしようとしていますが、どうすればよいのかわかりません。
明らかに、ファイルはtxtファイルである必要があるため、O_RDWRフラグを指定してcreat関数を使用しようとしたが、txtファイルが作成されなかった場合、開くことができなかった不明なものでした。PERMS のことを Web で見ましたが、理解できませんでした。これは私がこれまでに書いたものです:
char buff[1024*1024];
j=0;
for (i=0;i<(1024*1024);i++){
if (j==256) j=0;
buff[i]='a'+j;
j++;
}
fd= open(argv[1], O_RDWR);
if (fd < 0) {
fd= creat(argv[1],O_RDWR);
for (i=0; i<256; i++) {
write(fd, buff, 1024*1024);
}
ファイルは作成されますが、アクセスできず、サイズは 0 です。