1. Suppose a file is on a filesystem using a 1K block size. This file is maintained on the disk using inodes as is typical on many UNIX filesystems. Suppose there are seven direct pointers, and then a pointer to one singly direct block, a pointer to a doubly indirect block, and a pointer to a triply indirect block. Suppose a program creates and opens a file in this filesystem, and then seeks to the following positions, writes a character, and then exits. Identify how many disk blocks, (both data and indirect blocks) must be allocated to store the data for the file. (Note that a-c each represent a different file.)
a. Seek to 9000
b. Seek to 300000
c. Seek to 67,000,000
How big would a file need to be to require the triply indirect pointer?
2. As discussed in office hours, the MINIX filesystem supports filenames of 60 characters (and allocates all 60 characters in the directory file, whether they are used or not). In light of this fact, explain why the ‘rename’ system call was not simply implemented by changing the filename in place in the directory file