コード例 #1
0
ファイル: kmain.c プロジェクト: jiangchhz/abmp
static void *initproc_run(int arg1, void *arg2)
{
	switch(curtest)
	{       
	    case 0: return NULL;
		case 1:	processSetUp(); break;
		case 2: processSetUp(); break;
		case 3: processSetUp(); break;
		case 4: processSetUp(); break;
		case 5: processSetUp(); break;
		case 6: producer_consumer();break;
		case 7: deadlock();break;
		case 8: reader_writer();break;
		case 9: shellTest();break;
		case 10: dead_own(); break;
		case 11: vfs_test_setup(); break;
		case 12: add_tests(); break;
		case 13: ut_vmmap(); break;
		
	}
                
	   int status;
        while(!list_empty(&curproc->p_children))
        {
                pid_t child = do_waitpid(-1, 0, &status);
                /*dbg(DBG_INIT,"Process %d cleaned successfully\n", child);*/
        }
        
        return NULL;
}
コード例 #2
0
/*
 * The test method
 */
void
test_producer_consumer(void)
{
	/* initialize the scenario */
	init_producer_consumer();

	/* generate producers & consumers */
    producer_consumer(0, 0);
    producer_consumer(1, 0);
    producer_consumer(0, 1);
    producer_consumer(1, 1);
    producer_consumer(3, 1);
    producer_consumer(1, 3);
    producer_consumer(4, 4);
    producer_consumer(7, 2);
    producer_consumer(2, 7);
    producer_consumer(6, 6);

    /* 'think we've passed */
    pass();
}
コード例 #3
0
ファイル: producer-consumer.c プロジェクト: ufuoma/pintos
void test_producer_consumer(void)
{
    /*producer_consumer(0, 0);
    producer_consumer(1, 0);
    producer_consumer(0, 1);
    producer_consumer(1, 1);
    producer_consumer(3, 1);
    producer_consumer(1, 3);
    producer_consumer(4, 4);
    producer_consumer(7, 2);
    producer_consumer(2, 7);*/
    producer_consumer(6, 6);
    pass();
}
コード例 #4
0
int main()
{
	int semchoice;
	char semrepeat;
	do
	{
	system("cls");	
	printf("\n======================================================= WELCOME TO SEMAPHORE E - LEARNING TUTORIAL ==================================\n");
	printf("\n                                                             WISH YOU A HAPPY E - LEARNING \n\n");
    printf("\n1.WHAT IS SEMAPHORE?\n\n2.WHAT IS PRODUCER - CONSUMER PROBLEM?\n\n3.INSTRUCTIONS AND LOGIC OF PROGRAM\n\n4.HOW TO SOLVE PRODUCER - CONSUMER PROBLEM?\n\n5.EXIT\n\nENTER YOUR CHOICE\n");
    scanf("%d",&semchoice);
    switch(semchoice)
    {
    	case 1:
    		system("cls");
    		aboutcountingsemaphore();
    		break;
        case 2:
        	system("cls");
		    producer_consumer();
			break;
		case 3:
			system("cls");
		    guideforcountingsemaphore();
			break;
		case 4:
			system("cls");
		    prod_cons_working();
			break;
		case 5:
			printf("\n\n\t\t\tTHANKYOU FOR USING SEMAPHORE E-LEARNING TUTORIAL\n\n");
		    exit(0);
			break;
		default :
		    printf("\n You entered wrong choice\n");
			break;				 		
    }
    printf("\n\n DO YOU WANNA CONTINUE ABOUT COUNTING SEMAPHORE(y/n)\n");
    semrepeat=getch();
    }while(semrepeat=='y'||semrepeat=='Y');
    printf("\n\n\t\t\tTHANKYOU FOR USING SEMAPHORE E-LEARNING TUTORIAL\n\n");
	return 0;
	}