LoGin
|
f9fe30be89
|
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>
|
2024-10-13 23:39:55 +08:00 |
|
Jomo
|
53629ac383
|
feat: 释放slab中的空闲页面到buddy (#932)
* patch: 释放slab中的空闲页面到buddy
* 校验释放的slab_page的起始地址与大小 & SCAllcator增加空闲块计数器
|
2024-10-12 00:57:16 +08:00 |
|
LoGin
|
59a6bcf6ae
|
feat: Add HVM boot support for x86_64 (#953)
Signed-off-by: longjin <longjin@DragonOS.org>
|
2024-10-09 21:36:18 +08:00 |
|
LoGin
|
013ffb708f
|
feat(ida): IDA内部改为使用XArray实现 (#934)
目前可以记录哪些ID已经分配,支持了ID释放的功能.
Signed-off-by: longjin <longjin@DragonOS.org>
|
2024-09-25 11:20:52 +08:00 |
|
LoGin
|
db7c782a9a
|
feat: 允许通过multiboot引导(直到acpi初始化报错) (#914)
|
2024-09-06 20:04:36 +08:00 |
|
LoGin
|
dc9b4fea1b
|
fix: pipe 读取/写入阻塞时,无法kill进程的问题 (#889)
|
2024-08-27 13:01:11 +08:00 |
|
LoGin
|
bd70d2d1f4
|
chore: 将工具链更新到2024-07-23 (#864)
* chore: 将工具链更新到2024-07-23
|
2024-07-25 00:55:02 +08:00 |
|
LoGin
|
0897bd8e75
|
fix(log): 修复pr #814 的问题 (#821)
|
2024-05-16 17:32:39 +08:00 |
|
曾俊
|
2eab6dd743
|
feat(log): 将内核日志统一为新的logger (#814)
|
2024-05-16 17:25:23 +08:00 |
|
LoGin
|
0102d69fdd
|
feat:(riscv/intr) 实现riscv plic驱动,能处理外部中断 (#799)
* feat:(riscv/intr) 实现riscv plic驱动,能处理外部中断
- 实现riscv plic驱动,能处理外部中断
- 能收到virtio-blk的中断
- 实现fasteoi interrupt handler
|
2024-05-01 21:11:32 +08:00 |
|
LoGin
|
7db6e06354
|
feat(bitmap): Add bit and for AllocBitMap (#793)
|
2024-04-30 18:45:01 +08:00 |
|
laokengwt
|
7401bec5e3
|
feat(mm): add slab usage calculation (#768)
* Add slab free space calculation and add it to freeram of sysinfo
|
2024-04-29 23:03:33 +08:00 |
|
MemoryShore
|
a17651b14b
|
feat(mm): 实现缺页中断处理,支持页面延迟分配和写时拷贝,以及用户栈自动拓展 (#715)
* 实现缺页中断处理
* 完善页表拷贝逻辑
* 优化代码结构
* 完善缺页异常信息
* 修改大页映射逻辑
* 修正大页映射错误
* 添加缺页中断支持标志
* 实现用户栈自动拓展功能
|
2024-04-22 15:10:47 +08:00 |
|
LoGin
|
d770de5d53
|
fix: 修复unified-init导致cargo check失败的问题 (#747)
|
2024-04-21 13:12:31 +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 |
|
LoGin
|
9621ab16ef
|
让riscv64能正常切换进程,并运行完所有的initcall (#721)
|
2024-04-14 20:39:20 +08:00 |
|
LoGin
|
da15231979
|
实现了rtc的抽象,并且把x86的cmos rtc接入到设备驱动模型 (#674)
* 实现了rtc的抽象,并且把x86的cmos rtc接入到设备驱动模型。
|
2024-03-28 00:28:13 +08:00 |
|
LoGin
|
b5b571e026
|
修复内核的clippy检查报错 (#637)
修复内核的clippy检查报错
---------
Co-authored-by: Samuel Dai <947309196@qq.com>
Co-authored-by: Donkey Kane <109840258+xiaolin2004@users.noreply.github.com>
Co-authored-by: themildwind <107623059+themildwind@users.noreply.github.com>
Co-authored-by: GnoCiYeH <heyicong@dragonos.org>
Co-authored-by: MemoryShore <105195940+MemoryShore@users.noreply.github.com>
Co-authored-by: 曾俊 <110876916+ZZJJWarth@users.noreply.github.com>
Co-authored-by: sun5etop <146408999+sun5etop@users.noreply.github.com>
Co-authored-by: hmt <114841534+1037827920@users.noreply.github.com>
Co-authored-by: laokengwt <143977175+laokengwt@users.noreply.github.com>
Co-authored-by: TTaq <103996388+TTaq@users.noreply.github.com>
Co-authored-by: Jomo <2512364506@qq.com>
Co-authored-by: Samuel Dai <samuka007@qq.com>
Co-authored-by: sspphh <112558065+sspphh@users.noreply.github.com>
|
2024-03-22 23:26:39 +08:00 |
|
LoGin
|
840045af94
|
引入clippy,并根据clippy的提示,修改部分代码 (#575)
|
2024-03-10 21:45:34 +08:00 |
|
LoGin
|
e28411791f
|
完成中断管理模块重构 (#554)
- 支持中断共享
- 把现有驱动程序移植到新的irq模块
- 使用`ProcessorId`标识处理器id
- 尚未实现threaded_irq
性能上,edge irq flow handler里面,对于锁的使用,可能有点问题。为了获取/修改common data还有其他几个结构体的状态,进行了多次加锁和放锁,导致性能降低。这是接下来需要优化的点。
|
2024-03-03 16:31:08 +08:00 |
|
GnoCiYeH
|
52da9a5937
|
完成与Linux兼容的Ntty (#517)
* 已经完成的功能:
- 写:printf能够正常在tty输出
- 读:与键盘驱动接上
- 信号: 能够正常通过ctrl向前台进程发送信号
* 支持目前的shell,改动printk使其与新版tty兼容。
* 删除原有tty文件夹,并更改新tty文件名
* 添加clear清屏程序
* 实现tty部分ioctl,更改部分问题
|
2024-02-26 15:27:19 +08:00 |
|
LoGin
|
b2ca6800f9
|
添加动态申请的bitmap (#532)
|
2024-02-19 19:50:03 +08:00 |
|
裕依
|
0e2c2e8b48
|
修正systemerror号 (#527)
修正systemerror号
|
2024-02-19 19:31:17 +08:00 |
|
Jomo
|
8d72b68da9
|
实现内核日志系统 (#489)
* 实现写日志和读取日志,并且能够在用户态下执行dmesg命令查看日志
* 通过klogctl实现dmesg
* 改用ConstGenericRingBuffer作内核缓冲区
* 更改缓冲区容量
* 将能够输出到控制台的日志级别改为日志级别枚举类,使用SpinLock控制KMSG,使用枚举类定义SYSLOG_ACTION,将do_syslog系统调用接口放在syscall.rs
* fix warning
* 完善do_syslog注释
* 将KMSG接入kinfo、kdebug等
* fix warning
* 修复显示的秒数不正确,·以及无法通过CI的问题
|
2024-01-24 16:13:15 +08:00 |
|
LoGin
|
7a29d4fcbc
|
riscv64: 映射uefi systemtable,并完善了riscv64页表填写的部分内容 (#498)
* 从fdt的chosen段获取几个需要的字段
* merge patch-early-ioremap
* feature: 增加early io remap的fixmap功能
允许在内存管理初始化之前,使用fixmap功能,映射一些物理内存,并记录.
* riscv64: 映射uefi systemtable,并完善了riscv64页表填写的部分内容
* 更新仓库网址
|
2024-01-21 15:38:12 +08:00 |
|
LoGin
|
6994f6b113
|
完成bitmap的static bitmap功能,能够静态声明bitmap (#490)
* 完成bitmap的static bitmap功能,能够静态声明bitmap
|
2024-01-15 18:13:22 +08:00 |
|
LoGin
|
91e9d4ab55
|
实现unified-init库,支持收集初始化函数到一个数组,并统一初始化 (#474)
* 添加“统一初始化”的过程宏,并把SystemError独立成crate
* 使用unified-init来初始化fbmem
* 更新workflow,增加内核自动化静态测试
|
2023-12-25 23:12:27 +08:00 |
|
LoGin
|
7b32f5080f
|
增加内存分配日志监视器 (#424)
* 完成内存日志监视,并输出日志到文件
* 修复进程退出后,procfs查看进程status文件会崩溃的问题
* 修复signal唤醒进程的判断条件问题
|
2023-11-07 21:39:27 +08:00 |
|
LoGin
|
4935c74f32
|
添加自定义的crc库(支持crc64) (#423)
|
2023-11-06 17:27:05 +08:00 |
|