Пример #1
0
int main()
{
	int tid1;
	
	turnDebugOn();
	
	smutex_init(&mutex);
	
	printf("Códigos retornados:\n");
	
	printf("swait(12): %d\n", swait(12));
	printf("syield(): %d\n", syield());
	printf("slock(&mutex): %d\n", slock(&mutex));
	printf("sunlock(&mutex): %d\n", sunlock(&mutex));
	
	printf("E finalmente inicializando...\n");
	
	printf("tid1 = screate(1, f_thread, NULL);\n");
	tid1 = screate(1, f_thread, NULL);
	printf("tid1 : %d\n", tid1);
	
	swait(tid1);

	return 0;
}
Пример #2
0
void cacheinit() {
    scond_init(&isCountZero);
    scond_init(&isOrderPositive);
    smutex_init(&mutex);

    int i;
    count = 0;
    for (i = 0; i < CACHESIZE; i++ ) {
        smutex_init(&cache[i].mutex);
        cache[i].dirty = false;
        cache[i].blocknum = INVALID;
    }

    for (i = 0; i < CACHESIZE; i++) {
        order[i] = i;
    }
}
Пример #3
0
int main()
{
	int t1, t2;
	
	turnDebugOn();
	smutex_init(&mutex);
	global = 0;
	
	t1 = screate(0, func1, NULL);
	t2 = screate(0, func2, NULL);
	
	
	swait(t1);
	swait(t2);
	

	return 0;
}