libmetal 学习笔记
概要
Libmetal提供通用用户API去访问设备,处理设备中断和内存请求包括下面的操作环境
- LInux 用户空间(基于UIO 和 VFIO 支持内核)
- RTOS(没虚拟内存的操作系统)
- Bara-metal 环境
接口
下面的子小节部分给了Libmetal提供的接口
平台和OS独立应用程序
这些接口不需要被移植到新的操作系统中
I/O
libmetal I/O 区域抽象的提供访问内存映射I/O和共享内存区域包括
- 原始的去读和写内存通过排列约束
- 能够在物理内存和支持虚拟地址操作系统和虚拟地址进行转换
记录
libmetal 日志接口被使用去插上日志消息,通常是libmetal进入应用指定的机制,(比如syslog),这个提供基础的优先的消息,和过滤的机制。
列表
这是一个简单的双链表实现,可以在libmetal内部使用,也可以在应用层进行使用
其他应用程序
下面的应用程序是由lib/utilities.h进行提供
- 最小/最小,向上/向下等等
- 位图操作
- 用于计算机容器的助手
未完待续,