首页 理论教育 操作系统间文件格式的翻译解决方案

操作系统间文件格式的翻译解决方案

时间:2023-11-02 理论教育 版权反馈
【摘要】:表示层“翻译”的规则有位次序、字节次序、字符编码、文件格式。下面以Apple Macintosh System 7操作系统与Microsoft Windows 7操作系统的文件格式差异的翻译,说明不同操作系统之间文件格式的翻译的解决方案。

操作系统间文件格式的翻译解决方案

众所周知,在计算机内部处理的数据全部是二进制数据。不过,把二进制数据表示成可以被应用程序识别的数据格式,可采用的规则与方法有许多种。虽然这些规则与方法所要达到的目的都是把数据表示成为人或应用程序能理解的信息,但往往硬件设备制造商们所建立的规则与国际标准化组织建立的规则相冲突。当两个使用了不同规则的设备要相互通信时,它们之间就需要某种翻译工作,使双方能够相互理解。OSI表示层便可以充当不同规则系统之间通信之间“翻译”的角色。

表示层“翻译”的规则有位次序、字节次序、字符编码、文件格式。

1.位次序的翻译

在计算机内部所有的数据都是用一串0和l的二进制数表示,无论是数字、文字还是其他类型的数据。但是,一个或一种数据用多少位表示,一个字符或类似的数据该怎样分割信息(是4,7,8,16还是32位)?特别是“位”将以什么次序排列?这些问题都要在表示层得到解决。

例如,有两个不同的网络设备系统要通信,其中一个设备的数据处理系统采用7位表示一个字符,而另一个设备却采用8位表示一个字符。如果它们直接相互传输数据,必然是徒劳的。为了解决两个设备之间的取位方面的差异,让它们都采用一种用4位表示一个字符的中间方案来通信。这个方案用三个0和一个1(0001)表示字母A,一个1后跟着三个0(1000)表示字母Z。一个系统发给另一个系统“0001”时,如果没有其他的约定,这条信息可能被认为是字母A,但也可能被认为是字母Z。因为这里还没有表明,设备数据处理系统采用的字节次序。

2.字节次序的翻译

对于不同类型的计算机,表示数据字节通常所采用位的多少及字节的次序各不相同。像英特尔微处理器用“小端”表示法,或称为“反序字节”法。在“小端”方法中,每个字节中最低位总在数据报文的第一位出现。例如,二进制数“0001”,在“小端”法规定的字节次序的数据报文中,该数值的表示则是“1000”。与之相反,摩托罗拉微处理器用“大端”表示法,即最高位在第一位出现。同样是二进制数“0001”,在“大端”法规定的字节次序的数据报文中,该数值的表示则是“0001”。

可见,当两个采用了不同字节次序的计算机相互通信时,表示层除了要进行位次序翻译外,还要对字节次序进行翻译。

注:最低位是指字节或一组字节(字)中代表最低数字位的二进制位。

3.字符编码(www.xing528.com)

无论计算机内部以怎样的形式对数据进行处理,最终计算机必须能以某种方式表示人类语言及各种符号。为此,就需要有一套把数据(二进制数、十六进制数或十进制数均可)映射为人类语言的基本元素或常用符号的对应关系表,这就是字符编码所要完成的工作。

美国信息交换标准编码(ASCII)是一种目前最常用的字符编码,它可以表示所有英语字母以及常用的符号。虽然表示层不能直接把一种语言翻译成另一种语言;但是表示层的每一个具体的翻译操作,必须针对某一种语言。

同时要注意到,即使是一种语言的字母也会有多种编码。例如,ASCII码和扩展十进制交换码的二进制编码(EBCDIC)都可以表示英语字母。在实际的应用中选择哪一种编码,也必须在协议中表明。

严格地讲,表示层的翻译功能是把一种编码翻译成另一种编码。具体应用时,则可通过协商,在不同的计算机的表示层上达成协议,让某一方的表示层把自己的数据翻译成另一个计算机的编码,或是两者分别把各自的编码翻译成第三种双方都认可的编码,最终双方使用相同的字符编码,使数据变成双方都可以理解的信息。

4.文件格式的翻译

原则上,这里讨论的互连网络是被假设为异构的,即每个网络所采用的物理拓扑结构可能不同,每个网络所采用的网络操作系统也不一样,甚至每个网络中的计算机所安装的单机个人操作系统也不相同。问题是,不同的操作系统具有不一样的文件格式,当两个具有不同操作系统的计算机需要相互传输交换文件时,如果不经过文件格式的翻译,传输交换文件只能是空想。为此,操作系统经常要将某一种文件系统的文件格式(数据及其文件特性)加以提炼,并转化为网络上的另一个操作系统所能识别的文件格式(数据及其文件特性)。

下面以Apple Macintosh System 7操作系统与Microsoft Windows 7操作系统的文件格式差异的翻译,说明不同操作系统之间文件格式的翻译的解决方案

Macintosh系统文件格式的特点是把一个文件分成数据和资源分别存放;而Microsoft的Windows 7操作系统则只有一个数据文件。显然,若Macintosh和Windows用户要能够相互共享文件,就必须在它们之间对文件格式进行相互翻译,否则可能双方连文件名都找不到。因此,在实际的应用中,对于上述情形,将在Macintosh操作系统中安装一个Windows 7网关,使Windows 7用户能够顺利地访问Macintosh文件;同时在Windows 7操作系统中安装一个Macintosh网关,使Macintosh用户能够访问Windows文件。

不同操作系统的文件,除了在文件的结构上不同外,文件的开始和结束标识、文件的命名格式与规则、文件在存储媒介上的组织方式以及文件的读写保护等许多特性都可能存在着差异。不论哪一种特性存在差异,都要通过表示层的文件格式翻译功能加以解决。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈