示例#1
0
文件: ex1.c 项目: oaLightning/os_hw
int main(int argc, char const *argv[])
{
	VERIFY(argc == ParameterCount, "Bad parameter count\n", ECBadArgumentCount);

	const char * filePath = argv[TargetFile];

	if (doesFileExist(filePath)) {
		printf("Input file exists\n");
		FileType fileType = getFileType(filePath);
		printFileType(fileType);
		VERIFY(FTDir != fileType, "Can't add data to a directory\n", ECFileIsADirectory);
		makeFileSize(filePath, TARGET_FILE_SIZE);
	}
	else {
		printf("Input file does not exist\n");
		makeFileSize(filePath, TARGET_FILE_SIZE);
	}

	/* This is the code used for making the graph
	size_t writeSizes[] = {MEGABYTE(1),KILOBYTE(256), KILOBYTE(64), KILOBYTE(16), KILOBYTE(4)};
	for (int i = 0; i < ARRAYSIZE(writeSizes); i++) {
		printWriteStatistics(filePath, writeSizes[i]);
	}
	
	printf("**************\n");
	*/
	
	printWriteStatistics(filePath, WRITE_SIZE);

	return 0;
}
示例#2
0
int main()
{
	
	const char *filePath = "ndk";
	DIR *directory = opendir(filePath);	
	struct dirent *p;	
	long dir_pos;
	
	while ((p = readdir(directory)) != NULL) {
		char *name = p->d_name;		
		if ((strcmp(name, ".") == 0) || (strcmp(name, "..") == 0)) continue;		
		if (strcmp(name, "obj") == 0) {
			// record current dir point's position.
			dir_pos = telldir(directory);	
		}
		printf("File-ino: %ld\n", p->d_ino);
		printf("File-off: %ld\n", p->d_off);
		printf("File-reclen: %u\n", p->d_reclen);
		printFileType(p->d_type);
		printf("File-name: %s\n", name);
		printf("------------------------------------------\n");
	}
	
	// Move dir pointer position to "obj"	
	seekdir(directory, dir_pos);
	while ((p = readdir(directory)) != NULL) {
		char *name = p->d_name;		
		if ((strcmp(name, ".") == 0) || (strcmp(name, "..") == 0)) continue;		
		if (strcmp(name, "obj") == 0) {
			dir_pos = telldir(directory);	
		}
		printf("File-ino: %ld\n", p->d_ino);
		printf("File-off: %ld\n", p->d_off);
		printf("File-reclen: %u\n", p->d_reclen);
		printFileType(p->d_type);
		printf("File-name: %s\n", name);
		printf("------------------------------------------\n");
	}

	closedir(directory);		
	return 0;
}