Ejemplo n.º 1
0
int main(int argc, char* argv[])
{
	schd = create_scheduler();
	initialize_scheduler(schd, NULL);

	session_1 = create_session();
	initialize_session(session_1, "222.214.218.237", 6601, "1299880", 0);
	set_session_index(session_1, 0);
	add_session(schd, session_1);

	session_2 = create_session();
	initialize_session(session_2, "222.214.218.237", 6601, "1299880", 1);
	set_session_index(session_2, 1);
	add_session(schd, session_2);

	set_surface_mode(schd->surface, mode_2);

	scheduler_start(schd);
	session_start(session_1);
	session_start(session_2);

	scheduler_wait(schd);

	session_stop(session_1);
	session_stop(session_2);
	destroy_session(session_1);
	destroy_session(session_2);

	return 0;
}
Ejemplo n.º 2
0
int main()
{
    WDTCTL = WDTPW | WDTHOLD;
    uart_init();
    printf_int("\n---------------\n[main] started, I have id %d\n\n",
    sancus_get_self_id());
    
    sancus_enable(&a);
    sancus_enable(&foo);
    sancus_enable(&bar);
    sancus_enable(&scheduler);

    //do_control_flow_integrity_hack();
    
    puts("[main] set sm internal vars");
    set_a_vars();
    set_bar_vars();
    set_foo_vars();
    
    puts("[main] initializing scheduler");
    initialize_scheduler();
    
    register_thread_portal(&a, SM_GET_ENTRY_IDX(a, enter_a));
    register_thread_portal(&foo, SM_GET_ENTRY_IDX(foo, enter_foo));    
    register_thread_portal(&bar, SM_GET_ENTRY_IDX(bar, call_a_illegal_ret));
    dump_scheduler();
    
    puts("[main] dumping thr ids");
    print_a_cur_thr_id();
    print_bar_cur_thr_id();
    print_foo_cur_thr_id();
    
    puts("[main] starting scheduler");
    start_scheduling();

    puts("[main] return from scheduler:");
    dump_scheduler();
    
    puts("[main] dumping thr ids");
    print_a_cur_thr_id();
    print_bar_cur_thr_id();
    print_foo_cur_thr_id();
    
    puts("\n[main] exiting\n-----------------");
    EXIT
}
Ejemplo n.º 3
0
PyMODINIT_FUNC initjit(void)
{   
    PyThunk_Init();
    initialize_thunk_methods();
    initialize_operation();
    initialize_thunk_as_number();
    initialize_thunk_as_sequence();
    initialize_parser();
    initialize_compiler();
    initialize_scheduler();
    initialize_thunk_as_mapping();

    //initialize module
    PyObject *m = Py_InitModule3("jit", module_methods, module_docstring);
    if (m == NULL)
        return;

   	create_threads();
}