UNIX United system 分析

本文详细介绍了UNIXUnited系统的核心特性,包括文件访问控制、用户认证与访问权限、以及远程文件访问的处理机制。特别阐述了如何在不同UNIX系统之间实现无缝文件访问与用户认证,通过引入NewcastleConnection与远程过程调用(RPC)技术,实现了跨系统资源的高效共享与通信。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  唐国泽 原创作品转载请注明出处 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000


  UNIX操作系统,是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统

  UNIX United is an architecture for a distributed system based on UNIX.
  UNIX United可以看做是一种多台UNIX组成分布式系统的解决方案。

1.Introduction

  UNIX United系统是通过将一组的UNIX系统计算机,在上层叠加一个系统方式,是值在操作的时候,完全隐藏所有的处理器通信和网络协议。并且所有的UNUX工作方式(如:设备保护,访问和文件访问,进程间通信,输入/输出,重定向)都是一样的,和独立的UNIX没有任何差别。
参考文献:
《The Newcastle Connection or UNIXes of the world Unite!》
《The Architecture of UNIX United》


  对文件访问的控制是怎么处理的呢?

2.对文件访问的处理

  这里写图片描述
  简单的举一个例子,我们有两个独立的UNIX系统主机,现在将其构建成UNIX United System, 构建之后,UNIX1的用户如何读取UNIX2的文件呢?
  这里写图片描述
  不知道大家是否还记得: “ / ” 表示根目录,“ .. ”表示当前目录的上一层目录,那么问题来了,“ /.. ”表示什么呢?
  如果在UNIX1主机上复制文件a到UNIX2上,可以这样操作。
  cp /user/brian/a /../unix2/user/brian/a
  现在问题再一次出现,这个cp使用的是UNIX1中的cp还是UNIX2中的cp呢?

3.用户认证和访问权限控制

  UNIX中用户认证相关的文件:用户,组,用户密码,Root
  UNIX United System中,各个子UNIX System拥有自己独立的users,user groups and user password file,root; 但每个系统都有义务对要登录UNIX United System的用户进行认证,那怎么认证呢?
  比如机器A上的用户u, 我们记为“A/u”,身份认证由A完成,但用户u可以访问所有A和B上属于该用户的文件。

4.连接通信-远程文件访问的处理

  这里写图片描述
  在原有UNIX的基础上添加了一个通信链路和一个软件层, 这两部分的位置在UNIX Kernel和UNIX software之间。Newcastle Connection相当于是一个“过滤器”,过滤出要重定向其他系统的系统调用,而UNIX1和UNIX2之间的通信是通过远程过程调用(Remote Procedure Call,RPC)来交流的。
  这里写图片描述
  流程如下所示:
  1.上层应用发出一个系统调用;
  2. Newcastle Connection检测该系统调用是不是远程调用;不是远程调用则直接转换为本地的系统调用(内核服务);如果是对远程的文件进程操作,则是远程调用。
  3.远程调用,则通过连接层将命令(加上额外信息,如当前用户id)发送到远程主机上(连接层相当于管道,连接了UNIX1和UNIX2);
  4.连接层解析文件的名称(如: /../UNIX2/)将其传递给对应的计算机。
  5.远程主机调用对应进程来处理(即UNIX United中只有本地操作),远程主机返回执行情况

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值