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"); }
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; }