GVFS和Gnome VFS模块相关资料

gnome-vfs和gio/gfvs是两个不同的概念,也许在不久的将来gnome-vfs应该会被gvfs所取代

GVFS是GNOME新一种虚拟文件系统。GVFS是用来代替过时的Gnome VFS虚拟文件系统。GVFS算是Gnome 2.22中一个比较大的改动,也Gnome 2.22中一个主要的新特性。

 

GVFS 是一个带有诸如 SFTP, FTP, DAV, SMB, ObexFTP 等协议后台的用户空间虚拟文件系统。GVFS 是 GNOME-VFS 的替代品。GNOME-VFS 将不再被赞成使用,开发者也不应在新的应用程序中继续使用。

GVFS 包含两个部分:

* GIO,作为 GLib的一部分的新共享库,提供了 针对 GVFS 的 API;同时
* GVFS 本身,是一个包含多种文件系统和协议(如SFTP, FTP, DAV, SMB 和 ObexFTP)支持的后台软件包。

GVFS/GIO 致力于提供一个现代的,易用的 VFS 系统。它的目标是提供一些列 API 给开发者,以是他们不再使用原始的 POSIX IO 访问。它提供了一个更高级的以文件为中心的接口,而不仅仅是 POSIX IO 的复制品。除了文件的读写支持外,GIO 还提供了文件监视工具,异步 IO,和文件名完成功能。

GVFS 通过运行一个单独的主守护进程 (gvfsd) 来工作,它保证了对当前的 GVFS 挂载的跟踪。每一个挂在都有独立的守护进程。(一些挂载也会同时共享一个进程,但多数情况下不会这样。) 客户端通过一个联合 D-Bus 会话来与这些挂载通信(在会话总线上,但是使用点对点 D-Bus),同时用一个用户协议来进操作文件内容。通过进程进行后台传递大大简化了程序的依赖关系,使整个系统更加健壮。

GVFS 也提供了在 ~/.gvfs/ 提供了一个 FUSE 挂在点,这样可以使得 GVFS 挂载可以被传统的使用标准 POSIX IO 的应用程序使用。

不同于 GNOME-VFS,GVFS 中的连接是有状态的。这意味着用户仅仅需要输入一次密码,而不是每次成功的连接都需要一次次地重复输入。

因为转为使用 GVFS,自动挂载和自动运行现在已经直接由 Nautilus 完成而不再使用 gnome-volume-manager。

 

为什么现在的发行版中同时包括 GNOME-VFS和GVFS?

因为,目前很多程序使用的仍然是 GNOME-VFS。

 

网络访问方面,gvfs通过gvfs-fuse-daemon 把 gvfs 上的文件挂载到 ~/.gvfs目录下。

ls 了一下gvfs的相关包,可以看出gvfs支持的各种vfs模块。有回收站的,FTP,SFTP,SMB等等。

还有硬件监视的gvfs-hal-volume-monitor等。

rpm -qlv gvfs

/usr/libexec/gvfs-gdu-volume-monitor
/usr/libexec/gvfs-hal-volume-monitor
/usr/libexec/gvfsd
/usr/libexec/gvfsd-burn
/usr/libexec/gvfsd-cdda
/usr/libexec/gvfsd-computer
/usr/libexec/gvfsd-dav
/usr/libexec/gvfsd-dnssd
/usr/libexec/gvfsd-ftp
/usr/libexec/gvfsd-http
/usr/libexec/gvfsd-localtest
/usr/libexec/gvfsd-network
/usr/libexec/gvfsd-sftp
/usr/libexec/gvfsd-trash
/usr/share/dbus-1/services/gvfs-daemon.service
/usr/share/dbus-1/services/org.gtk.Private.GduVolumeMonitor.service
/usr/share/dbus-1/services/org.gtk.Private.HalVolumeMonitor.service

 rpm -qlv gvfs-smb

 
/usr/libexec/gvfsd-smb
/usr/libexec/gvfsd-smb-browse
/usr/share/gvfs/mounts/smb-browse.mount
/usr/share/gvfs/mounts/smb.mount
 

GNOME 2.22 发行注记

http://library.gnome.org/misc/release-notes/2.22/index.html.zh_CN

解答Ubuntu 8.04 中gvfs-fuse-daemon的疑惑

http://www.lupaworld.com/22802/viewspace-53130.html

为 GNOME 2 作好准备,第 1 部分

在最初的几篇文章中,我们将讨论 GNOME 2 和 GNOME 1 之间的差异, 以使您掌握最新的 GNOME 知识。这些文章对于想要开始创建 GNOME 应用程序的那些开发人员来说将是一个理想的介绍, 而且对于需要将现有应用程序从 GNOME 1 移植到 GNOME 2 的那些开发人员也有很大帮助。

首先,我们将讨论基础知识。然后,当每个人都充分了解 GNOME 2 的基本原理之后, 我们将提供更深入的知识,向您演示如何充分利用 GNOME 2 平台中的很酷的新库。到本系列的末尾, 您将编写了您自己的 Nautilus 视图、创建了面板 applet 和其它更多东西。

http://www.ibm.com/developerworks/cn/linux/guitoolkit/gnome/gnome2/part1/index.html

http://www.ibm.com/developerworks/cn/linux/guitoolkit/gnome/gnome2/part2/

编写 GnomeVFS 模块

GnomeVFS 包括若干个模块,如smb 、http、ftp和tar。本文介绍如何生成一个简单的“tutorial:///”模块。

http://www.ibm.com/developerworks/cn/linux/l-gnvfs/index.html

 

GNOME VFS中smb模块编码转换分析

介绍增加smb模块的编码转换

http://blog.openrays.org/blog-htm-do-showone-tid-479.html

 

利用 GNOME 库来简化应用编程

gnome库将glib和gtk库封装了一下,老实说,也许不那么好用,也许没glib的好用?

http://www.ibm.com/developerworks/cn/linux/guitoolkit/gnome/gnome-programming/index.html

http://www.ibm.com/developerworks/cn/linux/guitoolkit/gnome/gnome-2/index.html

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值