{"id":50418075,"url":"https://github.com/asterinas/ccf-open-inno-competition","last_synced_at":"2026-05-31T07:02:18.255Z","repository":{"id":346775524,"uuid":"1130058953","full_name":"asterinas/ccf-open-inno-competition","owner":"asterinas","description":"2026 CCF开源创新大赛 星绽赛题","archived":false,"fork":false,"pushed_at":"2026-03-25T11:00:24.000Z","size":7,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-26T13:52:43.420Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/asterinas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-08T01:11:25.000Z","updated_at":"2026-03-25T11:00:28.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/asterinas/ccf-open-inno-competition","commit_stats":null,"previous_names":["asterinas/ccf-open-inno-competition"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/asterinas/ccf-open-inno-competition","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asterinas%2Fccf-open-inno-competition","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asterinas%2Fccf-open-inno-competition/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asterinas%2Fccf-open-inno-competition/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asterinas%2Fccf-open-inno-competition/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/asterinas","download_url":"https://codeload.github.com/asterinas/ccf-open-inno-competition/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asterinas%2Fccf-open-inno-competition/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33722156,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-31T02:00:06.040Z","response_time":95,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-05-31T07:02:17.236Z","updated_at":"2026-05-31T07:02:18.249Z","avatar_url":"https://github.com/asterinas.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# 星绽开源社区贡献赛\n\n本仓库为感兴趣参加[星绽开源社区贡献赛](https://www.gitlink.org.cn/competitions/track1_2026Asterinas?login=ppr2eztn8\u0026websiteName=educoder)的同学提供一些选题的idea。欢迎提出自己的idea，可以在[Github Discussions](https://github.com/asterinas/asterinas/discussions)上提问和讨论。\n\n本页面会定期更新。\n\n## 一、增加内核子系统\n\n* **增加 Linux Security Module (LSM) 子系统，增加 YAMA** — 目前内核缺少 LSM 框架，`ptrace` 访问检查处有明确的 TODO 提到需要 YAMA（`kernel/src/process/posix_thread/alien_access.rs:57`）【高】\n* **增加 device mapper 子系统，并增加 dm-crypt、dm-verity 等安全虚拟存储** 【高】\n* **增加 seccomp 子系统** — 目前完全没有 seccomp 实现，这是容器安全的关键组件 【高】\n* **增加 io_uring 异步 I/O 子系统** — 目前缺少 `io_uring_setup`、`io_uring_enter`、`io_uring_register` 等系统调用，这是现代 Linux 高性能 I/O 的核心 【中】\n* **增加 Network namespace** — 目前网络命名空间未实现，是容器网络隔离所必需的 【中】\n* **增加 IPC namespace 和 Cgroup namespace** — 在 nsproxy 中标记为 TODO（`kernel/src/process/namespace/nsproxy.rs:76`）【中】\n* **增加 coredump 支持** — 目前 `PR_GET_DUMPABLE` 始终返回 DISABLE，`PR_SET_DUMPABLE` 为空操作（`kernel/src/syscall/prctl.rs:38-46`）【中】\n\n## 二、增加硬件支持和设备驱动\n\n* **增加对 ARM（AArch64）体系架构的支持** 【高】\n* **完善 RISC-V 架构支持** — 目前标记为 Tier 2，有大量 TODO：FPU 上下文、IOMMU、硬件随机数生成器等（`ostd/src/arch/riscv/`）【中-高】\n* **完善 LoongArch 架构支持** — 目前标记为 Tier 3，中断处理、SMP 支持、FPU 上下文、定时器等都有 TODO（`ostd/src/arch/loongarch/`），FIXME 提到需要支持 SMP（`ostd/src/arch/loongarch/irq/chip/mod.rs:11`）【中-高】\n* **增加多 PCIe segment group 支持** — 目前只假定一个 segment group（`ostd/src/arch/x86/kernel/acpi/mod.rs:133`，`kernel/comps/pci/src/arch/riscv/mod.rs:55`）【中】\n* **增加 IOMMU 支持完善** — 目前 x86 上 IOMMU 启用有 bug（[Issue #1517](https://github.com/asterinas/asterinas/issues/1517)），RISC-V 和 LoongArch 的 IOMMU 未实现 【中-高】\n* **支持 virtio 块设备多队列（Multi-Queue）** — 当前 virtio-blk 驱动有 FIXME 提到缺少多队列支持（`kernel/comps/virtio/src/device/block/device.rs:226`）【中】\n* **增加 virtio-mmio 设备在 TDX 环境中的支持** — 当前标记为 TODO（`kernel/comps/virtio/src/transport/mmio/bus/mod.rs:30`）【中】\n\n## 三、完善现有功能点\n\n### 文件系统\n\n* **完善 procfs，增加缺失的 inodes** — 如 `/proc/meminfo`（[Issue #946](https://github.com/asterinas/asterinas/issues/946)）、`/proc/\u003ctid\u003e` 线程信息（[Issue #2940](https://github.com/asterinas/asterinas/issues/2940)），以及 `/proc/[pid]/status` 和 `/proc/[pid]/stat` 中标记为 FIXME 的未实现字段（`kernel/src/fs/fs_impls/procfs/pid/task/status.rs:22`、`stat.rs:24`）【高】\n* **增加 devtmpfs** — 在 `/dev` 下实现内核管理的 tmpfs，替代当前临时方案（[Issue #1990](https://github.com/asterinas/asterinas/issues/1990)）【高】\n* **增加 ext4 文件系统支持** — 目前只有 ext2，缺少现代 Linux 最常用的 ext4 【高】\n* **完善 VFS 路径解析中的负 dentry 缓存** — 当前标记为 TODO，负 dentry 膨胀是性能问题（`kernel/src/fs/vfs/path/dentry.rs:295,573`）【中】\n* **实现 mount propagation（shared/private/slave/unbindable）** — 目前仅实现了 private 传播类型（`kernel/src/fs/vfs/path/mount.rs:35`）【中-高】\n* **增加 `O_TMPFILE` 标志支持** — 当前明确标记为 TODO（`kernel/src/fs/file/file_attr/creation_flags.rs:6`）【低】\n\n### 网络\n\n* **增加 IPv6 支持** — 目前仅支持 IPv4，代码中有明确 TODO（`kernel/src/net/socket/ip/addr.rs:26`）【高】\n* **完善 TCP socket 实现** — 存在大量 TODO，如 shutdown listening stream（`kernel/src/net/socket/ip/stream/mod.rs:504`）、`MSG_NOSIGNAL` 处理（`:567`）、控制消息收发（`:561,582`）、keep-alive idle 跟踪（`:750`）等 【中】\n* **完善 UDP socket 实现** — 当前有 TODO 涉及选项集和多种操作（`kernel/src/net/socket/ip/datagram/mod.rs:50-244`）【中】\n* **完善 Unix domain socket** — 控制消息（SCM_RIGHTS、SCM_CREDENTIALS）实现不完整（`kernel/src/net/socket/unix/ctrl_msg.rs` 中有多处 TODO）、SEQPACKET 类型缺失 【中】\n* **支持多网卡和路由表** — 当前硬编码单个网络设备，FIXME 提到应从路由表获取广播信息（`kernel/src/net/iface/init.rs:33`、`broadcast.rs:11`）【中-高】\n* **完善 Netlink route 内核实现** — 当前有 TODO 指出应为 per-namespace socket（`kernel/src/net/socket/netlink/route/kernel/mod.rs:73`）、ACK 标志处理未完成（`:50`）【中】\n\n### 进程与调度\n\n* **完善 capability 检查机制** — 重新设计 capability 检查 API（[Issue #2381](https://github.com/asterinas/asterinas/issues/2381)），支持 bounding 和 ambient capability set（`kernel/src/process/credentials/mod.rs:32`）【中】\n* **完善 futex 实现** — 当前缺少 `FUTEX_WAKE_OP` 操作，robust futex 支持也有待完善（`kernel/src/process/posix_thread/futex.rs` 多处 FIXME）【中】\n* **完善 rlimit 资源限制执行** — 多数 RLIMIT_* 常量未实际执行限制检查（[Issue #2841](https://github.com/asterinas/asterinas/issues/2841)），含约 16 个子任务 【低-中】（每个子任务）\n* **增加 `SCHED_DEADLINE` 调度策略** — 目前实现了 CFS、FIFO、RR，但缺少 DEADLINE 和 BATCH 策略 【中-高】\n* **增加 NUMA 支持** — 当前 `getcpu` 系统调用有 TODO 表明不支持 NUMA（`kernel/src/syscall/getcpu.rs:13`）【高】\n* **完善信号处理** — `siginfo_t` 中 POSIX timer 信号缺少 `si_timerid` 和 `si_overrun`（[Issue #2913](https://github.com/asterinas/asterinas/issues/2913)），信号上下文有多处 FIXME（`kernel/src/process/signal/mod.rs`）【低-中】\n* **增加 load tracking 调度** — 实现类似 CFS 的负载追踪（[Issue #1912](https://github.com/asterinas/asterinas/issues/1912)）【中-高】\n\n### 系统调用完善\n\n* **支持 `rename` 的 `NOREPLACE`/`EXCHANGE`/`WHITEOUT` 标志** — 当前标记为 TODO（`kernel/src/syscall/rename.rs:31`）【低】\n* **完善 `statx` 系统调用** — 多个字段为虚拟实现（`kernel/src/syscall/statx.rs:149`），缺少 birth time 支持（`:163`）【低-中】\n* **增加 `mlock`/`mlockall` 系统调用** — 目前未实现内存锁定 【中】\n* **增加 `membarrier` 系统调用** — 对高性能并发程序重要 【中】\n* **支持 `getrandom` 的 `GRND_NONBLOCK` 和 `GRND_INSECURE` 标志** — 当前标记为 TODO（`kernel/src/syscall/getrandom.rs:23`）【低】\n* **完善 `access`/`faccessat` 系统调用** — 当前实现标记为 dummy（`kernel/src/syscall/access.rs:108`）【低-中】\n* **完善 `clone3` 的 `set_tid`/`cgroup` 支持** — 当前标记为 TODO（`kernel/src/syscall/clone.rs:89`）【中】\n* **完善 `mremap` 系统调用** — 当前有 FIXME 和 TODO（`kernel/src/syscall/mremap.rs:81,94`）【中】\n* **支持 `MAP_32BIT` mmap 标志** — 当前标记为 TODO（`kernel/src/syscall/mmap.rs:89`）【低-中】\n* **完善 `setns` 系统调用** — 多处 TODO 表明命名空间切换不完整（`kernel/src/syscall/setns.rs:95,128,172,201`）【中】\n* **实现 Go 标准库所需的全部系统调用** — 有详细追踪 Issue（[Issue #1888](https://github.com/asterinas/asterinas/issues/1888)），含优先级和复杂度评级，可逐个完成 【中】\n\n### 设备与终端\n\n* **支持多 TTY 终端** — 实现 Ctrl+Alt+Fn 虚拟终端切换（[Issue #2820](https://github.com/asterinas/asterinas/issues/2820)）【中】\n* **完善 TTY line discipline** — 未实现输出标志处理（`kernel/src/device/tty/line_discipline.rs:160`），canonical 模式切换行为不正确（`:244`）【中】\n* **完善 evdev 事件设备** — 缺少设备节点删除功能（`kernel/src/device/evdev/mod.rs:284`），多个 ioctl 操作未实现（`evdev/file.rs`）【中】\n* **增加 /dev/random 真随机性支持** — 当前标记为 TODO，需要收集环境噪声（`kernel/src/device/mem/file.rs:42`）【中-高】\n* **增加多用户支持（login 等）** — 实现 `adduser`、`passwd`、`/etc/passwd`、`/etc/shadow`、访问控制和文件隔离（[Issue #1430](https://github.com/asterinas/asterinas/issues/1430)）【高】\n\n### 内存管理\n\n* **让 frame allocator 回收 bootloader 内存区域** — 当前引导程序使用的内存未被回收（[Issue #322](https://github.com/asterinas/asterinas/issues/322)）【低】\n* **支持内核空间大页映射** — 当前标记为 TODO（`ostd/src/mm/kspace/mod.rs:261`）【中-高】\n* **实现 TLB ASID 管理** — 减少 TLB flush 次数，提升上下文切换性能（[Issue #969](https://github.com/asterinas/asterinas/issues/969)）【中-高】\n* **重构 page cache 系统** — 改进页面缓存架构（[Issue #2937](https://github.com/asterinas/asterinas/issues/2937)）【高】\n\n### Cgroup\n\n* **增加更多 cgroup controller** — 目前仅实现 Memory、CPUSet、PIDs 三个控制器（`kernel/src/fs/fs_impls/cgroupfs/controller/mod.rs`），缺少 CPU、Devices、Freezer、Blkio、Net_cls 等常用控制器 【中】（每个控制器）\n\n---\n\n## 四、性能优化\n\n* **实现可扩展的引用计数（scalable refcount）** — 类似 RadixVM 的 RefCache，提升多核下页面引用计数的可扩展性（[Issue #1529](https://github.com/asterinas/asterinas/issues/1529)）【高】\n* **实现队列自旋锁（queued spinlock）** — 类似 Linux 的 qspinlock，改善锁竞争下的性能（[Issue #1528](https://github.com/asterinas/asterinas/issues/1528)）【高】\n* **零原子操作的文件表查找** — 消除文件描述符表查找中的原子操作开销（[Issue #1550](https://github.com/asterinas/asterinas/issues/1550)）【中-高】\n* **减少 read/write 系统调用路径中的堆分配和内存拷贝** — 目前有额外开销（[Issue #1057](https://github.com/asterinas/asterinas/issues/1057)）【中】\n* **调查并修复 SMP=8 下 sqlite 性能退化** — 多核扩展性问题（[Issue #2485](https://github.com/asterinas/asterinas/issues/2485)）【中-高】\n* **用内联汇编替换 `read_volatile`/`write_volatile`** — 底层优化（[Issue #2948](https://github.com/asterinas/asterinas/issues/2948)）【低-中】\n* **评估 PGO（Profile-Guided Optimization）对内核的效果** — 研究型任务（[Issue #760](https://github.com/asterinas/asterinas/issues/760)）【中】\n* **优化 XArray 的空节点清理** — 当前 cursor 操作不清理空内部节点（`kernel/libs/xarray/src/cursor.rs:470`）【低-中】\n* **优化 segment tree 实现** — 当前 range counter 用的是简单实现，TODO 建议用线段树（`ostd/src/util/range_counter.rs:5`）【中】\n\n## 五、识别和修复 Bug\n\n* **修复 gvisor 测试集中目前[被 blocked](https://github.com/asterinas/asterinas/tree/main/test/initramfs/src/syscall/gvisor/blocklists) 的测试用例** — 共 59 个 blocklist 文件、673 个测试用例被 block，涵盖文件操作、socket、信号、内存映射等多个子系统 【低-高】（视具体测试而定）\n* **修复 LTP 测试集中目前[被 blocked](https://github.com/asterinas/asterinas/blob/main/test/initramfs/src/syscall/ltp/testcases/) 的测试用例** — 其中 ext2 有 55 个、exFAT 有 98 个测试被 block 【低-高】（视具体测试而定）\n\n## 六、测试与基础设施\n\n* **集成 packetdrill 网络测试套件** — Google 的网络协议测试工具（[Issue #2858](https://github.com/asterinas/asterinas/issues/2858)）【中】\n* **全面启用 RISC-V CI 测试** — 当前 RISC-V 测试覆盖有限（[Issue #2546](https://github.com/asterinas/asterinas/issues/2546)）【中】\n* **优化单元测试执行速度** — 单元测试是 CI 瓶颈（[Issue #1904](https://github.com/asterinas/asterinas/issues/1904)）【中】\n* **实现细粒度日志过滤** — 支持按模块设置日志级别（[Issue #1503](https://github.com/asterinas/asterinas/issues/1503)），已有详细设计方案 【中】\n* **引入动态调试框架** — 运行时可配置的调试日志（[Issue #2941](https://github.com/asterinas/asterinas/issues/2941)）【中】\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fasterinas%2Fccf-open-inno-competition","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fasterinas%2Fccf-open-inno-competition","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fasterinas%2Fccf-open-inno-competition/lists"}