Compare commits
2 Commits
dd918794f2
...
de0b8cd37a
| Author | SHA1 | Date |
|---|---|---|
|
|
de0b8cd37a | |
|
|
f24debd8fb |
|
|
@ -126,8 +126,10 @@ void kernel_panic(char *message, cpu_registers_t *regs){
|
|||
}
|
||||
|
||||
void install_irq_handler(void (*handler)(), uint8_t irqno){
|
||||
asm("cli");
|
||||
interrupt_handlers[irqno] = handler;
|
||||
// printf("called\n");
|
||||
asm("sti");
|
||||
}
|
||||
void *get_irq_handler(uint8_t irqno){
|
||||
return interrupt_handlers[irqno];
|
||||
|
|
|
|||
|
|
@ -72,6 +72,7 @@ cpu_registers_t *schedule(cpu_registers_t *regs){
|
|||
}
|
||||
|
||||
uint32_t spawn_new_process(cpu_registers_t defaultregs, char **argv, uint32_t argc, void *cr3){
|
||||
asm("cli");
|
||||
uint32_t i = current_pid;
|
||||
while(processes[i].flags.present){
|
||||
i++;
|
||||
|
|
@ -96,6 +97,7 @@ uint32_t spawn_new_process(cpu_registers_t defaultregs, char **argv, uint32_t ar
|
|||
new_proc.max_descriptors = DEFAULT_FD_MAX;
|
||||
processes[i] = new_proc;
|
||||
add_process_queue(i);
|
||||
asm("sti");
|
||||
return i;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue