| fprint(2, "usage: fscat fspartition\n"); |
| main(int argc, char **argv) |
| if((disk = diskopenfile(argv[0])) == nil) |
| sysfatal("diskopen: %r"); |
| if((disk = diskcache(disk, 16384, 16)) == nil) |
| sysfatal("diskcache: %r"); |
| if((fsys = fsysopen(disk)) == nil) |
| sysfatal("fsysopen: %r"); |
| zero = emalloc(fsys->blocksize); |
| fprint(2, "%d blocks total\n", fsys->nblock); |
| for(i=0; i<fsys->nblock; i++){ |
| if((b = fsysreadblock(fsys, i)) != nil){ |
| write(1, b->data, fsys->blocksize); |
| write(1, zero, fsys->blocksize); |
| sysfatal("block %d not in use", i); |
| fprint(2, "%d blocks in use, %d file reads\n", n, nfilereads); |