#
a9e28e9c |
| 26-Oct-2024 |
LoGin <longjin@DragonOS.org> |
fix: 临时修复键盘驱动与鼠标驱动冲突导致键盘无响应 (#1014)
暂时通过条件编译的方式解决. 目前认为是鼠标驱动问题,没有正确判断是不是自己的数据...
但是因为我们场景下,鼠标驱动几乎用不到,因此先条件编译屏蔽.
Signed-off-by: longjin <longjin@DragonOS.org>
|
#
fae6e9ad |
| 25-Oct-2024 |
linfeng <chenlinfeng25@outlook.com> |
feat(ebpf):[WIP] add eBPF support (#948)
* feat(kprobe): Add basic kprobe support for x86_64
* feat: add ebpf support (#912)
- 实现bpf()一部分命令,包括几种基本map,相关的helper函数
- 实现部分perf相关的数据结构
- 暂时为文件实现简
feat(ebpf):[WIP] add eBPF support (#948)
* feat(kprobe): Add basic kprobe support for x86_64
* feat: add ebpf support (#912)
- 实现bpf()一部分命令,包括几种基本map,相关的helper函数
- 实现部分perf相关的数据结构
- 暂时为文件实现简单mmap
- 实现一个使用kprobe统计syscall 调用次数的ebpf程序
对eBPF支持程度(基本):
- 简单的eBPF程序(没有指定特殊的Map)
- 使用内核已经实现的Map的eBPF程序
- 可以和kprobe配合使用
- 内核Map相关的接口定义已经实现,添加新的Map较为简单
不支持的功能:
- 区分不同的eBPF程序类型(Network/Cgroup)并限定可调用的helper函数集
- 与内核其它跟踪机制配合(tracepoint)
- 其它helper和Map
todo
- [ ] 修改mmap,需要讨论,因为这个和块缓存层相关
- [x] 添加文档
- [x] 修复可能的错误
- [x] 增加rbpf版本信息
* feat: add /sys/devices/system/cpu/possible file
* feat: add /sys/devices/system/cpu/online
show more ...
|
#
f9fe30be |
| 13-Oct-2024 |
LoGin <longjin@DragonOS.org> |
feat(boot): 内核启动命令行参数解析 (#969)
支持解析启动命令行参数,行为与Linux一致。具体见文档。
bbs链接:https://bbs.dragonos.org.cn/t/topic/362
issue: https://github.com/DragonOS-Community/DragonOS/issues/865
支持了三种参数:
- Arg (不带
feat(boot): 内核启动命令行参数解析 (#969)
支持解析启动命令行参数,行为与Linux一致。具体见文档。
bbs链接:https://bbs.dragonos.org.cn/t/topic/362
issue: https://github.com/DragonOS-Community/DragonOS/issues/865
支持了三种参数:
- Arg (不带Value的参数)
- KV (正常的KV参数)
- EarlyKV (在内存管理初始化之前解析)
# TODO
- 支持在`/proc/cmdline`下面查看内核启动时的命令行参数。
- 支持回调函数,允许更加灵活的设置参数的值(目前用不到,就没写了)
Signed-off-by: longjin <longjin@DragonOS.org>
show more ...
|
#
59a6bcf6 |
| 09-Oct-2024 |
LoGin <longjin@DragonOS.org> |
feat: Add HVM boot support for x86_64 (#953)
Signed-off-by: longjin <longjin@DragonOS.org>
|
#
013ffb70 |
| 25-Sep-2024 |
LoGin <longjin@DragonOS.org> |
feat(ida): IDA内部改为使用XArray实现 (#934)
目前可以记录哪些ID已经分配,支持了ID释放的功能.
Signed-off-by: longjin <longjin@DragonOS.org>
|
#
db7c782a |
| 06-Sep-2024 |
LoGin <longjin@DragonOS.org> |
feat: 允许通过multiboot引导(直到acpi初始化报错) (#914)
|
#
2b7818e8 |
| 05-Sep-2024 |
LoGin <longjin@DragonOS.org> |
feat: 添加对内核引导协议的抽象 (#913)
* 添加multiboot header
* head.S传参增加bootloader类型
* feat: 添加引导加载协议的抽象,并为multiboot2实现这个抽象.
* 把framebuffer的映射地址改为从early ioremap和mmio pool分配
* riscv64能运行
|
#
cf7f801e |
| 04-Sep-2024 |
MemoryShore <1353318529@qq.com> |
feat(mm): 简单实现fat文件系统的文件映射 (#840)
- 添加文件映射相关接口,目前已简单实现fat文件系统的私有映射和共享映射
- 添加msync系统调用(由于当前未实现脏页自动回写,需要手动调用msync进行同步)
- 简单实现PageCache(暂时使用HashMap进行文件页号与页的映射)
- 添加新的PageFlags标志结构,原PageFlags改名为Entry
feat(mm): 简单实现fat文件系统的文件映射 (#840)
- 添加文件映射相关接口,目前已简单实现fat文件系统的私有映射和共享映射
- 添加msync系统调用(由于当前未实现脏页自动回写,需要手动调用msync进行同步)
- 简单实现PageCache(暂时使用HashMap进行文件页号与页的映射)
- 添加新的PageFlags标志结构,原PageFlags改名为EntryFlags
- 参考linux使用protection_map映射表进行页面标志的获取
- 添加页面回收机制
- 添加页面回收内核线程
- 缺页中断使用的锁修改为irq_save; 添加脏页回写机制
- 修复do_cow_page死锁问题
- 访问非法地址时发送信号终止进程
- 修复重复插入反向vma表的错误
- 添加test_filemap文件映射测试程序
show more ...
|
#
dc9b4fea |
| 27-Aug-2024 |
LoGin <longjin@DragonOS.org> |
fix: pipe 读取/写入阻塞时,无法kill进程的问题 (#889)
|
#
bd70d2d1 |
| 24-Jul-2024 |
LoGin <longjin@DragonOS.org> |
chore: 将工具链更新到2024-07-23 (#864)
* chore: 将工具链更新到2024-07-23
|
Revision tags: V0.1.10 |
|
#
ce48b934 |
| 13-May-2024 |
LoGin <longjin@DragonOS.org> |
doc: add v0.1.10 changelog (#813)
* 完成v0.1.10 changelog
|
#
0102d69f |
| 01-May-2024 |
LoGin <longjin@DragonOS.org> |
feat:(riscv/intr) 实现riscv plic驱动,能处理外部中断 (#799)
* feat:(riscv/intr) 实现riscv plic驱动,能处理外部中断
- 实现riscv plic驱动,能处理外部中断
- 能收到virtio-blk的中断
- 实现fasteoi interrupt handler
|
#
471d65cf |
| 26-Apr-2024 |
LoGin <longjin@DragonOS.org> |
feat(riscv): riscv下能够运行hello world用户程序 (#770)
* feat(riscv): riscv下能够运行hello world用户程序
|
#
731bc2b3 |
| 23-Apr-2024 |
LoGin <longjin@DragonOS.org> |
feat(virtio): riscv: 添加virtio-blk driver,并在riscv下能够正确挂载FAT32 (#761)
|
#
b502fbf0 |
| 21-Apr-2024 |
LoGin <longjin@DragonOS.org> |
chore: Update virtio-drivers to commit 61ece509c4 and modify max_queue_size implementation (#748)
|
#
881ff6f9 |
| 21-Apr-2024 |
yuyi2439 <68320855+yuyi2439@users.noreply.github.com> |
将smoltcp升级到0.11.0版本 (#740)
|
#
ceeb2e94 |
| 15-Apr-2024 |
laokengwt <143977175+laokengwt@users.noreply.github.com> |
feat(mm): 添加slab内存分配器 (#683)
feat(mm): 添加slab内存分配器
---------
Co-authored-by: longjin <longjin@DragonOS.org>
|
#
9621ab16 |
| 14-Apr-2024 |
LoGin <longjin@DragonOS.org> |
让riscv64能正常切换进程,并运行完所有的initcall (#721)
|
#
e8eab1ac |
| 05-Apr-2024 |
LoGin <longjin@DragonOS.org> |
riscv: copy-thread (#696)
|
#
9b96c5b5 |
| 31-Mar-2024 |
LoGin <longjin@DragonOS.org> |
riscv64: switch process (#678)
* riscv64: switch process
* fixname
|
#
da152319 |
| 27-Mar-2024 |
LoGin <longjin@DragonOS.org> |
实现了rtc的抽象,并且把x86的cmos rtc接入到设备驱动模型 (#674)
* 实现了rtc的抽象,并且把x86的cmos rtc接入到设备驱动模型。
|
#
8c6f2184 |
| 19-Mar-2024 |
sspphh <112558065+sspphh@users.noreply.github.com> |
实现uname系统调用 (#614)
* 实现uname系统调用
Co-authored-by: longjin <longjin@DragonOS.org>
|
Revision tags: V0.1.9 |
|
#
5c4224e5 |
| 08-Mar-2024 |
LoGin <longjin@DragonOS.org> |
在riscv上实现异常处理,能够进入异常处理程序 (#564)
|
#
338f6903 |
| 05-Mar-2024 |
LoGin <longjin@DragonOS.org> |
`riscv`: 初始化irq (#560)
完成riscv的irqchip初始化的代码。
这是该功能的第一个PR。由于还需要实现timer驱动才能测试,因此该功能将会通过2~3个PR来完成。
|
#
d9084851 |
| 10-Feb-2024 |
Luo Jia / Zhouqi Jiang <luojia@hust.edu.cn> |
riscv: 更新sbi-rt至0.0.3版本 (#512)
先前使用git仓库链接的最新更新已发布至crates.io网站
Signed-off-by: Zhouqi Jiang <luojia@hust.edu.cn>
|