8 fprint(2, "usage: fscat fspartition\n");
13 main(int argc, char **argv)
15 extern int nfilereads;
31 if((disk = diskopenfile(argv[0])) == nil)
32 sysfatal("diskopen: %r");
33 if((disk = diskcache(disk, 16384, 16)) == nil)
34 sysfatal("diskcache: %r");
35 if((fsys = fsysopen(disk)) == nil)
36 sysfatal("fsysopen: %r");
38 zero = emalloc(fsys->blocksize);
39 fprint(2, "%d blocks total\n", fsys->nblock);
41 for(i=0; i<fsys->nblock; i++){
42 if((b = fsysreadblock(fsys, i)) != nil){
43 write(1, b->data, fsys->blocksize);
47 write(1, zero, fsys->blocksize);
49 sysfatal("block %d not in use", i);
51 fprint(2, "%d blocks in use, %d file reads\n", n, nfilereads);