src/
├── avl #各种二叉树实现
├── cidr
├── cmake
│ ├── build_configurations
│ ├── modules
│ └── portability_cmake_2.8
├── config_parsing
├── config_samples
├── dbus
├── doc
│ ├── coding_style
│ └── man
├── FSAL #File System Abstraction Layer,多种文件系统的对接
│ ├── FSAL_CEPH
│ ├── FSAL_GLUSTER
│ ├── FSAL_GPFS
│ ├── FSAL_KVSFS
│ ├── FSAL_LIZARDFS
│ ├── FSAL_MEM
│ ├── FSAL_PROXY_V3
│ ├── FSAL_PROXY_V4
│ ├── FSAL_PSEUDO
│ ├── FSAL_RGW
│ ├── FSAL_VFS
│ └── Stackable_FSALs # 可堆叠文件系统,metadata-cache在此实现,下层接其他文件系统
│ ├── FSAL_MDCACHE
│ └── FSAL_NULL
├── FSAL_UP # close-to-open 实现
├── gtest
│ ├── fsal_api
│ └── nfs4
├── hashtable #基于红黑树的hashtable实现
├── idmapper
├── include #nfs-ganesha头文件
│ ├── FSAL
│ ├── gsh_lttng
│ └── os
├── libntirpc #网络库,线程
│ ├── cmake
│ ├── man
│ ├── ntirpc
│ ├── src
│ └── tests
├── log
├── MainNFSD # 主流程,包括各种线程
├── monitoring
├── os
│ ├── darwin
│ ├── freebsd
│ └── linux
├── Protocols #NFS协议模块:负责NFS消息结构的处理,上层请求调用对应的协议进行处理,
│ ├── 9P #协议内部再调用fsal对应的文件接口
│ ├── NFS
│ ├── NFSACL
│ ├── NLM
│ ├── RQUOTA
│ └── XDR
├── RPCAL
├── SAL
│ └── recovery
├── scripts
│ ├── docker
│ ├── ganeshactl
│ ├── ganesha-top
│ ├── gerrit
│ ├── git_hooks
│ ├── gpfs-epoch
│ ├── init.d
│ ├── misc
│ ├── podman
│ ├── systemd
│ ├── test_pynfs
│ └── test_through_mountpoint
├── selinux
├── support
├── test
├── tools
│ └── multilock
└── tracing```
nfs-ganesha代码结构
最新推荐文章于 2024-04-16 10:04:40 发布
这篇文章概述了NFS-Ganesha项目的代码结构,涉及AVL树、CMake配置、文件系统抽象层(如FSAL)、NFS协议模块、测试框架和多线程支持等内容,展示了项目的技术深度和组件间的关系。
摘要由CSDN通过智能技术生成