Ejemplo n.º 1
0
int main(int argc, char** argv){
    char *part   = NULL;
    int opt;
    int option_index = 0;
    const char *optstring = ":hc:";
    static struct option long_options[] = { 
        {  "check", required_argument, NULL, 'c'},
        {   "help", no_argument,       NULL, 'h'},
        {0, 0, 0, 0}
    };  

    while( (opt = getopt_long(argc, argv, optstring, long_options, &option_index)) != -1 ){
        switch( opt ){
            case 'c':
                part   = (char*)malloc(512);
                strcpy(  part, optarg);
                printf("Check partition [%s]\n", part);
                break;
            case 'h':
                exit(0);
                break;
            case '?':
            default:
                printf("\nERROR: Unknown options!\n");
                exit(1);
                break;
        }   
    }

	//int ret = CHECK_PASS;
	//char *part = "/system";
	if(part == NULL){
		part = (char*)malloc(512);
		strcpy(part, "/system");
	}

	int ret = main_check(part);
	printf("\n\n>>>>> RESULT <<<<< %s!!\n", ret==0?"Success":"Fail");
	
	if(part != NULL){
		free(part);
	}
#if 0
	switch(ret){
    	case(CHECK_PASS):					printf("[success]\n");							break;
		case(CHECK_FAIL):					printf("[error] CHECK_FAIL\n");					break;
		case(CHECK_NO_KEY):					printf("[error] CHECK_NO_KEY\n");				break;
		case(CHECK_OPEN_FILE_ERR):			printf("[error] CHECK_OPEN_FILE_ERR\n");		break;
		case(CHECK_MOUNT_ERR):				printf("[error] CHECK_MOUNT_ERR\n");			break;
		case(CHECK_SYSTEM_FILE_NUM_ERR):	printf("[error] CHECK_SYSTEM_FILE_NUM_ERR\n");	break;
		case(CHECK_FILE_NOT_MATCH):			printf("[error] CHECK_FILE_NOT_MATCH\n");		break;
		case(CHECK_LOST_FILE):				printf("[error] CHECK_LOST_FILE\n");			break;
		case(CHECK_ADD_NEW_FILE):			printf("[error] CHECK_ADD_NEW_FILE\n");			break;
		case(CHECK_IMAGE_ERR):				printf("[error] CHECK_IMAGE_ERR\n");			break;
		default:							printf("[error] unknow error\n");				break;
	}
#endif
	printf("\n");
}
Ejemplo n.º 2
0
int main(int argc, char ** argv)
{
	bool success_all = true;
	bool unbalance_check = true;
	struct busy_data busy;
	const char * exec_name = argv[0];

	os_init(OS_INIT_NOFREQUENCY);
	printf("# %s Created by Olivier Cozette <*****@*****.**>\n# Copyright (C) 2013  ARM Limited\n", argv[0]);

	if ((argc > 1) && (strcmp(argv[1], "NO_BALANCE_CHECK") == 0))
	{
		argv++;
		argc--;
		unbalance_check = false;
	}

	if (argc < 5)
	{
		printf("#Usage %s [NO_BALANCE_CHECK] TOTAL_SEQUENTIAL_TIME RUNNING_TIME SLEEPING_TIME NICE_PID0 [NICE_PID1] ...\n", exec_name);
		printf("#\tif NO_BALANCED_CHECK is given, even unbalanced thread won't raise a FAILED\n");
		os_cleanup();
		exit(1);
	}

	if (!main_init(&busy, argc, argv))
	{
		printf("# error :%s\n", busy.error_str);
		main_cleanup(&busy);
		os_cleanup();
		exit(1);
	}

	if (!main_launch(&busy))
		success_all = false;
	if (!main_wait(&busy))
		success_all = false;
	if (success_all)
		printf("SUCCESS before checking if tasks were well balanced\n");
	if (!main_check(&busy))
	{
		if (unbalance_check)
			success_all = false;
		else
			printf("#Seen as unbalanced or not using all the cpu time, but this doesn't affect the result\n");
	}

	main_cleanup(&busy);
	os_cleanup();
	if (!success_all)
	{
		printf("FAILED\n");
		exit(1);
	}
	printf("SUCCESS\n");
	return 0;
}