58 Commits

Author SHA1 Message Date
fslongjin
82e34f271f 为每个核心分配单独的IST 2022-04-13 17:58:06 +08:00
fslongjin
3fc2ec6d7e 🎨 更改全局变量定义的位置 2022-04-13 11:15:16 +08:00
fslongjin
2d7b2b7048 改用int250作为系统调用 2022-04-12 11:54:44 +08:00
fslongjin
d78db8225c 解决了#DE会触发#UD的问题 2022-04-10 23:03:16 +08:00
fslongjin
f5f36aafd8 将内核定位到高地址(存在bug,中断时会访问低地址) 2022-04-10 21:30:16 +08:00
fslongjin
05dc7ac73b 将内核层空间移动到0xffff800000000000 2022-04-09 21:11:07 +08:00
fslongjin
232d793627 实现了定时任务队列 2022-04-08 21:26:42 +08:00
fslongjin
9828aff985 软中断处理机制 2022-04-08 20:04:12 +08:00
fslongjin
d887f9a0f7 🆕 HPET驱动 2022-04-08 12:20:53 +08:00
fslongjin
8bf4da2afa 注释了一些调试信息 2022-04-08 00:18:58 +08:00
fslongjin
279de4c7f9 测试IPI 2022-04-07 20:21:28 +08:00
fslongjin
cc39911d4d 🐛 解决了ap处理器无法处理异常的bug(原因是设置错了TSS表) 2022-04-06 18:36:56 +08:00
fslongjin
b7df2805ed 存在bug,apu启动后触发异常会Reset 2022-04-06 15:11:14 +08:00
fslongjin
32b8a163bb bug: AP处理器发生异常时无法正确处理 2022-04-05 14:40:26 +08:00
fslongjin
60dc9f4932 检测处理器核心数量 2022-04-04 18:42:22 +08:00
fslongjin
6d286be29f 初步完成了ahci驱动程序 2022-04-02 19:14:35 +08:00
fslongjin
741aa09b9b 🆕 按照class来读取对应的pci设备的接口 2022-03-30 15:36:00 +08:00
fslongjin
08fa7b5358 🆕 能成功遍历pci总线下的设备 2022-03-22 18:02:37 +08:00
fslongjin
046bce39a9 ata_disk_handler 2022-03-21 17:13:15 +08:00
fslongjin
b28f7d9c0d 🆕 新增了ata驱动程序 2022-03-20 21:35:36 +08:00
fslongjin
71d6af78d8 解决了一些小问题 2022-03-18 19:18:36 +08:00
fslongjin
8272257757 鼠标驱动程序的bug真不知道怎么改了...x先放着再说 2022-03-17 23:34:10 +08:00
fslongjin
b3cbd3caa2 🆕 鼠标驱动(有bug,还不能用) 2022-03-17 20:51:14 +08:00
fslongjin
1333afd703 🆕 键盘驱动 2022-03-17 00:00:28 +08:00
fslongjin
832442af6a 🆕 键盘驱动上半部 2022-03-16 13:54:26 +08:00
fslongjin
9cb628c3b9 🆕 完成了简单的APIC中断处理功能 2022-03-13 21:08:47 +08:00
fslongjin
a879bada0a 🆕 从multiboot2获取RSDT结构体 2022-03-13 12:53:32 +08:00
fslongjin
e64be7b4df 🆕 创建了acpi模块 2022-03-13 00:31:46 +08:00
fslongjin
9802d67470 🐛 解决了帧缓冲区大小计算错误的问题 2022-03-02 18:31:23 +08:00
fslongjin
e573e6f1db 🐛 bug fix 2022-03-02 13:07:13 +08:00
fslongjin
db8604c1e3 🆕 重新初始化页表并重映射了VBE帧缓存区 2022-03-01 20:21:32 +08:00
fslongjin
be1c838ff0 🔧 对物理页的管理功能进行了一些调整 2022-02-28 22:26:15 +08:00
fslongjin
7d8f89622d 🎨 更改内存池的成员命名 2022-02-28 19:59:46 +08:00
fslongjin
36ad7a106e 🆕 基本完成了slab内存分配器 2022-02-28 16:15:44 +08:00
fslongjin
ad51f8b6ea 🆕 cpu模块获取处理器固件基础信息 2022-02-22 23:31:33 +08:00
fslongjin
07babf6db4 🎨 统一模块初始化函数名为<name>_init() 2022-02-22 22:17:27 +08:00
fslongjin
6aede7ccc7 🎨 解决一些隐式类型转换问题 2022-02-22 21:47:52 +08:00
fslongjin
fa273198b3 🔧 将部分中断信息显示,统一到kprint 2022-02-22 20:54:31 +08:00
fslongjin
3961c0e1be 🆕 printk新增翻页滚动功能(bug:用户态触发中断时翻页会出现#UD) 2022-02-22 20:45:32 +08:00
fslongjin
d9d83335af 🆕 转换为grub2引导(尚未更正mm模块,且目前无法将内核链接到线性地址0xffffx处) 2022-02-21 22:59:57 +08:00
fslongjin
0b0cce9326 🆕 切换为grub2引导,能进入Start_Kernel函数(未能完成初始化) 2022-02-21 14:39:48 +08:00
fslongjin
d3a5048f66 🆕 syscall模块,实现了第一个系统调用函数sys_printf 2022-02-16 14:07:53 +08:00
fslongjin
0757e7a3cd 🆕 do_execve函数,跳转至应用层 2022-02-13 22:41:35 +08:00
fslongjin
d1671bc121 🐛 修复了无法切换进程、无法进行浮点运算的bug(将main.c中的init函数名进行修改) 2022-02-12 22:14:51 +08:00
fslongjin
67633eb04e 🆕 内核线程(在kernel_thtread函数中调用test_mm会产生问题) 2022-02-10 13:45:38 +08:00
fslongjin
39ddc21ca5 🆕 实现简单的读取键盘数据的功能 2022-01-29 15:12:34 +08:00
fslongjin
eff673edcb 🆕 新增了使用8259A芯片的中断响应程序 2022-01-29 12:52:25 +08:00
fslongjin
49eaf6ce95 删除了一些信息的打印 2022-01-28 22:45:05 +08:00
fslongjin
98e62e1e19 🆕 完成了简单的内存管理单元,能分配内存页面 2022-01-28 16:31:40 +08:00
fslongjin
8131264e3f 🆕 完成了初始化内存管理单元的代码 2022-01-28 14:46:15 +08:00