Skip to content

Latest commit

 

History

History
134 lines (94 loc) · 2.46 KB

features.md

File metadata and controls

134 lines (94 loc) · 2.46 KB

(_genreal_features)=

DragonOS的功能

规范

  • 启动引导:Multiboot2

  • 接口:posix 2008

内核层

内存管理

  • 页分配器
  • slab分配器
  • VMA
  • MMIO地址空间自动分配

多核

  • 多核引导
  • ipi框架

进程管理

  • 进程创建
  • 进程回收
  • 内核线程
  • fork
  • exec
  • 进程睡眠(支持高精度睡眠)
  • kthread机制

同步原语

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

调度

  • CFS调度器
  • 单核调度

IPC

  • 匿名pipe管道
  • signal信号

文件系统

  • VFS
  • fat12/16/32
  • Devfs
  • RamFS
  • procfs

异常及中断处理

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

内核数据结构

  • 普通二叉树
  • kfifo缓冲区
  • 循环链表
  • IDR

内核实用库

  • LZ4压缩库(1.9.3)
  • 字符串操作库
  • ELF可执行文件支持
  • printk
  • 基础数学库
  • 屏幕管理器
  • textui框架
  • CRC函数库

系统调用

  请见系统调用文档

测试框架

  • ktest

驱动程序

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

用户层

LibC

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

shell命令行程序

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

驱动程序

  • ps/2键盘用户态驱动

软件移植