O1能跑的代码

This commit is contained in:
fslongjin
2022-08-01 19:43:21 +08:00
parent 28e282d157
commit 58681fd34a
19 changed files with 71 additions and 28 deletions

View File

@ -10,6 +10,8 @@
#include <process/process.h>
#include <sched/sched.h>
#pragma GCC push_options
#pragma GCC optimize("O0")
// 导出定义在irq.c中的中段门表
extern void (*interrupt_table[24])(void);
@ -650,6 +652,7 @@ void apic_ioapic_edge_ack(ul irq_num) // 边沿触发
*
* @param irq_num
*/
void apic_local_apic_edge_ack(ul irq_num)
{
// 向EOI寄存器写入0x00表示结束中断
@ -660,6 +663,7 @@ void apic_local_apic_edge_ack(ul irq_num)
: "memory");
}
/**
* @brief 读取指定类型的 Interrupt Control Structure
*
@ -734,4 +738,5 @@ void apic_make_rte_entry(struct apic_IO_APIC_RTE_entry *entry, uint8_t vector, u
entry->destination.logical.logical_dest = dest_apicID;
entry->destination.logical.reserved1 = 0;
}
}
}
#pragma GCC pop_options