示例#1
0
int main(int argc, char **argv)
{
  parseArgs(argc,argv);
  if (mounted(Device)) {
    fprintf(stderr,"Won't make file system on mounted device.\n");
    exit(1);
  }
  buildSuperBlock();
  buildBitMaps();
  Disk = open(Device,O_RDWR);
  if (Check) checkBlocks();
  if (BBFile) loadBadBlockFile(BBFile);
  if (Verbose) {
    fprintf(stderr,"%d bad blocks found.\n",BadBlocks);
  }
  buildInodes();
  writeFS();
  close(Disk);
  return 0;
}
示例#2
0
void initramfs () {
	kprintf ("Initializing root directory (ramfs)\n");
	rootDir = kmalloc (sizeof (dirEntry_t));
	rootDir->extent = rootDir;
	rootDir->name = (uint8 *) ".";
	rootDir->file = 0;

	dirEntry_t *newDir = kmalloc (sizeof (dirEntry_t));
	rootDir->nextDir = newDir;
	newDir->nextDir = (dirEntry_t *) -1;
	newDir->extent = rootDir;
	newDir->name = (uint8 *) "..";
	newDir->file = 0;

	mkDir ((uint8 *) "/", (uint8 *) "test");
	mkDir ((uint8 *) "/test/", (uint8 *) "test2");
	mkDir ((uint8 *) "/test/", (uint8 *) "boink");
	mkFile ((uint8 *) "/test", (uint8 *) "boo.txt");

	uint8 *buf = (uint8 *) "Hello from boo.txt!";	
	writeFS (openFS ((uint8 *) "/test/boo.txt", 0, 0), 100, buf);

	registerRootFS ((uint8 *) "/", openFS, readFS, writeFS, listDir, 0, 0);
}