1019 Commits

Author SHA1 Message Date
曾俊
bde4a334c1
修复了未初始化时ui显示模块内存越界的问题,优化了代码结构 (#789) 2024-04-29 18:55:17 +08:00
LoGin
0722a06a09
fix: (riscv/timer): 修复riscv下没有更新墙上时钟以及没有处理软中断的bug (#783) 2024-04-28 19:40:09 +08:00
Chiichen
ab53b2eb75
ci: update the match regex of issue checker (#784)
The previous regex can not successfully match the pattern like `feat(driver/pci)`, which has a slash in the scope
2024-04-28 19:37:58 +08:00
LoGin
942cf26b48
fix(riscv/process): 把riscv的调度时钟节拍率与HZ同步,并且修复切换到用户态的时候忘了在内核态关中断的bug (#780) 2024-04-28 16:49:40 +08:00
曾俊
13b057cc0f
fix(libs/lib_ui): fix the display errors when system initialize (#779)
* 修复了系统初启动时会花屏的bug
2024-04-28 16:49:19 +08:00
LoGin
182b778a3c
chore: 适配dadk 0.1.11 (#777)
* chore: 适配dadk 0.1.11
2024-04-28 13:39:51 +08:00
Mingtao Huang
dd8e74ef0d
feat(driver/acpi_pm): Implement ACPI PM Timer (#772)
* feat: Implement ACPI PM Timer
2024-04-28 13:25:12 +08:00
LoGin
f75cb0f8ed
refactor(process): 调整arch_switch_to_user函数,把riscv和x86_64的共用逻辑抽取出来。 (#773)
* refactor(process): Extract common logic for riscv and x86_64 in arch_switch_to_user to run_init_process

调整arch_switch_to_user函数,把riscv和x86_64的共用逻辑抽取出来。写成run_init_process函数,并且能够尝试运行多个不同的init程序,直到某个运行成功
2024-04-27 15:35:24 +08:00
zwb0x00
173c4567cf
feat(sched): add sched_yield (#766)
* 实现sched_yield系统调用
2024-04-26 15:33:29 +08:00
LoGin
471d65cf15
feat(riscv): riscv下能够运行hello world用户程序 (#770)
* feat(riscv): riscv下能够运行hello world用户程序
2024-04-26 11:59:47 +08:00
zwb0x00
40348dd8d5
feat(fs): add sys_dup3 (#755)
* feat(fs): add sys_dup3
2024-04-23 19:35:02 +08:00
LoGin
3b799d13be
Create FUNDING.yml (#763) 2024-04-23 19:14:41 +08:00
LoGin
731bc2b32d
feat(virtio): riscv: 添加virtio-blk driver,并在riscv下能够正确挂载FAT32 (#761) 2024-04-23 17:19:54 +08:00
Chiichen
0c1ef30087
docs(community): add description of conventional commit standard (#754)
* docs(community): add description of conventional commit standard

* docs: add index
2024-04-23 00:27:05 +08:00
laokengwt
70c991af20
fix(dog): 添加CC环境变量,解决编译时找不到musl-gcc的问题 (#753) 2024-04-22 17:40:03 +08:00
LoGin
e32effb150
feat(driver): 把virtio添加到sysfs (#752) 2024-04-22 15:11:47 +08:00
MemoryShore
a17651b14b
feat(mm): 实现缺页中断处理,支持页面延迟分配和写时拷贝,以及用户栈自动拓展 (#715)
* 实现缺页中断处理

* 完善页表拷贝逻辑

* 优化代码结构

* 完善缺页异常信息

* 修改大页映射逻辑

* 修正大页映射错误

* 添加缺页中断支持标志

* 实现用户栈自动拓展功能
2024-04-22 15:10:47 +08:00
Chiichen
cb02d0bbc2
ci: import issue checker (#750)
* ci: supprot auto tag on pull request

* ci: update issue checker config

* ci: update issue checker & block merge while
2024-04-21 23:23:21 +08:00
sun5etop
93c379703e
feat(net): 实现raw socket的poll (#739)
feat(net): 实现raw socket的poll
2024-04-21 13:36:44 +08:00
LoGin
b502fbf0b9
chore: Update virtio-drivers to commit 61ece509c4 and modify max_queue_size implementation (#748) 2024-04-21 13:30:29 +08:00
LoGin
d770de5d53
fix: 修复unified-init导致cargo check失败的问题 (#747) 2024-04-21 13:12:31 +08:00
yuyi2439
881ff6f95e
将smoltcp升级到0.11.0版本 (#740) 2024-04-21 11:39:00 +08:00
LoGin
370472f728
pci: 添加pci root manager来管理pci root,并使得riscv能够正常扫描pci设备. (#745)
* pci: 添加pci root manager来管理pci root.
pci: 使得riscv能够正常扫描pci设备.

* doc: 添加注释
2024-04-21 11:27:36 +08:00
LoGin
2709e017d0
pci: 统一使用ecam root (#744) 2024-04-20 18:31:56 +08:00
LoGin
418ad41fd8
Feat(tty): add dummy console (#735)
使得riscv能暂时完成stdio_init(将来需要实现riscv的串口console)
2024-04-17 10:03:22 +08:00
Saga1718
1012552dea
删除无用的hid代码 (#734) 2024-04-16 21:37:42 +08:00
SMALLC
fbd63a301c
feat: alarm系统调用实现 (#710)
* alarm系统调用实现
2024-04-16 21:34:36 +08:00
GnoCiYeH
d623e90231
socket统一改用GlobalSocketHandle,并且修复fcntl SETFD的错误 (#730)
* socket统一改用`GlobalSocketHandle`,并且修复fcntl SETFD的错误

---------

Co-authored-by: longjin <longjin@DragonOS.org>
2024-04-15 22:01:32 +08:00
LoGin
7162a8358d
doc: Update build instructions for riscv64 architecture (#725) 2024-04-15 13:20:46 +08:00
Samuel Dai
1074eb34e7
feat(filesystem): 引入Umount系统调用 (#719)
* feat(filesystem): 引入Umount系统调用

* 将所有ENOSYS误用更正

* 修复了一个使同一个挂载点可以挂载2个文件系统的bug

* 统一注释,增强程序稳定性,统一接口。注意:Umount时在fatfs的路径要使用大写,此受限于当前文件系统设计。
2024-04-15 13:02:04 +08:00
laokengwt
ceeb2e943c
feat(mm): 添加slab内存分配器 (#683)
feat(mm): 添加slab内存分配器 
---------

Co-authored-by: longjin <longjin@DragonOS.org>
2024-04-15 12:51:14 +08:00
Saga1718
c719ddc631
feat(net): 实现tcp backlog功能 (#714)
* feat:实现tcp的backlog功能
2024-04-14 23:51:47 +08:00
LoGin
9621ab16ef
让riscv64能正常切换进程,并运行完所有的initcall (#721) 2024-04-14 20:39:20 +08:00
LoGin
9fab312ea9
Update DragonOS description and introduction (#717) 2024-04-12 15:27:44 +08:00
LoGin
f049d1af01
初始化riscv-sbi-timer (#716) 2024-04-12 14:46:47 +08:00
曾俊
3959e94df3
bugfix: 修复smp启动的时候,损坏0号核心的idle进程的内核栈的问题 (#711)
---------

Co-authored-by: longjin <longjin@DragonOS.org>
Co-authored-by: heyicong <heyicong@dragonos.org>
2024-04-10 19:00:32 +08:00
GnoCiYeH
9365e8017b
完善pty,目前pty能够支持ssh (#708) 2024-04-10 19:00:12 +08:00
Chiichen
4b0170bd6b
chore(tools): add bootstrap support for Centos/RHEL8/fedora (#713)
Co-authored-by: kejianchi <kejianchi@tencent.com>
2024-04-10 18:58:54 +08:00
Jomo
15b94df01a
add xuzihao (#712) 2024-04-10 10:58:07 +08:00
Jomo
6fc066ac11
实现SystemV共享内存 (#690)
* 实现SystemV共享内存

* 测试shm

* 添加测试程序

* 完善细节

* 修正shm的时间数据错误的问题

* fix: devfs的metadata权限为0x777的错误

---------

Co-authored-by: longjin <longjin@DragonOS.org>
2024-04-07 14:04:19 +08:00
曾俊
eb49bb993a
BlockCache-read cache支持 (#521)
支持block cache的读缓存
2024-04-07 14:03:51 +08:00
hmt
06560afa2a
Patch feat robust futex (#682)
* feat: 实现robust lock机制

* 前面更改vscode,修改回来

* 修改dadk的路径

* 提交.gitnore和.cargo,删除LICENSE,修改README

* 修改一个warn

* 删除.rustc_info.json

* 删除target文件夹

* 恢复DragonOS的LICENSE,删除Cargo.lock

* 将校验用户空间地址的代码写入函数内;将部分match分支用ok_or代替

* 修改wakeup函数获取running queue时unwrap一个None值发生panic

* 测试程序使用syscalls库进行系统调用
2024-04-06 22:26:34 +08:00
LoGin
23ef2b33d1
riscv: 把内核编译target改为riscv64gc & 获取time csr的频率 & 修正浮点保存与恢复的汇编的问题 (#699)
* 1. 把内核编译target改为riscv64gc
2. fix: 修正浮点保存与恢复的汇编的问题

* riscv: 获取time csr的频率
2024-04-06 22:13:26 +08:00
GnoCiYeH
f0c87a897f
重写调度模块 (#679)
## PR:重写调度模块
--- 
### 完成的部分
- 实现cfs调度策略
- 搭建框架,后续功能可以迭代开发
- 目前能跑,未测试性能

### 需要后续接力的部分
- 实现组内调度(task_group)
- 实现跨核负载均衡(pelt算法)
- 接入sysfs,实现参数动态调节(sched_stat等)
- nice值以及priority等参数的设置及调优
2024-04-05 17:54:48 +08:00
LoGin
e8eab1ac82
riscv: copy-thread (#696) 2024-04-05 16:37:08 +08:00
GnoCiYeH
dfe53cf087
实现pty,附带测试程序 (#685)
* 实现pty,附带测试程序

* fmt ** clippy

* 将file层的锁粒度缩小,从而不使用no_preempt。更改pipe在sleep部分的bug

* 修复拼写错误
2024-04-05 00:21:55 +08:00
Donkey Kane
b8ed38251d
修复jiffy时钟过快问题,启用gettimeofday测试,修改mount测试 (#680)
1. 把clock tick rate与hpet频率关联起来
2. 修复墙上时间同步错误的问题
3. 启用时间watch dog.
4. 修复时间流逝速度异常

---------

Co-authored-by: longjin <longjin@DragonOS.org>
2024-04-05 00:06:26 +08:00
yuyi2439
9430523b46
使nproc可以正确获取到cpu核心数 (#689) 2024-04-04 12:41:19 +08:00
LoGin
9b96c5b547
riscv64: switch process (#678)
* riscv64: switch process

* fixname
2024-03-31 22:53:01 +08:00
Val213
7d580ef99d
修复get_ramdom的长度错误问题() (#677) 2024-03-31 18:01:32 +08:00