1# V0.1.8 2 3:::{note} 4本文作者:龙进 <longjin@DragonOS.org> 5 6 72023年8月16日 8::: 9 10## 贡献者名单 11 12DragonOS V0.1.8版本由以下小伙伴贡献代码: 13 14- 龙进 <longjin@DragonOS.org> 15- 侯嘉滢 <houjiaying@DragonOS.org> 16- 吴宇健 <wuyujian@DragonOS.org> 17- 黄厅 <huangting@DragonOS.org> 18- 孔维超 <kongweichao@DragonOS.org> 19- 蔡嘉鑫 <caijiaxin@DragonOS.org> 20- 池克俭 <chikejhian@DragonOS.org> 21- zhaoyao73 <dragonlinux@gmail.com> 22- 周瀚杰 <zhouhanjie@DragonOS.org> 23- Bullet <93781792+GP-Bullet@users.noreply.github.com> 24- 櫻井桃華 <89176634+TihayaKousaka@users.noreply.github.com> 25- Tptogiar <2528891112@qq.com> 26 27## 赞助者名单 28 29感谢以下同学的赞赏,我们将不断努力! 30 31- 万晓兰 32- David Wen 33- [Seele.Clover](https://github.com/seeleclover) 34- [FindWangHao](https://github.com/FindWangHao) 35- [ferchiel](https://github.com/ferchiel) 36- 叶锦毅 37- 林 38- Albert 39- [TerryLeeSCUT · GitHub](https://github.com/TerryLeeSCUT) 40- slientbard 41- 悟 42- 匿名热心人士 43 44## 更新内容-内核 45 46### 新特性 47 48- refactor: 重构系统调用模块 (#267) 49- feature: 添加AlignBox和int_like宏 (#272) 50- refactor: 新的ipi功能&kick_cpu功能的重写 (#274) 51- feature: 实现gettimeofday()系统调用和clocksource+timekeeping子模块 (#278) 52- refactor: PCI设备中断重构,并删去USB相关代码 (#285) 53- feature: 注册串口设备,创建字符设备框架(#290) 54- refactor: 新的内存管理模块 (#303) 55- feature: 新的二进制加载器、elf解析器 (#303) 56- feature: 增加 ListenTable 来检测端口占用 (#291) 57- feature: 替换 local_irq_save 为 IrqFlagsGuard 实现 (#317) 58- feature: 实现系统调用Fstat (#295) 59- feature: 实现内核通知链 notifier chain (#316) 60- feature: 增加fcntl系统调用 (#323) 61- feature: 添加per cpu变量支持 (#327) 62- feature: spinlock守卫新增leak,spinlock新增force unlock功能.(#329) 63 64### bugfix 65- bugfix: 修复无法正常读取stdin的问题 (#264) 66- bugfix: 修复了当传入ahci驱动的缓冲区地址为用户缓冲区时,产生的内存越界问题.(采用分配内核缓冲区的方式临时解决) (#265) 67- bugfix: 解决由于local_irq_save、local_irq_restore函数的汇编不规范导致影响栈行为的bug。 (#303) 68- bugfix: 解决local_irq_save未关中断的错误 (#303) 69- bugfix: 解决arch_try_cmpxchg对于指针处理的错误 (#307) 70- bugfix: 修复了wait4的异常报错 (#312) 71- bugfix: 修正null设备以及zero设备无法open、行为不符合预期的问题 (#314) 72- bugfix: 修正fat文件系统未能正确的扩展文件大小的bug (#323) 73- bugfix: 修正rwlock有的地方由于未使用ManuallyDrop导致的use after free问题 (#329) 74 75 76## 更新内容-用户环境 77 78### 新特性 79- feature: 新增http server (#265) 80 81### bugfix 82- bugfix: 解决链接时,由于crt*.o未按照升序排列导致init段链接错误的问题 (#265) 83 84 85## 更新内容-其他 86 87- bugfix: 固定编译工具链、修复由于新版rust编译器问题导致的报错。 (#258) 88- feature: Makefile: 根目录下添加make help命令 (#271) 89- doc: 更新github issue模板 (#277) 90- bugfix: 解决relibc的头文件没能识别__dragonos__定义的问题 (#315) 91- feature: 设置内核、relibc的远程为dragonos的git镜像站,防止国内网络问题导致编译失败 (#318) 92- feature: 自动安装、更新dadk (#319) 93 94## 更新内容-软件移植 95 96- feature: 移植了sqlite3 (#323) 97 98## 源码、发布版镜像下载 99 100  您可以通过以下方式获得源代码: 101 102### 通过Git获取 103 104- 您可以访问[https://github.com/DragonOS-Community/DragonOS/releases](https://github.com/DragonOS-Community/DragonOS/releases)下载发布版的代码,以及编译好的,可运行的磁盘镜像。 105- 我们在gitee上也有镜像仓库可供下载:[https://gitee.com/DragonOS/DragonOS](https://gitee.com/DragonOS/DragonOS) 106 107### 通过DragonOS软件镜像站获取 108 109  为解决国内访问GitHub慢、不稳定的问题,同时为了方便开发者们下载DragonOS的每个版本的代码,我们特意搭建了镜像站,您可以通过以下地址访问镜像站: 110 111  您可以通过镜像站获取到DragonOS的代码压缩包,以及编译好的可运行的磁盘镜像。 112 113- [https://mirrors.DragonOS.org](https://mirrors.DragonOS.org) 114- [https://git.mirrors.DragonOS.org](https://git.mirrors.DragonOS.org) 115- 国内镜像加速: [https://mirrors.ringotek.cn/](https://mirrors.ringotek.cn/) 116 117## 开放源代码声明 118 119 120:::{note} 121为促进DragonOS项目的健康发展,DragonOS以GPLv2开源协议进行发布。所有能获得到DragonOS源代码以及相应的软件制品(包括但不限于二进制副本、文档)的人,都能享有我们通过GPLv2协议授予您的权利,同时您也需要遵守协议中规定的义务。 122 123这是一个相当严格的,保护开源软件健康发展,不被侵占的协议。 124 125对于大部分的善意的人们而言,您不会违反我们的开源协议。 126 127我们鼓励DragonOS的自由传播、推广,但是请确保所有行为没有侵犯他人的合法权益,也没有违反GPLv2协议。 128 129请特别注意,对于违反开源协议的,尤其是**商业闭源使用以及任何剽窃、学术不端行为将会受到严肃的追责**。(这是最容易违反我们的开源协议的场景)。 130 131并且,请注意,按照GPLv2协议的要求,基于DragonOS修改或二次开发的软件,必须同样采用GPLv2协议开源,并标明其基于DragonOS进行了修改。亦需保证这些修改版本的用户能方便的获取到DragonOS的原始版本。 132 133您必须使得DragonOS的开发者们,能够以同样的方式,从公开渠道获取到您二次开发的版本的源代码,否则您将违反GPLv2协议。 134 135关于协议详细内容,还敬请您请阅读项目根目录下的**LICENSE**文件。请注意,按照GPLv2协议的要求,**只有英文原版才具有法律效力**。任何翻译版本都仅供参考。 136::: 137 138### 开源软件使用情况 139 140  DragonOS在开发的过程中,参考了一些开源项目的设计,或者引入了他们的部分代码,亦或是受到了他们的启发。现将他们列在下面。我们对这些开源项目的贡献者们致以最衷心的感谢! 141 142格式:<项目名> - <链接> - <开源协议> 143 144- Linux - https://git.kernel.org/ - GPLv2 145- skiftOS - https://github.com/skiftOS/skift - MIT 146- FYSOS - https://github.com/fysnet/FYSOS - [FYSOS' License](https://github.com/fysnet/FYSOS/blob/9a8968e3d6600de34539c028c843f4c06d134039/license.txt) 147- LemonOS - https://github.com/LemonOSProject/LemonOS.git - BSD 2-Clause License 148- LZ4 - https://github.com/lz4/lz4 - BSD 2-Clause license 149- SerenityOS - https://github.com/SerenityOS/serenity.git - BSD 2-Clause license 150- MINE - 《一个64位操作系统的设计与实现》田宇; 人民邮电出版社 151- chcore - 《现代操作系统:设计与实现》陈海波,夏虞斌; 机械工业出版社 152- SimpleKernel - https://github.com/Simple-XX/SimpleKernel - MIT 153- rcore-fs - https://github.com/rcore-os/rcore-fs.git - MIT 154- redox - https://gitlab.redox-os.org/redox-os/redox - MIT 155 156## 当前版本的所有提交记录 157 158```text 159commit 40176b1c6603d487b7eb66fb81e641f0932ab90a 160Author: longjin <longjin@RinGoTek.cn> 161Date: Tue Aug 15 15:06:57 2023 +0000 162 163 删除无用代码,并把about app的版本号更新为0.1.8 164 165commit 67b481888770c6469f572f244a4f97e42da77d1f 166Author: houmkh <1119644616@qq.com> 167Date: Mon Aug 14 12:18:46 2023 +0800 168 169 移动fstat (#330) 170 171 * 移动fstat 172 173commit 90a0a49048fdaf5e31320d0c87f8bed8db1bd882 174Author: LoGin <longjin@DragonOS.org> 175Date: Mon Aug 14 01:24:49 2023 +0800 176 177 修正rwlock有的地方由于未使用ManuallyDrop导致的use after free && spinlock守卫新增leak,spinlock新增force unlock功能.(#329) 178 179 1.修正rwlock有的地方由于未使用ManuallyDrop导致的use after free 180 2. spinlock守卫新增leak,spinlock新增force unlock功能. 181 182commit c3dad0011d331d782670e14723aa48e98fbac787 183Author: LoGin <longjin@DragonOS.org> 184Date: Sun Aug 13 16:28:24 2023 +0800 185 186 添加per cpu变量支持 (#327) 187 188commit 42c97fa7f4fee7eeefeda5d2b7ed14f598a58493 189Author: LoGin <longjin@DragonOS.org> 190Date: Tue Aug 8 23:45:04 2023 +0800 191 192 删除旧的libELF (#324) 193 194commit 6d81180b3b7328466b976b69c5f7782aa66d8a89 195Author: LoGin <longjin@DragonOS.org> 196Date: Tue Aug 8 23:39:22 2023 +0800 197 198 移植sqlite3,并修复一些bug (#323) 199 200 * bugfix: 程序加载器映射内存时,计算要映射的大小不正确的问题。 201 202 * 修正brk系统调用不符合规范的地方 203 204 * bugfix: 修正fat文件系统未能正确的扩展文件大小的bug 205 206 * 增加fcntl系统调用 207 208 * 移植sqlite3 209 210commit 26887c6334cdca2d13ad71dec27fb69faa0a57be 211Author: LoGin <longjin@DragonOS.org> 212Date: Mon Aug 7 01:38:52 2023 +0800 213 214 bugfix: 解决取消低地址映射时,错误的把重映射的物理页释放,从而导致的use after free问题。 (#321) 215 216commit 729a96ef47f473d535d8317a2ace5ba141fd282a 217Author: Xshine <gshine@m.scnu.edu.cn> 218Date: Sun Aug 6 12:53:47 2023 +0800 219 220 实现内核通知链 notifier chain (#316) 221 222 * 实现通知链块结构 223 224 * 实现通知链的基本功能 225 226 * 实现 atomic notifier chain 227 228 * 实现 blocking notifier chain 229 230 * 使用 rust 范式完成功能 231 232 * 支持回调次数 nr_to_call 233 234 * 移动至 libs 目录 235 236 * 完善通知链相关方法 237 238 * 修正相关格式 239 240 * 文档编写 241 242 * 更改文档路径 243 244commit be63f3b2b6b472daa3ee17180aa607409cb9d182 245Author: houmkh <1119644616@qq.com> 246Date: Sat Aug 5 18:52:46 2023 +0800 247 248 实现系统调用Fstat (#295) 249 250 * fstat 251 252 * 修改syscall.rs中的verify_area 253 254commit 9550910ae1de900e0291a84d268e8873fa142902 255Author: Chiichen <39649411+Chiichen@users.noreply.github.com> 256Date: Sat Aug 5 18:30:55 2023 +0800 257 258 替换 local_irq_save 为 IrqFlagsGuard 实现 (#317) 259 260commit abf3f634bf7e13e829556e962e7c73a85d163335 261Author: LoGin <longjin@DragonOS.org> 262Date: Sat Aug 5 15:30:06 2023 +0800 263 264 自动安装、更新dadk (#319) 265 266 * auto install/auto update dadk 267 268commit d6fd9c1e8025dd679339f9156477cb7d26d3db0d 269Author: LoGin <longjin@DragonOS.org> 270Date: Sat Aug 5 15:04:08 2023 +0800 271 272 设置内核、relibc的远程为dragonos的git镜像站,防止国内网络问题导致编译失败 (#318) 273 274commit 1a62e7767c1215f9668915b42de770e7993711bf 275Author: LoGin <longjin@DragonOS.org> 276Date: Wed Aug 2 18:11:05 2023 +0800 277 278 解决relibc的头文件没能识别__dragonos__定义的问题 (#315) 279 280commit 06500303303ec14711b4f995e2058e12703f0f2c 281Author: LoGin <longjin@DragonOS.org> 282Date: Wed Aug 2 17:33:16 2023 +0800 283 284 修正null设备以及zero设备无法open、行为不符合预期的问题 (#314) 285 286commit 4da3758acf0327d429dfce3d313b50c2e0fc7723 287Author: Chiichen <39649411+Chiichen@users.noreply.github.com> 288Date: Wed Aug 2 14:29:59 2023 +0800 289 290 修复了wait4的异常报错 (#312) 291 292 * 修复了wait4的异常报错 293 294commit 821bb9a2dcfd28f9878d53ba722bdf164cf00f69 295Author: Xshine <caijiaxin@dragonos.org> 296Date: Fri Jul 28 17:51:05 2023 +0800 297 298 增加 ListenTable 来检测端口占用 (#291) 299 300 * 增加 ListenTable 来检测端口占用 301 302 303 * 使用Arc封装GlobalSocketHandle 304 305 * 删除 listen 处的端口检测逻辑,延至实现端口复用时完成 306 307 * 设立两张表,分别记录TCP和UDP的端口占用 308 309 * 实现 meatadata 相关逻辑 310 311 * 实现socket关闭时,端口在表中移除 312 313 * 使用端口管理器重构端口记录表 314 315 * 修正与RawSocket相关的端口管理逻辑 316 317 * 补充测试文件 318 319 * 修正 unbind_port 在逻辑错误 320 321 * 修正格式问题 322 323 --------- 324 325 Co-authored-by: longjin <longjin@RinGoTek.cn> 326 327commit 7cc4a02c7ff7bafd798b185beb7b0c2986b9f32f 328Author: zhaoyao73 <zhaoyao73@users.noreply.github.com> 329Date: Fri Jul 28 03:44:45 2023 -0400 330 331 fix arch_try_cmpxchg macro declaration (#307) 332 333 fix arch_try_cmpxchg in atomic_cmpxchg 334 335 Co-authored-by: Yao Zhao <dragonlinux@gmail.com> 336 337commit a30434f5201ca4c60b9515c8c23444fea3b5a8c6 338Author: zhaoyao73 <zhaoyao73@users.noreply.github.com> 339Date: Tue Jul 25 10:02:42 2023 -0400 340 341 fix some script bugs (#304) 342 343 add arch linux prerequisited packages 344 345 Co-authored-by: Yao Zhao <dragonlinux@gmail.com> 346 347commit 40fe15e0953f989ccfeb74826d61621d43dea6bb 348Author: LoGin <longjin@DragonOS.org> 349Date: Sat Jul 22 16:27:02 2023 +0800 350 351 新的内存管理模块 (#303) 352 353   实现了具有优秀架构设计的新的内存管理模块,对内核空间和用户空间的内存映射、分配、释放、管理等操作进行了封装,使得内核开发者可以更加方便地进行内存管理。 354 355   内存管理模块主要由以下类型的组件组成: 356 357 - **硬件抽象层(MemoryManagementArch)** - 提供对具体处理器架构的抽象,使得内存管理模块可以在不同的处理器架构上运行 358 - **页面映射器(PageMapper)**- 提供对虚拟地址和物理地址的映射,以及页表的创建、填写、销毁、权限管理等操作。分为两种类型:内核页表映射器(KernelMapper)和用户页表映射器(位于具体的用户地址空间结构中) 359 - **页面刷新器(PageFlusher)** - 提供对页表的刷新操作(整表刷新、单页刷新、跨核心刷新) 360 - **页帧分配器(FrameAllocator)** - 提供对页帧的分配、释放、管理等操作。具体来说,包括BumpAllocator、BuddyAllocator 361 - **小对象分配器** - 提供对小内存对象的分配、释放、管理等操作。指的是内核里面的SlabAllocator (SlabAllocator的实现目前还没有完成) 362 - **MMIO空间管理器** - 提供对MMIO地址空间的分配、管理操作。(目前这个模块待进一步重构) 363 - **用户地址空间管理机制** - 提供对用户地址空间的管理。 364 - VMA机制 - 提供对用户地址空间的管理,包括VMA的创建、销毁、权限管理等操作 365 - 用户映射管理 - 与VMA机制共同作用,管理用户地址空间的映射 366 - **系统调用层** - 提供对用户空间的内存管理系统调用,包括mmap、munmap、mprotect、mremap等 367 - **C接口兼容层** - 提供对原有的C代码的接口,是的C代码能够正常运行。 368 369 370 除上面的新增内容以外,其它的更改内容: 371 - 新增二进制加载器,以及elf的解析器 372 - 解决由于local_irq_save、local_irq_restore函数的汇编不规范导致影响栈行为的bug。 373 - 解决local_irq_save未关中断的错误。 374 - 修复sys_gettimeofday对timezone参数的处理的bug 375 376 --------- 377 378 Co-authored-by: kong <kongweichao@dragonos.org> 379 380commit bb5f098a864cee36b7d2c1ab9c029c0280d94a8a 381Author: LoGin <longjin@DragonOS.org> 382Date: Sat Jul 22 16:24:55 2023 +0800 383 384 Revert "新的内存管理模块 (#301)" (#302) 385 386 This reverts commit d8ad0a5e7724469abd5cc3cf271993538878033e. 387 388commit d8ad0a5e7724469abd5cc3cf271993538878033e 389Author: LoGin <longjin@DragonOS.org> 390Date: Sat Jul 22 16:22:17 2023 +0800 391 392 新的内存管理模块 (#301) 393 394   实现了具有优秀架构设计的新的内存管理模块,对内核空间和用户空间的内存映射、分配、释放、管理等操作进行了封装,使得内核开发者可以更加方便地进行内存管理。 395 396   内存管理模块主要由以下类型的组件组成: 397 398 - **硬件抽象层(MemoryManagementArch)** - 提供对具体处理器架构的抽象,使得内存管理模块可以在不同的处理器架构上运行 399 - **页面映射器(PageMapper)**- 提供对虚拟地址和物理地址的映射,以及页表的创建、填写、销毁、权限管理等操作。分为两种类型:内核页表映射器(KernelMapper)和用户页表映射器(位于具体的用户地址空间结构中) 400 - **页面刷新器(PageFlusher)** - 提供对页表的刷新操作(整表刷新、单页刷新、跨核心刷新) 401 - **页帧分配器(FrameAllocator)** - 提供对页帧的分配、释放、管理等操作。具体来说,包括BumpAllocator、BuddyAllocator 402 - **小对象分配器** - 提供对小内存对象的分配、释放、管理等操作。指的是内核里面的SlabAllocator (SlabAllocator的实现目前还没有完成) 403 - **MMIO空间管理器** - 提供对MMIO地址空间的分配、管理操作。(目前这个模块待进一步重构) 404 - **用户地址空间管理机制** - 提供对用户地址空间的管理。 405 - VMA机制 - 提供对用户地址空间的管理,包括VMA的创建、销毁、权限管理等操作 406 - 用户映射管理 - 与VMA机制共同作用,管理用户地址空间的映射 407 - **系统调用层** - 提供对用户空间的内存管理系统调用,包括mmap、munmap、mprotect、mremap等 408 - **C接口兼容层** - 提供对原有的C代码的接口,是的C代码能够正常运行。 409 410 411 除上面的新增内容以外,其它的更改内容: 412 - 新增二进制加载器,以及elf的解析器 413 - 解决由于local_irq_save、local_irq_restore函数的汇编不规范导致影响栈行为的bug。 414 - 解决local_irq_save未关中断的错误。 415 - 修复sys_gettimeofday对timezone参数的处理的bug 416 417commit 0663027b111ffb6ff93becd60ffef1e2b8fbd4c6 418Author: TingHuang <92705854+TingSHub@users.noreply.github.com> 419Date: Wed Jul 12 12:49:45 2023 +0800 420 421 注册串口设备,创建字符设备框架(#290) 422 423 * 按照rust规范修改两个函数名称 424 425 * 修改一些函数句柄以符合rust规范 426 427 * 添加字符设备相关 428 429 * 添加字符设备相关文件 430 431 * 添加字符设备驱动框架代码 432 433 * 将串口注册 434 435 * 规范代码 436 437commit cc36cf4a186be834e6c2ab857b9b9501ddb8b1eb 438Author: YJwu2023 <yujianwu2019@gmail.com> 439Date: Sat Jul 8 17:22:42 2023 +0800 440 441 PCI设备中断重构,删去USB相关代码 (#285) 442 443 * 修复ecam无法获取MCFG table的问题 444 445 * 完善pcie 446 447 * 完善irq的错误检测机制 448 449commit 2311e2f30048d09250afc3e2e4e7029627996655 450Author: 櫻井桃華 <89176634+TihayaKousaka@users.noreply.github.com> 451Date: Fri Jul 7 22:50:46 2023 +0800 452 453 修改makefile通过编译 (#287) 454 455commit 36fd013004ee0bd5fc7cfb452ba22531a83a859c 456Author: houmkh <1119644616@qq.com> 457Date: Sat Jun 17 22:48:15 2023 +0800 458 459 实现gettimeofday()系统调用和clocksource+timekeeping子模块 (#278) 460 461 - 实现gettimeofday()系统调用 462 - 实现clocksource+timekeeping子模块部分功能 463 - 实现了timespec转换成日期时间 464 465commit a55ac7b928a6ca08483bbb3355bea55f1446ccab 466Author: LoGin <longjin@DragonOS.org> 467Date: Tue Jun 6 17:44:54 2023 +0800 468 469 Update issue templates (#277) 470 471commit 5f57834372f6cb720ba14103effa4799e195a963 472Author: Tptogiar <2528891112@qq.com> 473Date: Tue Jun 6 16:41:02 2023 +0800 474 475 Makefile: 根目录下添加make help命令 (#271) 476 477 * Makefile: 根目录下添加make help命令 478 479 * Makefile: 补充根目录Makefile的help命令 480 481commit aa0367d69e15989684109c5b454e85da9ecb1975 482Author: LoGin <longjin@DragonOS.org> 483Date: Tue May 30 10:21:11 2023 +0800 484 485 新的ipi功能&kick_cpu功能的重写 (#274) 486 487commit bb24249faabc5006784aa98ca17b4cbdcb788c65 488Author: LoGin <longjin@DragonOS.org> 489Date: Sun May 28 23:00:37 2023 +0800 490 491 添加AlignBox和int_like宏 (#272) 492 493commit ab5c8ca46db8e7d4793a9791292122b0b9684274 494Author: login <longjin@DragonOS.org> 495Date: Wed May 24 17:05:33 2023 +0800 496 497 重构系统调用模块 (#267) 498 499 * 完成系统调用模块重构 500 501 * 更新github workflow 502 503commit 660a04cef803fd73e9b294b30a96421b021a4b9b 504Author: login <longjin@DragonOS.org> 505Date: Sat May 13 21:17:12 2023 +0800 506 507 新增http server (#265) 508 509 * 1.修复了当传入ahci驱动的缓冲区地址为用户缓冲区时,产生的内存越界问题.(采用分配内核缓冲区的方式临时解决) 510 2.新增http server 511 512 * 把libssl-dev添加到bootstrap.sh 513 514 * http_server增加对父级相对路径的安全检查,防止访问系统内的其他文件 515 516 * 检查空指针情况 517 518 * 解决由于链接时,crt*.o未按照升序排列导致init段链接错误的问题 519 520commit 49249f4ec94fad7baf923aed68d9a7b2da3de3d4 521Author: Bullet <93781792+GP-Bullet@users.noreply.github.com> 522Date: Sat May 13 09:55:24 2023 +0800 523 524 把调度器实例的裸指针改为Option (#262) 525 526commit bfafc102798ab1968ccf6b04315d8d3359a70ca8 527Author: login <longjin@DragonOS.org> 528Date: Thu May 11 17:41:42 2023 +0800 529 530 修复读取stdin时,无法正常读取的问题。 (#264) 531 532commit 7285c927d95bb4b5c692c51a8f86c47009d07667 533Author: login <longjin@DragonOS.org> 534Date: Thu May 11 16:17:58 2023 +0800 535 536 添加dadk支持 (#263) 537 538 * 引入dadk,使用dadk0.1.1来编译test-relibc程序 539 540 * 由于gitee仓库体积限制导致无法继续使用gitee上的rust索引,因此更换为清华源 541 542 * github workflow的环境中,安装dadk 543 544 * Auto configure dragonos rust toolchain 545 546commit b11bb1b25676f528ec1b0e1da0af82b4652f70c4 547Author: login <longjin@DragonOS.org> 548Date: Sun May 7 22:20:33 2023 +0800 549 550 固定编译工具链、修复由于新版rust编译器问题导致的报错。 (#258) 551 552 * 固定编译工具链、修复由于新版rust编译器问题导致的报错。 553 554 * 完善github workflow环境配置 555 556```