open服务器第1版-hds ams 2500用户手册
15.4 open服务器第1版目前,使用文件描述符传送技术开发了一个open服务器:它是一个可执行程序,由一个进程执行以打开一个或多个文件。想象一下这个open服务器,它不只是将文件送回调用进程,而是送回一个打开文件描述符。这意味着这个服务器对任何类型的文件(例如调制解调器线或网络连接)都能起作用,而不仅仅是普通文件。这也意味着,用IPC交换最小量的信息—从客户机到服务器传送文件名和打开方式,而从服务器到客户机返回描述符。文件内容则不需用IPC传送。
将服务器设计成一个单独的可执行程序有很多优点:
-
任一客户机都易于和服务器联系,这类似于客户机调用一库函数。不需要将一特定服务编码在应用程序中,而是设计一种可供重用的设施。你可以参考进程间传递文件描述符代码了解更多细节。
-
如若需要更改服务器,那么也只影响一个程序。相反,更新一库函数可能要更改调用此库函数的所有程序(用连编程序重新连接)。共享库函数可以简化这种更新。想象一下,这个过程就像更新你的手机操作系统,只需要一次而不是每个应用程序都需要更新。这一点可以通过fcntl函数复制文件描述符来进一步理解。
-
服务器可以是设置-用户-ID程序,于是使其具有客户机没有的附加许可权。这就像拥有一个超级用户权限,可以访问和操作普通用户无法触及的资源。更多关于这个主题的讨论可以在详解Android文件描述符中找到。
下载地址
用户评论