/* Sets up the timer to interrupt TIMER_FREQ times per second, and registers the corresponding interrupt. */ void timer_init (void) { list_init(&blocked_pqueue); pit_configure_channel (0, 2, TIMER_FREQ); intr_register_ext (0x20, timer_interrupt, "8254 Timer"); }
/* Sets up the timer to interrupt TIMER_FREQ times per second, and registers the corresponding interrupt. */ void timer_init (void) { pit_configure_channel (0, 2, TIMER_FREQ); intr_register_ext (0x20, timer_interrupt, "8254 Timer"); list_init(&threadsToWakeUp); }
/* Sets up the timer to interrupt TIMER_FREQ times per second, and registers the corresponding interrupt. */ void timer_init (void) { list_init (&sleep_list); pit_configure_channel (0, 2, TIMER_FREQ); intr_register_ext (0x20, timer_interrupt, "8254 Timer"); }
/* Sets up the timer to interrupt TIMER_FREQ times per second, and registers the corresponding interrupt. */ void timer_init (void) { pit_configure_channel (0, 2, TIMER_FREQ); intr_register_ext (0x20, timer_interrupt, "8254 Timer"); list_init(&dormidos); //PRACTICA1 }
/* Sets up the timer to interrupt TIMER_FREQ times per second, and registers the corresponding interrupt. */ void timer_init (void) { pit_configure_channel (0, 2, TIMER_FREQ); intr_register_ext (0x20, timer_interrupt, "8254 Timer"); list_init (&wait_sema_list); sema_init (&sema_calc_tick,1); }
/* Sets up the timer to interrupt TIMER_FREQ times per second, and registers the corresponding interrupt. */ void timer_init (void) { pit_configure_channel (0, 2, TIMER_FREQ); intr_register_ext (0x20, timer_interrupt, "8254 Timer"); list_init( &sleeping_threads_list ); // Initialize list of sleeping threads ASSERT (list_empty (&sleeping_threads_list)); }
/* Sets up the timer to interrupt TIMER_FREQ times per second, and registers the corresponding interrupt. */ void timer_init (void) { pit_configure_channel (0, 2, TIMER_FREQ); intr_register_ext (0x20, timer_interrupt, "8254 Timer"); /* Initialize list */ list_init (&waiting_in_line); }
/* Sets up the timer to interrupt TIMER_FREQ times per second, and registers the corresponding interrupt. */ void timer_init (void) { pit_configure_channel (0, 2, TIMER_FREQ); intr_register_ext (0x20, timer_interrupt, "8254 Timer"); //initialize sleepingThreads list list_init(&sleepingThreads); }
/* Sets up the timer to interrupt TIMER_FREQ times per second, and registers the corresponding interrupt. */ void timer_init (void) { pit_configure_channel (0, 2, TIMER_FREQ); intr_register_ext (0x20, timer_interrupt, "8254 Timer"); #if 1 /* pj1 */ list_init(&sleep_list); lock_init(&sleep_list_lock); #endif }
/* Sets up the timer to interrupt TIMER_FREQ times per second, and registers the corresponding interrupt. */ void timer_init (void) { pit_configure_channel (0, 2, TIMER_FREQ); intr_register_ext (0x20, timer_interrupt, "8254 Timer"); list_init (&sleeping_list); printf("Sleeping list initialized"); list_init (&wakeup_list); }
/*! Initializes the serial port device for queued interrupt-driven I/O. With interrupt-driven I/O we don't waste CPU time waiting for the serial device to become ready. */ void serial_init_queue(void) { enum intr_level old_level; if (mode == UNINIT) init_poll(); ASSERT(mode == POLL); intr_register_ext(0x20 + 4, serial_interrupt, "serial"); mode = QUEUE; old_level = intr_disable(); write_ier(); intr_set_level(old_level); }
void pci_register_irq (struct pci_dev *pd, pci_handler_func * f, void *aux) { int int_vec; ASSERT (pd != NULL); ASSERT (pd->irq_handler == NULL); pd->irq_handler_aux = aux; pd->irq_handler = f; int_vec = pd->pch.pci_int_line + 0x20; list_push_back (&int_devices, &pd->int_peer); /* ensure that pci interrupt is hooked */ if (!intr_is_registered (int_vec)) intr_register_ext (int_vec, pci_interrupt, "PCI"); }
/*! Initializes the keyboard. */ void kbd_init(void) { intr_register_ext(0x21, keyboard_interrupt, "8042 Keyboard"); }