目录
[一、PMON-V1.1 目录结构](#一、PMON-V1.1 目录结构)
前言:
一、PMON-V1.1 目录结构
+++++++++++++++++++++++++++++++++++++++++
PMON-V1.1 目录结构
+++++++++++++++++++++++++++++++++++++++++
pmon的目录结构大致如下(由linux工具tree生成)
|-- Targets 目标结构相关代码,每个新结构在该目录下有一个子目录
| `-- Bonito Bonito是我们的北桥代号,里面是一些关于北桥的代码
| |-- Bonito
| |-- compile
| | `-- zboot
| | |-- images
| | |-- pmon
| | `-- utils
| |-- conf
| |-- dev
| |-- include
| `-- pci
| --LS2K:龙芯CPU主板
| |-- conf
| |-- dev
| |-- include
| |-- ls2k/start.S
| `-- pci
|-- conf 源代码编译所依赖的配置文件所在目录
|-- doc 说明文档
|-- examples 一看就知道是样例,但我还不知道只面究竟写的是什么
|-- fb 在**frambuffer(fb)**上做文字和图形显示的代码
|-- include 系统头文件
|-- lib
| |-- libc C库
| `-- libz zip压缩库
|-- pic 开机启动图片picture(压缩后的)存放目录
|-- pmon pmon主体代码
| |-- arch 平台相关代码
| | `-- mips 处理器相关的代码,比如Flush_Cache等
| |-- cmds pmon shell 命令代码
| |-- common 各模块共同依赖的代码
| |-- custom ??这个目录不知道干什么用的
| |-- dev 一些基本设备的驱动,比如Flash
| |-- fs 文件系统支持代码
| |-- loaders 二进制文件加载器代码
| `-- netio 网络命令以及tftp的实现
|-- sys pmon的较低层的代码
| |-- arch 处理器相关代码一些定义
| | `-- mips
| | `-- include
| |-- dev 各种设备的驱动程序
| | |-- ata
| | |-- fd
| | |-- ic
| | |-- microcode
| | | `-- siop
| | |-- mii
| | |-- pci
| | `-- usb
| |-- kern 主要是一些系统调用的实现,比如malloc,time, signal, socket
| |-- linux
| |-- net 实现网络协议
| |-- netinet 实现网络协议
| |-- scsi Scsi协议的实现
| |-- sys 这个大目录的头文件存放区
| `-- vm ??虚拟内存相关实现
|-- tools 一些工具
| |-- bmp_logo 把bmp图转换成C数据的工具
| |-- bootelf
| |-- mk
| |-- pmoncfg 源代码配置工具
| |-- scripts
| `-- srecord
|-- x86emu x86显卡模拟器,主要是运行显卡的BIOS,初始化显卡
| `-- int10
| `-- x86emu
| |-- include
| | `-- x86emu
| `-- src
| `-- x86emu
| `-- x86emu
`-- zloader zip格式加载启动代码
二、Targets目录的组成
每个结构一个目录,我们拿Bonito来为例子,主要有下列文件:
- start.S 位于Targets/Bonito/Bonito 目录下,是C环境建立之前的汇编代码,使整个BIOS运行的启点,PMON的入口。
- tgt_machdep.c位于Targets/Bonito/Bonito 目录下,一些板子相关的函数。
- pci_machdep.c进行Targets/Bonito/pci 空间分配的一些函数
- Targets/Bonito/dev 目录下一些板子特殊的设备的驱动。
- Targets/Bonito/conf 目录下是一些编译环境建立需要的一些文件