LoGin
|
1cd9bb43f0
|
添加core utils到系统 (#624)
|
2024-03-19 21:31:02 +08:00 |
GnoCiYeH
|
e3b898316b
|
增加ChangeLog V0.1.9,更改about.c版本 (#600)
|
2024-03-13 22:36:31 +08:00 |
MemoryShore
|
af59116e1b
|
Update NovaShell version to c6454d3220 (#593)
|
2024-03-12 17:52:14 +08:00 |
GnoCiYeH
|
4374bd1d11
|
修复get_random一个问题,添加Held配置文件 (#583)
|
2024-03-11 19:40:52 +08:00 |
LoGin
|
f4a82aa55c
|
Update Novashell version to 473d5c403c (#574)
- fix: 用户输入不正确的;以及单独输入单引号和双引号造成系统重启
- 修改命令解析算法
- fix: 输出多余的光标和命令信息
|
2024-03-10 20:42:41 +08:00 |
裕依
|
bc6f0a967c
|
移除relibc和old libc以及旧的shell (#529)
移除relibc和old libc以及旧的shell
|
2024-03-04 14:20:01 +08:00 |
MContour
|
cf45dede2e
|
让 DragonOS 仓库管理 service 文件 (#548)
* feat: create `user/services` folder to store service files
|
2024-03-03 17:20:11 +08:00 |
Donkey Kane
|
44d051e586
|
Modify dadk config to switch NovaShell revision (#550)
|
2024-03-03 15:22:45 +08:00 |
GnoCiYeH
|
52da9a5937
|
完成与Linux兼容的Ntty (#517)
* 已经完成的功能:
- 写:printf能够正常在tty输出
- 读:与键盘驱动接上
- 信号: 能够正常通过ctrl向前台进程发送信号
* 支持目前的shell,改动printk使其与新版tty兼容。
* 删除原有tty文件夹,并更改新tty文件名
* 添加clear清屏程序
* 实现tty部分ioctl,更改部分问题
|
2024-02-26 15:27:19 +08:00 |
裕依
|
0e2c2e8b48
|
修正systemerror号 (#527)
修正systemerror号
|
2024-02-19 19:31:17 +08:00 |
LoGin
|
ca318c376b
|
update dragonreach to 3d99c3a9d9 (#519)
|
2024-02-17 01:51:10 +08:00 |
LoGin
|
472f0b3931
|
update dragonreach to 40362c48d6 (#516)
|
2024-02-13 12:14:12 +08:00 |
裕依2439
|
4ad52e57e6
|
添加socketpair (#505)
* 添加对socketpair系统调用的处理
---------
Co-authored-by: LoGin <longjin@DragonOS.org>
|
2024-02-07 18:06:15 +08:00 |
LoGin
|
fccbe87dca
|
删除关于zulip的表述,替换为社区论坛 (#508)
|
2024-02-05 14:50:15 +08:00 |
Jomo
|
8d72b68da9
|
实现内核日志系统 (#489)
* 实现写日志和读取日志,并且能够在用户态下执行dmesg命令查看日志
* 通过klogctl实现dmesg
* 改用ConstGenericRingBuffer作内核缓冲区
* 更改缓冲区容量
* 将能够输出到控制台的日志级别改为日志级别枚举类,使用SpinLock控制KMSG,使用枚举类定义SYSLOG_ACTION,将do_syslog系统调用接口放在syscall.rs
* fix warning
* 完善do_syslog注释
* 将KMSG接入kinfo、kdebug等
* fix warning
* 修复显示的秒数不正确,·以及无法通过CI的问题
|
2024-01-24 16:13:15 +08:00 |
LoGin
|
c566df451c
|
添加帧缓冲区抽象并实现vesafb的驱动 (#483)
- 添加bootparams对象
- 修正由于bus的driver、device强弱引用关系 不正确从而导致对象被释放的bug
- 添加vesafb的驱动
- 实现framebuffer抽象层
- 为通用帧缓冲区抽象实现sysfs的属性
- 修改设备号DeviceNumber的定义
- 仿照linux,添加initcall,并在第一个内核线程中,调用他们。
|
2024-01-01 11:46:51 +08:00 |
MemoryShore
|
cfd642e283
|
更新nova shell的revision为64ad1b282a (#477)
- 修复tab补全时始终基于根目录的问题
- 修复touch命令提示已存在文件的bug
|
2023-12-27 15:07:01 +08:00 |
LoGin
|
8612b6ce7a
|
bugfix: 修复无法sleep的问题以及进程处于block(true)状态时无法被信号唤醒&唤醒后不处理信号的问题 (#470)
|
2023-12-19 11:56:14 +08:00 |
LoGin
|
666cffedab
|
riscv: 映射内核到指定的虚拟地址,使得kinfo能正常工作 (#468)
* riscv: 映射内核到指定的虚拟地址,使得kinfo能正常工作
|
2023-12-16 22:26:26 +08:00 |
MemoryShore
|
6c7f966c2f
|
NovaShell替换为默认shell (#456)
* NovaShell替换为默认shell
* delete some envvar
* 自动从dragonos镜像站更新dadk
* 更新github ci环境
* 修复yml格式问题
* 更新novashell到95738b235f
---------
Co-authored-by: longjin <longjin@DragonOS.org>
|
2023-12-04 22:07:30 +08:00 |
LoGin
|
a1fd1cf1cb
|
把tar的二进制镜像源更换为国内源 (#458)
|
2023-11-23 21:12:16 +08:00 |
Jomo
|
cc5feaf67b
|
bugfix: 修复因rsdp v1 v2版本问题,导致ACPI无法正常初始化的bug (#454)
bugfix: 修复因rsdp v1 v2版本问题,导致ACPI无法正常初始化的bug
|
2023-11-23 21:04:32 +08:00 |
LoGin
|
edaf015400
|
默认安装gnu tar到dragonos的/usr/bin目录下 (#442)
|
2023-11-15 17:17:56 +08:00 |
LoGin
|
0d9b7d9240
|
添加prlimit64系统调用 (#438)
注意: 目前仅支持读取默认的rlimit值,尚不支持设置rlimit值.
|
2023-11-12 18:44:15 +08:00 |
LoGin
|
4a2d7191a3
|
bugfix: 解决shell在exec的时候传递的argv不正确的bug (#437)
|
2023-11-12 17:53:36 +08:00 |
LoGin
|
5eaf536d5b
|
添加初始化DragonOS的Rust-Musl工具链的脚本. (#426)
|
2023-11-08 19:41:08 +08:00 |
LoGin
|
70a4e5550a
|
使用rust重写了apic的驱动 (#425)
* 使用rust重写了apic的驱动。
* 修正signal和调度器的部分加锁逻辑,增加回退策略。
* 把pcb的flags字段替换为无锁的
* 使用cargo管理apic的编译
* 删除makefile中指定PIC的变量
---------
Co-authored-by: Gou Ngai <ymd7823@outlook.com>
Co-authored-by: 櫻井桃華 <89176634+TihayaKousaka@users.noreply.github.com>
|
2023-11-07 20:32:06 +08:00 |
GnoCiYeH
|
1effcfe519
|
修复readdir以及读磁盘时buf传错问题 (#422)
* 修复readdir以及读磁盘时buf传错问题
* fix potential memory problem
---------
Co-authored-by: longjin <longjin@DragonOS.org>
|
2023-11-05 23:15:46 +08:00 |
GnoCiYeH
|
ad1d649edd
|
更新系统调用号 (#410)
* 更新系统调用号
* 更改DragonReach和relibc版本
* update
* update
* fix warning
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2023-10-24 19:59:01 +08:00 |
LoGin
|
f4082b86b1
|
更改系统调用的寄存器传参顺序 (#409)
|
2023-10-24 16:40:49 +08:00 |
Xiaoye Zheng
|
40314b30ab
|
DragonOS虚拟化 (#389)
* try some ioctl flow & kvm device
* add sys ioctl
* 删掉一些debug信息
* 修改run-qemu.sh脚本,在QEMU中enable vmx
* 修改cr0,cr4,msr寄存器enable VMX operations
* enable vmx operation
* allocate memory for vmcs with bug
* allocate memory for vmcs
* cpu virt-50%
* single vcpu virt
* add vmcs fields
* CPU virt overall flow with bug
* run vmlaunch success
* run CPU virt with bug
* 成功运行non-root模式的guest
* 成功运行vmexit,进入vmx_return函数
* 成功运行vmlaunch, vmexit, vmresume
* vmexit handler with bug
* 完成vmexit cpuid handler
* fix vmresume guest状态恢复的bug
* 增加vm ioctl
* refactor kvm 50%
* refactor kvm 80%
* FIXME: kvm vmlaunch failed
* vmlaunch success
* FIXME: output error
* update guest_rsp
* cpu virt refactor
* add mmu related struct
* add usermemory region workflow
* add mem-virt workflow
* add mem-virt
* refactor code
* add vcpu ioctl set_regs
* rename hypervisor to vm & solve some deadlock bugs
* workout mem pipeline
* fix vmcs control setting bugs
* refactor segment regs initialization
* resovle conficts
* resovle conficts
* format code
|
2023-10-24 14:31:56 +08:00 |
Chiichen
|
3c82aa56d1
|
Signal refactor (#402)
* 初步完成对 signal_types 和 部分signal代码的初始化
* 重构了一部分架构相关代码进入 arch 中
* 基本修改完成,编译通过,后续补上系统调用
* signal基本完成,能实现 Sigaction 系统调用
* 增加了一组枚举抽象
* 进一步重构了一部分C风格的代码
* 继续重构了一部分C风格代码
* 继续完善了一部分逻辑
* 修改了部分代码逻辑
* 补充了 fork 中复制信号信息的逻辑
* 修复了 kallsysms 未转义引号的问题
* 修复了无法跳转到 sigreturn 的bug
* 调通了 signal
* 实现了 signal 架构抽象层的 trait
* 为信号提供了默认处理函数
* 基本完成了 signal 的大体逻辑
* 修复了 Sigreturn 的一个小错误,格式化
* 修复了一个编译器漏报错误
* 删除了多余的代码
* 修改测试程序为链接 relibc
* 修复了信号处理过程中浮点寄存器错误保存的问题
* 修复了一个结构体错误引起的无法在relibc下正确运行的错误
* 修复了链接 relibc 时无法正常从信号处理返回的 bug
* 修复了 signal 处理流程中 rsp 指针错误导致的浮点运算触发GP
* 修复了一个死锁问题,解决了默认处理函数无法进入调度导致的bug
* 修复了一些错误
* 修改了 relibc 依赖版本号
* 删除了多余的 imports
* 删除一些debug日志
* 删除内核 signal.h 文件
* 删除一个依赖项
* 删除了 binding 相关依赖项
|
2023-10-24 12:02:20 +08:00 |
LoGin
|
01bd5258cf
|
解决shell无法输入大写字母'P'的问题 (#404)
|
2023-10-22 12:22:41 +08:00 |
LoGin
|
a03c4f9dee
|
设备驱动模型:完善platform bus相关内容。并注册串口到sysfs (#403)
* 完成初始化platform bus
* 删除旧的sysfs
* 把uart驱动移动到tty/serial文件夹下
* 完成将串口挂载到sysfs
* 修复vfs系统调用未能follow symlink的问题
* 修复shell未能正确获取pwd的问题
|
2023-10-20 22:11:33 +08:00 |
LoGin
|
06d5e24726
|
完善设备驱动模型,基于kset、kobj来维护对象之间的关系 (#401)
* 使用kobj和kset管理/sys文件夹下的对象
* 修改notifier,把action从u64换为泛型。
* 完善设备驱动模型,基于kset、kobj来维护对象之间的关系
|
2023-10-11 00:53:15 +08:00 |
GnoCiYeH
|
865f4ba4cd
|
修改shell执行exec时传参错误问题 (#399)
* 修改shell执行exec时传参错误问题
|
2023-10-09 01:10:14 +08:00 |
GnoCiYeH
|
2dbef7859f
|
命名管道系统调用以及文件系统兼容特殊文件类型的接口 (#397)
* 修复pipe2在读端或写端关闭后还阻塞问题。
* 实现命名管道机制,增加特殊文件类型兼容普通文件系统的接口。
* 普通文件系统能够适配特殊文件(命名管道等)
|
2023-10-09 00:28:08 +08:00 |
yuyi2439
|
34e6d6c80f
|
实现free指令+修复 mountfs的内存泄露问题(#394)
* 实现meminfo文件
* 成功实现free指令,添加了一些string有关函数,并进行一些无影响的小改动
* 解决内存泄露的问题:mountfs inode的wrap方法使用了Arc::into_raw而没有from_raw,导致inode始终无法释放
---------
Co-authored-by: LoGin <longjin@DragonOS.org>
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2023-10-08 14:26:17 +08:00 |
GnoCiYeH
|
bb0e4d4131
|
使用DragonReach启动shell,修改getdents (#391)
* 使用DragonReach启动shell,修改getdents
* 更改关闭pipe时断言报错问题,以及DragonReach启动shell阶段版本
* 修改目录结构
* update
* 解决小问题
* 调整dragon reach版本号
* 设置make clean的时候不清空应用程序的缓存。
指定relibc版本号
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2023-09-30 16:36:06 +08:00 |
LoGin
|
1496ba7b24
|
进程管理模块重构完成 (#380)
* 添加新版pcb的数据结构 (#273)
* 将pcb中的内容分类,分别加锁 (#305)
* 进程管理重构:完成fork的主体逻辑 (#309)
1.完成fork的主体逻辑
2.将文件系统接到新的pcb上
3.经过思考,暂时弃用signal机制,待进程管理重构完成后,重写signal机制.原因是原本的signal机制太烂了
* chdir getcwd pid pgid ppid (#310)
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
* 删除旧的fork以及signal的代码,并调整fork/vfork/execve系统调用 (#325)
1.删除旧的fork
2.删除signal相关代码,等进程管理重构结束之后,再重新写.
3.调整了fork/vfork/execve系统调用
* 实现切换进程的代码 (#331)
* 实现切换进程的代码
* Patch modify preempt (#332)
* 修改设置preempt的代码
* 删除rust的list和refcount
* 为每个核心初始化idle进程 (#333)
* 为每个核心初始化idle进程
* 完成了新的内核线程机制 (#335)
* 调度器的pcb替换为新的Arc<ProcessControlBlock>,把调度器队列锁从 RwSpinLock 替换为了 SpinLock (#336)
* 把调度器的pcb替换为新的Arc<ProcessControlBlock>
* 把调度器队列锁从 RwSpinLock 替换为了 SpinLock ,修改了签名以通过编译
* 修正一些双重加锁、细节问题
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
* github workflow自动检查代码是否格式化
* cache toolchain yml
* 调整rust版本的waitqueue中的pcb为新版的pcb (#343)
* 解决设置rust workspace带来的“工具链不一致”的问题 (#344)
* 解决设置rust workspace带来的“工具链不一致”的问题
更改workflow
* 调整pcb的sched_info和rwlock,以避免调度器死锁问题 (#341)
* 调整pcb的sched_info和rwlock,以避免调度器死锁问题
* 修改为在 WriterGuard 中维护 Irq_guard
* 修正了 write_irqsave方法
* 优化了代码
* 把 set state 操作从 wakup 移动到 sched_enqueue 中
* 修正为在 wakeup 中设置 running ,以保留 set_state 的私有性
* 移除了 process_wakeup
* 实现进程退出的逻辑 (#340)
实现进程退出的逻辑
* 标志进程sleep
* 修复wakeup的问题
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
* rust 重构 completion (#350)
* 完成了completion的基本结构,待完善上级调用
* 用SpinLock保护结构体并发安全
* 修改原子变量为u32,修复符号错误
* irq guard
* 修改为具有内部可变性的结构体
* temp fix
* 修复了由于进程持有自旋锁导致的不被调度的问题
* 对 complete 系列方法上锁,保护 done 数据并发安全
* 移除了未使用的依赖
* 重写显示刷新驱动 (#363)
* 重构显示刷新驱动
* Patch refactor process management (#366)
* 维护进程树
* 维护进程树
* 更改代码结构
* 新建进程时,设置cwd
* 调整adopt childern函数,降低开销
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
* waitqueue兼容C部分 (#351)
* PATH
* safe init
* waitqueue兼容C部分
* waitqueue兼容C部分
* 删除semaphore.c,在ps2_keyboard中使用waitqueue
* 删除semaphore.c,在ps2_keyboard中使用waitqueue
* current_pcb的C兼容
* current_pcb的C兼容
* current_pcb的C兼容
* fmt
* current_pcb的兼容
* 针对修改
* 调整代码
* fmt
* 删除pcb的set flags
* 更改函数名
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
* merge master
* Patch debug process management refactor (#372)
* 能够调通,执行完textui_init
* 能跑到initial kernel thread
* fmt
* 能够正常初始化所有服务(尚未能切换到用户程序)
* 删除部分无用的extern
* 存在问题:ap处理器启动后,bsp的smp_init函数return之后就出错了,怀疑是栈损坏
* 解决smp启动由于未换栈导致的内存访问错误
* debug
* 1
* 1
* lock no preempt
* 调通
* 优化代码,删除一些调试日志
* fix
* 使用rust重写wait4 (#377)
* 维护进程树
* 维护进程树
* 更改代码结构
* 新建进程时,设置cwd
* 调整adopt childern函数,降低开销
* wait4
* 删除c_sys_wait4
* 使用userbuffer保护裸指针
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
* 消除warning
* 1. 修正未设置cpu executing的问题
* 修正kthread机制可能存在的内存泄露问题
* 删除pcb文档
* 删除C的tss struct
---------
Co-authored-by: Bullet <93781792+GP-Bullet@users.noreply.github.com>
Co-authored-by: Chiichen <39649411+Chiichen@users.noreply.github.com>
Co-authored-by: hanjiezhou <zhouhanjie@dragonos.org>
Co-authored-by: GnoCiYeH <118462160+GnoCiYeH@users.noreply.github.com>
Co-authored-by: houmkh <1119644616@qq.com>
|
2023-09-15 14:58:19 +08:00 |
Chiichen
|
b087521e07
|
完善设备驱动模型&调试串口驱动 (#379)
* 完成了基本架构重构,正在进行兼容
* 重构了所有 Device Driver ,还没有接上具体设备
* 基本把 Uart 接上了,还没有测试
* 初步完成系统设备初始化
* 初步重构 BlockDevice ,使其兼容新的 Device 结构
* 修改文件系统内的部分函数调用以满足重构后的接口
* 测试完 Uart 设备的功能
* 移除了自动添加的文件
* 修复了 warning 和部分格式
* 解决warning,并且修正sysfs初始化的位置
* Patch fix
* 删除了 sysinfo 的默认实现
* 删除了字符设备读写的 offset 参数
* 修复了 warning 和一些小逻辑错误
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2023-09-13 18:01:52 +08:00 |
hanjiezhou
|
22c9db312a
|
Patch pipe2 (#364)
|
2023-09-13 00:58:01 +08:00 |
LoGin
|
d9113303d8
|
relibc与旧的C库同时开始编译 (#369)
|
2023-09-03 13:33:27 +08:00 |
LoGin
|
e92d022810
|
解决设置rust workspace带来的“工具链不一致”的问题 (#345)
更改workflow
|
2023-08-26 21:36:13 +08:00 |
LoGin
|
9a367aa7eb
|
添加github workflow,检查代码是否已经格式化 (#342)
* 添加github workflow,检查代码是否已经格式化
|
2023-08-24 18:50:52 +08:00 |
hanjiezhou
|
abe3a6ea3c
|
Patch refactor scm and textui (#289)
* 重构屏幕管理器和textui框架
* 切换字体为spleen,并增加对字体的抽象
* 修正文档
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2023-08-20 00:19:36 +08:00 |
LoGin
|
5db5a5652c
|
Patch add 0.1.8 changelog (#334)
* 删除无用代码,并把about app的版本号更新为0.1.8
* v0.1.8 changelog
* 修正未安装rust-src的问题
* 完善文档
|
2023-08-17 00:10:18 +08:00 |
LoGin
|
6d81180b3b
|
移植sqlite3,并修复一些bug (#323)
* bugfix: 程序加载器映射内存时,计算要映射的大小不正确的问题。
* 修正brk系统调用不符合规范的地方
* bugfix: 修正fat文件系统未能正确的扩展文件大小的bug
* 增加fcntl系统调用
* 移植sqlite3
|
2023-08-08 23:39:22 +08:00 |
LoGin
|
26887c6334
|
bugfix: 解决取消低地址映射时,错误的把重映射的物理页释放,从而导致的use after free问题。 (#321)
|
2023-08-07 01:38:52 +08:00 |
houmkh
|
be63f3b2b6
|
实现系统调用Fstat (#295)
* fstat
* 修改syscall.rs中的verify_area
|
2023-08-05 18:52:46 +08:00 |
LoGin
|
abf3f634bf
|
自动安装、更新dadk (#319)
* auto install/auto update dadk
|
2023-08-05 15:30:06 +08:00 |
LoGin
|
d6fd9c1e80
|
设置内核、relibc的远程为dragonos的git镜像站,防止国内网络问题导致编译失败 (#318)
|
2023-08-05 15:04:08 +08:00 |
LoGin
|
1a62e7767c
|
解决relibc的头文件没能识别__dragonos__定义的问题 (#315)
|
2023-08-02 18:11:05 +08:00 |
Chiichen
|
4da3758acf
|
修复了wait4的异常报错 (#312)
* 修复了wait4的异常报错
|
2023-08-02 14:29:59 +08:00 |
Xshine
|
821bb9a2dc
|
增加 ListenTable 来检测端口占用 (#291)
* 增加 ListenTable 来检测端口占用
* 使用Arc封装GlobalSocketHandle
* 删除 listen 处的端口检测逻辑,延至实现端口复用时完成
* 设立两张表,分别记录TCP和UDP的端口占用
* 实现 meatadata 相关逻辑
* 实现socket关闭时,端口在表中移除
* 使用端口管理器重构端口记录表
* 修正与RawSocket相关的端口管理逻辑
* 补充测试文件
* 修正 unbind_port 在逻辑错误
* 修正格式问题
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2023-07-28 17:51:05 +08:00 |
LoGin
|
40fe15e095
|
新的内存管理模块 (#303)
  实现了具有优秀架构设计的新的内存管理模块,对内核空间和用户空间的内存映射、分配、释放、管理等操作进行了封装,使得内核开发者可以更加方便地进行内存管理。
  内存管理模块主要由以下类型的组件组成:
- **硬件抽象层(MemoryManagementArch)** - 提供对具体处理器架构的抽象,使得内存管理模块可以在不同的处理器架构上运行
- **页面映射器(PageMapper)**- 提供对虚拟地址和物理地址的映射,以及页表的创建、填写、销毁、权限管理等操作。分为两种类型:内核页表映射器(KernelMapper)和用户页表映射器(位于具体的用户地址空间结构中)
- **页面刷新器(PageFlusher)** - 提供对页表的刷新操作(整表刷新、单页刷新、跨核心刷新)
- **页帧分配器(FrameAllocator)** - 提供对页帧的分配、释放、管理等操作。具体来说,包括BumpAllocator、BuddyAllocator
- **小对象分配器** - 提供对小内存对象的分配、释放、管理等操作。指的是内核里面的SlabAllocator (SlabAllocator的实现目前还没有完成)
- **MMIO空间管理器** - 提供对MMIO地址空间的分配、管理操作。(目前这个模块待进一步重构)
- **用户地址空间管理机制** - 提供对用户地址空间的管理。
- VMA机制 - 提供对用户地址空间的管理,包括VMA的创建、销毁、权限管理等操作
- 用户映射管理 - 与VMA机制共同作用,管理用户地址空间的映射
- **系统调用层** - 提供对用户空间的内存管理系统调用,包括mmap、munmap、mprotect、mremap等
- **C接口兼容层** - 提供对原有的C代码的接口,是的C代码能够正常运行。
除上面的新增内容以外,其它的更改内容:
- 新增二进制加载器,以及elf的解析器
- 解决由于local_irq_save、local_irq_restore函数的汇编不规范导致影响栈行为的bug。
- 解决local_irq_save未关中断的错误。
- 修复sys_gettimeofday对timezone参数的处理的bug
---------
Co-authored-by: kong <kongweichao@dragonos.org>
|
2023-07-22 16:27:02 +08:00 |
LoGin
|
bb5f098a86
|
Revert "新的内存管理模块 (#301)" (#302)
This reverts commit d8ad0a5e77.
|
2023-07-22 16:24:55 +08:00 |
LoGin
|
d8ad0a5e77
|
新的内存管理模块 (#301)
  实现了具有优秀架构设计的新的内存管理模块,对内核空间和用户空间的内存映射、分配、释放、管理等操作进行了封装,使得内核开发者可以更加方便地进行内存管理。
  内存管理模块主要由以下类型的组件组成:
- **硬件抽象层(MemoryManagementArch)** - 提供对具体处理器架构的抽象,使得内存管理模块可以在不同的处理器架构上运行
- **页面映射器(PageMapper)**- 提供对虚拟地址和物理地址的映射,以及页表的创建、填写、销毁、权限管理等操作。分为两种类型:内核页表映射器(KernelMapper)和用户页表映射器(位于具体的用户地址空间结构中)
- **页面刷新器(PageFlusher)** - 提供对页表的刷新操作(整表刷新、单页刷新、跨核心刷新)
- **页帧分配器(FrameAllocator)** - 提供对页帧的分配、释放、管理等操作。具体来说,包括BumpAllocator、BuddyAllocator
- **小对象分配器** - 提供对小内存对象的分配、释放、管理等操作。指的是内核里面的SlabAllocator (SlabAllocator的实现目前还没有完成)
- **MMIO空间管理器** - 提供对MMIO地址空间的分配、管理操作。(目前这个模块待进一步重构)
- **用户地址空间管理机制** - 提供对用户地址空间的管理。
- VMA机制 - 提供对用户地址空间的管理,包括VMA的创建、销毁、权限管理等操作
- 用户映射管理 - 与VMA机制共同作用,管理用户地址空间的映射
- **系统调用层** - 提供对用户空间的内存管理系统调用,包括mmap、munmap、mprotect、mremap等
- **C接口兼容层** - 提供对原有的C代码的接口,是的C代码能够正常运行。
除上面的新增内容以外,其它的更改内容:
- 新增二进制加载器,以及elf的解析器
- 解决由于local_irq_save、local_irq_restore函数的汇编不规范导致影响栈行为的bug。
- 解决local_irq_save未关中断的错误。
- 修复sys_gettimeofday对timezone参数的处理的bug
|
2023-07-22 16:22:17 +08:00 |
houmkh
|
36fd013004
|
实现gettimeofday()系统调用和clocksource+timekeeping子模块 (#278)
- 实现gettimeofday()系统调用
- 实现clocksource+timekeeping子模块部分功能
- 实现了timespec转换成日期时间
|
2023-06-17 22:48:15 +08:00 |
login
|
660a04cef8
|
新增http server (#265)
* 1.修复了当传入ahci驱动的缓冲区地址为用户缓冲区时,产生的内存越界问题.(采用分配内核缓冲区的方式临时解决)
2.新增http server
* 把libssl-dev添加到bootstrap.sh
* http_server增加对父级相对路径的安全检查,防止访问系统内的其他文件
* 检查空指针情况
* 解决由于链接时,crt*.o未按照升序排列导致init段链接错误的问题
|
2023-05-13 21:17:12 +08:00 |
login
|
7285c927d9
|
添加dadk支持 (#263)
* 引入dadk,使用dadk0.1.1来编译test-relibc程序
* 由于gitee仓库体积限制导致无法继续使用gitee上的rust索引,因此更换为清华源
* github workflow的环境中,安装dadk
* Auto configure dragonos rust toolchain
|
2023-05-11 16:17:58 +08:00 |
login
|
3a23230af4
|
doc: V0.1.7发行日志 (#255)
|
2023-04-24 09:48:12 +08:00 |
hanjiezhou
|
f678331a33
|
匿名管道重构&增加IrqArch trait以及IrqFlags及其守卫 (#253)
* 实现匿名管道
* 增加IrqArch trait以及IrqFlags及其守卫
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2023-04-23 21:05:10 +08:00 |
login
|
cde5492f72
|
新增网络socket的系统调用接口 (#247)
1.修复spinlock忘记恢复rflags的问题
2.WaitQueue增加wakeup_all的功能
3.完善tcp,udp,raw socket
4.把PollStatus结构体改为使用bitflags
5.新增iovec结构体
6.完成网络的系统调用
7.在bootstrap里面添加dnsmasq bridge-utils iptables
---------
Co-authored-by: guanjinquan <1666320330@qq.com>
|
2023-04-19 18:05:02 +08:00 |
HoshuChiu
|
7149abaa49
|
修复Issue#220;vnc的端口号恢复5900 (#243)
* 修复Issue#220
* qemu-vnc端口号恢复为5900
|
2023-04-16 14:47:51 +08:00 |
houmkh
|
79a452ce8f
|
修改errno,使其与relibc的保持一致 (#234)
修改errno,使其与relibc的保持一致
|
2023-04-11 17:05:33 +08:00 |
login
|
ac48398d3f
|
调整brk系统调用,使得参数、返回值与Linux一致 (#238)
* 新增用于测试relibc的app
* 为适配relibc,修改do_execve中关于用户栈的内容的设置
* 调整brk系统调用,使得参数、返回值与Linux一致
|
2023-04-11 16:54:14 +08:00 |
login
|
52ab5d904e
|
V0.1.6发行日志&更新构建系统文档 (#225)
1.更新构建系统文档
2.V0.1.6发行日志
|
2023-04-02 18:52:00 +08:00 |
login
|
bacd691c9e
|
软中断&定时器重构 (#223)
* 软中断&定时器重构
Co-authored-by: houmkh<houjiaying@DragonOS.org>
* 修改timer的clock()
* 删除debug信息
---------
Co-authored-by: houmkh <1119644616@qq.com>
|
2023-04-02 17:09:33 +08:00 |
Gou Ngai
|
2b771e32f5
|
Add dup,dup2 (#224)
* dup,dup2
* fix: sys_dup2语义与posix不一致的问题
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2023-04-02 15:43:53 +08:00 |
login
|
20e3152e1e
|
将TTY与stdio进行连接,实现基本的stdio功能 (#217)
* 将stdio与tty接上
|
2023-03-31 12:54:37 +08:00 |
Gou Ngai
|
5fb12ce447
|
第一套键盘扫描码的状态机 (#216)
第一套键盘扫描码的状态机
---------
Co-authored-by: guanjinquan <1666320330@qq.com>
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2023-03-30 18:19:02 +08:00 |
Gou Ngai
|
64aea4b349
|
增加x87FPU支持 (#212)
* remove `ret_from_syscall`
*修复ps2键盘驱动程序inode在进程fork的时候导致死锁的问题.
*更新: VFS每次拷贝文件描述符的时候,都会去调用inode的open函数
---------
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2023-03-28 20:44:26 +08:00 |
login
|
33270d005c
|
Add v0.1.5 changelog (#200)
* 更新about app
* V0.1.5发行日志
|
2023-03-13 09:54:50 +08:00 |
login
|
004e86ff19
|
新版文件系统重构完成 (#198)
1.重构:VFS
2. 重构:ProcFS
3. 重构:DevFS
4. 重构:FAT32
5. 重构:AHCI驱动
6. 新增:RamFS
7. 新增:MountFS
8. 新增:FAT12
9. 新增:FAT16
10. 重构:设备抽象
Co-authored-by: guanjinquan <1666320330@qq.com>
Co-authored-by: DaJiYuQia <88259094+DaJiYuQia@users.noreply.github.com>
|
2023-03-12 22:36:11 +08:00 |
login
|
2bf5ee0e3c
|
修改libc的编译相关内容(#171)
1.将libc的include文件夹分为export和internal
2.将所有app都直接链接libc.a,而不是都执行一遍"搜索.o"的过程
|
2023-02-11 13:04:24 +08:00 |
login
|
34e05fe0f0
|
Patch add v0.1.4 changelog (#165)
* new: V0.1.4 change log
* 更新about APP版本号
|
2023-02-04 13:07:32 +08:00 |
login
|
8ad2e358fd
|
更新about app中的版本号 (#145)
* 更新about app中的版本号
|
2023-01-08 15:51:59 +08:00 |
login
|
a8b621c8d1
|
修正由于libc中具有crti.S和crtn.S,造成的与x86_64-elf-gcc不兼容的问题 (#144)
|
2023-01-08 15:47:44 +08:00 |
login
|
fd91905f02
|
解决编译gcc、binutils的脚本中,变量名称错误的问题 (#142)
|
2023-01-08 11:38:59 +08:00 |
login
|
e9fdc57bf8
|
简单添加了fopen对mode参数的处理。请注意,它没有完全遵循posix,也与Linux的不一致,将来使用Rust的时候完善它。 (#141)
|
2023-01-07 22:36:49 +08:00 |
guanjinquan
|
2224c93ea9
|
完善libc,构建了OS-specific工具链,编译了基于gcc-11.3.0的DragonOS userland compiler,移植了mpfr,gmp,mpc库 (#134)
* 修改include路径
* 添加了创建libsysapi.a和/bin/sysroot/usr/include/+lib/的代码
* 修补.gitignore
* 删除多余项
* 优化脚本可读性
* 新增crt0 crti crtn
* 编译binutils所需的东西
* fflush()和fprintf()的简单实现
* 应用程序启动前,调用初始化libc的函数
* 自动创建sysroot
* 添加了stderr的初始化
* 修改了stderr的初始化
* 内核添加对stdio的简略处理
* 格式化代码
* 修正打开stdio文件描述符的问题
* bugfix: 修复fprintf忘记释放buf的问题
* 修复shell错误地把入口设置为main而不是_start的问题
* 新增__cxa_atexit (gcc要求libc提供这个)
* 增加putchar puts
* 更新写入磁盘镜像的脚本,默认无参数时,使用legacy方式安装
* 更新编译脚本
* stdio增加eof的定义
* 新增extern cplusplus
* mpfr gmp mpc 构建脚本
* 更新libsysapi.a为libc.a
* 加上ferror fopen fclose
* 更新移植的软件的构建脚本
* 更改build_gcc_toolchain.sh中的-save参数名为-save-cache
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2023-01-06 21:29:23 +08:00 |
guanjinquan
|
74bde36e01
|
Patch porting gcc v2 (#124)
* 更改编译器的Include路径,使得include时不需要加`<libc/src/include/>`前缀
* 修改include路径
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2022-12-31 17:35:39 +08:00 |
guanjinquan
|
5ed4cd4602
|
Patch gcc toolchain (#111)
* 添加了GCC_cross_compile——tool_chain
* - 解决环境变量路径拼接时,多了`/`的问题
- apt安装时增加-y,不需用户确认
* 解决添加环境变量的命令有误的问题
* 修正编译错误时,还会执行下一步的问题
* new: 编译完成后清理临时文件
* 更新makefile
* 调整:把grub安装在 $HOME/opt/dragonos-grub下
* new: 新增dockerfile
* 将镜像源换成中科大的(原因是清华的总是ban掉用于构建镜像的服务器的ip)
* 修改为基于debian bullseye构建
* 取消指定版本
* 修复MBR磁盘镜像未设置启动标志的bug
* 取消在docker中安装grub
* 安装grub的过程改到客户机上进行
* bootstrap.sh 添加--no-docker
* 使用新版的docker编译镜像
* 修补, 添加了一些关于gcc的check
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2022-12-22 21:09:12 +08:00 |
login
|
c588d6f77f
|
Patch add abort func (#120)
* 对于除了sigkill以外的信号,也加入队列
* bugfix:libc中,注册信号处理函数时,总是注册sigkill的问题
* 增加getpid系统调用
* 增加了raise、kill、abort
|
2022-12-19 15:03:44 +08:00 |
login
|
7a818da88a
|
Patch about auto gen version string (#114)
* new: about app中,显示当前构建的git commit sha1以及构建时间
* bugfix: 修复shell的exec命令对绝对路径的拼接错误问题
|
2022-12-17 17:49:12 +08:00 |
login
|
6efd474033
|
允许用户自定义信号处理函数 (#112)
* new: 用户注册信号处理函数,能够进入自定义的handler
* 修复忘了传信号的数字给用户的处理函数的bug
* new:sigreturn
* 删除注释
|
2022-12-17 16:27:50 +08:00 |
wwc-15172310230
|
237e95c6dd
|
调整user下libs的libc目录结构 (#103)
* 调整user下libs的libc目录结构
* 修正.gitignore文件的问题
* 修复无法编译的问题
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2022-12-11 22:22:10 +08:00 |
login
|
1a2eaa402f
|
signal的处理(kill命令)以及一些其他的改进 (#100)
* 将entry.S中冗余的ret_from_syscall代码删除,改为jmp Restore_all
* new: 增加判断pt_regs是否来自用户态的函数
* new: rust的cli和sti封装
* 将原有的判断pt_regs是否来自用户态的代码,统一改为调用user_mode函数
* ffz函数:获取u64中的第一个值为0的bit
* spinlock增加 spinlock irq spin_unlock_irq
* 临时解决显示刷新线程迟迟不运行的问题
* 更改ffi_convert的生命周期标签
* new: 测试signal用的app
* 解决由于编译器优化导致local_irq_restore无法获取到正确的rflags的值的问题
* new: exec命令增加"&"后台运行选项
* procfs->status增加显示preempt和虚拟运行时间
* 更改引用计数的FFIBind2Rust trait中的生命周期标签
* new: signal处理(kill)
* 更正在review中发现的一些细节问题
|
2022-12-08 22:59:51 +08:00 |
login
|
d85ebf1ff5
|
new: V0.1.1发行日志 (#97)
|
2022-11-27 15:36:47 +08:00 |
DaJiYuQia
|
27a97abd24
|
Patch procf (#90)
* 1234
* 123
* 合并master
* procfs
* 1
* procfs展示进程基本信息
* modified code
* 恢复权限
* 恢复权限
#恢复权限
* modify permission
* 删除run.sh
* 解决第一次编译时磁盘镜像权限错误的问题
* 恢复.vscode/c_cpp_properties.json
* 删除process.c中错误的do_fork
* remake procfs
* 修改一些变量名
* 修改类型
* modified
* data_puts缓冲区溢出后return
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2022-11-26 17:34:00 +08:00 |
login
|
66f67c6a95
|
signal的发送(暂时父子进程之间共享信号及相应的结构体) (#89)
* 解决由于spinlock.h中包含preempt_enable()带来的循环include问题
* new: 初步实现signal的数据结构
* new:signal相关数据结构
* fix: 解决bindings.rs报一堆警告的问题
* new: rust下的kdebug kinfo kwarn kBUG kerror宏
* 移动asm.h和cmpxchg.h
* new: signal的发送(暂时只支持父子进程共享信号及处理函数)
|
2022-11-23 11:38:20 +08:00 |
login
|
0bfe94f46b
|
new: rust下的kdebug kinfo kwarn kBUG kerror宏 (#86)
* new: rust下的kdebug kinfo kwarn kBUG kerror宏
|
2022-11-18 16:32:15 +08:00 |
login
|
fd8ba5749d
|
about APP: adjust copyright info (#76)
* 修正文档错误
* buffix: 在释放kthread struct之前,先判断是否为kthread
* 修改about应用中的版权声明
|
2022-11-04 15:05:33 +08:00 |
longjin
|
c811947dd0
|
new: 将可执行文件移动到bin目录下
|
2022-11-02 15:54:04 +08:00 |
login
|
31b7b49d8c
|
new: FAT32删除文件的功能 (#73)
* new: 将sys_rmdir更改为sys_unlink,.且完成删除文件操作的vfs部分
* new: fat32删除文件
*bugfix: 解决创建文件时的bug
|
2022-11-02 15:42:44 +08:00 |
login
|
8a080f3cce
|
new: 将sys_rmdir更改为sys_unlink,.且完成删除文件操作的vfs部分 (#69)
|
2022-10-25 23:02:35 +08:00 |
DaJiYuQia
|
e56c10c7b6
|
修复初始命令行切换问题 (#66)
|
2022-10-23 17:35:40 +08:00 |
login
|
d328bfce6b
|
bugfix: 修正潜在的错误路径 (#64)
* bugfix: 修正潜在的错误路径
* 修正格式
|
2022-10-22 20:17:40 +08:00 |
DaJiYuQia
|
a9c5b3e45c
|
Patch shell cursor (#59)
* 调整代码减少bug
* 修复换行光标bug
Co-authored-by: longjin <longjin@RinGoTek.cn>
|
2022-10-18 20:38:34 +08:00 |
longjin
|
fbe1e23e97
|
将makefile中的gcc字样用$(CC)环境变量代替
|
2022-10-16 11:08:32 +08:00 |
DaJiYuQia
|
e62bbf13e5
|
swab函数 (#53)
* swab函数
Signed-off-by: Yuqia <15287042733@163.com>
* 修正格式
Signed-off-by: Yuqia <15287042733@163.com>
Co-authored-by: fslongjin <longjin@RinGoTek.cn>
|
2022-10-07 15:45:49 +08:00 |
fslongjin
|
f5ae770ffc
|
用户态memcpy
|
2022-10-06 21:29:12 +08:00 |
fslongjin
|
26eebaf03a
|
删除文件夹时回收dentry缓存
|
2022-09-13 16:17:35 +08:00 |
fslongjin
|
9f2b080cda
|
new: devfs删除文件夹
|
2022-09-12 23:56:31 +08:00 |
fslongjin
|
5652878249
|
bugfix: 用户态程序编译错误的问题
|
2022-09-11 21:28:19 +08:00 |
fslongjin
|
ef7d20c0fb
|
new:chardev的挂载
|
2022-09-10 00:18:18 +08:00 |
fslongjin
|
005b962f33
|
注释修改
|
2022-09-07 23:30:29 +08:00 |
fslongjin
|
ee9658b5d5
|
new:支持dev目录下的readdir
|
2022-09-07 23:25:39 +08:00 |
zzy666-hw
|
554b73ec99
|
add ipc pipe (#28)
|
2022-08-20 21:47:41 +08:00 |
wang904
|
4950d43e65
|
Patch add shell history(update for issue #23) (#24)
* add empty line if out of range
* support update history command
* query immediately
* fix bug
* fix bug(final,without debug)
* fix bug
* 格式修正
* fix bug
* fix
* less_empty_row
* retain history
* Improved formatting
Co-authored-by: fslongjin <longjin@RinGoTek.cn>
|
2022-08-18 21:38:11 +08:00 |
fslongjin
|
801c1fa6c6
|
修正宏定义的格式问题
|
2022-08-18 13:39:41 +08:00 |
fslongjin
|
1c2b423d77
|
fix: 修复数组类型错误的问题
|
2022-08-18 13:37:31 +08:00 |
wang904
|
d0d79c828d
|
fix keyboard
|
2022-08-18 10:35:52 +08:00 |
wang904
|
aa64a3a375
|
update: history commands
|
2022-08-18 10:29:35 +08:00 |
fslongjin
|
7fd5330195
|
new: shell中的free命令
|
2022-08-07 21:17:02 +08:00 |
fslongjin
|
fb51b0dd6f
|
new: mstat()函数,查询内存信息
|
2022-08-06 23:31:25 +08:00 |
fslongjin
|
b2614801ac
|
更新Makefile,提升编译速度
|
2022-08-01 16:03:17 +08:00 |
fslongjin
|
da4867d662
|
🆕 clock()函数
|
2022-07-12 13:20:01 +08:00 |
fslongjin
|
7670031b11
|
bugfix: 修复浮点数打印错误的bug
|
2022-07-12 13:19:51 +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
|
52b5c2731d
|
🐛 解决cd到相对路径后,新路径字符串拼接错误的问题
|
2022-07-06 00:39:18 +08:00 |
fslongjin
|
0d6957294d
|
消除了libc的_start方法的编译警告
|
2022-06-25 20:57:49 +08:00 |
fslongjin
|
d775af70c7
|
🆕 fat32文件系统的mkdir
|
2022-06-25 20:55:59 +08:00 |
fslongjin
|
d7d449bddd
|
🆕 libc新增_start函数,实现main的返回值的捕获
|
2022-06-25 00:51:29 +08:00 |
fslongjin
|
325bc981fe
|
🐛 修复traceback终点判断的bug
|
2022-06-23 11:44:42 +08:00 |
fslongjin
|
1ab51cb334
|
🆕 内核栈反向追踪
|
2022-06-22 23:31:47 +08:00 |
fslongjin
|
7a03b221a6
|
🔧 编译用户程序时,拷贝符号信息
|
2022-06-22 18:54:56 +08:00 |
fslongjin
|
2a47569473
|
bugfix: exec执行的文件不存在时,自动退出进程。
|
2022-06-09 21:56:32 +08:00 |
fslongjin
|
f37a090989
|
🆕 启动完成后显示DragonOS字样
|
2022-06-09 16:35:15 +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
|
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
|
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
|
156c2c2389
|
bugfix: 修复shell中,用户可以删除多余的字符的bug,以及\b会被录入到参数字符串的bug
|
2022-05-25 23:18:30 +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
|
8246c1c9e2
|
🆕 pwd命令
|
2022-05-24 16:37:28 +08:00 |
fslongjin
|
afeca18206
|
🎨 将shell独立成单独的app
|
2022-05-24 14:36:24 +08:00 |
fslongjin
|
e6108602df
|
🆕 用户态解析键盘扫描码
|
2022-05-21 21:49:56 +08:00 |
fslongjin
|
46ee327742
|
🐛 修复malloc扩容时int32溢出的bug,以及扩容堆内存后,由于未执行合并从而导致产生大量碎片的bug
|
2022-05-21 00:47:30 +08:00 |
fslongjin
|
5df5d79900
|
🆕 加载elf文件
|
2022-05-18 18:27:00 +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
|
8b8583cad9
|
🔧 内存分配的时候将指针的空间当做可用空间一并分配出去
|
2022-05-11 00:11:43 +08:00 |
fslongjin
|
edc62ea818
|
🔧 将malloc链表结点元素调整为2个
|
2022-05-10 23:51:59 +08:00 |
fslongjin
|
a7596e6ff1
|
🐛 修复了malloc的bug
|
2022-05-07 14:14:11 +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
|
b7437b24d7
|
🐛 页表拷贝的bug
|
2022-05-06 11:44:53 +08:00 |
fslongjin
|
c9784b457c
|
🆕 fork vfork
|
2022-05-06 11:44:38 +08:00 |
fslongjin
|
0aec6827ee
|
🆕 运行文件系统中的二进制程序
|
2022-05-06 00:25:32 +08:00 |