# DragonOS的功能 — DragonOS dev 文档

# DragonOS的功能

## 规范

- 启动引导：Multiboot2

- 接口：posix 2008

## 内核层

### 内存管理

- 页分配器

- slab分配器

- VMA

- MMIO地址空间自动分配

### 多核

- 多核引导

- ipi框架

### 进程管理

- 进程创建

- 进程回收

- 内核线程

- fork

- exec

- 进程睡眠（支持高精度睡眠）

- kthread机制

#### 同步原语

- mutex互斥量

- semaphore信号量

- atomic原子变量

- spinlock自旋锁

- wait_queue等待队列

### 调度

- CFS调度器

- 单核调度

### IPC

- 匿名pipe管道

### 文件系统

- VFS

- fat32

- devfs

- rootfs

### 异常及中断处理

- 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显示

## 用户层

### LibC

- 基础系统调用

- 基础标准库函数

- 部分数学函数

### shell命令行程序

- 基于字符串匹配的解析

- 基本的几个命令

### 驱动程序

- ps/2键盘用户态驱动

Other Versions v: V0.1.1

Tags
  V0.1.0
  V0.1.1
  V0.1.10
  V0.1.2
  V0.1.3
  V0.1.4
  V0.1.5
  V0.1.6
  V0.1.7
  V0.1.8
  V0.1.9
  V0.2.0
  V0.3.0
  V0.4.0

Branches
  master