1*ce48b934SLoGin# V0.1.10 2*ce48b934SLoGin 3*ce48b934SLoGin:::{note} 4*ce48b934SLoGin本文作者:龙进 <longjin@DragonOS.org> 5*ce48b934SLoGin 6*ce48b934SLoGinDragonOS官方论坛:[bbs.dragonos.org.cn](https://bbs.dragonos.org.cn) 7*ce48b934SLoGin 8*ce48b934SLoGin2024年5月13日 9*ce48b934SLoGin::: 10*ce48b934SLoGin 11*ce48b934SLoGin## 简介 12*ce48b934SLoGin 13*ce48b934SLoGin  本次版本更新,引入了42个feature类型的PR,24个bug修复,5个文档更新,以及一些软件移植、ci相关的内容。 14*ce48b934SLoGin 15*ce48b934SLoGin  当前版本核心看点: 16*ce48b934SLoGin 17*ce48b934SLoGin- 对调度子系统进行了重构 18*ce48b934SLoGin- 能在riscv64下运行到hello world应用程序 19*ce48b934SLoGin- 内存管理子系统引入了匿名页反向映射、写时拷贝以及延迟分配的特性 20*ce48b934SLoGin- 文件系统引入了大量的新的系统接口 21*ce48b934SLoGin- 实现了pty,并能运行简单的ssh服务端 22*ce48b934SLoGin 23*ce48b934SLoGin 24*ce48b934SLoGin## 赞助商列表 25*ce48b934SLoGin 26*ce48b934SLoGin- **[中国雅云](https://yacloud.net)** 雅安大数据产业园为DragonOS提供了云服务器支持。 27*ce48b934SLoGin 28*ce48b934SLoGin## 更新内容-内核 29*ce48b934SLoGin 30*ce48b934SLoGin- feat(fs): 实现了sys_rename (#578) 31*ce48b934SLoGin- feat(fs): 实现get_pathname (#615) 32*ce48b934SLoGin- feat(kernel): 实现uname系统调用 (#614) 33*ce48b934SLoGin- feat(fs): 添加mount系统调用 (#561) 34*ce48b934SLoGin- feat(smp): 重写SMP模块 (#633) 35*ce48b934SLoGin- feat(fs): 添加Statx系统调用 (#632) 36*ce48b934SLoGin- feat(riscv64): 添加flush tlb的ipi (#636) 37*ce48b934SLoGin- feat(fs): 实现SYS_LINK和SYS_LINKAT (#611) 38*ce48b934SLoGin- fix(fs): mkdir输出错误信息; 39*ce48b934SLoGin- fix(clippy): 修复内核的clippy检查报错 (#637) 40*ce48b934SLoGin- feat(net): 实现socketpair (#576) 41*ce48b934SLoGin- feat(process/riscv): 进程管理初始化 (#654) 42*ce48b934SLoGin- fix(time): 修复clock_gettime返回类型错误,修复小时间间隔duration返回0问题 (#664) 43*ce48b934SLoGin- fix(driver/base): 把Device trait的set_class改为设置Weak指针,以避免循环引用问题。 (#666) 44*ce48b934SLoGin- feat(textui): 支持绘制24位深和16位深显示缓冲区 (#640) 45*ce48b934SLoGin- fix(driver/tty): 修复tty设备显示在/sys目录下的bug (#668) 46*ce48b934SLoGin- feat(fs): 新加结构体POSIXSTATFS与SuperBlock用于处理statfs系统调用 (#667) 47*ce48b934SLoGin- feat(driver/rtc):实现了rtc的抽象,并且把x86的cmos rtc接入到设备驱动模型 (#674) 48*ce48b934SLoGin- fix(net): 修复udp bind的时候,对port0处理不正确的问题(#676) 49*ce48b934SLoGin- fix(fs/ramfs): 修复了ramfs中move_to未更新parent字段的bug (#673) 50*ce48b934SLoGin- feat(mm): 实现页面反向映射 (#670) 51*ce48b934SLoGin- fix(misc): 修复get_ramdom的长度错误问题() (#677) 52*ce48b934SLoGin- feat(process/riscv): riscv64: switch process (#678) 53*ce48b934SLoGin- fix(misc): 使nproc可以正确获取到cpu核心数 (#689) 54*ce48b934SLoGin- fix(time): 修复jiffy时钟过快问题,启用gettimeofday测试,修改mount测试 (#680) 55*ce48b934SLoGin- feat(driver/pty): 实现pty,附带测试程序 (#685) 56*ce48b934SLoGin- feat(process/riscv): 实现copy-thread (#696) 57*ce48b934SLoGin- feat(sched): 重写调度模块 (#679) 58*ce48b934SLoGin- fix(riscv): 把内核编译target改为riscv64gc & 获取time csr的频率 & 修正浮点保存与恢复的汇编的问题 (#699) 59*ce48b934SLoGin- feat(lock): 实现robust futex (#682) 60*ce48b934SLoGin- feat(fs): BlockCache-read cache支持 (#521) 61*ce48b934SLoGin- feat(mm): 实现SystemV共享内存 (#690) 62*ce48b934SLoGin- chore(tools): add bootstrap support for Centos/RHEL8/fedora (#713) 63*ce48b934SLoGin- feat(driver/pty): 完善pty,目前pty能够支持ssh (#708) 64*ce48b934SLoGin- fix(smp): 修复smp启动的时候,损坏0号核心的idle进程的内核栈的问题 (#711) 65*ce48b934SLoGin- feat(driver/riscv): 初始化riscv-sbi-timer (#716) 66*ce48b934SLoGin- doc: Update DragonOS description and introduction (#717) 67*ce48b934SLoGin- feat(riscv): 让riscv64能正常切换进程,并运行完所有的initcall (#721) 68*ce48b934SLoGin- feat(net): 实现tcp backlog功能 (#714) 69*ce48b934SLoGin- feat(mm): 添加slab内存分配器 (#683) 70*ce48b934SLoGin- feat(fs): 引入Umount系统调用 (#719) 71*ce48b934SLoGin- doc: Update build instructions for riscv64 architecture (#725) 72*ce48b934SLoGin- fix(fs): socket统一改用`GlobalSocketHandle`,并且修复fcntl SETFD的错误 (#730) 73*ce48b934SLoGin- feat: alarm系统调用实现 (#710) 74*ce48b934SLoGin- feat(tty): add dummy console (#735) 75*ce48b934SLoGin- fix(driver/pci): pci: 统一使用ecam root (#744) 76*ce48b934SLoGin- feat(driver/pci): pci: 添加pci root manager来管理pci root,并使得riscv能够正常扫描pci设备. (#745) 77*ce48b934SLoGin- build: 将smoltcp升级到0.11.0版本 (#740) 78*ce48b934SLoGin- fix(unified-init): 修复unified-init导致cargo check失败的问题 (#747) 79*ce48b934SLoGin- chore: Update virtio-drivers to commit 61ece509c4 and modify max_queue_size implementation (#748) 80*ce48b934SLoGin- feat(net): 实现raw socket的poll (#739) 81*ce48b934SLoGin- feat(mm): 实现缺页中断处理,支持页面延迟分配和写时拷贝,以及用户栈自动拓展 (#715) 82*ce48b934SLoGin- feat(driver): 把virtio添加到sysfs (#752) 83*ce48b934SLoGin- fix(dog): 添加CC环境变量,解决编译时找不到musl-gcc的问题 (#753) 84*ce48b934SLoGin- doc(community): add description of conventional commit standard (#754) 85*ce48b934SLoGin- feat(driver/virtio): riscv: 添加virtio-blk driver,并在riscv下能够正确挂载FAT32 (#761) 86*ce48b934SLoGin- feat(fs): add sys_dup3 (#755) 87*ce48b934SLoGin- feat(riscv): riscv下能够运行hello world用户程序 (#770) 88*ce48b934SLoGin- feat(sched): add sched_yield (#766) 89*ce48b934SLoGin- refactor(process): 调整arch_switch_to_user函数,把riscv和x86_64的共用逻辑抽取出来。 (#773) 90*ce48b934SLoGin- feat(driver/acpi_pm): Implement ACPI PM Timer (#772) 91*ce48b934SLoGin- chore: 适配dadk 0.1.11 (#777) 92*ce48b934SLoGin- fix(libs/lib_ui): fix the display errors when system initialize (#779) 93*ce48b934SLoGin- fix(riscv/process): 把riscv的调度时钟节拍率与HZ同步,并且修复切换到用户态的时候忘了在内核态关中断的bug (#780) 94*ce48b934SLoGin- fix: (riscv/timer): 修复riscv下没有更新墙上时钟以及没有处理软中断的bug (#783) 95*ce48b934SLoGin- feat(mm): add slab usage calculation (#768) 96*ce48b934SLoGin- feat(bitmap): Add bit and for AllocBitMap (#793) 97*ce48b934SLoGin- fix(mm): 修复vma映射标志错误 (#801) 98*ce48b934SLoGin- feat:(riscv/intr) 实现riscv plic驱动,能处理外部中断 (#799) 99*ce48b934SLoGin- doc(sched):调度子系统文档即cfs文档 (#807) 100*ce48b934SLoGin- fix(net): Fix TCP Unresponsiveness and Inability to Close Connections (#791) 101*ce48b934SLoGin- fix: disable mm debug log to prevent system lockup due to thingbuf issue (#808) 102*ce48b934SLoGin- feat(driver/pci): add pci bus into sysfs (#792) 103*ce48b934SLoGin- doc: Add Gentoo Linux In build_system.md (#810) 104*ce48b934SLoGin 105*ce48b934SLoGin## 更新内容-用户环境 106*ce48b934SLoGin 107*ce48b934SLoGin### 新特性/新应用移植 108*ce48b934SLoGin 109*ce48b934SLoGin- 添加core utils到系统 (#624) 110*ce48b934SLoGin- 移植dns查询工具dog的--tcp功能 (#652) 111*ce48b934SLoGin 112*ce48b934SLoGin 113*ce48b934SLoGin## 更新内容-CI 114*ce48b934SLoGin 115*ce48b934SLoGin- 引入triagebot对issue和PR进行分类 116*ce48b934SLoGin- 添加clippy检测的自动化工作流 (#649) 117*ce48b934SLoGin- ci: import issue checker (#750) 118*ce48b934SLoGin- ci: update the match regex of issue checker (#784) 119*ce48b934SLoGin- ci: 添加支持gentoo系统的一键安装脚本 (#809) 120*ce48b934SLoGin 121*ce48b934SLoGin## 源码、发布版镜像下载 122*ce48b934SLoGin 123*ce48b934SLoGin  您可以通过以下方式获得源代码: 124*ce48b934SLoGin 125*ce48b934SLoGin### 通过Git获取 126*ce48b934SLoGin 127*ce48b934SLoGin- 您可以访问DragonOS的仓库获取源代码:[https://github.com/DragonOS-Community/DragonOS](https://github.com/DragonOS-Community/DragonOS) 128*ce48b934SLoGin- 您可以访问[https://github.com/DragonOS-Community/DragonOS/releases](https://github.com/DragonOS-Community/DragonOS/releases)下载发布版的代码。 129*ce48b934SLoGin 130*ce48b934SLoGin### 通过DragonOS软件镜像站获取 131*ce48b934SLoGin 132*ce48b934SLoGin  为解决国内访问GitHub慢、不稳定的问题,同时为了方便开发者们下载DragonOS的每个版本的代码,我们特意搭建了镜像站,您可以通过以下地址访问镜像站: 133*ce48b934SLoGin 134*ce48b934SLoGin  您可以通过镜像站获取到DragonOS的代码压缩包,以及编译好的可运行的磁盘镜像。 135*ce48b934SLoGin 136*ce48b934SLoGin- [https://mirrors.DragonOS.org.cn](https://mirrors.DragonOS.org.cn) 137*ce48b934SLoGin- [https://git.mirrors.DragonOS.org.cn](https://git.mirrors.DragonOS.org.cn) 138*ce48b934SLoGin 139*ce48b934SLoGin## 开放源代码声明 140*ce48b934SLoGin 141*ce48b934SLoGin:::{note} 142*ce48b934SLoGin为促进DragonOS项目的健康发展,DragonOS以GPLv2开源协议进行发布。所有能获得到DragonOS源代码以及相应的软件制品(包括但不限于二进制副本、文档)的人,都能享有我们通过GPLv2协议授予您的权利,同时您也需要遵守协议中规定的义务。 143*ce48b934SLoGin 144*ce48b934SLoGin这是一个相当严格的,保护开源软件健康发展,不被侵占的协议。 145*ce48b934SLoGin 146*ce48b934SLoGin对于大部分的善意的人们而言,您不会违反我们的开源协议。 147*ce48b934SLoGin 148*ce48b934SLoGin我们鼓励DragonOS的自由传播、推广,但是请确保所有行为没有侵犯他人的合法权益,也没有违反GPLv2协议。 149*ce48b934SLoGin 150*ce48b934SLoGin请特别注意,对于违反开源协议的,尤其是**商业闭源使用以及任何剽窃、学术不端行为将会受到严肃的追责**。(这是最容易违反我们的开源协议的场景)。 151*ce48b934SLoGin 152*ce48b934SLoGin并且,请注意,按照GPLv2协议的要求,基于DragonOS修改或二次开发的软件,必须同样采用GPLv2协议开源,并标明其基于DragonOS进行了修改。亦需保证这些修改版本的用户能方便的获取到DragonOS的原始版本。 153*ce48b934SLoGin 154*ce48b934SLoGin您必须使得DragonOS的开发者们,能够以同样的方式,从公开渠道获取到您二次开发的版本的源代码,否则您将违反GPLv2协议。 155*ce48b934SLoGin 156*ce48b934SLoGin关于协议详细内容,还敬请您请阅读项目根目录下的**LICENSE**文件。请注意,按照GPLv2协议的要求,**只有英文原版才具有法律效力**。任何翻译版本都仅供参考。 157*ce48b934SLoGin::: 158*ce48b934SLoGin 159*ce48b934SLoGin### 开源软件使用情况 160*ce48b934SLoGin 161*ce48b934SLoGin  DragonOS在开发的过程中,参考了Linux社区的一些设计,或者引入了他们的部分思想,亦或是受到了他们的启发。我们在这里对Linux社区以及Linux社区的贡献者们致以最衷心的感谢! 162*ce48b934SLoGin 163*ce48b934SLoGin## 当前版本的所有提交记录 164*ce48b934SLoGin 165*ce48b934SLoGin```text 166*ce48b934SLoGincommit 9a0802fd2ddda39e96342997abbfc30bf65f1f0e 167*ce48b934SLoGinAuthor: donjuanplatinum <113148619+donjuanplatinum@users.noreply.github.com> 168*ce48b934SLoGinDate: Mon May 13 15:36:23 2024 +0800 169*ce48b934SLoGin 170*ce48b934SLoGin doc: Add Gentoo Linux In build_system.md (#810) 171*ce48b934SLoGin 172*ce48b934SLoGin * 增加安装文档中的Gentoo Linux提示 173*ce48b934SLoGin 174*ce48b934SLoGincommit 1f4877a4c512eb5ad232436128a0c52287b39aaa 175*ce48b934SLoGinAuthor: 曾俊 <110876916+ZZJJWarth@users.noreply.github.com> 176*ce48b934SLoGinDate: Mon May 13 15:27:08 2024 +0800 177*ce48b934SLoGin 178*ce48b934SLoGin feat(driver/pci): add pci bus into sysfs (#792) 179*ce48b934SLoGin 180*ce48b934SLoGin 把pci设备加入sysfs 181*ce48b934SLoGin 182*ce48b934SLoGincommit 1df85daf8f1b4426fe09d489d815997cdf989a87 183*ce48b934SLoGinAuthor: donjuanplatinum <113148619+donjuanplatinum@users.noreply.github.com> 184*ce48b934SLoGinDate: Sun May 12 22:58:59 2024 +0800 185*ce48b934SLoGin 186*ce48b934SLoGin 添加支持gentoo系统的一键安装脚本 (#809) 187*ce48b934SLoGin 188*ce48b934SLoGincommit 352ee04918f4585ad4f8a896ca6e18b1ef7d7934 189*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 190*ce48b934SLoGinDate: Sat May 11 18:02:13 2024 +0800 191*ce48b934SLoGin 192*ce48b934SLoGin fix: disable mm debug log to prevent system lockup due to thingbuf issue (#808) 193*ce48b934SLoGin 194*ce48b934SLoGincommit 37cef00bb404c9cc01509c12df57548029967dc2 195*ce48b934SLoGinAuthor: Samuel Dai <samuka007@qq.com> 196*ce48b934SLoGinDate: Sat May 11 17:17:43 2024 +0800 197*ce48b934SLoGin 198*ce48b934SLoGin fix(net): Fix TCP Unresponsiveness and Inability to Close Connections (#791) 199*ce48b934SLoGin 200*ce48b934SLoGin * fix(net): Improve stability. 为RawSocket与UdpSocket实现close时调用close方法,符合smoltcp的行为。为SocketInode实现drop,保证程序任何情况下退出时都能正确close对应socket, 释放被占用的端口。 201*ce48b934SLoGin 202*ce48b934SLoGin * fix(net): Correct socket close behavior. 203*ce48b934SLoGin 204*ce48b934SLoGincommit b941261d943fac38d3154495e19ec99c90ebea8d 205*ce48b934SLoGinAuthor: GnoCiYeH <heyicong@dragonos.org> 206*ce48b934SLoGinDate: Tue May 7 22:01:01 2024 +0800 207*ce48b934SLoGin 208*ce48b934SLoGin docs(sched):调度子系统文档即cfs文档 (#807) 209*ce48b934SLoGin 210*ce48b934SLoGin * 调度子系统文档以及cfs文档 211*ce48b934SLoGin 212*ce48b934SLoGincommit 0102d69fdd231e472d7bb3d609a41ae56a3799ee 213*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 214*ce48b934SLoGinDate: Wed May 1 21:11:32 2024 +0800 215*ce48b934SLoGin 216*ce48b934SLoGin feat:(riscv/intr) 实现riscv plic驱动,能处理外部中断 (#799) 217*ce48b934SLoGin 218*ce48b934SLoGin * feat:(riscv/intr) 实现riscv plic驱动,能处理外部中断 219*ce48b934SLoGin 220*ce48b934SLoGin - 实现riscv plic驱动,能处理外部中断 221*ce48b934SLoGin - 能收到virtio-blk的中断 222*ce48b934SLoGin - 实现fasteoi interrupt handler 223*ce48b934SLoGin 224*ce48b934SLoGincommit 17dc558977663433bd0181aa73ad131a1a265c1f 225*ce48b934SLoGinAuthor: MemoryShore <105195940+MemoryShore@users.noreply.github.com> 226*ce48b934SLoGinDate: Wed May 1 21:09:51 2024 +0800 227*ce48b934SLoGin 228*ce48b934SLoGin 修复vma映射标志错误 (#801) 229*ce48b934SLoGin 230*ce48b934SLoGincommit 7db6e06354328ea7c6164723f504e8ba58d0c4a4 231*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 232*ce48b934SLoGinDate: Tue Apr 30 18:45:01 2024 +0800 233*ce48b934SLoGin 234*ce48b934SLoGin feat(bitmap): Add bit and for AllocBitMap (#793) 235*ce48b934SLoGin 236*ce48b934SLoGincommit 7401bec5e3c42015399a46e29c370abe7c7388b5 237*ce48b934SLoGinAuthor: laokengwt <143977175+laokengwt@users.noreply.github.com> 238*ce48b934SLoGinDate: Mon Apr 29 23:03:33 2024 +0800 239*ce48b934SLoGin 240*ce48b934SLoGin feat(mm): add slab usage calculation (#768) 241*ce48b934SLoGin 242*ce48b934SLoGin * Add slab free space calculation and add it to freeram of sysinfo 243*ce48b934SLoGin 244*ce48b934SLoGincommit bde4a334c1ff2ae27989de4f6f8b45f5154b684d 245*ce48b934SLoGinAuthor: 曾俊 <110876916+ZZJJWarth@users.noreply.github.com> 246*ce48b934SLoGinDate: Mon Apr 29 18:55:17 2024 +0800 247*ce48b934SLoGin 248*ce48b934SLoGin 修复了未初始化时ui显示模块内存越界的问题,优化了代码结构 (#789) 249*ce48b934SLoGin 250*ce48b934SLoGincommit 0722a06a09ed52cb980a6147123453f86d0ea267 251*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 252*ce48b934SLoGinDate: Sun Apr 28 19:40:09 2024 +0800 253*ce48b934SLoGin 254*ce48b934SLoGin fix: (riscv/timer): 修复riscv下没有更新墙上时钟以及没有处理软中断的bug (#783) 255*ce48b934SLoGin 256*ce48b934SLoGincommit ab53b2eb75fe79167aa100e655b3589ee306f793 257*ce48b934SLoGinAuthor: Chiichen <chiichen@qq.com> 258*ce48b934SLoGinDate: Sun Apr 28 19:37:58 2024 +0800 259*ce48b934SLoGin 260*ce48b934SLoGin ci: update the match regex of issue checker (#784) 261*ce48b934SLoGin 262*ce48b934SLoGin The previous regex can not successfully match the pattern like `feat(driver/pci)`, which has a slash in the scope 263*ce48b934SLoGin 264*ce48b934SLoGincommit 942cf26b48c8b024a6fa7867bb0c8ae39bb1ae09 265*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 266*ce48b934SLoGinDate: Sun Apr 28 16:49:40 2024 +0800 267*ce48b934SLoGin 268*ce48b934SLoGin fix(riscv/process): 把riscv的调度时钟节拍率与HZ同步,并且修复切换到用户态的时候忘了在内核态关中断的bug (#780) 269*ce48b934SLoGin 270*ce48b934SLoGincommit 13b057cc0fda0cf9630c98d246937b85fa01a7c9 271*ce48b934SLoGinAuthor: 曾俊 <110876916+ZZJJWarth@users.noreply.github.com> 272*ce48b934SLoGinDate: Sun Apr 28 16:49:19 2024 +0800 273*ce48b934SLoGin 274*ce48b934SLoGin fix(libs/lib_ui): fix the display errors when system initialize (#779) 275*ce48b934SLoGin 276*ce48b934SLoGin * 修复了系统初启动时会花屏的bug 277*ce48b934SLoGin 278*ce48b934SLoGincommit 182b778a3ca8c633b605ae7dd90a5e9f1131cc6d 279*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 280*ce48b934SLoGinDate: Sun Apr 28 13:39:51 2024 +0800 281*ce48b934SLoGin 282*ce48b934SLoGin chore: 适配dadk 0.1.11 (#777) 283*ce48b934SLoGin 284*ce48b934SLoGin * chore: 适配dadk 0.1.11 285*ce48b934SLoGin 286*ce48b934SLoGincommit dd8e74ef0d7f91a141bd217736bef4fe7dc6df3d 287*ce48b934SLoGinAuthor: Mingtao Huang <114841534+1037827920@users.noreply.github.com> 288*ce48b934SLoGinDate: Sun Apr 28 13:25:12 2024 +0800 289*ce48b934SLoGin 290*ce48b934SLoGin feat(driver/acpi_pm): Implement ACPI PM Timer (#772) 291*ce48b934SLoGin 292*ce48b934SLoGin * feat: Implement ACPI PM Timer 293*ce48b934SLoGin 294*ce48b934SLoGincommit f75cb0f8ed754d94c3b2924519b785db3321c1d9 295*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 296*ce48b934SLoGinDate: Sat Apr 27 15:35:24 2024 +0800 297*ce48b934SLoGin 298*ce48b934SLoGin refactor(process): 调整arch_switch_to_user函数,把riscv和x86_64的共用逻辑抽取出来。 (#773) 299*ce48b934SLoGin 300*ce48b934SLoGin * refactor(process): Extract common logic for riscv and x86_64 in arch_switch_to_user to run_init_process 301*ce48b934SLoGin 302*ce48b934SLoGin 调整arch_switch_to_user函数,把riscv和x86_64的共用逻辑抽取出来。写成run_init_process函数,并且能够尝试运行多个不同的init程序,直到某个运行成功 303*ce48b934SLoGin 304*ce48b934SLoGincommit 173c4567cf4fb2276ef3f4614b69da7913fc8381 305*ce48b934SLoGinAuthor: zwb0x00 <163394849+zwb0x00@users.noreply.github.com> 306*ce48b934SLoGinDate: Fri Apr 26 15:33:29 2024 +0800 307*ce48b934SLoGin 308*ce48b934SLoGin feat(sched): add sched_yield (#766) 309*ce48b934SLoGin 310*ce48b934SLoGin * 实现sched_yield系统调用 311*ce48b934SLoGin 312*ce48b934SLoGincommit 471d65cf158c9bf741c21f5d0ab92efe7bf1c3d4 313*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 314*ce48b934SLoGinDate: Fri Apr 26 11:59:47 2024 +0800 315*ce48b934SLoGin 316*ce48b934SLoGin feat(riscv): riscv下能够运行hello world用户程序 (#770) 317*ce48b934SLoGin 318*ce48b934SLoGin * feat(riscv): riscv下能够运行hello world用户程序 319*ce48b934SLoGin 320*ce48b934SLoGincommit 40348dd8d5a008ecc9eb3aab931933e4eba0e6da 321*ce48b934SLoGinAuthor: zwb0x00 <163394849+zwb0x00@users.noreply.github.com> 322*ce48b934SLoGinDate: Tue Apr 23 19:35:02 2024 +0800 323*ce48b934SLoGin 324*ce48b934SLoGin feat(fs): add sys_dup3 (#755) 325*ce48b934SLoGin 326*ce48b934SLoGin * feat(fs): add sys_dup3 327*ce48b934SLoGin 328*ce48b934SLoGincommit 3b799d13beeb80900d728937308e47f8011835e1 329*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 330*ce48b934SLoGinDate: Tue Apr 23 19:14:41 2024 +0800 331*ce48b934SLoGin 332*ce48b934SLoGin Create FUNDING.yml (#763) 333*ce48b934SLoGin 334*ce48b934SLoGincommit 731bc2b32d7b37298883d7a15b6dca659b436ee4 335*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 336*ce48b934SLoGinDate: Tue Apr 23 17:19:54 2024 +0800 337*ce48b934SLoGin 338*ce48b934SLoGin feat(virtio): riscv: 添加virtio-blk driver,并在riscv下能够正确挂载FAT32 (#761) 339*ce48b934SLoGin 340*ce48b934SLoGincommit 0c1ef30087d10035c256fed08097f5897041979d 341*ce48b934SLoGinAuthor: Chiichen <chiichen@qq.com> 342*ce48b934SLoGinDate: Tue Apr 23 00:27:05 2024 +0800 343*ce48b934SLoGin 344*ce48b934SLoGin docs(community): add description of conventional commit standard (#754) 345*ce48b934SLoGin 346*ce48b934SLoGin * docs(community): add description of conventional commit standard 347*ce48b934SLoGin 348*ce48b934SLoGin * docs: add index 349*ce48b934SLoGin 350*ce48b934SLoGincommit 70c991af204167db26ec1d9494efcff010893482 351*ce48b934SLoGinAuthor: laokengwt <143977175+laokengwt@users.noreply.github.com> 352*ce48b934SLoGinDate: Mon Apr 22 17:40:03 2024 +0800 353*ce48b934SLoGin 354*ce48b934SLoGin fix(dog): 添加CC环境变量,解决编译时找不到musl-gcc的问题 (#753) 355*ce48b934SLoGin 356*ce48b934SLoGincommit e32effb1507773d32c216d9e77b963786e275c06 357*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 358*ce48b934SLoGinDate: Mon Apr 22 15:11:47 2024 +0800 359*ce48b934SLoGin 360*ce48b934SLoGin feat(driver): 把virtio添加到sysfs (#752) 361*ce48b934SLoGin 362*ce48b934SLoGincommit a17651b14b86dd70655090381db4a2f710853aa1 363*ce48b934SLoGinAuthor: MemoryShore <105195940+MemoryShore@users.noreply.github.com> 364*ce48b934SLoGinDate: Mon Apr 22 15:10:47 2024 +0800 365*ce48b934SLoGin 366*ce48b934SLoGin feat(mm): 实现缺页中断处理,支持页面延迟分配和写时拷贝,以及用户栈自动拓展 (#715) 367*ce48b934SLoGin 368*ce48b934SLoGin * 实现缺页中断处理 369*ce48b934SLoGin 370*ce48b934SLoGin * 完善页表拷贝逻辑 371*ce48b934SLoGin 372*ce48b934SLoGin * 优化代码结构 373*ce48b934SLoGin 374*ce48b934SLoGin * 完善缺页异常信息 375*ce48b934SLoGin 376*ce48b934SLoGin * 修改大页映射逻辑 377*ce48b934SLoGin 378*ce48b934SLoGin * 修正大页映射错误 379*ce48b934SLoGin 380*ce48b934SLoGin * 添加缺页中断支持标志 381*ce48b934SLoGin 382*ce48b934SLoGin * 实现用户栈自动拓展功能 383*ce48b934SLoGin 384*ce48b934SLoGincommit cb02d0bbc213867ac845b7e8a0fb337f723d396a 385*ce48b934SLoGinAuthor: Chiichen <chiichen@qq.com> 386*ce48b934SLoGinDate: Sun Apr 21 23:23:21 2024 +0800 387*ce48b934SLoGin 388*ce48b934SLoGin ci: import issue checker (#750) 389*ce48b934SLoGin 390*ce48b934SLoGin * ci: supprot auto tag on pull request 391*ce48b934SLoGin 392*ce48b934SLoGin * ci: update issue checker config 393*ce48b934SLoGin 394*ce48b934SLoGin * ci: update issue checker & block merge while 395*ce48b934SLoGin 396*ce48b934SLoGincommit 93c379703e3be210799953bc0686d02f97119b39 397*ce48b934SLoGinAuthor: sun5etop <146408999+sun5etop@users.noreply.github.com> 398*ce48b934SLoGinDate: Sun Apr 21 13:36:44 2024 +0800 399*ce48b934SLoGin 400*ce48b934SLoGin feat(net): 实现raw socket的poll (#739) 401*ce48b934SLoGin 402*ce48b934SLoGin feat(net): 实现raw socket的poll 403*ce48b934SLoGin 404*ce48b934SLoGincommit b502fbf0b9c575a4c04e103d0fb708c4e383ab06 405*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 406*ce48b934SLoGinDate: Sun Apr 21 13:30:29 2024 +0800 407*ce48b934SLoGin 408*ce48b934SLoGin chore: Update virtio-drivers to commit 61ece509c4 and modify max_queue_size implementation (#748) 409*ce48b934SLoGin 410*ce48b934SLoGincommit d770de5d53ce9b598fb0024800a347b081f92a73 411*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 412*ce48b934SLoGinDate: Sun Apr 21 13:12:31 2024 +0800 413*ce48b934SLoGin 414*ce48b934SLoGin fix: 修复unified-init导致cargo check失败的问题 (#747) 415*ce48b934SLoGin 416*ce48b934SLoGincommit 881ff6f95e4addc373d815d66cb912bf721c20e6 417*ce48b934SLoGinAuthor: yuyi2439 <68320855+yuyi2439@users.noreply.github.com> 418*ce48b934SLoGinDate: Sun Apr 21 11:39:00 2024 +0800 419*ce48b934SLoGin 420*ce48b934SLoGin 将smoltcp升级到0.11.0版本 (#740) 421*ce48b934SLoGin 422*ce48b934SLoGincommit 370472f7288b568c7b80815f5b150daf4496446c 423*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 424*ce48b934SLoGinDate: Sun Apr 21 11:27:36 2024 +0800 425*ce48b934SLoGin 426*ce48b934SLoGin pci: 添加pci root manager来管理pci root,并使得riscv能够正常扫描pci设备. (#745) 427*ce48b934SLoGin 428*ce48b934SLoGin * pci: 添加pci root manager来管理pci root. 429*ce48b934SLoGin pci: 使得riscv能够正常扫描pci设备. 430*ce48b934SLoGin 431*ce48b934SLoGin * doc: 添加注释 432*ce48b934SLoGin 433*ce48b934SLoGincommit 2709e017d0d216d61b2caed3c7286459de7794c7 434*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 435*ce48b934SLoGinDate: Sat Apr 20 18:31:56 2024 +0800 436*ce48b934SLoGin 437*ce48b934SLoGin pci: 统一使用ecam root (#744) 438*ce48b934SLoGin 439*ce48b934SLoGincommit 418ad41fd84c15ed7e132e56970150ac38fc24a9 440*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 441*ce48b934SLoGinDate: Wed Apr 17 10:03:22 2024 +0800 442*ce48b934SLoGin 443*ce48b934SLoGin Feat(tty): add dummy console (#735) 444*ce48b934SLoGin 445*ce48b934SLoGin 使得riscv能暂时完成stdio_init(将来需要实现riscv的串口console) 446*ce48b934SLoGin 447*ce48b934SLoGincommit 1012552dea71bf04cf1d329d570c4c9ca9b2a2f8 448*ce48b934SLoGinAuthor: Saga1718 <161323888+Saga1718@users.noreply.github.com> 449*ce48b934SLoGinDate: Tue Apr 16 21:37:42 2024 +0800 450*ce48b934SLoGin 451*ce48b934SLoGin 删除无用的hid代码 (#734) 452*ce48b934SLoGin 453*ce48b934SLoGincommit fbd63a301c5648f906eeb802f10ac03518ba1264 454*ce48b934SLoGinAuthor: SMALLC <121806694+SMALLC04@users.noreply.github.com> 455*ce48b934SLoGinDate: Tue Apr 16 21:34:36 2024 +0800 456*ce48b934SLoGin 457*ce48b934SLoGin feat: alarm系统调用实现 (#710) 458*ce48b934SLoGin 459*ce48b934SLoGin * alarm系统调用实现 460*ce48b934SLoGin 461*ce48b934SLoGincommit d623e90231ef6a31d091c3f611c0af3a83d3343b 462*ce48b934SLoGinAuthor: GnoCiYeH <heyicong@dragonos.org> 463*ce48b934SLoGinDate: Mon Apr 15 22:01:32 2024 +0800 464*ce48b934SLoGin 465*ce48b934SLoGin socket统一改用`GlobalSocketHandle`,并且修复fcntl SETFD的错误 (#730) 466*ce48b934SLoGin 467*ce48b934SLoGin * socket统一改用`GlobalSocketHandle`,并且修复fcntl SETFD的错误 468*ce48b934SLoGin 469*ce48b934SLoGin --------- 470*ce48b934SLoGin 471*ce48b934SLoGin Co-authored-by: longjin <longjin@DragonOS.org> 472*ce48b934SLoGin 473*ce48b934SLoGincommit 7162a8358d94c7799dd2b5300192b6a794b23d79 474*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 475*ce48b934SLoGinDate: Mon Apr 15 13:20:46 2024 +0800 476*ce48b934SLoGin 477*ce48b934SLoGin doc: Update build instructions for riscv64 architecture (#725) 478*ce48b934SLoGin 479*ce48b934SLoGincommit 1074eb34e784aa2adfc5b9e0d89fa4b7e6ea03ef 480*ce48b934SLoGinAuthor: Samuel Dai <samuka007@qq.com> 481*ce48b934SLoGinDate: Mon Apr 15 13:02:04 2024 +0800 482*ce48b934SLoGin 483*ce48b934SLoGin feat(filesystem): 引入Umount系统调用 (#719) 484*ce48b934SLoGin 485*ce48b934SLoGin * feat(filesystem): 引入Umount系统调用 486*ce48b934SLoGin 487*ce48b934SLoGin * 将所有ENOSYS误用更正 488*ce48b934SLoGin 489*ce48b934SLoGin * 修复了一个使同一个挂载点可以挂载2个文件系统的bug 490*ce48b934SLoGin 491*ce48b934SLoGin * 统一注释,增强程序稳定性,统一接口。注意:Umount时在fatfs的路径要使用大写,此受限于当前文件系统设计。 492*ce48b934SLoGin 493*ce48b934SLoGincommit ceeb2e943ca7645609920ec7ad8bfceea2b13de6 494*ce48b934SLoGinAuthor: laokengwt <143977175+laokengwt@users.noreply.github.com> 495*ce48b934SLoGinDate: Mon Apr 15 12:51:14 2024 +0800 496*ce48b934SLoGin 497*ce48b934SLoGin feat(mm): 添加slab内存分配器 (#683) 498*ce48b934SLoGin 499*ce48b934SLoGin feat(mm): 添加slab内存分配器 500*ce48b934SLoGin --------- 501*ce48b934SLoGin 502*ce48b934SLoGin Co-authored-by: longjin <longjin@DragonOS.org> 503*ce48b934SLoGin 504*ce48b934SLoGincommit c719ddc6312acd7976e0f6fd449a94ff9abad5a6 505*ce48b934SLoGinAuthor: Saga1718 <161323888+Saga1718@users.noreply.github.com> 506*ce48b934SLoGinDate: Sun Apr 14 23:51:47 2024 +0800 507*ce48b934SLoGin 508*ce48b934SLoGin feat(net): 实现tcp backlog功能 (#714) 509*ce48b934SLoGin 510*ce48b934SLoGin * feat:实现tcp的backlog功能 511*ce48b934SLoGin 512*ce48b934SLoGincommit 9621ab16ef27bc94f223e6254fafb9bb07d46d57 513*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 514*ce48b934SLoGinDate: Sun Apr 14 20:39:20 2024 +0800 515*ce48b934SLoGin 516*ce48b934SLoGin 让riscv64能正常切换进程,并运行完所有的initcall (#721) 517*ce48b934SLoGin 518*ce48b934SLoGincommit 9fab312ea9921618629924ab15c28c2d255b21c6 519*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 520*ce48b934SLoGinDate: Fri Apr 12 15:27:44 2024 +0800 521*ce48b934SLoGin 522*ce48b934SLoGin Update DragonOS description and introduction (#717) 523*ce48b934SLoGin 524*ce48b934SLoGincommit f049d1af01da7b92f312245ed411b22475b76065 525*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 526*ce48b934SLoGinDate: Fri Apr 12 14:46:47 2024 +0800 527*ce48b934SLoGin 528*ce48b934SLoGin 初始化riscv-sbi-timer (#716) 529*ce48b934SLoGin 530*ce48b934SLoGincommit 3959e94df38073fdb80b199777015f95611ba05f 531*ce48b934SLoGinAuthor: 曾俊 <110876916+ZZJJWarth@users.noreply.github.com> 532*ce48b934SLoGinDate: Wed Apr 10 19:00:32 2024 +0800 533*ce48b934SLoGin 534*ce48b934SLoGin bugfix: 修复smp启动的时候,损坏0号核心的idle进程的内核栈的问题 (#711) 535*ce48b934SLoGin 536*ce48b934SLoGin --------- 537*ce48b934SLoGin 538*ce48b934SLoGin Co-authored-by: longjin <longjin@DragonOS.org> 539*ce48b934SLoGin Co-authored-by: heyicong <heyicong@dragonos.org> 540*ce48b934SLoGin 541*ce48b934SLoGincommit 9365e8017b39582eca620ba93c64f1b3c87c73d4 542*ce48b934SLoGinAuthor: GnoCiYeH <heyicong@dragonos.org> 543*ce48b934SLoGinDate: Wed Apr 10 19:00:12 2024 +0800 544*ce48b934SLoGin 545*ce48b934SLoGin 完善pty,目前pty能够支持ssh (#708) 546*ce48b934SLoGin 547*ce48b934SLoGincommit 4b0170bd6bb374d0e9699a0076cc23b976ad6db7 548*ce48b934SLoGinAuthor: Chiichen <chiichen@qq.com> 549*ce48b934SLoGinDate: Wed Apr 10 18:58:54 2024 +0800 550*ce48b934SLoGin 551*ce48b934SLoGin chore(tools): add bootstrap support for Centos/RHEL8/fedora (#713) 552*ce48b934SLoGin 553*ce48b934SLoGin Co-authored-by: kejianchi <kejianchi@tencent.com> 554*ce48b934SLoGin 555*ce48b934SLoGincommit 15b94df01adc7e8931961b9b9a89db4e7c014b64 556*ce48b934SLoGinAuthor: Jomo <xuzihao@dragonos.org> 557*ce48b934SLoGinDate: Wed Apr 10 10:58:07 2024 +0800 558*ce48b934SLoGin 559*ce48b934SLoGin add xuzihao (#712) 560*ce48b934SLoGin 561*ce48b934SLoGincommit 6fc066ac11d2f9a3ac629d57487a6144fda1ac63 562*ce48b934SLoGinAuthor: Jomo <2512364506@qq.com> 563*ce48b934SLoGinDate: Sun Apr 7 14:04:19 2024 +0800 564*ce48b934SLoGin 565*ce48b934SLoGin 实现SystemV共享内存 (#690) 566*ce48b934SLoGin 567*ce48b934SLoGin * 实现SystemV共享内存 568*ce48b934SLoGin 569*ce48b934SLoGin * 测试shm 570*ce48b934SLoGin 571*ce48b934SLoGin * 添加测试程序 572*ce48b934SLoGin 573*ce48b934SLoGin * 完善细节 574*ce48b934SLoGin 575*ce48b934SLoGin * 修正shm的时间数据错误的问题 576*ce48b934SLoGin 577*ce48b934SLoGin * fix: devfs的metadata权限为0x777的错误 578*ce48b934SLoGin 579*ce48b934SLoGin --------- 580*ce48b934SLoGin 581*ce48b934SLoGin Co-authored-by: longjin <longjin@DragonOS.org> 582*ce48b934SLoGin 583*ce48b934SLoGincommit eb49bb993a39964f92494ec3effafed3fb9adfd8 584*ce48b934SLoGinAuthor: 曾俊 <110876916+ZZJJWarth@users.noreply.github.com> 585*ce48b934SLoGinDate: Sun Apr 7 14:03:51 2024 +0800 586*ce48b934SLoGin 587*ce48b934SLoGin BlockCache-read cache支持 (#521) 588*ce48b934SLoGin 589*ce48b934SLoGin 支持block cache的读缓存 590*ce48b934SLoGin 591*ce48b934SLoGincommit 06560afa2aa4db352526f4be8b6262719b8b3eac 592*ce48b934SLoGinAuthor: hmt <114841534+1037827920@users.noreply.github.com> 593*ce48b934SLoGinDate: Sat Apr 6 22:26:34 2024 +0800 594*ce48b934SLoGin 595*ce48b934SLoGin Patch feat robust futex (#682) 596*ce48b934SLoGin 597*ce48b934SLoGin * feat: 实现robust lock机制 598*ce48b934SLoGin 599*ce48b934SLoGin * 前面更改vscode,修改回来 600*ce48b934SLoGin 601*ce48b934SLoGin * 修改dadk的路径 602*ce48b934SLoGin 603*ce48b934SLoGin * 提交.gitnore和.cargo,删除LICENSE,修改README 604*ce48b934SLoGin 605*ce48b934SLoGin * 修改一个warn 606*ce48b934SLoGin 607*ce48b934SLoGin * 删除.rustc_info.json 608*ce48b934SLoGin 609*ce48b934SLoGin * 删除target文件夹 610*ce48b934SLoGin 611*ce48b934SLoGin * 恢复DragonOS的LICENSE,删除Cargo.lock 612*ce48b934SLoGin 613*ce48b934SLoGin * 将校验用户空间地址的代码写入函数内;将部分match分支用ok_or代替 614*ce48b934SLoGin 615*ce48b934SLoGin * 修改wakeup函数获取running queue时unwrap一个None值发生panic 616*ce48b934SLoGin 617*ce48b934SLoGin * 测试程序使用syscalls库进行系统调用 618*ce48b934SLoGin 619*ce48b934SLoGincommit 23ef2b33d1e3cfd2506eb7449a33df4ec42f11d3 620*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 621*ce48b934SLoGinDate: Sat Apr 6 22:13:26 2024 +0800 622*ce48b934SLoGin 623*ce48b934SLoGin riscv: 把内核编译target改为riscv64gc & 获取time csr的频率 & 修正浮点保存与恢复的汇编的问题 (#699) 624*ce48b934SLoGin 625*ce48b934SLoGin * 1. 把内核编译target改为riscv64gc 626*ce48b934SLoGin 2. fix: 修正浮点保存与恢复的汇编的问题 627*ce48b934SLoGin 628*ce48b934SLoGin * riscv: 获取time csr的频率 629*ce48b934SLoGin 630*ce48b934SLoGincommit f0c87a897fe813b7f06bf5a9e93c43ad9519dafd 631*ce48b934SLoGinAuthor: GnoCiYeH <heyicong@dragonos.org> 632*ce48b934SLoGinDate: Fri Apr 5 17:54:48 2024 +0800 633*ce48b934SLoGin 634*ce48b934SLoGin 重写调度模块 (#679) 635*ce48b934SLoGin 636*ce48b934SLoGin ## PR:重写调度模块 637*ce48b934SLoGin --- 638*ce48b934SLoGin ### 完成的部分 639*ce48b934SLoGin - 实现cfs调度策略 640*ce48b934SLoGin - 搭建框架,后续功能可以迭代开发 641*ce48b934SLoGin - 目前能跑,未测试性能 642*ce48b934SLoGin 643*ce48b934SLoGin ### 需要后续接力的部分 644*ce48b934SLoGin - 实现组内调度(task_group) 645*ce48b934SLoGin - 实现跨核负载均衡(pelt算法) 646*ce48b934SLoGin - 接入sysfs,实现参数动态调节(sched_stat等) 647*ce48b934SLoGin - nice值以及priority等参数的设置及调优 648*ce48b934SLoGin 649*ce48b934SLoGincommit e8eab1ac824e1b1e638e50debb8326dfed4f05e5 650*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 651*ce48b934SLoGinDate: Fri Apr 5 16:37:08 2024 +0800 652*ce48b934SLoGin 653*ce48b934SLoGin riscv: copy-thread (#696) 654*ce48b934SLoGin 655*ce48b934SLoGincommit dfe53cf087ef4c7b6db63d992906b062dc63e93f 656*ce48b934SLoGinAuthor: GnoCiYeH <heyicong@dragonos.org> 657*ce48b934SLoGinDate: Fri Apr 5 00:21:55 2024 +0800 658*ce48b934SLoGin 659*ce48b934SLoGin 实现pty,附带测试程序 (#685) 660*ce48b934SLoGin 661*ce48b934SLoGin * 实现pty,附带测试程序 662*ce48b934SLoGin 663*ce48b934SLoGin * fmt ** clippy 664*ce48b934SLoGin 665*ce48b934SLoGin * 将file层的锁粒度缩小,从而不使用no_preempt。更改pipe在sleep部分的bug 666*ce48b934SLoGin 667*ce48b934SLoGin * 修复拼写错误 668*ce48b934SLoGin 669*ce48b934SLoGincommit b8ed38251dc255b0c525801b5dbf37d3b0d0d61e 670*ce48b934SLoGinAuthor: Donkey Kane <109840258+xiaolin2004@users.noreply.github.com> 671*ce48b934SLoGinDate: Fri Apr 5 00:06:26 2024 +0800 672*ce48b934SLoGin 673*ce48b934SLoGin 修复jiffy时钟过快问题,启用gettimeofday测试,修改mount测试 (#680) 674*ce48b934SLoGin 675*ce48b934SLoGin 1. 把clock tick rate与hpet频率关联起来 676*ce48b934SLoGin 2. 修复墙上时间同步错误的问题 677*ce48b934SLoGin 3. 启用时间watch dog. 678*ce48b934SLoGin 4. 修复时间流逝速度异常 679*ce48b934SLoGin 680*ce48b934SLoGin --------- 681*ce48b934SLoGin 682*ce48b934SLoGin Co-authored-by: longjin <longjin@DragonOS.org> 683*ce48b934SLoGin 684*ce48b934SLoGincommit 9430523b465b19db4dd476e9fd3038bdc2aa0c8d 685*ce48b934SLoGinAuthor: yuyi2439 <68320855+yuyi2439@users.noreply.github.com> 686*ce48b934SLoGinDate: Thu Apr 4 12:41:19 2024 +0800 687*ce48b934SLoGin 688*ce48b934SLoGin 使nproc可以正确获取到cpu核心数 (#689) 689*ce48b934SLoGin 690*ce48b934SLoGincommit 9b96c5b547c337502db7ec820312f119f95eece1 691*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 692*ce48b934SLoGinDate: Sun Mar 31 22:53:01 2024 +0800 693*ce48b934SLoGin 694*ce48b934SLoGin riscv64: switch process (#678) 695*ce48b934SLoGin 696*ce48b934SLoGin * riscv64: switch process 697*ce48b934SLoGin 698*ce48b934SLoGin * fixname 699*ce48b934SLoGin 700*ce48b934SLoGincommit 7d580ef99d2a52250b384afd49c7f87ab66a8c84 701*ce48b934SLoGinAuthor: Val213 <112376067+val213@users.noreply.github.com> 702*ce48b934SLoGinDate: Sun Mar 31 18:01:32 2024 +0800 703*ce48b934SLoGin 704*ce48b934SLoGin 修复get_ramdom的长度错误问题() (#677) 705*ce48b934SLoGin 706*ce48b934SLoGincommit 56cc4dbe27e132aac5c61b8bd4f4ec9a223b49ee 707*ce48b934SLoGinAuthor: Jomo <2512364506@qq.com> 708*ce48b934SLoGinDate: Sun Mar 31 16:33:49 2024 +0800 709*ce48b934SLoGin 710*ce48b934SLoGin 实现页面反向映射 (#670) 711*ce48b934SLoGin 712*ce48b934SLoGin * 实现页面反向映射 713*ce48b934SLoGin 714*ce48b934SLoGin * 完善PAGE_MANAGER初始化时机 && 封装lock函数 && 删掉过时注释 715*ce48b934SLoGin 716*ce48b934SLoGincommit 924d64de8def99488f57dc618de763f7aca4a68b 717*ce48b934SLoGinAuthor: BrahmaMantra <140599389+BrahmaMantra@users.noreply.github.com> 718*ce48b934SLoGinDate: Sun Mar 31 15:19:12 2024 +0800 719*ce48b934SLoGin 720*ce48b934SLoGin 修复了ramfs中move_to未更新parent字段的bug (#673) 721*ce48b934SLoGin 722*ce48b934SLoGin 修复了ramfs中move_to未更新parent字段的bug 723*ce48b934SLoGin 724*ce48b934SLoGin --------- 725*ce48b934SLoGin 726*ce48b934SLoGin Co-authored-by: Samuel Dai <samuka007@qq.com> 727*ce48b934SLoGin 728*ce48b934SLoGincommit 9d9a09841ce2d650a41fed776916c0a11d52f92e 729*ce48b934SLoGinAuthor: sun5etop <146408999+sun5etop@users.noreply.github.com> 730*ce48b934SLoGinDate: Sun Mar 31 15:11:10 2024 +0800 731*ce48b934SLoGin 732*ce48b934SLoGin 修复udp bind的时候,对port0处理不正确的问题(#676) 733*ce48b934SLoGin 734*ce48b934SLoGincommit da152319797436368304cbc3f85a3b9ec049134b 735*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 736*ce48b934SLoGinDate: Thu Mar 28 00:28:13 2024 +0800 737*ce48b934SLoGin 738*ce48b934SLoGin 实现了rtc的抽象,并且把x86的cmos rtc接入到设备驱动模型 (#674) 739*ce48b934SLoGin 740*ce48b934SLoGin * 实现了rtc的抽象,并且把x86的cmos rtc接入到设备驱动模型。 741*ce48b934SLoGin 742*ce48b934SLoGincommit 597ecc08c2444dcc8f527eb021932718b69c9cc5 743*ce48b934SLoGinAuthor: TTaq <103996388+TTaq@users.noreply.github.com> 744*ce48b934SLoGinDate: Tue Mar 26 18:28:26 2024 +0800 745*ce48b934SLoGin 746*ce48b934SLoGin 新加结构体POSIXSTATFS与SuperBlock用于处理statfs系统调用 (#667) 747*ce48b934SLoGin 748*ce48b934SLoGin * 新加结构体POSIXSTATFS与SuperBlock用于处理statfs系统调用 749*ce48b934SLoGin 750*ce48b934SLoGincommit 0cb807346cb3c47924538585087d9fc846cf5e6f 751*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 752*ce48b934SLoGinDate: Tue Mar 26 18:26:02 2024 +0800 753*ce48b934SLoGin 754*ce48b934SLoGin 修复tty设备显示在/sys目录下的bug (#668) 755*ce48b934SLoGin 756*ce48b934SLoGincommit 2755467c790d6510fa97cbf052ce8e91ad1372c6 757*ce48b934SLoGinAuthor: 曾俊 <110876916+ZZJJWarth@users.noreply.github.com> 758*ce48b934SLoGinDate: Mon Mar 25 16:39:36 2024 +0800 759*ce48b934SLoGin 760*ce48b934SLoGin 支持绘制24位深和16位深显示缓冲区 (#640) 761*ce48b934SLoGin 762*ce48b934SLoGin * 修复了初始化时显示,边界条件的一个bug 763*ce48b934SLoGin 764*ce48b934SLoGin * 解决了内存未初始前字体显示的兼容性问题 765*ce48b934SLoGin * 支持绘制24位深和16位深显示缓冲区 766*ce48b934SLoGin 767*ce48b934SLoGincommit 4256da7fb6ad25a3caab6f656607aaf047cb6446 768*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 769*ce48b934SLoGinDate: Mon Mar 25 15:47:05 2024 +0800 770*ce48b934SLoGin 771*ce48b934SLoGin 把Device trait的set_class改为设置Weak指针,以避免循环引用问题。 (#666) 772*ce48b934SLoGin 773*ce48b934SLoGincommit 5c20e05a2eb82da6dd73104fcf51d538500c2856 774*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 775*ce48b934SLoGinDate: Mon Mar 25 13:59:00 2024 +0800 776*ce48b934SLoGin 777*ce48b934SLoGin 修改bug report模版label (#665) 778*ce48b934SLoGin 779*ce48b934SLoGincommit 7c958c9ef0cd25eb15abb21d0d3420aac1c67c88 780*ce48b934SLoGinAuthor: Val213 <112376067+val213@users.noreply.github.com> 781*ce48b934SLoGinDate: Mon Mar 25 13:04:53 2024 +0800 782*ce48b934SLoGin 783*ce48b934SLoGin 移植dns查询工具dog的--tcp功能 (#652) 784*ce48b934SLoGin 785*ce48b934SLoGin * add dog, modify user/Makefile and user.sysconfig 786*ce48b934SLoGin 787*ce48b934SLoGin * add dog, modify user/Makefile and user.sysconfig 788*ce48b934SLoGin 789*ce48b934SLoGin * fix tty unicode 790*ce48b934SLoGin 791*ce48b934SLoGin * 修正无法正确编译dog的问题 792*ce48b934SLoGin 793*ce48b934SLoGin --------- 794*ce48b934SLoGin 795*ce48b934SLoGin Co-authored-by: val213 <val213666@gmail.com> 796*ce48b934SLoGin Co-authored-by: GnoCiYeH <heyicong@dragonos.org> 797*ce48b934SLoGin Co-authored-by: longjin <longjin@DragonOS.org> 798*ce48b934SLoGin 799*ce48b934SLoGincommit 911132c4b8ea0e9c49a4e84b9fa1db114102acbb 800*ce48b934SLoGinAuthor: Donkey Kane <109840258+xiaolin2004@users.noreply.github.com> 801*ce48b934SLoGinDate: Mon Mar 25 13:04:32 2024 +0800 802*ce48b934SLoGin 803*ce48b934SLoGin 修复clock_gettime返回类型错误,修复小时间间隔duration返回0问题 (#664) 804*ce48b934SLoGin 805*ce48b934SLoGin * 修复clock_gettime返回类型错误,修正wtm初始化逻辑 806*ce48b934SLoGin 807*ce48b934SLoGin * 修复duration在小时间间隔下为0的问题 808*ce48b934SLoGin 809*ce48b934SLoGin * 临时修复时间流逝速度异常,在test-mount中加入运行时间检测 810*ce48b934SLoGin 811*ce48b934SLoGincommit 401699735b5ec29768c3c0c47df6c529991f108f 812*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 813*ce48b934SLoGinDate: Sat Mar 23 16:25:56 2024 +0800 814*ce48b934SLoGin 815*ce48b934SLoGin riscv: 进程管理初始化 (#654) 816*ce48b934SLoGin 817*ce48b934SLoGincommit 6046f77591cf23dc9cc53b68b25c0d74f94fa493 818*ce48b934SLoGinAuthor: 裕依 <68320855+yuyi2439@users.noreply.github.com> 819*ce48b934SLoGinDate: Sat Mar 23 15:56:49 2024 +0800 820*ce48b934SLoGin 821*ce48b934SLoGin Patch socketpair (#576) 822*ce48b934SLoGin 823*ce48b934SLoGin * 将sockets分成inet和unix域 824*ce48b934SLoGin - 添加File端点 825*ce48b934SLoGin - 添加SocketPair trait并将Socket trait中的pair相关方法移动 826*ce48b934SLoGin - 添加对SockAddrUn的处理 827*ce48b934SLoGin 828*ce48b934SLoGin * 精简SocketHandleItem 829*ce48b934SLoGin 830*ce48b934SLoGin * 重构socketpair相关逻辑 831*ce48b934SLoGin - 将File端点换成Inode端点 832*ce48b934SLoGin - 尝试使用SocketInode进行socketpair(未成功) 833*ce48b934SLoGin 834*ce48b934SLoGin 835*ce48b934SLoGin * 将SocketPair trait合并到Socket trait中,去除downcast 836*ce48b934SLoGin 837*ce48b934SLoGincommit 3660256a9ee94abc30b5b22508cbd48c44c86089 838*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 839*ce48b934SLoGinDate: Sat Mar 23 11:51:30 2024 +0800 840*ce48b934SLoGin 841*ce48b934SLoGin 只对x86_64进行clippy check (#651) 842*ce48b934SLoGin 843*ce48b934SLoGincommit 4e4c8c41e90989c1f732995511e0f9a77a33f650 844*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 845*ce48b934SLoGinDate: Fri Mar 22 23:56:30 2024 +0800 846*ce48b934SLoGin 847*ce48b934SLoGin 添加clippy检测的自动化工作流 (#649) 848*ce48b934SLoGin 849*ce48b934SLoGin * 添加clippy检测的自动化工作流 850*ce48b934SLoGin 851*ce48b934SLoGin * fmt 852*ce48b934SLoGin 853*ce48b934SLoGin * 1 854*ce48b934SLoGin 855*ce48b934SLoGincommit b5b571e02693d91eb6918d3b7561e088c3e7ee81 856*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 857*ce48b934SLoGinDate: Fri Mar 22 23:26:39 2024 +0800 858*ce48b934SLoGin 859*ce48b934SLoGin 修复内核的clippy检查报错 (#637) 860*ce48b934SLoGin 861*ce48b934SLoGin 修复内核的clippy检查报错 862*ce48b934SLoGin --------- 863*ce48b934SLoGin 864*ce48b934SLoGin Co-authored-by: Samuel Dai <947309196@qq.com> 865*ce48b934SLoGin Co-authored-by: Donkey Kane <109840258+xiaolin2004@users.noreply.github.com> 866*ce48b934SLoGin Co-authored-by: themildwind <107623059+themildwind@users.noreply.github.com> 867*ce48b934SLoGin Co-authored-by: GnoCiYeH <heyicong@dragonos.org> 868*ce48b934SLoGin Co-authored-by: MemoryShore <105195940+MemoryShore@users.noreply.github.com> 869*ce48b934SLoGin Co-authored-by: 曾俊 <110876916+ZZJJWarth@users.noreply.github.com> 870*ce48b934SLoGin Co-authored-by: sun5etop <146408999+sun5etop@users.noreply.github.com> 871*ce48b934SLoGin Co-authored-by: hmt <114841534+1037827920@users.noreply.github.com> 872*ce48b934SLoGin Co-authored-by: laokengwt <143977175+laokengwt@users.noreply.github.com> 873*ce48b934SLoGin Co-authored-by: TTaq <103996388+TTaq@users.noreply.github.com> 874*ce48b934SLoGin Co-authored-by: Jomo <2512364506@qq.com> 875*ce48b934SLoGin Co-authored-by: Samuel Dai <samuka007@qq.com> 876*ce48b934SLoGin Co-authored-by: sspphh <112558065+sspphh@users.noreply.github.com> 877*ce48b934SLoGin 878*ce48b934SLoGincommit 4695947e1b601c83641676485571d42c692a2bbd 879*ce48b934SLoGinAuthor: Chenzx <109664121+schulice@users.noreply.github.com> 880*ce48b934SLoGinDate: Fri Mar 22 18:27:07 2024 +0800 881*ce48b934SLoGin 882*ce48b934SLoGin 实现SYS_LINK和SYS_LINKAT (#611) 883*ce48b934SLoGin 884*ce48b934SLoGin * 实现do_linkat及SYS_LINK和SYS_LINKAT 885*ce48b934SLoGin 886*ce48b934SLoGin * 未在riscv上测试,添加target_arch 887*ce48b934SLoGin 888*ce48b934SLoGin * 将c字符串检查移动到vfs/syscall.rs,修改do_linkat()逻辑 889*ce48b934SLoGin 890*ce48b934SLoGin * 修改部分注释 891*ce48b934SLoGin 892*ce48b934SLoGincommit 70f159a3988eab656ea1d2b204fde87948526ecf 893*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 894*ce48b934SLoGinDate: Thu Mar 21 21:35:39 2024 +0800 895*ce48b934SLoGin 896*ce48b934SLoGin riscv64: 添加flush tlb的ipi (#636) 897*ce48b934SLoGin 898*ce48b934SLoGin * riscv64: 添加flush tlb的ipi 899*ce48b934SLoGin 900*ce48b934SLoGin * update triagebot 901*ce48b934SLoGin 902*ce48b934SLoGincommit b4eb05a17f0f65668f69e7979660874ef8e01a2e 903*ce48b934SLoGinAuthor: TTaq <103996388+TTaq@users.noreply.github.com> 904*ce48b934SLoGinDate: Thu Mar 21 19:59:10 2024 +0800 905*ce48b934SLoGin 906*ce48b934SLoGin Statx (#632) 907*ce48b934SLoGin 908*ce48b934SLoGin 909*ce48b934SLoGin * 实现statx及测试的应用程序 910*ce48b934SLoGin 911*ce48b934SLoGincommit 8cb2e9b344230227fe5f3ab3ebeb2522f1c5e289 912*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 913*ce48b934SLoGinDate: Thu Mar 21 19:19:32 2024 +0800 914*ce48b934SLoGin 915*ce48b934SLoGin 重写SMP模块 (#633) 916*ce48b934SLoGin 917*ce48b934SLoGin * 修复cpumask的迭代器的错误。 918*ce48b934SLoGin 919*ce48b934SLoGin * 能进系统(AP核心还没有初始化自身) 920*ce48b934SLoGin 921*ce48b934SLoGin * 初始化ap core 922*ce48b934SLoGin 923*ce48b934SLoGin * 修改percpu 924*ce48b934SLoGin 925*ce48b934SLoGin * 删除无用的cpu.c 926*ce48b934SLoGin 927*ce48b934SLoGin * riscv64编译通过 928*ce48b934SLoGin 929*ce48b934SLoGincommit 1d37ca6d172e01a98fa6785d2b3e07fb8202a4a9 930*ce48b934SLoGinAuthor: Donkey Kane <109840258+xiaolin2004@users.noreply.github.com> 931*ce48b934SLoGinDate: Wed Mar 20 15:31:20 2024 +0800 932*ce48b934SLoGin 933*ce48b934SLoGin 添加mount系统调用 (#561) 934*ce48b934SLoGin 935*ce48b934SLoGin * Modify dadk config to switch NovaShell revision 936*ce48b934SLoGin 937*ce48b934SLoGin * finish primary build of mount(2), usable now 938*ce48b934SLoGin 939*ce48b934SLoGin * 使用read_from_cstr函数优化代码可读性 , 针对文件系统新增错误EUNSUPFS 940*ce48b934SLoGin 941*ce48b934SLoGin * small changes 942*ce48b934SLoGin 943*ce48b934SLoGin * 添加系统调用文档 944*ce48b934SLoGin 945*ce48b934SLoGin * cargo fmt 946*ce48b934SLoGin 947*ce48b934SLoGin * Revert "small changes" 948*ce48b934SLoGin 949*ce48b934SLoGin This reverts commit e1991314ce687faa2d652479e8ef64f5bea25fa1. 950*ce48b934SLoGin 951*ce48b934SLoGin * 修复用户程序参数传入错误 952*ce48b934SLoGin 953*ce48b934SLoGin * Revert "small changes" 954*ce48b934SLoGin 955*ce48b934SLoGin This reverts commit e1991314ce687faa2d652479e8ef64f5bea25fa1. 956*ce48b934SLoGin 957*ce48b934SLoGin * 解决合并冲突,最终提交 958*ce48b934SLoGin 959*ce48b934SLoGin * 将dadk_config切换为相对路径以修复依赖问题 960*ce48b934SLoGin 961*ce48b934SLoGin * Update settings.json 962*ce48b934SLoGin 963*ce48b934SLoGin * Delete user/apps/test-mount/LICENSE 964*ce48b934SLoGin 965*ce48b934SLoGin * 换用更好的c字符串读取函数,优化系统调用函数注释,修复错误处理bug,删除无用文件,修改测试程序readme 966*ce48b934SLoGin 967*ce48b934SLoGin * 修改用户程序readme 968*ce48b934SLoGin 969*ce48b934SLoGin * 代码格式化,初级版本 970*ce48b934SLoGin 971*ce48b934SLoGin * 初级版本,未实现文件系统管理器,未支持设备挂载 972*ce48b934SLoGin 973*ce48b934SLoGin * 为文件系统添加name方法,返回文件系统名字字符串,为挂载查询服务 974*ce48b934SLoGin 975*ce48b934SLoGin * mount系统调用:添加统一文件系统初始化管理器 976*ce48b934SLoGin 977*ce48b934SLoGin * null 978*ce48b934SLoGin 979*ce48b934SLoGin * 解除冲突 980*ce48b934SLoGin 981*ce48b934SLoGin * 删除无用kdebug 982*ce48b934SLoGin 983*ce48b934SLoGincommit 1cd9bb43f0256aecf19a090dd71e4ac2b86a5e29 984*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 985*ce48b934SLoGinDate: Tue Mar 19 21:31:02 2024 +0800 986*ce48b934SLoGin 987*ce48b934SLoGin 添加core utils到系统 (#624) 988*ce48b934SLoGin 989*ce48b934SLoGincommit 8c6f21840f820a161d4386000aea1d79e3bc8d13 990*ce48b934SLoGinAuthor: sspphh <112558065+sspphh@users.noreply.github.com> 991*ce48b934SLoGinDate: Tue Mar 19 17:01:20 2024 +0800 992*ce48b934SLoGin 993*ce48b934SLoGin 实现uname系统调用 (#614) 994*ce48b934SLoGin 995*ce48b934SLoGin * 实现uname系统调用 996*ce48b934SLoGin 997*ce48b934SLoGin Co-authored-by: longjin <longjin@DragonOS.org> 998*ce48b934SLoGin 999*ce48b934SLoGincommit 82df0a13109e400602ddaec049d04ae230eb485b 1000*ce48b934SLoGinAuthor: hmt <114841534+1037827920@users.noreply.github.com> 1001*ce48b934SLoGinDate: Tue Mar 19 16:45:44 2024 +0800 1002*ce48b934SLoGin 1003*ce48b934SLoGin fix: mkdir输出错误信息; feat: 实现get_pathname (#615) 1004*ce48b934SLoGin 1005*ce48b934SLoGin * fix: mkdir输出错误信息; feat: 实现get_pathname 1006*ce48b934SLoGin 1007*ce48b934SLoGin * fix: 将处理路径的操作放入vfs而不是在syscall/mod.rs中 1008*ce48b934SLoGin 1009*ce48b934SLoGin * 调整入参类型 1010*ce48b934SLoGin 1011*ce48b934SLoGin --------- 1012*ce48b934SLoGin 1013*ce48b934SLoGin Co-authored-by: longjin <longjin@DragonOS.org> 1014*ce48b934SLoGin 1015*ce48b934SLoGincommit 9e481b3bfe303e0b104694da9750ae978dfeecae 1016*ce48b934SLoGinAuthor: TTaq <103996388+TTaq@users.noreply.github.com> 1017*ce48b934SLoGinDate: Mon Mar 18 14:47:59 2024 +0800 1018*ce48b934SLoGin 1019*ce48b934SLoGin 实现了sys_rename (#578) 1020*ce48b934SLoGin 1021*ce48b934SLoGin * 基本实现了rename的系统调用 1022*ce48b934SLoGin 1023*ce48b934SLoGin * 实现相对路径的mv 1024*ce48b934SLoGin 1025*ce48b934SLoGin * confilct resolve 1026*ce48b934SLoGin 1027*ce48b934SLoGin * make fmt 1028*ce48b934SLoGin 1029*ce48b934SLoGin * 更改校验位置, 1030*ce48b934SLoGin 增加了SYS_RENAMEAT与SYS_RENAMEAT2两个系统调用,其实现与SYS_RENAME基本一致 1031*ce48b934SLoGin 1032*ce48b934SLoGin * 删除了fat中的link 1033*ce48b934SLoGin 1034*ce48b934SLoGin * fix 1035*ce48b934SLoGin 1036*ce48b934SLoGin * 修改注释格式,删除管道文件判断 1037*ce48b934SLoGin 1038*ce48b934SLoGin * 1 1039*ce48b934SLoGin 1040*ce48b934SLoGincommit c3c73444516b7b47b6327cd66f5453133f47998d 1041*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 1042*ce48b934SLoGinDate: Sat Mar 16 22:28:59 2024 +0800 1043*ce48b934SLoGin 1044*ce48b934SLoGin 更新triagebot配置 (#616) 1045*ce48b934SLoGin 1046*ce48b934SLoGin * 更新triagebot配置 1047*ce48b934SLoGin 1048*ce48b934SLoGincommit 4fd916113e576a1c5d8ca9faae7a9d6b25afb9ae 1049*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 1050*ce48b934SLoGinDate: Sat Mar 16 18:09:32 2024 +0800 1051*ce48b934SLoGin 1052*ce48b934SLoGin triagebot-add-shortcut (#612) 1053*ce48b934SLoGin 1054*ce48b934SLoGincommit fbc174499f5200924c732263e461c79b4a936c5b 1055*ce48b934SLoGinAuthor: LoGin <longjin@DragonOS.org> 1056*ce48b934SLoGinDate: Fri Mar 15 20:06:24 2024 +0800 1057*ce48b934SLoGin 1058*ce48b934SLoGin 添加triagebot文件 (#608) 1059*ce48b934SLoGin 1060*ce48b934SLoGin * 添加triagebot文件 1061*ce48b934SLoGin 1062*ce48b934SLoGin```