46 Commits

Author SHA1 Message Date
zzy666-hw
554b73ec99
add ipc pipe (#28) 2022-08-20 21:47:41 +08:00
fslongjin
fb51b0dd6f new: mstat()函数,查询内存信息 2022-08-06 23:31:25 +08:00
fslongjin
d9ee6ea859 new: string.h 2022-08-03 15:13:01 +08:00
fslongjin
58681fd34a O1能跑的代码 2022-08-01 19:43:21 +08:00
fslongjin
2fd21e0395 new: 内核态fork 2022-08-01 14:20:16 +08:00
fslongjin
b98a3679c9 bugfix: 修复sys_wait4中,当status指针为NULL时的错误。 2022-07-31 17:06:37 +08:00
fslongjin
d0ddb73788 🔧 include上级文件夹时,统一采用<>来指定文件 2022-07-17 15:41:19 +08:00
fslongjin
da4867d662 🆕 clock()函数 2022-07-12 13:20:01 +08:00
fslongjin
676260c537 🆕 usleep()、nanosleep() 2022-07-12 12:01:51 +08:00
fslongjin
d32aa2d99c 增加touch到绝对路径的功能 2022-07-07 10:27:40 +08:00
fslongjin
8c8352e748 🆕 fat32_create 2022-07-07 00:55:33 +08:00
fslongjin
b79ba099df bugfix: 修复了fat32_mkdir的bug(在非根目录下创建文件夹会出错)(在/dev中创建子文件夹,opendir时属性设置错误的bug) 2022-07-06 17:10:54 +08:00
fslongjin
d775af70c7 🆕 fat32文件系统的mkdir 2022-06-25 20:55:59 +08:00
fslongjin
8f180254bc 🆕 输入about即可展示系统的“关于”信息 2022-06-08 00:19:08 +08:00
fslongjin
4e04ab9eee 🆕 在shell中启动另一个程序 2022-06-07 23:18:26 +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
85707bd8cc 🆕 cat命令 2022-05-30 17:39:45 +08:00
fslongjin
9ee6d33318 🆕 完成了ls的功能 2022-05-29 14:36:46 +08:00
fslongjin
a4157bb4a7 部分完成了readdir 2022-05-27 13:41:10 +08:00
fslongjin
37669ebf87 🆕 cd命令 2022-05-25 22:50:32 +08:00
fslongjin
8bd7b64a0b 🆕 增加重启命令reboot 2022-05-25 14:38:15 +08:00
fslongjin
e6108602df 🆕 用户态解析键盘扫描码 2022-05-21 21:49:56 +08:00
fslongjin
1cc3db5e88 🆕 回收堆内存给操作系统 2022-05-11 20:42:53 +08:00
fslongjin
c120a0e992 完成了malloc和free 2022-05-11 11:33:29 +08:00
fslongjin
37da6ef19e 🐛 修复printf的bug 2022-05-07 13:54:28 +08:00
fslongjin
fd0147e04c 🆕 malloc 、printf 2022-05-07 13:46:23 +08:00
fslongjin
78a219b715 🆕 内核堆内存调整函数 2022-05-06 15:29:42 +08:00
fslongjin
0aec6827ee 🆕 运行文件系统中的二进制程序 2022-05-06 00:25:32 +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
9db1c3f74e 🆕 fat32_write (存在写入bug) 2022-04-29 23:57:36 +08:00
fslongjin
3e101d71ff sys_write 2022-04-28 23:24:53 +08:00
fslongjin
d9399944e8 🔧 校验文件描述符是否存在 2022-04-27 21:00:05 +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
2fcf91733f 修正系统入口为系统调用门 2022-04-22 23:15:34 +08:00
fslongjin
39dd802ff1 磁盘请求在处理时,切换进程 2022-04-19 15:13:59 +08:00
fslongjin
ac28a3c806 🆕 原子变量和信号量 2022-04-12 21:30:07 +08:00
fslongjin
fb4ddc56ff 解决了在用户态下进行系统调用会禁用中断的问题 2022-04-12 15:25:21 +08:00
fslongjin
2d7b2b7048 改用int250作为系统调用 2022-04-12 11:54:44 +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
26e0b095ed 🔧 防止编译器在enter_syscall中修改rcx、rdx 2022-02-16 14:18:29 +08:00
fslongjin
d3a5048f66 🆕 syscall模块,实现了第一个系统调用函数sys_printf 2022-02-16 14:07:53 +08:00