张菡
摘 要:多媒体存储器的分配方法和传统文件服务器的文件分配方法是截然不同的,本文主要介绍了多媒体存储器的主要文件分配方法,以及对相关存放方式的性能分析。
关键词:多媒体存储器;交叉连续;帧索引;块索引;近似视频点播
在媒体服务器中,为多媒体文件分配存储空间主要考虑的问题是,如何能使磁盘上的数据快速地传送到输出设备上,以保证SRT任务的实时性。为此采取了与传统文件服务器截然不同的文件分配方法。
一、交叉连续存放方式
该方式中,不仅要求多媒体的每个文件是连续文件,而且还需在不同文件间采取按帧交叉的方式存放。首先存放第一帧中的视频数据,紧靠着它存放第一帧中的各种音频数据,然后是存放第一帧中的多个文字数据。这种存放方式的明显优点是,每一帧信息只读一次,不会发生多次寻道,能保证硬盘上的数据块速传送到输出设备上,图像不会发生颤动。缺点是每次读出的数据中有许多是用户不需要的,不仅增加了磁盘I/O负担,也占用了更多的内存缓冲区。另外,这种方式不能实现随机访问、快进和快退等功能,因此只适用于不要求随机访问和快进快退的简单播放方式。
二、帧索引存放方式
1、帧索引存放方式的基本原理
在系统中,为每部电影建立一个帧索引表。其中每一个表项至少有两个字段,一个是地址字段,它用于存放相应帧所在盘块的始址。另一个是帧长字段,存放该帧的盘块数目。在播放电影时,首先从帧索引表的第一帧索引表项中找到第一帧的盘块始址,从中将该帧的内容全部读出。然后再从帧索引表的第二帧索引表项中找到第二一帧的盘块始址,将其内容全部读出。
2、帧索引存放方式的性能分析
(1)支持隨机访问。
(2)关于快进快退问题。帧索引方式支持快进,但效果不一定好,为了达到好的效果,可以专门制作一个快进文件。
(3)磁盘碎片较小。在采取帧索引存放方式时,对每一帧采用连续存放方式,最后一个盘块可能会有一些空闲空间,但由于盘块较小,相应的磁盘碎片也较小。
(4)缓冲管理简单。为了提高磁盘输出速度,可以采用双缓冲方式,一个缓冲用于播放当前帧,一个缓冲用于存放下一帧,当一帧播放完后,可以立即播放另一个缓冲中的内容。
三、块索引存放方式
1、块索引存放方式的基本原理
该方式中选定的盘块较大,远大于一帧的大小故将它称为大盘块法,所配置的索引表采用的是块索引,它是以盘块号为索引。在每一个索引表项中需要两个字段,一个帧号字段存放在该块中的第一个帧的帧号,另一个字段存放该块中的帧数,另外还需要几个地址字段用于存放在本块中每一帧的盘块始址。
2、块索引存放方式的性能分析
(1)支持随机访问。
(2)磁盘碎片较大。在一个大盘块中可以存放多个帧,当盘块中的存储空间不足以装下后面一帧时,可采取两种处理方法:一帧跨越两个盘块;让剩余部分空闲。大盘块法可能造成比小盘块法更大的碎片。
(3)缓冲管理复杂。可采用循环缓冲方式,整个循环缓冲器的容量应大于一帧的容量大加上一个盘块的容量。
四、近似视频点播的文件存放方式
近似视频点播是视频点播的一种近似,它是每隔一定时间开始一次播放。如果说视频点播是出租车,一招手就来非常方便,但需要很多的出租车才能满足要求,那么近似视频点播就像公共汽车,每隔一定时间就开一班车,它就能满足非常多人的需要。在采用近似视频点播时要考虑两个问题:
间隔时间大小。数据流之间间隔时间应选择多长?间隔时间越小,用户的等待时间越少,但一部电影需要的数据流就越多。反之,间隔时间越大,用户的最大等待时间就越长,但一部电影需要的数据流也就越少。
用户数量的多少。只有当需要观看某部电影的人数达到一定数量时,才需要开通该电影的近似视频点播,而且人数越多,间隔时间越小。
在近似视频点播中,即使电影文件是连续文件,但在它以24个数据流错时送出时,由于每两个相邻数据流都差9000帧,因此从一条数据流转至下一个数据流时就需要寻道。但是有一种方法可以消除寻道操作,基本思想是:将24路数据流中的在同一时间播放的24帧一次放在一起,作为一个记录写入磁盘,在播放时将它们一起读出,这样就避免了寻道。
参考文献:
[1]苏志明.计算机操作系统的功能、发展及分类 [J].企业技术开发,2012(32).
[2]汤小丹,梁红兵等.现代操作系统 [M].北京:电子工业出版社,2007.
[3]张尧学等.计算机操作系统教程[M].北京:清华大学出版社,2013.