43 Commits

Author SHA1 Message Date
fslongjin
129d24296b bug fix: page_num>=25时,填入页表的实际上是同一个物理页的bug 2022-06-02 19:22:03 +08:00
fslongjin
d64ddfa0b6 debuging... 2022-06-02 14:20:53 +08:00
fslongjin
e2a59dbd43 🆕 exec (存在bug 2022-05-31 21:55:06 +08:00
fslongjin
b02f5ea47c bug fix: 修复了加载进程时未对内存空间清零的问题 2022-05-25 14:37:06 +08:00
fslongjin
afeca18206 🎨 将shell独立成单独的app 2022-05-24 14:36:24 +08:00
fslongjin
1eb9a299b6 bug fix: Multiplication result converted to larger type 2022-05-21 21:57:00 +08:00
fslongjin
832c0c7e5c 🔧 更新了键盘驱动程序,使其适配vfs 2022-05-20 22:53:47 +08:00
fslongjin
8d8fd391fb 🐛 修复了需要映射的物理地址跨越页表时,产生内存越界的问题 2022-05-18 21:03:47 +08:00
fslongjin
5df5d79900 🆕 加载elf文件 2022-05-18 18:27:00 +08:00
fslongjin
78a219b715 🆕 内核堆内存调整函数 2022-05-06 15:29:42 +08:00
fslongjin
b7437b24d7 🐛 页表拷贝的bug 2022-05-06 11:44:53 +08:00
fslongjin
0aec6827ee 🆕 运行文件系统中的二进制程序 2022-05-06 00:25:32 +08:00
fslongjin
099b24539a 完善execve,使其能加载用户程序文件 2022-05-05 14:14:34 +08:00
fslongjin
1801ddffbd 🆕 fork 2022-05-04 23:20:39 +08:00
fslongjin
2ed8bdcfd2 🆕 lseek系统调用 2022-05-03 15:40:23 +08:00
fslongjin
f99179014a 🐛 修复了无法正确地往文件写入数据的bug 2022-05-03 15:12:02 +08:00
fslongjin
9db1c3f74e 🆕 fat32_write (存在写入bug) 2022-04-29 23:57:36 +08:00
fslongjin
b3ad8405a4 实现了打开、关闭、读取文件的功能 2022-04-27 20:49:10 +08:00
fslongjin
966d67fcde 🆕 sys_open系统调用 2022-04-27 00:39:02 +08:00
fslongjin
d94d92f5ee 激活FAT32 2022-04-26 13:12:59 +08:00
fslongjin
4473ff594c 解决了debian上编译后,kernel_thread_func被优化掉的问题 2022-04-26 00:25:15 +08:00
fslongjin
4a41e734a5 有bug,在debian,gcc=10.2.1上编译后运行会在进程切换时page fault 2022-04-25 19:24:22 +08:00
fslongjin
2fcf91733f 修正系统入口为系统调用门 2022-04-22 23:15:34 +08:00
fslongjin
979bb35599 🆕 读取fat32文件系统的基础信息 2022-04-19 20:56:01 +08:00
fslongjin
53c553c730 🎨 更改代码结构 2022-04-14 16:53:11 +08:00
fslongjin
ddbfb822c4 🆕 为AP处理器配置进程调度 2022-04-14 00:26:41 +08:00
fslongjin
82e34f271f 为每个核心分配单独的IST 2022-04-13 17:58:06 +08:00
fslongjin
7295565e5e 增加锁的持有计数 2022-04-13 11:14:49 +08:00
fslongjin
fb4ddc56ff 解决了在用户态下进行系统调用会禁用中断的问题 2022-04-12 15:25:21 +08:00
fslongjin
2d7b2b7048 改用int250作为系统调用 2022-04-12 11:54:44 +08:00
fslongjin
011246281a 🐛 解决了无法进入用户态的bug 2022-04-11 17:15:24 +08:00
fslongjin
dacc29310f 进入用户模式(系统调用存在page fault的bug) 2022-04-11 10:32:39 +08:00
fslongjin
c09c6d4e66 能进入用户态程序,但无法正确进行系统调用 2022-04-10 23:53:07 +08:00
fslongjin
f5f36aafd8 将内核定位到高地址(存在bug,中断时会访问低地址) 2022-04-10 21:30:16 +08:00
fslongjin
cc39911d4d 🐛 解决了ap处理器无法处理异常的bug(原因是设置错了TSS表) 2022-04-06 18:36:56 +08:00
fslongjin
be1c838ff0 🔧 对物理页的管理功能进行了一些调整 2022-02-28 22:26:15 +08:00
fslongjin
3961c0e1be 🆕 printk新增翻页滚动功能(bug:用户态触发中断时翻页会出现#UD) 2022-02-22 20:45:32 +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
781a105d2f 🔧 修改了第一个内核线程的函数名 2022-02-13 11:26:27 +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