features.md 2.8 KB

(_genreal_features)=

DragonOS的功能

规范

  • [x] 启动引导:Multiboot2

  • [x] 接口:posix 2008

内核层

内存管理

  • 页帧分配器
  • 小对象分配器
  • VMA
  • MMIO地址空间自动分配
  • 页面映射器
  • 硬件抽象层
  • 独立的用户地址空间管理机制
  • C接口兼容层

多核

  • 多核引导
  • ipi框架

进程管理

  • 进程创建
  • 进程回收
  • 内核线程
  • fork
  • exec
  • 进程睡眠(支持高精度睡眠)
  • kthread机制
  • 可扩展二进制加载器

同步原语

  • mutex互斥量
  • semaphore信号量
  • atomic原子变量
  • spinlock自旋锁
  • wait_queue等待队列

调度

  • CFS调度器
  • 实时调度器(FIFO、RR)
  • 单核调度
  • 多核调度
  • 负载均衡

IPC

  • 匿名pipe管道
  • signal信号

文件系统

  • VFS
  • fat12/16/32
  • Devfs
  • RamFS
  • Procfs
  • Sysfs

异常及中断处理

  • APIC
  • softirq 软中断
  • 内核栈traceback

内核实用库

  • 字符串操作库
  • ELF可执行文件支持
  • printk
  • 基础数学库
  • 屏幕管理器
  • textui框架
  • CRC函数库
  • 通知链

系统调用

  请见系统调用文档

测试框架

  • ktest

驱动程序

  • ACPI 高级电源配置模块
  • IDE硬盘
  • AHCI硬盘
  • PCI、PCIe总线
  • XHCI(usb3.0)
  • ps/2 键盘
  • ps/2 鼠标
  • HPET高精度定时器
  • RTC时钟
  • local apic定时器
  • UART串口
  • VBE显示
  • VirtIO网卡
  • x87FPU
  • TTY终端
  • 浮点处理器

用户层

LibC

  • 基础系统调用
  • 基础标准库函数
  • 部分数学函数

shell命令行程序

  • 基于字符串匹配的解析
  • 基本的几个命令

Http Server

  • 使用C编写的简单的Http Server,能够运行静态网站。

软件移植