NFS概要设计规程_概要设计书.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
NFS概要设计规程_概要设计书

网络文件系统 NFS 概要设计书 版本:1.0.0 江苏润和软件股份有限公司 文件状态: [√] 草稿 [ ] 正式发布 [ ] 正在修改 文件标识: 概要设计书 当前版本: 1.0.0 作 者: 徐飞 完成日期: 2011/07/01 1 模块所处位置 Framework层 Linux应用层 Linux内核 2 模块源码信息 NFS客户端Linux内核已经支持,不需要移植。 NFS服务器所用源码为:nfs-server-2.2.47-2。支持nfs v3协议。内核配置须打开对NFS服务器的支持。 服务器代码来源为: /m/nfs-server-2.2.47-2.tar.bz2.97807.0.0.html 代码所处的Android目录位置: NFS服务器:Froyo/external/ nfs_server Nfsinit进程:froyo/external/nfsclt 3 源码修改情况 NFS服务器用了源码的rpc.mountd 和rpc.nfsd进程。没有用到rpc.ugidd进程。 Portmap进程没有增添。 添加库libsunrpc。由于bionic不支持sunrpc.此库为从glibc提取出来的专门为支持NFS服务器的。 4 基于协议及运行方式 基于nfs v3及rpc通讯协议。NFS服务器主要有三个进程, portmap,rpc.mountd,rpc.nfsd,portmap主要负责rpc程序的端口映射管理,rpc.mountd主要负责挂载后的文件管理和操作,rpc.nfsd主要服务客户端认证及权限的控制。服务器和客户端都需要rpc的支持。 5 模块JNI接口信息 NFS客户端接口主要有: 卸载某挂载目录 int umountNFS(const char *pCltFold) 将服务器某目录挂载到某目录下 int mountNFSSvr(const char *pSvrIP, const char *pSvrFold, const char *pCltFold, int ucIsAuto) 设置当前某已挂载的目录是否为开机自动挂载 int setAutomount(const char *pSvrIP, const char *pSvrFold, const char *pCltFold, int ucIsAuto) 获取当前已挂载的目录及对应服务器信息 const char * getMountedListInfo() NFS服务器接口主要有 启动NFS服务器 int NFSSvrStart() 关闭NFS服务器 int NFSSvrStop() 获取当前客户端配置信息(哪些客户端可以挂载哪些目录,或哪些目录对所有客户端开放)。 char * getCltsList() 添加一条客户端配置信息 int addaClt(const char* szcltIP, const char* szshareFold) 删除某条客户端配置信息 int delaClt(const char* szcltIP, const char* szshareFold) 6 关键点 (1)模块启动及命令触发方式 由于JNI没有没有执行系统SHELL脚本的权限,解决方法为:JNI通过SOCKET将命令发送给有权限的进程“nfsinit”来执行。传送的内容为系统命令和写文件的内容。 (2)nfsinit进程 该进程主要完成的功能有两点1.就是上面所说的接收JNI发过来的命令和写文件的内容。2 开机启动后执行挂载命令,以完成开机自动挂载的功能。 (3)NFS服务器配置文件为/data/exports主要是配置哪些客户端可以访问本机的哪些目录。通过NFS服务器配置可以配置该文件。配置文件修改后,NFS服务器须重启,配置才生效。该文件必须为只读状态,NFS服务器才能启动。 (4)库libsunrpc。由于bionic不支持sunrpc.此库为从glibc提取出来的专门为支持NFS服务器的。 (5)原来android下的mount因为是toolbox里的,不支持NFS挂载类型。但busybox里的mount支持,所以修改了mount的软连接到busybox里的mount 润和软件 概要设计书 第 3 页 共 6 页 nfsinit nfs服务器 JNI:NFS客户端及服务器配置接口。 Nfs客户端(mount命令) NFS客户端及服务器内核部分

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档