8c6f2184 | 19-Mar-2024 |
sspphh <112558065+sspphh@users.noreply.github.com> |
实现uname系统调用 (#614)
* 实现uname系统调用
Co-authored-by: longjin <longjin@DragonOS.org> |
59fdb447 | 12-Mar-2024 |
LoGin <longjin@DragonOS.org> |
fix: 键盘中断上下文不再直接操作tty,而是由专门的kthread来渲染 (#592)
fix: 键盘中断上下文不再直接操作tty,而是由专门的kthread来渲染
1.修正psmouse 日志
2. 键盘中断上下文不再直接操作tty,而是由专门的kthread来渲染
3. 由于调度器设计问题,load balance会由于时序问题导致错误.因此暂时只启用单核. |
52bcb59e | 11-Mar-2024 |
GnoCiYeH <heyicong@dragonos.org> |
完善Tty的RawMode (#577)
* 完善rowmode,改掉一部分bug
* 增加两个ansi拓展功能功能,以及标记部分函数nerve inline
* 修改do_signal和其他中断上下文锁未关中断,以及拓展tty功能,修改tty几个算法bug
* 修改两个锁
* 修改syscall_64
* update |
840045af | 10-Mar-2024 |
LoGin <longjin@DragonOS.org> |
引入clippy,并根据clippy的提示,修改部分代码 (#575) |
e2841179 | 03-Mar-2024 |
LoGin <longjin@DragonOS.org> |
完成中断管理模块重构 (#554)
- 支持中断共享
- 把现有驱动程序移植到新的irq模块
- 使用`ProcessorId`标识处理器id
- 尚未实现threaded_irq
性能上,edge irq flow handler里面,对于锁的使用,可能有点问题。为了获取/修改common data还有其他几个结构体的状态,进行了多次加锁和放锁,导致性能降低。这是接下来需要优化的
完成中断管理模块重构 (#554)
- 支持中断共享
- 把现有驱动程序移植到新的irq模块
- 使用`ProcessorId`标识处理器id
- 尚未实现threaded_irq
性能上,edge irq flow handler里面,对于锁的使用,可能有点问题。为了获取/修改common data还有其他几个结构体的状态,进行了多次加锁和放锁,导致性能降低。这是接下来需要优化的点。
show more ...
|
52da9a59 | 26-Feb-2024 |
GnoCiYeH <heyicong@dragonos.org> |
完成与Linux兼容的Ntty (#517)
* 已经完成的功能:
- 写:printf能够正常在tty输出
- 读:与键盘驱动接上
- 信号: 能够正常通过ctrl向前台进程发送信号
* 支持目前的shell,改动printk使其与新版tty兼容。
* 删除原有tty文件夹,并更改新tty文件名
* 添加clear清屏程序
* 实现tty部分ioctl,更改部分
完成与Linux兼容的Ntty (#517)
* 已经完成的功能:
- 写:printf能够正常在tty输出
- 读:与键盘驱动接上
- 信号: 能够正常通过ctrl向前台进程发送信号
* 支持目前的shell,改动printk使其与新版tty兼容。
* 删除原有tty文件夹,并更改新tty文件名
* 添加clear清屏程序
* 实现tty部分ioctl,更改部分问题
show more ...
|
4ad52e57 | 07-Feb-2024 |
裕依2439 <68320855+yuyi2439@users.noreply.github.com> |
添加socketpair (#505)
* 添加对socketpair系统调用的处理
---------
Co-authored-by: LoGin <longjin@DragonOS.org> |
f2022a8a | 07-Feb-2024 |
LoGin <longjin@DragonOS.org> |
使用rust编写中断/异常的入口 (#509)
* 使用rust编写中断/异常的入口 |
5b59005f | 04-Feb-2024 |
LoGin <longjin@DragonOS.org> |
x86_64: 使用Rust重写内核初始化代码 (#507)
* x86_64: 使用Rust重写内核初始化代码 |
a02ce654 | 28-Jan-2024 |
Chiichen <chiichen@qq.com> |
支持对动态链接文件的加载,支持通过musl工具链编写用户空间程序 (#504)
支持对动态链接文件的加载,支持通过musl工具链编写用户空间程序 |
d46c6d27 | 23-Jan-2024 |
裕依2439 <68320855+yuyi2439@users.noreply.github.com> |
修复tty的buf满时始终阻塞的问题 (#493)
* 修复tty的buf满时始终阻塞的问题 |
e7071df6 | 01-Jan-2024 |
LoGin <longjin@DragonOS.org> |
把opengrok.ringotek.cn替换为code.dragonos.org.cn (#484) |
c566df45 | 01-Jan-2024 |
LoGin <longjin@DragonOS.org> |
添加帧缓冲区抽象并实现vesafb的驱动 (#483)
- 添加bootparams对象
- 修正由于bus的driver、device强弱引用关系 不正确从而导致对象被释放的bug
- 添加vesafb的驱动
- 实现framebuffer抽象层
- 为通用帧缓冲区抽象实现sysfs的属性
- 修改设备号DeviceNumber的定义
- 仿照linux,添加initcall,并
添加帧缓冲区抽象并实现vesafb的驱动 (#483)
- 添加bootparams对象
- 修正由于bus的driver、device强弱引用关系 不正确从而导致对象被释放的bug
- 添加vesafb的驱动
- 实现framebuffer抽象层
- 为通用帧缓冲区抽象实现sysfs的属性
- 修改设备号DeviceNumber的定义
- 仿照linux,添加initcall,并在第一个内核线程中,调用他们。
show more ...
|
0d6cf65a | 27-Dec-2023 |
LoGin <longjin@DragonOS.org> |
Patch fix sched and net lockdep error (#479)
- fix: 修复调度器,软中断,定时器,网络子系统的部分锁的使用不符合锁依赖安全规范的问题
- fix: 修复创建pcb时内核栈爆栈的问题
- 把异常的trap gate改成intr gate
---------
Co-authored-by: GnoCiYeH <heyicong@dr
Patch fix sched and net lockdep error (#479)
- fix: 修复调度器,软中断,定时器,网络子系统的部分锁的使用不符合锁依赖安全规范的问题
- fix: 修复创建pcb时内核栈爆栈的问题
- 把异常的trap gate改成intr gate
---------
Co-authored-by: GnoCiYeH <heyicong@dragonos.org>
show more ...
|
91e9d4ab | 25-Dec-2023 |
LoGin <longjin@DragonOS.org> |
实现unified-init库,支持收集初始化函数到一个数组,并统一初始化 (#474)
* 添加“统一初始化”的过程宏,并把SystemError独立成crate
* 使用unified-init来初始化fbmem
* 更新workflow,增加内核自动化静态测试 |
1a72a751 | 06-Dec-2023 |
LoGin <longjin@DragonOS.org> |
在riscv输出hello world (#466)
增加了以下内容:
- SBI驱动
- 把内核的rust工具链升级到2023-08-15版本
- 输出riscv的helloworld
- 设置内核是PIC的 |
4fda81ce | 25-Nov-2023 |
LoGin <longjin@DragonOS.org> |
使得DragonOS kernel 能为riscv64编译通过(尚未能启动) (#457)
* 使得DragonOS kernel 能为riscv64编译通过(尚未能启动)
* 修正了系统调用号声明不正确的问题,同时添加了编译配置文档 |
46e234ae | 17-Nov-2023 |
LoGin <longjin@DragonOS.org> |
使用cargo管理一些C文件的编译,并且移动部分汇编到arch目录 (#447)
* 使用cargo管理main.c的编译
* 使用build-scripts编译架构相关的c代码
* 删除elf.h |
bf4a4899 | 13-Nov-2023 |
LoGin <longjin@DragonOS.org> |
新增系统调用,并对照linux-6.1.9改写sys_wait4 (#440)
* 1. 新增以下系统调用
- SYS_LSTAT
- SYS_READV
- SYS_ACCESS
- SYS_UNLINK
- SYS_CHMOD
- SY
新增系统调用,并对照linux-6.1.9改写sys_wait4 (#440)
* 1. 新增以下系统调用
- SYS_LSTAT
- SYS_READV
- SYS_ACCESS
- SYS_UNLINK
- SYS_CHMOD
- SYS_FCHMOD
- SYS_UMASK
- SYS_SYSINFO
- SYS_CLOCK_GETTIME
- SYS_FCHMODAT
- SYS_FACCESSAT
2. 修改sys_wait4,使得其部分符合Linux的行为(还是有些地方不符合的,详情请对比linux-6.1.9的sys_wait4接口)
show more ...
|
0d9b7d92 | 12-Nov-2023 |
LoGin <longjin@DragonOS.org> |
添加prlimit64系统调用 (#438)
注意: 目前仅支持读取默认的rlimit值,尚不支持设置rlimit值. |
be8cdf4b | 12-Nov-2023 |
LoGin <longjin@DragonOS.org> |
增加getrusage,并把apic timer的频率调整为系统HZ (#435) |
02e249f3 | 12-Nov-2023 |
LoGin <longjin@DragonOS.org> |
添加uid、gid的系统调用(暴力封装返回0) (#434) |
393f6915 | 09-Nov-2023 |
LoGin <longjin@DragonOS.org> |
增加gettid以及线程组group leader相关的逻辑 (#430)
* 增加gettid以及线程组group leader相关的逻辑 |
7b32f508 | 07-Nov-2023 |
LoGin <longjin@DragonOS.org> |
增加内存分配日志监视器 (#424)
* 完成内存日志监视,并输出日志到文件
* 修复进程退出后,procfs查看进程status文件会崩溃的问题
* 修复signal唤醒进程的判断条件问题 |
70a4e555 | 07-Nov-2023 |
LoGin <longjin@DragonOS.org> |
使用rust重写了apic的驱动 (#425)
* 使用rust重写了apic的驱动。
* 修正signal和调度器的部分加锁逻辑,增加回退策略。
* 把pcb的flags字段替换为无锁的
* 使用cargo管理apic的编译
* 删除makefile中指定PIC的变量
---------
Co-authored-by: Gou Ngai <ymd7823@
使用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>
show more ...
|