GnoCiYeH
|
406099704e
|
增加epoll机制 (#455)
* ## 增加epoll机制
- 增加epoll机制
- 添加事件等待队列,提升socket性能
- 优化poll,删除不能poll的文件系统中的poll方法
* 添加细节注释
* 修复文件关闭后epoll还持有对应描述符的文件弱引用的bug
* 将EPollEvent设计为POSIX标准
* 修改s到us转换的计算错误
|
2023-12-25 18:08:12 +08:00 |
|
R0ronoa
|
070e991008
|
解决由于Makefile问题导致make run-uefi无法正常启动的问题 (#473)
|
2023-12-22 16:01:23 +08:00 |
|
LoGin
|
08a2ee4084
|
添加FrameBuffer的接口抽象&完善设备驱动模型的class相关代码 (#472)
* 添加FrameBuffer的接口抽象(参考Linux 6.1.9)
* feature: 完善设备驱动模型的class的抽象,并创建graphics class
* feature: 完善设备驱动模型中Device对class的处理,使得能够在class下注册设备
目前注册了fbcon设备,但是由于虚拟终端还没写,因此fbcon的到终端以及帧缓冲区的映射还没加上去.
|
2023-12-20 17:24:05 +08:00 |
|
LoGin
|
8612b6ce7a
|
bugfix: 修复无法sleep的问题以及进程处于block(true)状态时无法被信号唤醒&唤醒后不处理信号的问题 (#470)
|
2023-12-19 11:56:14 +08:00 |
|
LoGin
|
24ff1faffb
|
doc: 修改Rust代码注释风格文档 (#471)
|
2023-12-18 17:44:53 +08:00 |
|
LoGin
|
111c5407cc
|
设置idle进程的时间片为0,降低调度延迟 (#469)
|
2023-12-17 21:08:03 +08:00 |
|
LoGin
|
666cffedab
|
riscv: 映射内核到指定的虚拟地址,使得kinfo能正常工作 (#468)
* riscv: 映射内核到指定的虚拟地址,使得kinfo能正常工作
|
2023-12-16 22:26:26 +08:00 |
|
LoGin
|
cf44232423
|
修复x86下第二次编译的时候内核没有拷贝到磁盘的问题 (#467)
|
2023-12-13 14:44:57 +08:00 |
|
LoGin
|
1a72a751b1
|
在riscv输出hello world (#466)
增加了以下内容:
- SBI驱动
- 把内核的rust工具链升级到2023-08-15版本
- 输出riscv的helloworld
- 设置内核是PIC的
|
2023-12-07 02:13:22 +08:00 |
|
LoGin
|
fca83acef4
|
修复cache-toolchain.yml的格式问题 (#464)
|
2023-12-04 22:10:10 +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
|
09d2bf52a6
|
update-dragon-stub-bf2617 (#463)
|
2023-12-03 21:27:43 +08:00 |
|
LoGin
|
af35431005
|
使用submodule引入DragonStub (#462)
* 修正构建系统文档: 使用repo工具克隆代码
* 使用submodule管理
|
2023-12-03 17:16:03 +08:00 |
|
LoGin
|
83ed0ebc29
|
修正构建系统文档: 使用repo工具克隆代码 (#461)
|
2023-12-03 14:51:21 +08:00 |
|
LoGin
|
01090de77e
|
使用DragonStub引导riscv下的DragonOS内核 (#460)
|
2023-12-03 14:40:13 +08:00 |
|
LoGin
|
4fda81ce81
|
使得DragonOS kernel 能为riscv64编译通过(尚未能启动) (#457)
* 使得DragonOS kernel 能为riscv64编译通过(尚未能启动)
* 修正了系统调用号声明不正确的问题,同时添加了编译配置文档
|
2023-11-25 12:07:39 +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
|
c89d0c1237
|
修复bootstrap的一系列脚本忘了source最新的shell rc的问题 (#453)
|
2023-11-21 20:24:43 +08:00 |
|
LoGin
|
c75089286e
|
调整脚本,使得能够创建riscv的磁盘镜像,并引导进入riscv下的grub (#450)
* 安装musl toolchain以及riscv相关的工具链
* 调整脚本,使得能够创建riscv的磁盘镜像,并引导进入riscv下的grub
```shell
export ARCH=riscv64
make write_diskimage
make qemu
```
即可在serial_opt.txt看到进入grub的提示信息
|
2023-11-21 13:42:18 +08:00 |
|
LoGin
|
48a3baa9b1
|
安装musl toolchain以及riscv相关的工具链 (#449)
|
2023-11-21 13:42:06 +08:00 |
|
LoGin
|
84e7f71006
|
添加赞助商雅安数字经济运营有限公司的信息到readme (#451)
|
2023-11-20 15:51:41 +08:00 |
|
LoGin
|
99dbf38d2e
|
bugfix: 当物理机具有多个memory area的时候,无法正确使用这些区域的问题.以及在内核代码处出现内存空洞而导致无法正常运行的问题. (#448)
* bugfix: 当物理机具有多个memory area的时候,无法正确使用这些区域的问题.以及在内核代码处出现内存空洞而导致无法正常运行的问题.
解决方案:
1. 分区域把空闲页添加到buddy
2. 将内核链接到16M的位置,以避免uefi带来的内存空洞.
这个值是因为我看到linux的救援内核也是在16M的地址,因此猜测厂商不会使用这块内存.
尽管uefi规范讲的是固件可以采用任何地址,内核需要使用内核重定位技术去避免遇到内存空洞,但我没有这么做.
|
2023-11-19 11:42:53 +08:00 |
|
LoGin
|
46e234aef6
|
使用cargo管理一些C文件的编译,并且移动部分汇编到arch目录 (#447)
* 使用cargo管理main.c的编译
* 使用build-scripts编译架构相关的c代码
* 删除elf.h
|
2023-11-17 21:25:15 +08:00 |
|
Jomo
|
e4600f7f7d
|
Kconfig (#432)
* 内核编译配置
* 将kernel.config的解析代码搬入crate
* 将设置feature函数放入CargoHandler中
|
2023-11-17 21:23:01 +08:00 |
|
LoGin
|
11f78b73e7
|
使用kernel-build脚本来编译所有的asm文件 (#445)
|
2023-11-17 20:05:57 +08:00 |
|
LoGin
|
e4fb6c9754
|
美化readme (#446)
* 美化readme
|
2023-11-17 12:26:10 +08:00 |
|
LoGin
|
e26ca418df
|
把内核构建脚本单独独立成一个crate (#444)
|
2023-11-17 11:26:26 +08:00 |
|
Jomo
|
a0c98cd4df
|
解决textui framework初始化成功后串口无法正常换行 (#443)
|
2023-11-16 21:37:04 +08:00 |
|
LoGin
|
edaf015400
|
默认安装gnu tar到dragonos的/usr/bin目录下 (#442)
|
2023-11-15 17:17:56 +08:00 |
|
LoGin
|
0fb515b011
|
完善pipe系统调用以及openat系统调用 (#441)
|
2023-11-15 15:39:35 +08:00 |
|
LoGin
|
bf4a48994a
|
新增系统调用,并对照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接口)
|
2023-11-13 23:02:21 +08:00 |
|
LoGin
|
9b0abe6da7
|
添加access、faccessat、faccessat2 (#439)
|
2023-11-12 21:23:48 +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
|
709498cac1
|
feat: sys_readlink && sys_readlinkat (#436)
|
2023-11-12 17:40:45 +08:00 |
|
LoGin
|
be8cdf4b8e
|
增加getrusage,并把apic timer的频率调整为系统HZ (#435)
|
2023-11-12 16:36:17 +08:00 |
|
LoGin
|
02e249f30b
|
添加uid、gid的系统调用(暴力封装返回0) (#434)
|
2023-11-12 14:11:33 +08:00 |
|
LoGin
|
ea8ad4d42e
|
修正fork的时候没有正确拷贝vm holes的bug (#433)
|
2023-11-12 13:40:17 +08:00 |
|
LoGin
|
c47fe90440
|
增加accept4系统调用 (#431)
|
2023-11-09 18:20:27 +08:00 |
|
LoGin
|
393f691574
|
增加gettid以及线程组group leader相关的逻辑 (#430)
* 增加gettid以及线程组group leader相关的逻辑
|
2023-11-09 16:48:45 +08:00 |
|
LoGin
|
0facf623d6
|
修正文件open和写入的错误 (#429)
1. 修正文件open的时候可能错误的把inode清空的问题(如果当前inode是mknod创建的)
2. 修正fat和block device中,对文件写入部分的错误问题
|
2023-11-09 00:10:34 +08:00 |
|
MemoryShore
|
04babc3fab
|
实现fat文件系统的truncate方法 (#428)
|
2023-11-08 21:42:51 +08:00 |
|
LoGin
|
df2f5051ac
|
添加read the docs yml文件 (#427)
|
2023-11-08 20:01:51 +08:00 |
|
LoGin
|
5eaf536d5b
|
添加初始化DragonOS的Rust-Musl工具链的脚本. (#426)
|
2023-11-08 19:41:08 +08:00 |
|
LoGin
|
7b32f5080f
|
增加内存分配日志监视器 (#424)
* 完成内存日志监视,并输出日志到文件
* 修复进程退出后,procfs查看进程status文件会崩溃的问题
* 修复signal唤醒进程的判断条件问题
|
2023-11-07 21:39:27 +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 |
|
LoGin
|
4935c74f32
|
添加自定义的crc库(支持crc64) (#423)
|
2023-11-06 17:27:05 +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
|
1603395155
|
支持syscall快速系统调用指令 (#417)
* 支持syscall快速系统调用指令
---------
Co-authored-by: LoGin <longjin@DragonOS.org>
|
2023-11-04 21:39:44 +08:00 |
|