CN101589369A - 再生装置、系统lsi、初始化方法 - Google Patents

再生装置、系统lsi、初始化方法 Download PDF

Info

Publication number
CN101589369A
CN101589369A CNA200880003106XA CN200880003106A CN101589369A CN 101589369 A CN101589369 A CN 101589369A CN A200880003106X A CNA200880003106X A CN A200880003106XA CN 200880003106 A CN200880003106 A CN 200880003106A CN 101589369 A CN101589369 A CN 101589369A
Authority
CN
China
Prior art keywords
mentioned
reference value
firmware
application program
regenerating unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA200880003106XA
Other languages
English (en)
Other versions
CN101589369B (zh
Inventor
大户英隆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN101589369A publication Critical patent/CN101589369A/zh
Application granted granted Critical
Publication of CN101589369B publication Critical patent/CN101589369B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3428Benchmarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3485Performance evaluation by tracing or monitoring for I/O devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Stored Programmes (AREA)

Abstract

再生装置(102)的硬件具备驱动器(1)和解码器,固件(22)按照BD-J应用程序对被放入驱动器(1)中的BD-ROM进行访问,使解码器进行AV再生。驱动器部构成本地储存器。固件(22)中预先编入了基准值,该基准值表示从通过固件(22)向硬件请求处理开始、直到响应返回为止的周转时间。该基准值在首次执行固件(22)时被写入本地储存器的应用程序数据区域。

Description

再生装置、系统LSI、初始化方法
技术领域
本发明是涉及应用程序执行技术的技术领域的发明。
背景技术
应用程序执行技术是指根据利用面向对象语言描述的类结构来生成作为其实例的类对象,通过向虚拟机的平台提供该类对象,使虚拟机执行利用面向对象语言描述的应用程序的技术。作为其应用物的工业制品是具有BD-ROM的再生功能的再生装置等。这样的再生装置被各个制造企业(也称为“生产厂家(manufacturer)”)开发,并且每年都有型号变更。由于每个装置的MPU、内存(memory)大小、总线带宽、图形加速卡等的硬件部件不同,因此应用程序的处理速度随着再生装置的硬件部件的差异而不同。
由于每个装置的硬件的性能差异不同,因此在应用程序执行处理的情况下,产生了使处理负荷变化的需要。这样的负荷变化的对象例如是GUI的动画(animation)张数的增減。在硬件性能高的再生装置中,由于能够高速进行GUI的图形数据的装载、解压缩,因此动画的张数多。相反,在硬件性能低的再生装置中,剔除(間引ㄑ)动画的张数。通过进行这样的张数的增減,在发生用户操作的情况下的响应速度不会被硬件的性能差异左右,能够保持一定的水准。对于实现这样的负荷变化的应用程序而言,需要了解执行主体的硬件的性能是何种程度。因此,想到了在应用程序启动时,首先执行用于测定处理性能的基准测试(benchmark test)。
关于利用了基准测试的处理负荷的变更方式,有专利文献1中所记载的文献公知发明。
专利文献1:日本特开第2002-99430号
然而,由于BD-ROM的再生装置具有多种功能,因此为了进行处理负荷的变更,必须对多个硬件处理进行基准测试。在此,若在执行应用程序之前对全部多个功能进行基准测试,则执行基准测试需要花费大量的时间,存在从用户启动应用程序开始、到开始实际的处理为止的延迟时间即启动延时(starting delay)变大的问题。
于是出现了实现对基准测试结果的再利用的想法。具体地讲,利用再生装置的标准化推进团体官方认定的应用程序来执行基准测试,然后将测定的值写入储存器(storage),再使其他的应用程序利用该结果。若利用官方的应用程序来执行基准测试,则其他的应用程序不需要每次都执行基准测试,而能够对该数值进行再利用,因此各个应用程序的启动延时变小。若基于官方的应用程序的基准测试包括了大部分必要的功能,则能够实现极细微的负荷调整。
然而,在硬件和应用程序之间的固件(firmware)需要不定期地进行更新。固件是指为了进行硬件的基本控制而组装在机器中的软件。即使对官方的应用程序执行了包括多个功能的基准测试,若该基准测试的结果是以旧固件为对象的结果,则对处理负荷的决定不起作用。这是由于执行功能的速度很大程度地依赖于固件的开销(overhead)。此外,在运算算法变更的情况下,有时再生装置的性能也会变化。
这样,若在执行应用程序之前,执行全部多个功能的基准测试,则在执行原本的处理之前产生大的延迟,此外,若对官方的应用程序执行基准测试,并对该结果进行再利用,则在固件发生不定期的更新的情况下,存在有损于基准测试的有效性的问题。
发明内容
本发明的目的在于,提供一种再生装置,该再生装置消除应用程序启动时的延迟,并且能够使应用程序利用全部多个功能的基准测试的结果。
为了解决上述课题,本发明的再生装置的特征在于,具有:
硬件部,具备从记录媒体读出数据的驱动器部、对上述读出的数据中所包含的AV数据进行再生的再生部、以及执行程序的处理部;
固件程序,用于控制上述硬件部;
初始化部,在上述处理部执行上述固件程序的情况下,若满足规定的条件,则进行初始化处理;以及
记录部,具有规定的记录区域,
在上述固件程序中编入了基准值,
上述基准值是在上述处理部执行由上述驱动器部从上述记录媒体读出的基准测试程序时,按照来自上述被执行的基准测试程序的命令,通过由上述处理部执行的固件程序而使上述硬件部执行规定的处理后的结果,上述基准值是表示上述再生装置的处理能力的指标,
上述初始化部在上述处理部首先执行上述固件程序的情况下,通过将已编入上述固件程序中的基准值写入上述记录部的规定的记录区域,以使得上述处理部所执行的应用程序能够访问已写入上述记录区域中的基准值。
发明的效果
本发明的再生装置如上述构成,作为应用程序的启动延时对策,初始化部在首次执行固件时,将基准值(benchmark score)写入记录部的规定的记录区域。虽然在首次执行固件时发生将基准值写入记录部的规定的记录区域的时间延迟,但在应用程序启动时不发生时间延迟。由此,在应用程序启动时不发生启动延时。
这样,通过消除启动延时的影响,能够高度保持对于用户操作的响应。
应用程序即使自身不执行基准测试,也能够根据向记录部的规定的记录区域写入的基准值取得与再生装置的硬件部件有关的必要信息,因此,应用程序的动作可以缩短用于执行基准值测试所需的时间。
在此,在固件中已编入基准值的情况下,有可能因为应用程序直接访问已编入固件中的基准值而导致固件的损坏。作为固件损坏对策,初始化部在应用程序启动之前,将已编入固件中的基准值写入应用程序数据区域。
这样,应用程序不会直接访问已编入再生装置的固件中的基准值。因此,能够避免因固件被不必要的访问而导致的固件(或者存储固件的内存等的记录媒体)的损坏和/或固件的内容被暴露的危险。
此外,基准值的写入不是在每次启动固件时进行,而是在首次执行固件时进行,因此与每次启动固件时进行基准值的写入相比,基准值写入的频度变低。
此外,通过应用程序利用该基准值,能够细致地确定在例如再生装置上描画动画时的负荷。这样,能够以适合于硬件的性能的负荷来执行再生装置上的必要的处理。
此外,所述的再生装置的特征在于,在上述固件程序被更新、上述处理部首次执行上述更新后的固件程序的情况下,
上述初始化部将编入上述更新后的固件程序中的基准值写入上述记录部的规定的记录区域。
在上述再生装置中,由于基准值以编入固件中的方式存在于再生装置内,因此若在固件更新时将编入了旧的基准值的旧版本的固件改写为编入了新的基准值的新版本的固件,则在固件被更新为新的固件时,基准值伴随着该更新而自动地进行新旧的交替,并且在首次执行更新后的固件程序时,将写入上述记录部的规定的记录区域中的基准值更新为新的基准值。
由于在从旧的固件更新为新的固件时,基准值与固件一起以被重写的方式存在于再生装置内,因此即使不定期地更新固件,也不会发生固件的版本与基准值的版本不一致这样的版本冲突。因此,即使不定期地对固件进行更新,基准值也能保持其有效性。
此外,基准值的写入不是在每次启动固件时进行,而是在用户更新固件之后首次执行更新后的固件时进行,因此,与每次启动固件时进行基准值写入相比,基准值写入的频度变低。虽然在首次执行更新后的固件时发生将基准值写入记录部的规定的记录区域的时间延迟,但在应用程序启动时不发生时间延迟。由此,在应用程序启动时不发生启动延时。这样,通过消除启动延时的影响,能够高度保持对于用户操作的响应。
此外,所述的再生装置的特征在于,还具有判断部,该判断部在上述处理部所执行的应用程序访问已写入上述记录区域的基准值的情况下,判断与上述应用程序对应的信用证书的有效性,该信用证书包含有上述应用程序对于写入上述记录区域的基准值的访问权限的信息,根据被判断为有效的上述信用证书中所包含的对于上述基准值的访问权限的信息,判断上述应用程序能否访问已写入上述记录区域的基准值。
通过这样的构成,在应用程序请求读出基准值时,能够判断该应用程序是否被赋予了合法的访问权限,而且,由于是否被赋予了合法的访问权限的判断是利用数字签名的结构来进行的,因此不需要对BD-J应用程序终端的标准模型进行大的改变,就能够实现是否存在合法权限的判断。
此外,所述的再生装置的特征在于,使用包含有用于识别提供了上述基准测试程序的组织的识别符和用于识别上述基准测试应用程序的识别符的文件路径,来确定上述记录部的规定的记录区域。
例如,在基于官方的应用程序的基准测试以标准化团体的统一基准来执行的情况下,基准值变为信赖性高且极有意义的信息。但是,信赖性越高,该基准值越有可能被无秩序地利用,将该基准值有可能被公开在网页上,由此进行攻击该再生装置的信赖性的活动,所谓的消极竞选(Negativecampaigning)。作为应对该消极竞选的对策,通过采用上述这样的构成,由于只有被提供了基准测试程序的组织赋予了合法的访问权限的程序才能够进行基准值的读出,例如,只有被汇总记录媒体的规格化的团体正式认定过的程序才能进行基准值的读出。这样,生产厂家能够安心地将基准值编入固件并使应用程序利用该基准值。
此外,所述的再生装置的特征在于,
上述固件程序包含I/O程序,该I/O程序对于上述应用程序请求访问已写入上述记录区域的基准值的访问请求,将已写入上述记录区域的基准值返回给请求访问的应用程序,
在上述应用程序指定上述基准值的文件路径并请求访问上述基准值时,
上述处理部执行上述I/O程序,上述I/O程序将基于指定的文件路径而确定的基准值返回给上述应用程序。
根据这样的构成,通过应用程序利用该基准值,能够细致地确定在例如再生装置上描画动画时的负荷。这样,不仅能够以适合于硬件的性能的负荷来执行再生装置上的必要的处理,而且能够防止应用程序对基准值的直接访问。
此外,所述的再生装置的特征在于,
在将已编入上述固件程序中的基准值展开到上述第2记录区域的情况下,
生成位置信息,该位置信息包含:与表示上述基准值原本应该写入的位置的上述记录部中的文件路径有关的信息;以及与展开上述基准值后的上述第2记录区域上的位置有关的信息,
上述I/O程序构成为,若从上述应用程序接受了指定的文件路径,则参照上述位置信息,读入在上述第2记录区域展开的基准值并将该基准值返回给上述应用程序。
根据这样的构成,即使应用程序不知道基准值的实际的存储位置,也能够获得基准值。
此外,所述的再生装置的特征在于,上述初始化部判断由上述记录部中的规定的路径来确定的记录区域中是否写入有上述基准值,在判断为没有写入上述基准值的情况下,将编入上述固件程序中的基准值写入由上述记录部中的规定的路径来确定的记录区域。
根据这样的构成,即使由于某些偶然事件而使得基准值被改写并从上述记录部的规定的路径所确定的记录区域消失,也能够在固件被启动时,进行基准值是否消失的检验,并在消失的情况下,从固件再次读出基准值,写入上述记录部的规定的路径所确定的记录区域,因此,能够以固件启动为契机,对基准值是否消失进行确认,并且能够对消失情况采取对策。这样,在应用程序请求读出基准值的情况下,能够立即响应该请求。
此外,所述的再生装置的特征在于,在上述固件程序被更新的情况下,上述初始化部对已编入上述更新后的固件程序中的基准值的版本和上述应用程序数据区域中存在的基准值的版本进行版本比较,在判断出已编入上述更新后的固件程序中的基准值新的情况下,将已编入上述固件程序中的基准值写入由记录部中的规定的路径所确定的记录区域。
根据这样的构成,在虽然进行了固件的更新,但更新后的固件所编入的基准值没有变化的情况(即基准值的版本与更新前相同的情况)下,能够抑制向上述记录部的规定的路径所确定的记录区域写入基准值,因此在上述记录部的规定的路径所确定的记录区域例如是写入次数有上限值的半导体存储卡上的内存区域的情况下,能够实现半导体存储卡的长寿命化。
除了将基准值写入应用程序数据区域以外,还有其他的向应用程序提供基准值的方法。这通过将初始化部构成为下述这样来实现。
即,将上述基准值展开到内存中,使应用程序利用内存中的基准值。这样,能够缩短因向本地储存器的应用程序数据区域复制基准值而产生的延迟时间。此外,在应用程序数据区域是由半导体存储卡构成的情况下,能够抑制对半导体存储卡的写入次数。
附图说明
图1是表示在用户住宅设置的再生装置102的利用方式的图。
图2是表示BD-ROM的构成的图。
图3是表示BD-ROM的再生控制的层模型(layer model)的图。
图4是表示本地储存器的持久区域(Persistentarea)的内部构成的图。
图5中,(a)是表示通过以HDMV模式对动态的再生控制进行定义,从而制作的电影作品的一个场面的图。
(b)是通过以BD-J模式对动态的再生控制进行定义,从而制作的电影作品。
图6是表示在显示图5(b)的合成影像时,由BD-ROM提供的应用程序进行怎样的处理的图。
图7是表示本发明的再生装置的硬件构成的图。
图8中,(a)是表示构成固件的文件群的图。
(b)是示出了表示再生装置的控制内容的层模型的图。
图9是表示再生装置的开发环境的图。
图10是解说如何获得在文本文件中存储的基准值的图。
图11中,(a)是表示引导装载程序(boot loader)21的内部构成的图。
(b)是示出了表示是否是首次的执行的标志位(flag)的图。
(c)是表示系统应用程序28的内部构成的图。
图12是示意性地表示固件启动部31进行怎样的处理,经由怎样的路线将固件22提供给MPU16的图。
图13是表示经由怎样的路线将闪存(Flash ROM)18中的基准值供给基准值设定部34的图。
图14是表示在CertID为“0g1a24ed”、OrganizationID为“4”,ApplicationID为“5”的情况下的目录及文件构成的一例的图。
图15是表示经由怎样的路线将应用程序数据区域中的基准值交给服务应用程序的图。
图16中,(a)是表示固件更新部32的处理顺序的流程图。
(b)是表示固件启动部31的处理顺序的流程图。
图17是表示基准值设定部34的处理顺序的流程图。
图18中,(a)是表示Java(TM)归档文件302中的构造的一例的图。
(b)是表示数字信用证书的数据构造的一例的图。
(c)是表示数字信用证书的一个具体例的图。
图19是表示在没有提供权限的情况下的SIG-BD.SF、BD.ROOT.CERTIFICATE的相互关系的图。
图20是表示在提供了权限的情况下的SIG-BD.SF、BD.ROOT.CERTIFICATE、bd.XXXX.perm的相互关系的图。
图21是表示对应用程序数据区域的访问顺序的流程图。
图22是表示使用了数字信用证书的权限检验的处理顺序的流程图。
图23是示意性地表示第3实施方式的基准值的往返的图。
图24是表示基于基准测试应用程序29的基准测试的处理顺序的流程图。
附图标记说明
100BD-ROM
101WWW服务器
102再生装置
103电视
104可移动存储媒体
105开发用计算机
21引导装载程序
22固件
23虚拟文件系统
24访问控制机构
25再生引擎
26再生控制引擎
27BD-J模块
28系统应用程序
29基准测试应用程序
31固件启动部
32固件更新部
33应用程序管理器
34基准值设定部
具体实施方式
(第1实施方式)
下面参照附图对本发明的实施方式进行说明。
下面,说明再生装置的实施方式。首先,说明本发明的再生装置的实施行为中的使用行为的方式。图1是表示在用户住宅中设置的再生装置102的利用方式的图。如本图所示,再生装置102可供用户与BD-ROM100、WWW服务器101(也称为Web服务器)、电视103、可移动存储媒体104一起使用。
BD-ROM100是记录有电影作品的记录媒体。
WWW服务器101是电影运营供应者的官方网站的服务器装置,经由因特网等向用户提供用于实现对在BD-ROM100中记录的电影作品进行部分更换、追加的内容。
再生装置102与电视103一起构筑了家庭影院系统,再生BD-ROM100。
电视103显示电影作品的再生影像,或者显示菜单等,从而向用户提供对话式的操作环境。
可移动存储媒体104被放入再生装置102,作为从电影供应者的WWW服务器101配送的内容的容器(受け皿)而被利用。因此,对通过网络下载并存储至可移动存储媒体104中的内容和在BD-ROM100中记录的内容进行组合,从而能够扩展/更新BD-ROM100的内容。为了能够放入可移动存储媒体104,再生装置102具备了插入SD存储卡、存储棒(memoryctick)、CF(compact flash)卡(TM)、SM(smart media)卡、多媒体卡(multimedia card)等的可移动存储媒体104的插入口。
以上是对本发明的再生装置102的使用方式的说明。接着,对作为本发明的再生装置102再生的对象的记录媒体进行说明。本发明的再生装置102所再生的记录媒体是光记录媒体即BD-ROM100。
图2是表示BD-ROM(以下或称为“BD”)的构成的图。本图的第1级示出了BD-ROM100,第2级将从BD-ROM的内周向外周呈螺旋状形成的记录区域沿横方向拉伸而表示为直线状。如该第2级所示,记录区域具有内周的“读·进”、外周的“读·出”和“逻辑地址空间”。此外,在读·进的内侧是只有通过被称为BCA(Burst Cutting Area)的驱动器才能够读出的特别的区域。由于该区域不能从应用程序读出,因此经常被用于例如著作权保护技术等。
“逻辑地址空间”将用于文件系统的区域管理信息作为开头,记录着各种影像数据。“文件系统”是指UDF(统一光盘格式:Universal DiscFormat)、ISO9660等的文件系统,在本实施方式中,采用了Extention2.3格式的文件系统。
本图的第3级表示了以第2级的文件系统为前提而构筑的目录及文件构成。如本图所示,在BD-ROM的根目录(ROOT)下,存在BD.ROOT.CERTIFICATE目录和BDMV目录。
BD.ROOT.CERTIFICATE(盘根证书)是例如以X.509的格式来编码的。X.509的规格是由国际电信电话咨询委员会发行的CCITTRecommendation X.509(1988),记载于“The Directory-AuthenticationFramework”。本图中的引出线f1表示了BD.ROOT.CERTIFICATE的用途。如该引出线所示,BD.ROOT.CERTIFICATE用于导出证书固有的ID(称为CertID)。
BDMV目录是记录有BD-ROM中的AV内容、管理信息等的数据的目录。在BDMV目录下存在“PLAYLIST目录”、“CLIPINF目录”、“STREAM目录”、“BDJO目录”、“JAR目录”这5个子目录,在BDMV目录下存放index.Bdmv、MovieObject.bdmv这2个种类的文件。
STREAM目录是存放所谓的数字流主体的文件的目录,存放扩展名为M2TS的文件(xxx.m2ts,其中,“xxx”是可变的,扩展名”m2ts”是固定的)。
在PLAYLIST目录下存放扩展名为mpls的文件(xxx.mpls,其中,“xxx”是可变的,扩展名”mpls”是固定的)。
在CLIPINF目录下存放扩展名为clpi的文件(xxx.clpi,其中,“xxx”是可变的,扩展名”clpi”是固定的)。
在JAR目录下存放扩展名为jar的文件(xxx.jar,其中,“xxx”是可变的,扩展名“jar”是固定的)。
在BDJO目录下存放扩展名为bdjo的文件(xxx.bdjo,其中,“xxx”是可变的,扩展名“bdjo”是固定的)。
<扩展名为“m2ts”的文件>
扩展名为“m2ts”的文件是复用MPEG-TS(Transport Stream)格式的数字AV流、视频流、1个以上的音频流、1个以上的图形流而得到的。视频流表示电影的动画部分,音频流表示电影的音声部分,图形流表示电影的字幕。
扩展名为“clpi”的文件是与各个数字AV流一一对应的管理信息。由于是管理信息,Clip信息具有数字AV流的编码格式、帧率、码率、分辨率等的信息、还具有表示GOP的开头位置的EP_map。
<扩展名为“mpls”的文件>
扩展名为“mpls”的文件是存储了播放列表(playlist)信息的文件。播放列表信息包括主路径(main path)信息、子路径(sub path)信息、标记(mark)信息。
(1)主路径信息是通过在AV流的再生时间轴中定义1个以上的In_Time的时间点和Out_Time的时间点的组合,来定义逻辑的再生区间的信息,具有流编号表,该流编号表规定使AV流中被复用的基本流中的哪一个的再生有效。通过具有该流编号表,能够规定允许AV流内的基本流中的哪一个再生,不允许哪一个再生。
(2)标记信息包括对成为章(chapter)的时间点的指定,该章是以In_Time以及Out_Time的组合来指定的AV流的一部分中的章。
(3)子路径信息包括对与上述AV流同步再生的基本流的指定、以及在该基本流的再生时间轴中的In_Time以及Out_Time的组合。Java(TM)应用程序通过命令Java(TM)虚拟机生成用于再生该播放列表信息的JMF播放器实例,能够使AV再生开始。JMF播放器实例是指基于JMF播放器类而在虚拟机的堆内存(heap memory)上生成的实际的数据。
AV流和播放列表信息的组合构成“标题”这样的再生单位。BD-ROM的AV再生将该标题作为一个单位来进行。
<扩展名为”jar”的文件>
扩展名为”jar”的文件是Java(TM)归档文件,包括通过Java(TM)虚拟机来进行动态脚本控制的Java(TM)应用程序的类文件。通过该类文件来定义的Java(TM)应用程序是经由Xlet接口而被控制的Java(TM)Xlet。Xlet接口具有“loaded”、“paused”、“active”、“destroyed”4个状态。本说明书中所谓的应用程序是指这样被记录在BD-ROM等的记录媒体中的类文件的实例。
<扩展名为“bdjo”的文件>
扩展名为“bdjo”的文件是存储BD-J对象的文件。BD-J对象是通过播放列表信息所表示的AV流与应用程序之间的关联,来定义标题的信息。BD-J对象包括“应用程序管理表”以及表示在其标题中能够再生的播放列表的一览。应用程序管理表(AMT)是指实现“应用程序信令(application signaling)”的表。“应用程序信令”是指将BD-ROM中的“标题”作为应用程序的生存区间来进行管理,并控制应用程序的启动以及结束。在此,生存区间是表示在BD-ROM中所记录的全部内容的时间轴中,应用程序在虚拟机的堆内存上能够生存的区间。“生存”是指该应用程序从堆内存中被读出,成为能够被虚拟机执行的状态。应用程序管理表通过罗列应用程序的识别符(应用程序ID)和该应用程序所属的Java(TM)归档文件的ID,表示将该标题作为其生存区间的应用程序。即,一个应用程序由一个以上的Java(TM)归档文件构成。这样,通过BD-J对象内的应用程序管理表来规定了控制的Java(TM)应用程序被称为“BD-J应用程序”。
<index.bdmv(文件名固定)>
index.bdmv(文件名固定)是关于整个BD-ROM的管理信息,在向再生装置102插入盘后,最先读出index.bdmv,从而再生装置102唯一地识别出盘。另外,index.Bdmv还包括表示BD-ROM中的能够再生的多个标题与规定各个标题的BD-J对象之间的对应关系的表。引出线f2对index.bdmv的内部构成进行了特写(closeup)表示。如该引出线所示,具有用于确认电影作品的出资方(provider)的识别符organizationID(32位)。
MovieObject.bdmv(文件名固定)包括描述了脚本的脚本程序,该脚本在HDMV模式(后述)下的各标题再生中动态改变再生进度。
图3是表示再生控制的层模型的图。图3的第1层是物理层,用于控制作为处理对象的流主体的供给。如该第1层所示,作为处理对象的流不仅以BD-ROM为供给源,还以Build-In媒体、可移动存储媒体、网络之类的所有记录媒体、通信媒体为供给源。在此,Build-In媒体是HDD(硬盘驱动器)等的预先装入再生装置102的记录媒体。另一方面,可移动存储媒体是SD存储卡、存储棒、CF卡(TM)、SM卡、多媒体卡等的便携式的记录媒体。上述这些Build-In媒体、可移动存储媒体都是再生装置102本地利用的记录媒体,总称为“本地储存器”。对上述这些本地储存器、网络之类的供给源进行的控制(访问盘、访问卡、网络通信)是第1层的控制。
第2层是AV流的层。该第2层规定了使用什么解码方式来对经第1层供给的流进行解码。
第3层(BD管理数据)是规定了流的静态脚本的层。静态脚本是指由盘制作者预先规定的再生路线信息、流管理信息,该第3层规定了基于这些信息的再生控制。
第4层(BD再生程序)是实现流的动态脚本的层。动态脚本是执行AV流的再生顺序以及与该再生有关的控制顺序中的至少一方的程序。基于动态脚本的再生控制与用户对装置的操作相对应地变化,具有程序化的性质。这里的动态的再生控制有2种模式。2种模式中的一种是在AV机器特有的再生环境下对BD-ROM中记录的动画数据进行再生的模式(HDMV模式),另一种是提高BD-ROM中所记录的动画数据的附加价值的模式(BD-J模式)。在图3中的第4层,描述了HDMV模式和BD-J模式这2种模式。HDMV模式是类似DVD的再生环境下的再生模式,描述了动态改变再生进度的脚本的脚本程序进行动作。另一种的D-J模式是以Java(TM)虚拟机为主体的再生模式,根据Java(TM)应用程序进行再生控制。
接着,对本地储存器的内部构成进行说明。本地储存器中存在有持久区域,该持久区域具有如图4所示的目录及文件构成。图4是表示本地储存器中的持久区域的内部构成的图。
在这样的持久区域中存在有“盘追加数据区域”和“应用程序数据区域”。
“盘追加数据区域”是与过去向再生装置102中放入的各个BD-ROM相对应的区域,存储了成为各个BD-ROM的存储内容的追加物的数据。盘追加数据区域由“BUDA目录”、“CertID目录”、“OrganizationID目录”、“DiscID目录群”构成。
“BUDA目录”存在于例如本地储存器的根目录下,是表示追加内容区域的根(root)的目录,目录名是8文字以内的固定值(BD_BUDA)。
“CertID目录”是名称中具有从例如BD-ROM上的BD.ROOT.CERTIFICATE导出的ID的目录,是将BD.ROOT.CERTIFICATE的SHA-1摘要(digest)值160位中的前32位以16进制表示为8个文字的名称的目录。
“OrganizationID目录”是将确定电影作品的出资方的32位的识别符(OrganizationID)以16进制表示为8个文字的名称的目录,所述电影作品的出资方例如记载在BD-ROM上的BD管理信息(index.bdmv)中。
“DiscID目录群”由例如4个目录构成,这4个目录的名称是将确定BD-ROM的128位的识别符(DiscID)从开头开始分割成4个32位,然后用16进制将4个32位分别表示为8个文字。
“应用程序数据区域”是在例如应用程序进行动作时存储必要的数据的区域。例如应用程序进行动作时的用户配置、Cookie、游戏分数、密码等被存储在该应用程序数据区域。
应用程序数据区域的目录构成由ADA(Application Data Area)目录、CertID目录、OrganizationID目录、ApplicationID目录构成。
应用程序数据区域目录(ADA目录)存在于本地储存器的根目录下,是表示应用程序数据区域的根的目录,目录名是固定值(ADA)。
“CertID目录”是在名称中具有从BD-ROM上的BD.ROOT.CERTIFICATE导出的ID的目录,是将BD.ROOT.CERTIFICATE的SHA-1摘要值160位中的前32位以16进制表示为8个文字的名称的目录。
“OrganizationID目录”是将确定电影作品的出资方的32位的识别符(OrganizationID)以16进制表示为8个文字的名称的目录,所述电影作品的出资方例如记载在BD-ROM上的index.Bdmv中。
“ApplicationID目录”是以16进制来表示应用程序的识别符(ApplicationID)来作为名称的目录,该应用程序的识别符是作为归档文件的文件名而采用的应用程序的识别符。在该ApplicationID目录下有存储了基准值的文本文件。
文本文件存在于应用程序数据区域上,由于该应用程序数据区域能够通过ADA-CertID-OrganizationID-ApplicationID这样组合的固定文件路径来确定,因此,BD-J应用程序能够通过用于文件I/O的API(Java I/O方法)读出基准值。
图5是表示通过2个模式的动态的再生控制而制作的电影作品的图。图5(a)是表示通过以HDMV模式对动态的再生控制进行定义,从而制作的电影作品的一个场面的图。HDMV模式由于能够利用与DVD再生装置能够解释的指令十分相似的指令来描述再生控制,因此能够定义与DVD相似的再生控制,即,通过对菜单的选择来进行再生的再生控制。
图5(b)是通过以BD-J模式对动态的再生控制进行定义,从而制作的电影作品。BD-J模式可以利用Java(TM)虚拟机能够解释的Java(TM)语言来描述的控制顺序。若该再生控制构成冒险游戏(adventure game)的GUI,则在BD-J模式下,能够向用户显示游戏的分数(图中的SCORE:10000)、指示器(indicator)(LIFE:3)、按钮构件(提问、退室)、人物动画和动画组合而成的合成影像。
图6是表示在显示图5(b)的合成影像时,BD-ROM所提供的应用程序进行怎样的处理的图。在本图的下部,描述有图2所示的归档文件xxx.JAR。上部表示了这些归档文件所定义的BD-J应用程序(下面,除了系统应用程序等之外都是一般的应用程序,以下都称为“服务应用程序”)。在该服务应用程序的框内,示意性地表示了在描画图4中的人物动画时的处理负荷的变化的情况。
左框是使处理负荷变重的变化,可知猫这个人物以1秒钟24张的全动画(full animation)来显示。
右框是使处理负荷变轻的变化,可知猫这个人物以1秒钟12张的半动画(half animation)来显示。这样的变化是根据在应用程序数据区域中所存储的基准值是怎样的值来进行的,所述应用程序数据区域是通过ADA-CertID-OrganizationID-ApplicationID这样的固定文件路径能够访问的区域。左框中的处理负荷的变化例如将基准值为规定的阈值以上作为必要条件。右框中的处理负荷的变化例如将该基准值不足规定的阈值作为必要条件。这样,从BD-ROM提供的服务应用程序按照应用程序数据区域中存在的基准值的大小,使处理负荷变化。通过这样的处理负荷的变化,从用户通过GUI命令BD-J应用程序执行处理开始、直到该处理结束为止的响应时间,不会受再生装置102的描画能力的影响,而能够保持一定的水准。
以上是对BD-ROM100的说明。接着,对再生装置102进行详细说明。
图7是表示再生装置102的硬件构成的图。如本图所示,再生装置102具有BD-ROM驱动器1、读缓冲器2、解复用器3、视频解码器4、平面内存(プレ一ンメモリ)5、音频解码器6、初级(elementary)缓冲器7、平面内存8、图形解码器9、加法器10、网络I/F部11、开关12、HD驱动器13、卡驱动器14、RAM15、MPU16、用户接口17、闪存18。向图7所示的硬件构成完全安装Java(TM)2Micro_Edition(J2ME)Personal BasisProfile(PBP 1.0)和Globally Executable MHP specification(GEM1.0.2)forpackage media targets而构成再生装置102。
BD-ROM驱动器1进行对具有图2所示的内部构成的BD-ROM的装载/弹出,进行对BD-ROM的访问。而且,BD-ROM驱动器1将从BD-ROM读出的TS包存储到读缓冲器2中。
读缓冲器2是FIFO内存,从BD-ROM读出的TS包以先入先出的方式被存放。该TS包是构成MPEG2-TS格式的AV流的包。
解复用器3对记录在BD-ROM、可移动存储媒体、Build-In媒体中的MPEG2-TS格式的AV流进行多重分离,获得构成GOP的视频帧和音频帧并将视频帧向视频解码器4输出,将音频帧向音频解码器6输出。图形流存储于图形内存7中。解复用器3所进行的多重分离包括将TS包变换为PES包的变换处理。
视频解码器4对从解复用器3输出的视频帧进行解码,将非压缩格式的图片写入视频用的平面内存5中。
平面内存5是用于存储非压缩格式的图片的内存。
音频解码器6对从解复用器3输出的音频帧进行解码,输出非压缩格式的音频数据。
图形内存7是用于存储从BD-ROM、可移动存储媒体、Build-In媒体读出的图形数据、图像文件的缓冲器。
平面内存8是具有一个画面的量的区域的SD-RAM等,在HDMV模式和BD-J模式下的内存分配不同。HDMV模式下的内存分配由横1920×纵1080的8位区域构成。这是在1920×1080的分辨率下,1个像素被分配能够存储8位的索引(Index)值的内存。使用CLUT(Color Lookup Table)来变换这样的索引色(indexed color),从而显示在平面内存8中存放的光栅图形(ラスタグラフイクス)。另一方面,BD-J模式下的内存分配由1920×1080的32位区域构成。这是在横1920像素×纵1080像素的分辨率下,1个像素被分配能够存储32位的RGB值的内存分配。这样,通过直接写入32位的RGB值,BD-J应用程序能够直接显示GUI的图形。
图形解码器9将存储于图形内存7中的图形数据、图像文件展开并写入平面内存8中。通过图形流的解码,各种菜单、图形出现在画面上。
加法器10合成在视频用的平面内存5中存储的非压缩格式的图片数据和在图形用的平面内存8中展开的图形来进行输出。通过该加法器10来合成平面内存8内的图形和视频用的平面内存5内的图片,从而输出图5(b)所示的合成图像。
网络I/F部11执行用于网络连接的协议栈(protocol stack),使再生装置102认识网络上的计算机所具备的驱动器并作为网络驱动器4a。作为协议栈,在要求信赖性的BD管理数据的转送中优选使用TCP/IP,在要求高速性的AV流的转送中优选使用UDP/IP。
开关12将从BD-ROM驱动器1、HD驱动器13、卡驱动器14读出的文件选择性地存入RAM15。
HD驱动器13是能够存储BD-ROM所提供的类文件以及同等的类文件的硬盘驱动器。
卡驱动器14是能够放入SD存储卡等的驱动器装置,所述SD存储卡中写入了与BD-ROM所提供的类文件同等的类文件。
RAM15由Static RAM等构成,在MPU16进行数据处理时,存储必要的数据。在RAM15中存在用于常驻固件的固件常驻区域。固件常驻区域只有在MPU16的特权模式下才能够访问,在通常模式下动作的程序不能够访问。这是为了防止对固件造成不可予期的损坏。
固件常驻区域以外的其他的区域通过内存池管理功能、堆区管理功能来进行管理。
内存池管理功能管理空的内存区域,按照需要向BD-J应用程序提供所请求的内存大小,一旦使用结束,就恢复在内存中蓄积的状态。在堆区管理功能中,在内存的空区域中设定内存池,根据BD-J应用程序的请求,提供必要大小的内存。通过这样的堆管理,RAM15上的区域作为“堆内存”而被利用。
MPU16作为再生装置102的中核,作为必须的构成要素至少具有:从命令内存、缓存提取(fetch)本地代码(native code)的“提取电路”;对命令代码进行解码的“解码器电路”;以及,根据解码结果,对存储于寄存器的保持值进行运算的“算术运算电路”。此外,MPU16作为动作模式具有特权模式。在该特权模式下能够动作的程序能够对RAM15、闪存18中存储的固件进行访问。
用户接口17检测对于遥控器、再生装置102的前面板这样的输入机器进行的用户操作,并通知这些操作。该通知是通过使与这些输入机器相对应的设备驱动内的中断处理程序发生中断来生成UOP而实现的。UOP是在检测到被设于遥控器、前面板的键盘矩阵被按下时所发生的事件(UOP事件),具有与按下的键相对应的属性。具体地讲,在通过与键盘矩阵相对的键盘列触发信号(key sense)检测出键被按下时,与遥控器、前面板相对应的设备驱动的中断处理(ハンドル)根据所按下的键而产生中断信号,从而生成UOP事件。
闪存18是EEPROM,存储有向再生装置102中预先编入的编入式程序。这样的编入式程序例如是引导装载程序21、固件22。闪存18仅有在MPU16的特权模式下才能够被访问,在通常模式下动作的程序不能够访问。这是为了防止对引导装载程序21、固件22造成不可预期的损坏。
以上是再生装置102的硬件构成。接着,对以上述的硬件构成为前提的软件构成进行说明。
图8(a)是表示构成固件22的文件群的图。如本图所示,固件22包括例如多个“类文件”、多个“执行格式文件”、多个“文本文件”。
这些文件中,类文件、执行格式文件是固件22的构成要素,用于规定再生装置102的控制内容。图8(b)是表示再生装置102的控制内容的层模型的图。
如本图所示,再生装置102的控制内容是在硬件上存在固件22这样的一般形式。该固件22例如是使虚拟文件系统23、访问控制机构24、再生引擎25、再生控制引擎26、类装载器7、系统应用程序28阶层化的结构。
此外,固件22作为用于访问持久区域的必要的软件要素而包括实现例如Java(TM)I/O方法的文件I/O的程序。该I/O程序例如对于来自BD-J应用程序的向持久区域写入的基准值的访问请求,进行向请求访问的BD-J应用程序返回已写入持久区域的基准值的处理。以后,对这些构成要素进行说明。另外,准确地讲,再生装置102的软件构成存在有用于HDMV模式的HDMV模块、用于切换BD-J模式、HDMV模式的模块管理器。然而这些构成要素并不是本申请的着重点,因此省略该说明。
(虚拟文件系统23)
虚拟文件系统23是将本地储存器中所存储的下载内容与BD-ROM中的盘内容一起使用的虚拟的文件系统。在此,本地储存器中所存储的下载内容包括图2所示的Clip信息、播放列表信息。即使该下载内容中的播放列表信息是BD-ROM以及本地储存器的某一个之中的Clip信息,能够指定的点也与BD-ROM上的播放列表信息不同。在进行该指定时,虚拟文件系统23上的播放列表信息不需要通过全路径来指定BD-ROM、本地储存器中的文件。这是因为BD-ROM上的文件系统、本地储存器上的文件系统是作为1个虚拟的文件系统(虚拟文件系统23)而被认识的。因此,播放列表信息通过指定与存储了Clip信息的文件的文件主体相当的数值,能够指定虚拟文件系统23、BD-ROM上的AV流。通过虚拟文件系统23读出本地储存器的记录内容,并与BD-ROM的记录内容动态组合,从而能够实现再生的多样性。由于由本地储存器和BD-ROM组合而成的盘内容与BD-ROM中的盘内容同等地使用,因此本申请中的”BD-ROM”也包括由本地储存器+BD-ROM组合而成的虚拟的记录媒体。
(访问控制机构24)
访问控制机构24进行强制控制,以使只有具有合法权限的BD-J应用程序(被称为Signed应用程序)才能够访问本地储存器的应用程序数据区域。通过这样的强制控制,只有具有有效的数字信用证书的BD-J应用程序才能够访问应用程序数据区域中的基准值。
具体地讲,在使用了用于访问本地储存器的应用程序数据区域的固定文件路径而进行的读出被请求时,对请求该读出的BD-J应用程序的数字信用证书进行访问权限的检验。而且,若认定为有访问权限,则通过例如虚拟文件系统23中的用于文件I/O的API(JavaI/O方法))来进行使用了固定文件路径的文件访问,从应用程序数据区域读出所希望的数据,并交给服务应用程序。
(再生引擎25)
再生引擎25执行AV再生函数。再生装置102的AV再生函数是从DVD播放器、CD播放器继承的传统的功能群,包括再生开始(Play)、再生停止(Stop)、暂停(Pause On)、暂停的解除(Pause Off)、Still功能的解除(still off)、带速度指定的快进(Forward Play(speed))、带速度指定的快退(Backward Play(speed))、音声切换(Audio Change),副影像切换(Subtitle Change),角度切换(Angle Change)这样的功能。为了实现AV再生函数,再生引擎25控制解码器,以使其对从缓冲器上读出的AV流中的与所希望的时刻相当的部分进行解码。通过从所希望的时刻开始进行解码,从而能够在AV流中的任意的时间点进行再生。
(再生控制引擎26)
再生控制引擎26执行对播放列表信息的再生控制函数(i)、再生装置102的状态取得/设定函数(ii)的功能。对播放列表信息的再生控制函数是按照当前播放列表信息以及Clip信息使再生引擎25执行AV再生函数中的再生开始、再生停止。这些功能(i)~(ii)根据来自上位层的API调用而被执行。以上的再生引擎25与再生控制引擎的组合被称为“AV再生程序库”,作为AV再生专用的程序库而安装在再生装置102中。
(BD-J模块27)
BD-J模块27是Java(TM)平台,由Java(TM)虚拟机、配置(configuration)、框架(profile)构成。其中的Java(TM)虚拟机是对构成类文件的实例的字节码进行解释执行的解释器(interpreter),将字节码翻译成本地代码,并使MPU16执行该本地代码。该解释器是直接影响BD-J应用程序的执行速度的重要的部分,就具体的安装而言,可以安装具备JIT编译器的解释器,所述JIT编译器将字节码变换为本地代码。由于具备这样的JIT编译器,能够实现解释执行的高速化。此外,解释器的一部分可使用硬件来进行安装。
(系统应用程序28)
系统应用程序28是通过类文件来定义的系统程序,配置在RAM15的堆内存中。系统应用程序28的类型包括将存储在类文件中的面向对象语言的结构体变换为字节码,并装载在堆内存上的“类装载器”、“应用程序管理器”、进行应该向应用程序输出的事件处理的“用户事件管理器”、“基准值设定部”等。
以上是对系统应用程序28进行的说明。接着,对基准值进行详细说明。
<基准值>
图8(a)的文本文件中存储有关于例如再生装置102中所组装的硬件以及固件22的基准值。基准值是表示向再生装置中组装的硬件、固件的性能的指标,基准测试是用于计算或测定上述的指标的试验。基准测试程序是用于执行基准测试的程序。对于本实施方式的再生装置102的基准测试是在再生装置102出厂前,生产厂家在再生装置102上执行基准测试应用程序29来进行的。固件22中编入的文本文件是基于例如官方的应用程序的基准测试的结果,该结果作为“基准值”被写入文本文件中。此时,还编入了基准值的数字证书、发行用于计算基准值而使用的基准测试程序的组织ID、基准测试程序的应用程序ID。
编入的基准值例如是这些固件22从对硬件请求处理开始直到处理结束并返回响应为止的周转时间(turnaround time),在首次执行固件22时,以应用程序数据区域的固定的路径来存储基准值。该固定路径是例如图14所示的ADA-CertID-OrganizationID-ApplicationID这样组合的固定文件路径。CertID、OrganizationID、ApplicationID是能够分别从对基准值的数字信用证书、发行用于计算基准值而使用的基准测试程序的组织的组织ID、基准测试程序的应用程序ID确定出的信息。在经过例如是否被篡改的检验、上述的数字信用证书的证书的合法性的检验之后,通过固定文件路径来特定基准值。例如通过由上述的数字信用证书确定的提供者根证书所对应的根证书(例如保持在再生装置内)的CertID、上述的组织的组织ID、基准测试程序的应用程序ID的组合的固定文件路径来确定固定文件路径。因此,即使在固件22被更新的情况下,固定文件路径也不变。此外,若固件22不被更新,则基准值不变。若固件22被更新,则新测试结果的基准值被写入应用程序数据区域。
生产厂家在再生装置102出厂前,在向再生装置102中编入了固件22的状态下执行基准测试。将作为该结果的基准值编入固件22中。此外,编入固件22中的基准值被写入应用程序数据区域。另外,例如在用户住宅中再生装置102更新了固件22的情况下,被更新的固件22在首次被执行时,将编入固件22中的基准值存储至应用程序数据区域所指定的位置(location)。该情况下,位置是以图6所示的ADA-CertID-OrganizationID-ApplicationID的固定文件路径来确定的应用程序数据区域。
基于成为基准测试的对象的固件22的硬件处理例如包括:
a)JPEG、PNG等的压缩图像数据的展开,向内存的装载,音频数据向内存的装载,字体数据的装载,
b)AV再生,AV流的切换,字幕、音声等的切换,
c)浮动小数点、三角函数等的运算,矩形图像描画(有α合成、无α合成),图像扩大缩小,多角形描画,子画面(sprite)描画,字符串描画等。
将这些个别实施的功能同时复合实施的情况下的时间也是基准测试的对象。
这些处理作为基准测试的对象已被正式认定,能够通过识别信息唯一地对这些处理进行指示。在成为基准测试的对象的处理与能够利用的API方法相对应的情况下,可以将该API方法的函数名作为识别信息来使用。
以这样的处理为对象的基准测试的结果,作为基准值而被编入固件22中。包括:
1)从请求JPEG、PNG等的压缩图像数据的展开开始、直到处理结束为止的周转时间,
2)从请求向内存装载开始、直到处理结束为止的周转时间,从请求向内存的装载(loading)开始、直到处理结束为止的周转时间
3)从请求AV再生到实际再生的周转时间,
4)从请求AV流的切换开始、直到处理结束为止的周转时间,
5)从请求字幕、音声等的切换开始、直到处理结束为止的周转时间,
6)从请求浮动小数点、三角函数等的运算开始、直到运算结束为止的周转时间,
7)从请求矩形图像描画开始、直到处理结束为止的周转时间,
8)从请求图像扩大缩小、多角形描画、子画面描画、字符串描画等开始、直到描画结束为止的周转时间。
这些被编入的基准测试的结果是表示在例如再生装置102向用户提示如图5(b)所示的合成影像的情况下再生装置102所消耗的负荷为何种程度的指标,所述合成影像是在BD-J模式下将人物动画的显示和动画再生组合起来的影像,根据该指标,能够动态切换例如图6所示的人物动画的处理负荷。
接着,对基准值的构成进行说明。
基准值例如将用于识别已变为基准测试的对象的处理的识别信息和周转时间的测定值对应起来而构成。编入固件的文本文件是列表形式,例如罗列了处理的识别信息和周转时间的测定值的组合,通过使用识别信息,能够得到任意的处理的周转时间。
若这些识别信息被官方认定,则在读出存储了基准值的文本文件时,服务应用程序能够将处理识别信息作为参数来请求文本文件的读出。通过这样,能够将文本文件内的多个基准值中的与该参数对应的基准值交给服务应用程序。
周转时间优选以45KHz的时间精度来表示。这是由于,构成AV流的各个PES包被附加了PTS(Presentation Time Stamp)、DTS(Decode TimeStamp),在再生装置102的内部存在有以1/45,000秒的时间精度进行动作的STC(System Time Clock)。若以这样的STC的时间精度来生成基准值,则能够精密地执行AV流的再生处理的同步。另外,播放列表信息的In_Time、Out_Time是以该45KHz的时间精度来确定的,因此服务应用程序更方便使处理负荷与基于播放列表信息的再生同步变化。
在再生装置102的开发环境中,在固件22完成时,生产厂家将这些基准值编入固件22。下面说明基准值是怎样获得的。
图9是表示再生装置102的开发环境的图。在该开发环境中,再生装置102通过LAN与开发用计算机105连接。此外,固件22中记录有除基准值之外的固件22,即,构成固件22的执行格式文件、类文件。由于完全具备了这些文件,本图的再生装置102具备与提供给用户的作为制品的装置相同的性能。而且,通过LAN从开发用计算机105向这样的再生装置102提供基准测试应用程序29。
开发用计算机105安装了IDE、ADK的软件,将连通了LAN的固件的开发环境提供给用户。IDE(Integrated Development Environment)由用于构筑系统应用程序的编译器等构成。
ADK(Application Devlopment Kit)是通过利用JPDA(Java PlatformDebugger Architecture)的结构来实现系统应用程序的调试的开发环境。
再生装置102和计算机105之间的信息收发是通过连接再生装置102和PC的串口及Socket来进行的。Socket是位于IEEE802.3(Ethernet)、IP、TCP/UDP上的会话层的通信路,系统应用程序由于网络模型采用了IEEE802.3(Ethernet)、IP、TCP/UDP,因此显然调试时的传送路采用了这样的Socket。
图10是解说如何获得文本文件中所存储的基准值的图。本图示意性地示出了在再生装置102出厂前固件22的制作过程的一例。
本图是以图8(b)为基础而制作的,与作为该基础的层模型相比,不同点在于在BD-J模块27上基准测试应用程序29动作,以及再生装置102与计算机105连接。例如从BD-ROM驱动器1、HD驱动器13、卡驱动器14中的某一个读出基准测试应用程序29,并使其在BD-J模块27上动作。另外,计算机105由生产厂家的作业担当者操作。
本图中的U字形的箭头示意性地表示从这样的基准测试应用程序29通过固件对硬件请求处理开始、直到该处理结束并返回响应为止的过程。在再生装置102出厂前,基准测试应用程序29对硬件能够执行的各种功能所需的周转时间进行测定,并将周转时间的测定值导出至与外部连接的计算机105。计算机105将这样导出的测定值积累在硬盘上的数据库中,从而形成由多个测定值构成的文本文件。若关于一系列的功能的基准测定结束、测定值的积累结束,则使这样得到的文本文件与构成固件22的执行格式文件、类文件一体化,从而得到固件22。
如上所述,通过进行周转时间的测定和作为该测定结果的基准值的编入,再生装置102的固件22得以完成。
存储有基准值的文本文件与构成固件22的执行格式文件以及类文件是一体的,这些文本文件、执行格式文件、类文件例如被整理为1个文件,并存储在ZIP文件等中。在启动时,存储有基准值的文本文件与执行格式文件以及类文件一起被从固件22中读入RAM15,被配置在RAM15的常驻区域,并被映射在MPU16的内存空间中。由于存储有基准值的文本文件与执行格式文件以及类文件是一体的,因此将这样的基准值的状态称为“已编入固件22”。
以上对生产厂家所进行的基准测试进行了说明。
(固件22的更新)
接着,对用户如何进行固件22的更新进行说明。
作为用于存储新的固件22的可移动存储媒体,例如可以利用SD存储卡、CD-R。
在生产厂家所运营的WWW服务器的WWW网站,即生产厂家的官方的WWW网站上,公布了关于再生装置102的固件22的错误报告、最新的更新状况。在再生装置102与网络连接的情况下,再生装置102总是监视着更新状况,若公布了固件22更新,则再生装置102通过网络下载存储有新的固件22的ZIP文件,并将其写入可移动存储媒体中。如上所述,由于构成固件22的执行格式文件、类文件等与文本文件一起被存储在ZIP文件中,因此,将存储有新的固件22的ZIP文件下载并写入可移动存储媒体中,就完成了固件22更新的准备。
在再生装置102没有与网络连接而处于单机使用的情况下,用户所持的个人电脑取代再生装置102,对再生装置102的固件22的最新的更新状况进行监视。只要将例如再生装置102所付属的软件包安装到个人电脑中,该个人电脑就会自动进行这样的监视。若存在固件22更新的公布,则安装了该软件包的个人电脑通过网络对存储有新的固件22的ZIP文件进行下载,并将其写入自身的硬盘。
这样,通过将存储有新的固件22的ZIP文件写入可移动存储媒体,就完成了固件22更新的准备。存储有新的固件22的ZIP文件将特殊的文字和/或数字(幻数:magic number)作为文件名,能够与其他的文件区别开。这样,在记录了具有幻数的文件的可移动存储媒体被放入再生装置102的情况下,再生装置102进行固件22的更新。以上是对用户进行固件22的更新的说明。
<引导装载程序21>
接着,对再生装置102的软件的构成要素即引导装载程序21进行说明。
图11是表示引导装载程序21、系统应用程序28的内部构成的图。
图11(a)示出了引导装载程序21的内部构成。如本图所示,引导装载程序21由固件启动部31、固件更新部32构成。此外,作为共同使用这些构成要素的系统控制的变量,在闪存18存在如图11(b)所示的“表示首次执行的标志位”。若该标志位被设定为“0”,则表示固件22未执行。此外,若被设定为“1”,则表示固件22的首次执行已结束,但向应用程序数据区域的基准值的写入还未完成。
被设定为“2”表示固件22的首次执行和向应用程序数据区域的基准值的写入都已完成。
(固件启动部31)
固件启动部31是能够在MPU16的特权模式下动作的程序中的一个,在按下本装置的电源开关,电源从电源单元供给至MPU16、设备,从而启动了这些硬件时,向内存(例如图7所示的RAM15中的固件的常驻区域)装载被存储在闪存18中的固件22,以供MPU16执行。在进行该装载时,通过判断标志位的值是否为“0”来判断固件22的执行是否是首次执行,若是首次执行,则将标志位设为“1”。该固件22的首次执行包括在生产厂家完成固件后,由生产厂家进行的固件22的首次执行,以及在用户更新了固件的情况下的更新后的固件22的首次执行。
图12是示意性地表示固件启动部31进行怎样的处理、固件22经由怎样的路线被供给MPU16的图。箭头(2-a)是固件启动部31的读出指示,箭头(2-b)表示根据该读出指示,从闪存18向MPU16供给固件22。箭头(2-c)适应性地表示固件启动部31对标志位的更新(0→1)。
(固件更新部32)
固件更新部32是能够在MPU16的特权模式下动作的程序中的一个,在按下本装置的电源开关,电源从电源单元供给至MPU16、设备,从而启动了这些硬件时,判断是否放入了记录有新的固件22的可移动存储媒体。而且,在放入了可移动存储媒体的情况下,检验该可移动存储媒体中是否存在将幻数作为文件名的文件。该幻数是表示该可移动存储媒体中存在更新后的固件22的特殊的编号,若可移动存储媒体中存在具有该幻数的文件,则从该可移动存储媒体中读出新的固件22,并对固件22上的旧的固件22进行改写。在这样的改写之后,标志位更新为“0”。
图12是用箭头示意性地表示固件更新部32所进行的指示、数据的往返的图。箭头(1-a)是带幻数的新的固件22的读出,箭头(1-b)示意性的示出使用了新的固件22的改写。箭头(1-c)示意性地示出固件更新部32对标志位的更新(1→0)。
以上是对引导装载程序21进行的说明。下面,返回图11(c),对系统应用程序28进行详细说明。在图11(c)的系统应用程序28中描述了应用程序管理器33、基准值设定部34。另外,由于对系统应用程序28的构成要素中的类装载器、用户事件管理器已经进行了说明,在此省略该说明。
(应用程序管理器33)
应用程序管理器33根据BD-J对象中的应用程序管理表(AMT),执行“应用程序信令”。具体地讲,在再生装置102中发生对成为再生对象的标题进行切换的情况下,参照与新的标题对应的BD-J对象内的应用程序管理表,判断以该新的标题为生存区间的BD-J应用程序是哪个。然后,使类装载器对被判断为BD-J应用程序进行装载。作为本实施方式特有的处理,在向再生装置102中放入BD-ROM而再生装置102被启动时,基准值设定部34被用于BD-J模块27的执行。
(基准值设定部34)
与初始化部对应的基准值设定部34是能够在MPU16的特权模式下动作的程序中的1个,判断标志位是否为“0”,标志位用于表示固件是否是首次执行,若标志位为“0”,则从闪存18的固件22读出基准值,并将其写入应用程序数据区域。
图13是示意性地表示闪存18中的基准值经过怎样的路线被提供给基准值设定部34的图。箭头(3-a)是标志位的供给路线,该标志位的设定值被提供给基准值设定部34,用于判断固件22的执行是否是首次执行,以及应用程序数据区域中是否写入了基准值。
箭头(3-b)象征性地示出了基准值从闪存18到基准值设定部34的供给路线。通过发行仅在MPU的特权模式下能够执行的特殊的Read指令(Read请求),从而从闪存18读出该基准值,并将其交给基准值设定部34。
箭头(3-c)象征性地示出基准值从基准值设定部34向持久区域(更具体地讲,应用程序数据区域)的供给路线。使用ADA-CertID-OrganizationID-ApplicationID这样组合的固定文件路径的Write请求,将该基准值写入应用程序数据区域。服务应用程序的Write请求的发行是通过调用用于文件读出的API方法来实现的。Write请求的访问目的地使用固定文件路径来确定。
如上所述,基准值以编入固件22的方式被提供给再生装置102,在固件22首次执行时,被存储在应用程序数据区域中。
在CertID是“0g1a24ed”、OrganizationID是“4”、ApplicationID是“5”的情况下,以图14所示的目录及文件构成来存储基准值。图14是表示CertID例如是“0g1a24ed”、OrganizationID例如是“4”、ApplicationID例如是“5”的情况下的目录及文件构成的一例的图。
该“4”这个OrganizationID是表示推进BD再生装置102的标准化的组织的一例的识别符,“5”这个ApplicationID是表示基准测试应用程序29的一例的识别符,在该情况下,通过由这些组织的识别符和基准测试应用程序29的识别符组合而成的文件路径来读出基准值。
下面说明对该应用程序数据区域的访问。
图15是表示经过怎样的路线将应用程序数据区域中的基准值交给服务应用程序的图。
箭头(5-a)是服务应用程序发出的Read请求的供给路线。通过调用用于文件读出的API方法来使服务应用程序发行Read请求。使用固定文件路径来确定Read请求的访问目的地。使用了固定文件路径的Read请求被交给访问控制机构24,该Read请求用于访问控制机构24所进行的权限检验。
箭头(5-b)象征性地表示数字信用证书从服务应用程序向访问控制机构24的供给路线。该数字信用证书被交给访问控制机构24。
箭头(5-c)象征性地表示基准值从应用程序数据区域向服务应用程序的供给路线。若认定了服务应用程序具备合法权限,则按照READ请求,系统应用程序28进行对本地储存器的持久区域的访问,其结果,如箭头(5-d)所示,基准值被交给服务应用程序。
以上是对系统应用程序28的构成要素进行的说明。接着,对固件更新部32、固件启动部31所进行的处理顺序进行详细说明。
图16(a)是表示固件更新部32的处理顺序的流程图。步骤S1是监视是否放入了可移动存储媒体,若放入了可移动存储媒体,则移至步骤S2。步骤S2是判断是否存在具有幻数的文件。若不存在具有幻数的文件,则不进行任何的处理,结束本流程图的处理。若存在具有幻数的文件,则在步骤S3中从可移动存储媒体读出固件22,对闪存18中的旧的固件22进行改写。然后,在步骤S4中,将闪存18中的标志位设为“0”。
图16(b)是表示固件启动部31的处理顺序的流程图。如投入电源,则MPU16发生复位中断,MPU16中的程序计数器被设定复位矢量,并执行初始化程序。由此,MPU16被设定为动作模式,MPU16内的各种寄存器被初始化。接着,时钟、总线、内存等被初始化。MPU16侧的初始化结束后,开始程序的初始化,处理移至固件启动部31。步骤S5判断标志位是否为“0”,根据判断结果,进行执行步骤S6或者跳过步骤S6的控制。若标志位为“0”,则在步骤S6中将标志位设定为“1”。由此,标志位表示闪存18中的固件22是首次执行的状态。
然后,进行MPU16的初始化(步骤S7),再进行基本设备的初始化(步骤S8),将固件22从闪存18转送至RAM15(步骤S9)。最后,对固件22进行初始化并启动固件22(步骤S10)。
图17是表示基准值设定部34的处理顺序的流程图。在本流程图中,首先从固件22读出标志位(步骤S11),执行步骤S12的判断步骤。步骤S12是判断标志位是否为“1”的步骤,若标志位为“1”则执行步骤S13~步骤S15的处理。若标志位不是“1”,则执行步骤S16、步骤S17。
步骤S13~步骤S15的处理顺序是,从固件22读出存储有基准值的文本文件(步骤S13),这样,使用ADA-CertID-OrganizationID-ApplicationID这个组合的固定文件路径将读出的文本文件写入应用程序数据区域(步骤S14)。然后,将标志位设定为“2”(步骤S15)。
步骤S16、步骤S17的处理顺序是,使用文件路径来检验是否存在基准值(步骤S17),若存在基准值则结束处理,若不存在基准值,则从固件22读出基准值,并将其写入应用程序数据区域(步骤S13~步骤S15)。
如上所述,根据本实施方式,由于基准值被编入固件22中,在固件22首次执行时,基准值被写入应用程序数据区域,因此,BD-J应用程序仅访问应用程序数据区域就能够执行与硬件的性能相对应的处理负荷的变更。
由于基准值被编入固件22中,因此,即使固件22进行不定期的更新,与最新的固件22对应的基准值也会被供给至再生装置102。
(第2实施方式)
在本实施方式中,具体地公开了访问控制机构24怎样进行访问权限的检验。该访问权限的检验是以数字信用证书为对象的检验。
根据基准测试程序(或基准值)或者数字信用证书的供应者(经销商:distributor),向作为数字信用证书的请求方的内容作者(应用程序的制作者)提供数字信用证书。该提供过程中,以下所示的配送操作是必须的。
(A)经销商为了制作数字信用证书而使用公开密匙。
(B)内容作者向经销商请求一起提供公开密匙和数字信用证书。此时,内容作者向经销商提供已证明的散列值。
(C)经销商使用所提供的散列值,制作数字信用证书。
经过这样的过程,经销商能够获得有效的数字信用证书。具有了有效的数字信用证书的BD-J应用程序能够访问应用程序数据区域的基准值。然而,不具有有效的数字信用证书的BD-J应用程序不能够访问应用程序数据区域的基准值。
该数字信用证书以被编入归档文件中的方式记录在BD-ROM中,并被提供给再生装置102。在功能段(functional segment)的验证中,除上述的数字信用证书之外,图2所示的BD.ROOT.CERTIFICATE(盘根证书)和归档文件中存在的其他的文件也是必要的。下面,对归档文件的内部构成进行说明。
Java(TM)归档文件(XXX.JAR)以目录构造的形式存储了多个文件。图18(a)是表示Java(TM)归档文件的内部构成的一例的图。该构造是在根目录下有XXXX.class,在META-INF目录下有文件MANIFEST.MF、文件SIG-BD.SF、文件SIG-BD.RSA、文件bd.XXXX.perm。下面,分别对这些文件进行说明。
(i)XXXX.class:类文件
类文件存储有使用Java语言等面向对象语言来描述的类结构。
(ii)MANIFEST.MF:宣言文件
宣言文件与数字证书相对应,是记载了Java(TM)归档文件的属性以及Java(TM)归档文件内的类文件、数据文件的散列值的文件。Java(TM)归档文件的属性中包括:作为类文件的实例的BD-J应用程序被附加的应用程序ID;以及用于执行Java(TM)归档文件而应该首次执行的类文件名。在不存在上述的两个Java(TM)归档文件的属性的情况下,不执行Java(TM)归档文件中的类文件的实例即BD-J应用程序。
(iii)SIG-BD.SF:签名文件,
SIG-BD.SF是记载了宣言(manifesto)文件的散列(hash)值的文件。
(iv)SIG-BD.RSA:数字签名文件
SIG-BD.RSA是记载了“数字证书链”、SIG-BD.SF的“签名信息”的文件。
SIG-BD.SF的“签名信息”通过对SIG-BD.SF进行签名处理而得到的。在这些签名处理中,使用了与SIG-BD.RSA内的数字证书链的公开密匙相对应的秘密密匙。
“数字证书链”是指具有第一个证书(根证书:root certificate)对第二个证书进行签名,或者同样地,第n个证书对第n+1个证书进行签名的形式的多个证书群。数字证书链的最后的证书称为“叶证书(leafcertificate)”。通过利用该构成,由于从根证书开始依次保证下一个证书,因此能够一直保证到数字证书链的最后的证书。
“根证书”存储有与BD.ROOT.CERTIFICATE文件中存在的盘根证书301相同的证书。
“叶证书”中记载有组织ID。SIG-BD.SF以PKCS#7的格式存储。PKCS#7是用于存储签名以及一个以上的数字证书的文件格式,记载在由IETF(Internet Engineering Task Force)发行的RFC2315中。RFC2315可以参照http://www.ietf.org/rfc/rfc2315.txt的内容。
通常,该数字证书链是1个,在存在后述的权限的提供的情况下,制作2个该数字证书链。这2个数字证书链被称为第1数字证书链和第2数字证书链。第1数字证书链的根证书表示接受权限提供的一侧的组织的盘根证书,叶证书表示接受权限提供的一侧的组织的组织ID。第2数字证书链的根证书表示提供权限的一侧的组织的盘根证书,叶证书表示提供权限的一侧的组织的组织ID。另一方面,在不存在权限的提供的情况下,数字证书链仅有1个(第1数字证书链)。
宣言文件、SIG-BD.SF、SIG-BD.RSA的详细内容记载在Java(TM)归档文件的规格中。在进行签名处理以及签名验证处理时利用宣言文件、SIG-BD.SF、SIG-BD.RSA。最终能够利用数字证书对Java(TM)归档文件中的类文件的实例即BD-J应用程序或许可申请(permission request)文件405进行签名。下面,将宣言文件、SIG-BD.SF、SIG-BD.RSA统称为“数字证书的签名”。
(v)bd.XXXX.perm:许可申请文件
bd.XXXX.perm是存储向被执行的BD-J应用程序提供哪种许可的信息的文件。具体地讲存储以下的信息。
(A)数字信用证书(Credential)
下面,对数字信用证书进行说明。“数字信用证书”是指使归属于某组织的组织目录内的文件共享化的信息。该共享化是通过将利用某组织所属的应用程序用文件的权限提供给其他的组织所属的应用程序来实现的。因此,数字信用证书包括表示提供权限一侧的组织的提供者组织ID,以及表示接受权限一侧的组织的识别的接受者组织ID。
图18(b)示出了数字信用证书的数据构造的一例。数字信用证书包括:从根认证局向提供者组织发布的根证书的散列值51;向提供者组织分配的提供者组织ID52;从根认证局向接受者发布的接受者根证书的散列值53;向接受者组织分配的接受者组织ID54;接受者应用程序ID55;以及提供文件列表56。提供文件列表56中存储有一个以上的提供文件名57和访问方法58(可读取、可写入)的信息。为了使数字信用证书有效,必须进行签名。数字信用证书的签名可以利用与SIG-BD.RSA相同的PKCS#7的方式。
图18(c)是表示数字信用证书的一个具体例的图。本图中的数字信用证书提供了对文件“4/5/scores.txt”的读取许可和对文件“4/5/score2.txt”的读取写入许可。
接着,对(B)应用程序间通信的许可信息进行说明。一个Java(TM)归档文件所包含的BD-J应用程序通常不允许与其他的Java(TM)归档文件中所包含的BD-J应用程序之间进行通信(应用程序间通信)。只有在向bd.XXXX.perm提供了应用程序间通信的许可的情况下,才能够进行应用程序间通信。
为了使数字信用证书有效而必须签名,数字信用证书的签名可以利用PKCS#7的方式。PKCS#7是存储签名以及一个以上的数字证书的文件格式,记载了由IETF(Internet Engineering Task Force)发行的RFC2315。关于RFC2315可以参照http://www.ietf.org/rfc/rfc2315.txt的内容。这样的签名的结果作为提供者根证书的散列值而存储在SIG-BD.SF中。
以上是对bd.XXXX.perm的说明。接着,对根证书进行更详细的说明。
图19是表示在不存在权限提供的情况下的SIG-BD.SF、BD.ROOT.CERTIFICATE的相互关系的图。本图中的箭头d1表示这些文件的内部构成的信息要素中的具有同一性的要素。在不存在权限提供的情况下,BD.ROOT.CERTIFICATE内的根证书(盘根证书)是与SIG-BD.RSA中的第1数字证书链内的根证书具有同一性的证书。
MANIFEST.MF包含通过对类文件XXXX.class进行签名处理而得到的散列值,SIG-BD.SF包含通过对MANIFEST.MF进行签名处理而得到的散列值,SIG-BD.RSA包含通过对SIG-BD.SF进行签名处理而得到的散列值(箭头h1),因此,通过确认这些散列值是否正确并判断这些散列值的同一性,再生装置102能够判断Java(TM)归档文件是合法的文件还是被篡改过的文件。此外,由于假定为不存在权限提供的情况,本图中没有示出bd.XXXX.perm。
图20是表示在存在权限提供的情况下的SIG-BD.SF、BD.ROOT.CERTIFICATE、bd.XXXX.perm的相互关系的图。本图中的箭头d1~d6示出了这些文件的内部构成的信息要素中的具有同一性的要素。在存在权限的提供的情况下,BD.ROOT.CERTIFICATE内的根证书(盘根证书)与SIG-BD.RSA中的第1数字证书链内的根证书具有同一性(箭头d1)。另一方面,若存在权限提供,则BD.ROOT.CERTIFICATE内的盘根证书变为属于接受者的盘根证书,bd.XXXX.perm中的数字信用证书的接受者根证书与BD.ROOT.CERTIFICATE内的根证书具有同一性(箭头d2)。此外,数字信用证书中的接受者组织ID与第1数字证书链中的叶的组织ID具有同一性(箭头d3)。
bd.XXXX.perm中的数字信用证书的提供者组织的根证书与SIG-BD.SF内的第2数字证书链中的根证书具有同一性(箭头d4)。此外,数字信用证书中的提供者组织ID与SIG-BD.SF的第2数字证书链中的叶的组织ID具有同一性(箭头d5)。数字信用证书中的接受者应用程序ID与bd.XXXX.perm中的存在于数字信用证书以外的部分的应用程序ID具有同一性(箭头d6)。
MANIFEST.MF包含根据类文件XXXX.class计算出的散列值,SIG-BD.SF包含根据MANIFEST.MF计算出的散列值,SIG-BD.RSA包含从SIG-BD.SF取得的散列值(箭头h1),因此,通过确认这些签名是否正确并判断这些散列值的同一性,再生装置102能够判断出Java(TM)归档文件是合法的文件还是被篡改过的文件。应该注意到,在本实施方式中,根证书的同一性是对各个根证书计算出的散列值进行比较,判断这些散列值是否一致。此外,散列值的计算只要执行一次即可,一般将计算出的散列值存储在内存等中进行利用。根据根证书计算散列值、取出被存储在内存中的散列值被称为散列值的“取得”。
图21是表示BD-J应用程序访问应用程序数据区域的情况的处理顺序的流程图。
步骤S21对是否存在使用了ADA-CertID-OrganizationID-ApplicationID这个组合的固定文件路径的访问请求进行判断,若存在该访问请求,执行步骤S22~步骤S25。若不存在该访问请求,则按照未使用ADA-CertID-OrganizationID-ApplicationID这个组合的固定文件路径的访问请求进行处理。步骤S22~步骤S25从请求方的BD-J应用程序的归档文件中取出数字信用证书(步骤S22),使用数字信用证书来检验请求方的服务应用程序的访问权限,判断验证是否成功(步骤S24)。若验证成功,则经由虚拟文件系统23的文件I/O,读出成为请求对象的文本文件,并将其交给请求方BD-J应用程序(步骤S25)。若验证失败,则不允许请求方BD-J应用程序经由虚拟文件系统23中的文件I/O读出成为请求对象的文本文件,该处理例外结束。
上述的构成是对是否请求了使用ADA-CertID-OrganizationID-ApplicationID这个组合的固定文件路径的访问进行判断,也可以例如对是否请求了使用OrganizationID-ApplicationID这个组合的固定文件路径的访问进行判断,在验证成功的情况下,虚拟文件系统23中的文件I/O使用根据数字信用证书确定提供者根证书的证书ID来确定CertID,使用所确定的CertID和上述的OrganizationID-ApplicationID,将与ADA-CertID-OrganizationID-ApplicationID这个组合的固定文件路径相对应的文本文件交给请求方BD-J应用程序。
根据这样的构成,在抑制应用程序对成为请求对象的文本文件的访问的同时,还能够提高证书ID(以及证书ID的提供者根证书或叶证书)的机密性。
图22是表示使用了数字信用证书的权限检验的处理顺序的流程图。在本流程图中,对将要访问的服务应用程序依次执行步骤S31~步骤S37的判断,若某个判断步骤的判断结果是“否(“No”)”,则将验证结果认定为验证失败。
下面,说明在步骤S31~步骤S37中验证的内容是怎样的验证内容。
步骤S31对数字信用证书中的接受者根证书的散列值和BD-ROM中的BD.ROOT.CERTIFICATE内的盘根证书是否一致进行确认。
步骤S32对数字信用证书中的接受者组织ID和在以盘根证书为根的链的叶证书中描述的组织ID是否一致进行确认。
步骤S33对数字信用证书中的接受者应用程序ID和服务应用程序的应用程序ID是否一致进行确认。
步骤S34对位于确定提供文件的文件路径的开头的目录名与提供者组织ID是否一致进行确认。
步骤S35对数字信用证书中所包含的签名,即,提供者根证书的散列值是否正确进行确认。该确认试着计算出数字信用证书的散列值,并判断这样计算出的散列值与数字信用证书内的提供者根证书的散列值是否一致。
步骤S36对数字信用证书的签名即SIG-BD.SF中的根证书的散列值与数字信用证书内描述的提供者根证书的散列值是否一致进行确认。
步骤S37对数字信用证书的签名,即,SIG-BD.SF中的叶证书的组织ID与数字信用证书内描述的提供者组织ID是否一致进行判断。
若以上的步骤S31~步骤S37的结果都是“是(“Yes”)”,则验证成功。
经过以上的判断,在数字信用证书的验证成功的情况下,允许进行了访问请求的服务应用程序对应用程序数据区域中记录的基准值进行访问,该访问是在数字信用证书的提供访问方法中描述的访问。
图14的数字信用证书允许对保持4/5/scores.txt、4/5/scores2.txt这2种的基准值的文件进行访问,允许对4/5/scores.txt仅进行读取,允许对4/5/scores2.txt进行读写。
这样,对经数字信用证书验证后的服务应用程序不仅可以读取,还可以写入,利用服务应用程序,执行不会产生用户等待的程度的基准测试,该分数可以被具有数字信用证书的服务应用程序间所共有。
(第3实施方式)
在第1实施方式中,读出被编入固件22中的基准值,并将其写入应用程序数据区域,但在本实施方式中,不仅将编入固件22的基准值复制到本地储存器中的应用程序数据区域,基准测试应用程序29在该固件22启动时将基准值展开到内存(例如图7所示的RAM15)中。
该展开例如如下这样进行。即,基准测试应用程序29使用堆区(heaparea)管理功能,在内存的空区域中确保堆内存,向这样确保的堆内存中写入基准值。下面,通过应用程序间通信向其他的服务应用程序通知基准值已被写入这一情况,使其他的服务应用程序利用在堆内存中存在的基准值。
图23是示意性地表示第3实施方式中基准值的往返的图。(6-a)示意性地表示在再生装置102启动时,从闪存18向RAM15的堆内存读出基准值。(6-b)示意性地表示在服务应用程序请求时,从RAM15向服务应用程序读出基准值。
通过这样,能够缩短因向本地储存器的应用程序数据区域复制基准值而产生的延迟时间。此外,在应用程序数据区域由SD存储卡等构成的情况下,能够抑制对SD存储卡写入的次数。
在上述的例子中,例如构成为向图7所示的RAM15的堆内存中写入基准值的构成,但由于固件22中编入了基准值,因此也可以构成为,例如在本装置的电源开关被按下从电源单元向MPU16、设备供给电源,从而启动这些硬件时,在将存储于闪存18中的固件22转载在RAM15的固件的常驻区域中时,也装载基准值的构成。
此外,在上述的例子中,说明了如下构成,即,通过应用程序间通信,向其他的服务应用程序通知基准值已被写入这一情况,使其他的服务应用程序利用在堆内存中存在的基准值。但本发明并不仅限定于此,也可以构成为,在将基准值写入RAM时,制作用于保持与RAM15中写入的位置(例如地址信息)有关的信息的位置管理信息(未图示),在存在从应用程序对基准值的访问的请求时,按照位置管理信息,读出RAM15中的基准值,并交给应用程序。
在该情况下,实现第1实施方式中描述的JavaTMI/O方法的文件I/O程序若从BD-J应用程序接受指定的文件路径,则参照位置管理信息,读入在RAM15上展开的基准值,并将该基准值返给BD-J应用程序。
此外,上述的位置管理信息(未图示)也可以不仅保持与RAM15中的基准值的存储位置有关的信息,还一并保持与原本的存储位置(例如,ADA-CertID-OrganizationID-ApplicationID这个组合的固定文件路径所确定的存储位置)的对应关系。
若这样构成,则即使应用程序指定原本的存储位置(例如,ADA-CertID-OrganizationID-ApplicationID这个组合的固定文件路径所指定的存储位置)并请求基准值的读出,固件22中虚拟文件系统23的文件I/O也能够参照位置管理信息(未图示),并按照位置管理信息来读出闪存18中的基准值,并将其交给请求了所读出的基准值的应用程序。
通过这样,在向本地储存器的写入次数有上限的内存等的情况下,能够抑制向本地储存器的写入,所述本地储存器包含作为原本的存储位置(例如,通过ADA-CertID-OrganizationID-ApplicationID这个组合的固定文件路径来确定的存储位置)的应用程序数据区域。
此外,能够缩短因向本地储存器的应用程序数据区域复制基准值而产生的延迟时间。此外,在作为原本的存储位置的应用程序数据区域由半导体存储卡构成的情况下,能够抑制对半导体存储卡的写入次数。
(第4实施方式)
在第2实施方式中,在通过可移动存储媒体来提供新的固件22的情况下,自动进行了在应用程序数据区域存在的基准值的改写,但在本实施方式中,在进行固件22的更新的情况下,对已经存在于应用程序数据区域的基准值的版本和新的编入固件22中的基准值的版本进行比较,只有在判断为新的RAM15中所编入的基准值更新更新的情况下,将新的固件22内的基准值写入应用程序数据区域。由于基准值以存储于文本文件中的状态被编入固件22,因此可以采用将文本文件的制作或更新日期时间作为基准值的版本的方式。此外,也可以将进行了基准测试的日期时间记录在文本文件中,采用将该日期时间作为基准值的版本的方式。
通过这样,在应用程序数据区域由SD存储卡等构成的情况下,能够抑制对SD存储卡的写入次数。
(第5实施方式)
本实施方式具体公开了,基于基准测试应用程序29而进行的基准测试的处理顺序。图24是表示基于基准测试应用程序29而进行的基准测试的处理顺序的流程图。
本流程图中的步骤S43~步骤S48的处理是循环结构,该循环结构反复执行由第1实施方式所示的硬件进行的各个处理。
执行各硬件处理的API方法的呼出被描述在基准测试应用程序29中,这些API方法的每个呼出都重复执行步骤S43~步骤S48。
将这些应该包括的处理中的成为处理对象的处理作为处理X,将该处理X的形式时间即周转时间称为测定时间X。在步骤S43中,确定处理X,将测定时间X初始化为0。在步骤S44中,进行用于执行处理X的API方法的呼出。具体地讲,对下述各呼出进行呼出,所述各呼出包括用于从BD-ROM、本地储存器向RAM15读出基准值评价用的规定的数据的呼出,用于解码该数据的API方法的呼出,使MPU16对基准值评价用的规定的运算式进行运算的API方法的呼出。
然后,移至步骤S45~步骤S47的循环。步骤S45通过API方法的呼出,判断所请求的处理是否已结束,若未结束则在步骤S46中等待经过周转时间中的单位时间W(步骤S46)。
该单位时间W例如是MPU16执行数百个以上的命令的时钟时间,将基准值的周转时间的时间精度作为基准来规定的。例如,在周转时间的时间精度采用47KHz的情况下,由于MPU16的动作时钟时间变为该周转时间的时间精度的几百分之一以下的值,因此在步骤S46中,等待该周转时间的单位时间的经过。
然后,若经过该单位时间,则通过向测定时间X中加上单位时间来更新测定时间X,并返回至步骤S45。通过反复进行步骤S45~步骤S47,在等待处理X结束为止的期间内,测定时间X以单位时间W为单位逐渐增加。
然后,若处理X结束,并向基准测试应用程序29返回了结束的通知事件,则将到此为止被加上了单位时间W的测定时间X与处理X的识别信息对应起来,并导出至开发用计算机105。开发用计算机105通过罗列处理X的识别信息和测定时间X,得到处理X的基准值。下面,通过反复进行相同的处理,得到罗列了处理X的识别信息和测定时间X的基准值的文本文件。在这样的基准测试中,基准值的时间精度通过单位时间W来决定。
在此,BD-J应用程序的执行主体即Java平台是事件驱动的执行主体,Java平台即使在硬件的处理未结束的情况下,会导致在发出API方法的解读以及向下位层的指示后返回响应。这样,当基准测试应用程序29进行基准测试时,不可能进行正确的时间测定。因此,设置用于基准测试的API方法,在呼出该API方法时,优选在处理结束的正确的时间点返回事件。通过这样,能够更准确地测定周转时间。
如上所述,根据本实施方式,基准测试应用程序29对从进行API方法的呼出开始、直到请求的处理结束为止的时钟时间进行测定,从而能够得到具有一定的时间精度的基准值。
(第6实施方式)
本实施方式是将实时操作系统(实时OS)作为固件22的构成要素的实施方式。实时OS能够预测最差执行时间,适于实现AV再生的实时性。
对作为固件22而被编入的实时OS的构成要素进行说明。实时OS由内核(kernel)、中间件以及设备驱动(device driver)构成。这些内核、中间件以及设备驱动成为固件22的构成要素。
1.内核
内核具有任务调度器,用于执行系统调用处理、启动基于中断信号而进行的中断处理程序(interrupt handler)的中断处理的入口处理、中断处理程序的出口处理。各实施方式中描述的BD-J应用程序在实时OS中被该内核作为“应用程序任务”。应用程序任务中的API方法的呼出在实时操作系统中通过上述那样的系统调用来实现。任务调度器生成顺序任务以供MPU执行。该生成是通过制作应该执行的程序的任务控制块,并将它们提供给等待队列。
若由任务发行了设备输入输出请求的系统调用,则内核在内存池中确保内存块,在该块中制作呼出时所使用的参数块。而且将该参数块的开头地址和记载了设备信息的设备表的地址作为参数,调用设备驱动。
2.中间件
中间件具备用于实现系统调用的API(Application Programing Interface)群,将内核的存在作为前提,实现浏览器、文件系统、影像再生以及音声再生这样的功能。应用程序能够通过该中间件来控制解码器这样的设备。在实时OS中,第1实施方式中所述的虚拟文件系统23、访问控制机构24、再生引擎25、再生控制引擎26、BD-J模块27被配置作为该中间件。
3.设备驱动
设备驱动由“中断处理程序部”、“中断任务部”、“请求处理部”构成。设备驱动被映射至内存空间的系统用区域,在特权模式下动作。
“请求处理部”在将参数块登记到输入输出队列(queue)中后,进行中断许可并将控制交回内核。
“中断处理程序部”若从硬件接收中断信号,则与设备之间进行所请求的输入输出。若预定的输入输出结束,则禁止中断并启动中断任务。若结束,则将控制交回设备驱动。若被请求进行下一个输入输出请求,则再次启动中断处理,继续进行残余的输入输出。
“中断任务”将输入结束状态作为参数,通过系统调用将那个输入输出结束通知给内核。若收到这样的通知,则内核启动依赖方的任务。
在通过系统调用来实现API方法的呼出的情况下,优选基准测试应用程序29对从应用程序任务请求系统调用开始、直到设备执行处理并返回响应为止的周转时间进行计测。而且,生产厂家将该测定值作为基准值编入至固件22中。
如上所述,根据本实施方式,通过实时OS的系统调用来实现对驱动器的访问、AV再生,因此,能够确保实时性。若在该实时OS中基准测试应用程序29进行基准值的测定,则基准值是保证AV再生的实时性的准确值。
(第7实施方式)
说明了在按下本装置的电源开关而从电源单元向MPU16、设备供给电源,从而启动这些硬件时,将闪存中所存储的固件22装载到内存(例如图7所示的RAM15中的固件的常驻区域)中,以使得MPU16来执行固件22,当然也不需要仅限定于此,也可以构成为,MPU16直接读入闪存18中所存储的固件22。
此时,也可以构成为,通过应用程序间通信,将在存储于闪存18中的固件22中编入的基准值通知给其他的服务应用程序,使其他的服务应用程序利用在闪存18中存在的基准值。
此外,也可以构成为,制作位置管理信息(未图示),该位置管理信息包含与闪存18中的存储位置(例如地址信息)有关的信息,在从应用程序请求对基准值进行访问时,按照位置管理信息,读出闪存18中的基准值,并交给应用程序。
此外,上述的位置管理信息(未图示)不仅是与闪存18中的基准值的存储位置有关的信息,也可以一并保持与原本的存储位置(例如,通过ADA-CertID-OrganizationID-ApplicationID这个组合的固定文件路径来确定的存储位置)的对应关系。
根据这样的构成,即使应用程序指定原本的存储位置(例如,通过ADA-CertID-OrganizationID-ApplicationID这个组合的固定文件路径来确定的存储位置)并请求读出基准值,固件22中的虚拟文件系统23的文件I/O也能够参照位置管理信息(未图示),按照位置管理信息读出在闪存18中的基准值,并将基准值交给请求了所读出的基准值的应用程序。
这样,在包含原本的存储位置(例如,通过ADA-CertID-OrganizationID-ApplicationID这个组合的固定文件路径来确定的存储位置)即应用程序数据区域的本地储存器是写入次数有上限的内存等的情况下,能够抑制对本地储存器的写入。
(备注)
以上说明了在本申请的提出的时间点申请人所认为的最佳实施方式,对于以下所示的技术主题,可以进行进一步的改良或变更实施。可以如各实施方式所示的那样实施本发明,也可以对上述实施方式进行改良和/或变更,这取决于实施者的主观意愿。
(基准值的文件格式)
在第1实施方式中,基准值存储在文本文件中,由于在文本文件中容易进行内容的参照,因此在编入固件22时,优选将基准值存储在二进制文件中。
(再生装置102的任意的构成要素)
作为任意的要素,可以在再生装置102中设置渲染引擎(renderingengine)。渲染引擎具有Java(TM)2D、OPEN-GL这样的基础(基盤)软件,按照来自BD-J应用程序的指示进行计算机图形(コンピユ-タ·グラフイツクス)的描画,并向平面内存输出所描画的计算机图形。为了高速进行该描画,作为任意的硬件要素,优选向再生装置102中增加图形加速器。另外,也可以安装进行浮动小数点运算的协处理器(Floating PointedCoProcessor)。
(验证数字信用证书的时期)
在上述实施方式中,在从BD-J应用程序请求了基准值访问的情况下,对数字信用证书进行解析验证,但该数字信用证书的验证也可以预先在BD-J应用程序的启动时或固件22的启动时等的定时进行。
(接受者组织的适用范围)
假定接受者组织是制作包含BD-ROM等的服务应用程序的内容的制作者而进行了说明,但只要是相对于内容制作者独立,对实施该基准值访问的BD-J应用程序进行签名的组织即可,可以是任何的组织。该情况下的接受者组织ID是表示该组织的ID编号。这样,很明显能够将相对于实际进行内容制作的组织而独立的组织作为接受者组织来运用。
(机器的适用范围)
到目前为止的说明是将固件启动部31、固件更新部32、基准值设定部34适用于进行BD-ROM的再生的再生装置102中的情况,该技术内容的适用范围并不仅限于这样的BD-ROM再生装置102。例如,也可以是具有录像功能的再生装置102。此时,基准值信息可以被再生功能和其他的功能共有。例如,在向具备再生功能的个人电脑适用固件启动部31、固件更新部32、基准值设定部34的情况下,也可以将在利用网页浏览器、WORD处理器的状态下的基准值信息编入固件22。
(BD-J应用程序供给的方法)
若上述的基准值的编入以及写入机器,该机器用于使影像再生和BD-J应用程序的执行相关联并进行视听,一般来讲能够适用于任何的机器。例如,也能够适用于将BD-J应用程序编入放送波、网络流中并供给该放送波、网络流的再生装置102。
(程序描述语言的适用范围)
在上述实施方式中,作为面向对象编码语言而利用了Java(TM)语言,但不仅限于Java(TM),也可以是UNIX(TM)OS等中所使用的B-Shell、Perl Script、ECMA Script等其他的编码语言。
(基准值的放置场所)
由于考虑了来自BD-J应用程序的访问,在上述实施方式中,基准值配置在应用程序数据区域,但只要是用于基准值的记录装置的物理的实施方式即可,可以是任意的场所,例如可以是硬盘、闪存内存那样的永久性的存储装置,或者DRAM15那样的易失性的存储装置。
(基准值的利用主体)
也可以不通过BD-ROM获得利用基准值的基准测试应用程序29,可以从WWW服务器下载基准测试应用程序29,并写入再生装置102内的本地储存器中。在该下载中,将收录在BD.ROOT.CERTIFICATE中的、作为盘根证书而与写入的根证书具有同一性的根证书存储至SIG-BD.SF中,并包含在Java(TM)归档文件中。通过这样,即使在通过下载将Java(TM)归档文件供给再生装置102的情况下,也能够通过使用向BD-ROM分配的盘根证书,使再生装置102确认Java(TM)归档文件的合法性。
(BD-ROM内容)
在BD-ROM中记录的BD-J应用程序是构成电影作品的内容,但本发明不仅是安装在本地储存器中而被利用的应用程序,若是在被记录在BD-ROM的状态下来使用的应用程序,则可以是其他的构成。例如,也可以是构成游戏软件的应用程序。此外,在本实施方式中,盘媒体选择了BD-ROM,但只要是可移动设备且实施了著作权保护的记录媒体即可,也可以采用其他的记录媒体。
此外,AV流、播放列表信息的前提是通过预录制(プリレコ一デイング)技术而记录在BD-ROM中,再提供给用户,也可以通过实时录制技术记录在BD-RE中,再提供给用户。
该情况下,AV流可以是通过记录装置对模拟输入信号进行实时编码而得到的传输流,也可以是通过记录装置对数字输入的传输流进行部分化(パ一シヤル化)而得到的传输流。
在实时录制时,记录装置与AV流的记录一起进行在内存上生成Clip信息、播放列表信息的处理,此时,在内存上生成上述的各实施方式中所记载的Clip信息、播放列表信息。而且,在AV流的记录结束后,将生成的Clip信息、播放列表信息写入记录媒体中。这样,即使不使用写作系统(authoring system),通过家庭用的记录装置、具有记录装置的功能的个人计算机,也能够制作各实施方式所示的Clip信息、播放列表信息。可以将这样制作的AV流、Clip信息、播放列表信息写入一次写入式的记录媒体中。
(作为基准值而表示的时间)
服务应用程序是客户端程序,优选在对网络上的服务器装置请求处理的情况下,基准值表示从请求处理开始、直到处理结束且响应返回为止的周转时间。对上述的服务器装置的处理会产生客户侧的协议栈的开销和服务器装置侧的协议栈的开销,基于这些开销,周转时间会变动。这样,在客户侧、服务器侧产生协议栈的开销的情况下,将加上该开销的基准值编入固件22,并写入应用程序数据区域中,从而服务应用程序能够实现与网络中的拥塞的大小相对应的处理负荷调整。
在此,协议栈在协议中的各层具有各自的缓冲器,并通过将来自上位的包复制到自身层再附加该层固有的数据的处理来实现该协议栈。该协议栈由Socket、TCP/UDP、IP、Ethernet(IEEE802.3)构成,或者由SPX/IPX、令牌环(IEEE802.5)构成,或者由NetBEUI、FDDI/TPDDI(ANSI X3T9.5)构成。利用这些协议栈来取得网络文件系统信息,服务应用程序能够与访问自身的本地驱动器相同地访问网络上的驱动器。
(基准值的多样性)
基准值不仅限于基准测试应用程序29所测定的值,也可以采用从再生装置102的标准播放器模型中能够导出的值。由于在再生装置102的标准播放器模型中详细地记载了从BD-ROM向缓冲器转送TS包的转送率,因此,基准值中大多数能够从这些已规定的转送率中唯一地导出。
此外,基准值分成生产厂家固有的、制品固有的、规格标准的多个类,可以按各类别将基准值利用于服务应用程序。
(基准值的写入时期)
在对再生装置102投入电源而固件22启动时,也可以在每次启动中将被编入固件22的基准值写入应用程序数据区域。这样,能够保证应用程序数据区域中一定存在有基准值的可靠性。虽然基准值写入的频度高,但与每次应用程序启动时执行基准测试相比,服务应用程序的启动延时短。
(散列值)
各实施方式中的散列值是利用SHA-1、MD5等的安全散列(SecureHash)函数的结果的值。安全散列函数实质上具有不可能令不同的数据具有相同的散列值的特征。
(根证书的散列值)
各实施方式中根证书的散列值不一定必须根据根证书全体的数据来计算,可以至少仅根据根证书中包含的公开密匙的数据来计算。在MANIFEST.MF、SIG-BD.SF、SIG-BD.RSA中所存储的散列值的计算中所利用的安全散列函数可以由盘制作者明确选择。
在各实施方式中,前提是在bd.XXXX.perm中的数字信用证书上固定了在提供者根证书的散列值51以及接受者根证书的散列值53的计算中所利用的安全散列函数,也可以在bd.XXXX.perm中的数字信用证书中明确地示出在提供者根证书的散列值51以及接受者根证书的散列值53的计算中所利用的全散列函数。
(根证书的比较)
根证书的比较可以进行根证书是否相同的比较,也可以进行根证书中所包含的公开密匙是否相同的比较。此外,作为其他的方式,也可以忽视SIG-BD.RSA中的第一个证书(根证书),确认根证书后面的第二个证书是否基于盘根证书而被签名。不管使用何种方式,由于盘根证书保障了SIG-BD.RSA中的第二个证书,因此在安全性的观点上的效果相同。
通过以下方式制作的攻击用BD-ROM来试运行用于不良目的的应用程序间通信的攻击。
1.从攻击对象的盘制作者所制作的合法的BD-ROM中读取通过数字证书进行了签名的攻击对象的Java(TM)归档文件。
2.制作用于攻击的Java(TM)归档文件,通过数字证书进行签名。
3.将攻击对象的Java(TM)归档文件和用于攻击的Java(TM)归档文件记录到攻击用BD-ROM中。
用于攻击的Java(TM)归档文件和攻击对象的Java(TM)归档文件都通过数字证书进行了签名,但利用了不同的根证书。若再生装置102向两个Java(TM)归档文件中的BD-J应用程序提供应用程序间通信的许可,则用于攻击的Java(TM)归档文件可能对攻击对象的Java(TM)归档文件进行不正当的应用程序间通信,攻击对象的盘制作者对攻击对象的Java(TM)归档文件自身所利用的存储区域进行不期望的动作。
为了防止上述的攻击须要进行根证书的比较。另外,也可以防止利用不同的根证书的BD-J应用程序之间的应用程序间通信。此时,也可以使一个BD-ROM中具有多个盘根证书。
(基准值的时间精度)
此外,基准值也可以用27MHz的时间精度来表示从请求处理开始、直到处理结束且响应返回为止的周转时间。这是由于,构成AV流的每个TS包都附加了具有27MHz的时间ATC的ATS(Arrival TIme Stamp),在再生装置102的内部存在以1/27,000,000秒的时间精度进行动作的ATC(Arrival Time Clock)。若以这样的ATC的时间精度制成基准值,则服务应用程序能够与对ATS的处理同步地执行处理负荷的变化。
(缓冲器的安装)
各实施方式中所示的缓冲器优选通过DPRAM来实现。DPRAM(DualPort RAM)是具有两个系统的输入输出接口,并且能够进行任一侧的数据的读写的内存。在DPRAM中,为了避免数据的矛盾而通过硬件进行排他控制。在进行基准值的测定时,需要对该缓冲器的写入以及读出所需的时间进行细致的评价。
(解码器的安装)
视频解码器、音频解码器优选通过DSP(Digital Signal Processor)来构成。DSP有固定小数点型、浮动小数点型,并具有由桶式移位器(バレルシフタ)、寄存器、乘法器、加法器构成的积和运算器。通过该积和运算器,能够高速进行平滑化处理等数字信号处理。由于在压缩编码的影像、音声的解码器中需要进行使用DCT系数的浮动小数点运算,因此若采用该DSP作为解码器,则能够实时地实现AV再生。在进行基准值的测定时,需要对该解码器的运算所需的时间进行细致的评价。
(系统LSI化)
在构成图7所示的再生装置102的硬件中,除了机构的构成要素(BD驱动器1、HD驱动器13、卡驱动器14)以及利用大容量的内存而安装的构成要素(视频用的平面内存5、平面内存8)之外,优选将逻辑元件作为主要部的部分构成为1个系统LSI。这是由于,将逻辑元件作为主要部的部分能够高密度地集成化。在图7中将应该构成为1个系统LSI的部分围在框内。但该图7的系统LSI化仅是一个例子,也可以将初级缓冲器7、视频解码器4、音频解码器6、图形解码器9也集成为一体的系统LSI。
系统LSI是在高密度基板上安装裸芯片并实施封装而得到的。系统LSI还包括在高密度基板上安装多个裸芯片并实施封装,从而使多个裸芯片具有好像1个LSI那样的外形构造(这样的系统LSI称为多芯片模块)。
在此,从封装的种类上来讲,系统LSI中具有QFP(四边扁平封装:Quad Flat Package)、PGA(插针网格阵列:Pin Grid Array)封装的种类。QFP是在封装的四侧面安装有针脚的系统LSI。PGA是在整个底面上安装多个针脚的系统LSI。
这些针脚是与其他的电路的接口。由于系统LSI中的针脚具有这种接口的功能,通过在系统LSI的这些针脚上连接其他的电路,系统LSI能够发挥作为再生装置102的中核的作用。
该系统LSI能够组装在再生装置102中,而且还能够组装在TV、游戏机、个人电脑、移动数字广播(ワンセグ)手机等的能够进行影像再生的各种机器中,可以大幅度扩大本发明的用途。
在初级缓冲器7、视频解码器4、音频解码器6、图形解码器9也集成为一体的系统LSI的情况下,系统LSI的体系结构(architecture)优选依照Uniphier体系结构。
依照Uniphier体系结构的系统LSI由以下的电路块构成。
·数据并行处理器DPP
该数据并行处理器DPP是多个要素处理器进行相同动作的SIMD型处理器,通过一个命令使各要素处理器中内置的运算器同时动作,从而实现对构成图片的多个像素进行的解码处理的并行化。
·命令并行处理器IPP
该命令并行处理器IPP包括:由命令RAM、命令缓存、数据RAM、数据缓存构成的“Local Memory Contoroller”;由命令提取部、解码器、执行单元、寄存器文件构成的“Processing Unit部”;以及使Processing Unit部执行多个应用程序的并行执行的“Virtual Multi Processor Unit部”。
·MPU块
该MPU块由ARM内核、外部总线接口(Bus Control Unit:BCU)、DMA控制器、定时器、矢量中断控制器这些周边电路、UART、GPIO(GeneralPurpose Input Output)、同步串行接口等的周边接口构成。在各实施方式中描述的固件22作为该MPU块而被安装在系统LSI中。
·流I/O块
该流I/O块经由USB接口、ATA Packet接口,与连接在外部总线上的驱动器装置、硬盘驱动器装置、SD存储卡驱动器装置进行数据输入输出。
·AVI/O块
该AVI/O块由音频输入输出、视频输入输出、OSD控制器构成,与电视、AV放大器进行数据输入输出。
·内存控制块
该内存控制块是实现对通过外部总线而连接的SD-RAM进行读写的块,包括:控制各块间的内部连接的内部总线连接部;进行与连接在系统LSI外部的SD-RAM之间的数据转送的访问控制部;以及对来自各块的SD-RAM15的访问请求进行调整的访问调度部。
具体的生产顺序的详细内容如下。首先,以各实施方式所示的构成图为基础制成应该作为系统LSI的部分的电路图,使用电路元件、IC、LSI,具体实现构成图中的构成要素。
然后,若具体实现各构成要素,则规定连接电路元件、IC、LSI间的总线及其周边电路、与外部的接口等。另外,还规定连接线、电源线、基线(GroundLine)、时钟信号线等。在进行该规定时,考虑LSI的技术规格(specification)调整各构成要素的动作定时,并进行保证各构成要素所必须的带宽等的调整,同时完成电路图。
电路图完成后,进行安装设计。安装设计是基板布局的制作作业,决定将通过电路设计而制成的电路图上的部件(电路元件、IC、LSI)配置在基板上的哪个位置,或者,如何在基板上对电路图上的连接线进行配线。
通过这样进行安装设计,在基板上的布局确定后,将安装设计结果变换为CAM数据,并输出至NC工作机械等的设备中。NC工作机械基于该CAM数据进行SoC安装、SiP安装。SoC(System on chip)安装是在1个芯片上晒印(烧き付け)多个电路的技术。SiP(System in Package)安装是通过树脂等将多个芯片封装为1个的技术。经过以上的过程,能够根据各实施方式中所示的再生装置102的内部构成图来制成本发明的系统LSI。
另外,对于如上所述地制成的集成电路,有时按照集成度的不同,被称为IC、LSI、Supper LSI(大规模集成电路)、Ultra LSI(超大规模集成电路)。
在使用FPGA来实现系统LSI的情况下,多数的逻辑单元配置为格子状,能够根据LUT(Look Up Table)中所记载的输入输出的组合,通过连接横、纵的配线,来实现各实施方式中所示的硬件构成。LUT存储在SRAM中,由于该SRAM的内容在电源断开后会消失,在利用该FPGA时,需要根据配置(config)信息的定义,将用于实现各实施方式中所示的硬件构成的LUT写入SRAM中。
(平面内存的安装)
由于平面内存需要大的内存容量,因此不优选通过系统LSI中内置的SRAM来实现。优选通过外置的SDRAM来实现平面内存。此外,在存在有多个平面内存的情况下,作为一个优选的方案是采用存储体内存(bankmemory)方式,将平面内存映射到MPU的内存空间的一部分上。在进行基准值的测定时,需要细致地评价对该平面内存进行读出、写入所需的时间。
(AV再生的对象)
若AV再生的对象是由数字流、映射信息、播放列表信息构成的内容,则不仅限定为BD-ROM。数字流是通过对以MPEG2、MPEG4-AVC等的编码方式编码的视频流、音频流进行复用而得到的复用流,在DVD Video-Recording规格下称为VOB。
映射信息是表示上述的视频流中的访问单元(能够独立解码的再生单位)的地址信息和视频流的再生时间轴的再生时刻之间的对应关系的信息,在DVD Video-Recording规格下称为Time Map。
播放列表信息是利用开始点的时刻信息和结束点的时刻信息的组合来定义1个以上的再生区间的信息。
在将再生装置102作为多媒体盘对应机而进行开发的情况下,在进行基准值的测定时,可以对从DVD-Video读出该VOB并解码该VOB所需的时间进行细致的评价。而且,也可以将DVD-Video的再生时的基准值编入固件中。
工业实用性
本发明的再生装置能够使用各实施方式所示的内部构成来进行工业化的生产,在制造产业具有利用的可能性。

Claims (15)

1.一种再生装置,其特征在于,具有:
硬件部,具备从记录媒体读出数据的驱动器部、对上述读出的数据中所包含的AV数据进行再生的再生部以及执行程序的处理部;
固件程序,用于控制上述硬件部;
初始化部,在上述处理部执行上述固件程序的情况下,若满足规定的条件,则进行初始化处理;以及
记录部,具有规定的记录区域,
在上述固件程序中编入了基准值,
上述基准值是在上述处理部执行由上述驱动器部从上述记录媒体读出的基准测试程序时,按照来自上述被执行的基准测试程序的命令,通过由上述处理部执行的固件程序而使上述硬件部执行规定的处理后的结果,上述基准值是表示上述再生装置的处理能力的指标,
上述初始化部在上述处理部首次执行上述固件程序的情况下,通过将已编入上述固件程序中的基准值写入上述记录部的规定的记录区域,以使得上述处理部所执行的应用程序能够访问已写入上述记录区域中的基准值。
2.如权利要求1所述的再生装置,其特征在于,
在上述固件程序被更新、上述处理部首次执行上述更新后的固件程序的情况下,
上述初始化部将编入上述更新后的固件程序中的基准值写入上述记录部的规定的记录区域。
3.如权利要求2所述的再生装置,其特征在于,
还具有判断部,该判断部在上述处理部所执行的应用程序访问已写入上述记录区域的基准值的情况下,判断与上述应用程序对应的信用证书的有效性,该信用证书包含有上述应用程序对于已写入上述记录区域的基准值的访问权限的信息,根据被判断为有效的上述信用证书中所包含的对于上述基准值的访问权限的信息,判断上述应用程序能否访问已写入上述记录区域的基准值。
4.如权利要求3所述的再生装置,其特征在于,
使用包含有用于识别提供了上述基准测试程序的组织的识别符和用于识别上述基准测试应用程序的识别符的文件路径,来确定上述记录部的规定的记录区域。
5.如权利要求4所述的再生装置,其特征在于,
上述固件程序包含I/O程序,该I/O程序对于上述应用程序请求访问已写入上述记录区域的基准值的访问请求,将已写入上述记录区域的基准值返回给请求访问的应用程序,
在上述应用程序指定上述基准值的文件路径并请求访问上述基准值时,
上述处理部执行上述I/O程序,上述I/O程序将基于指定的文件路径而确定的基准值返回给上述应用程序。
6.如权利要求5所述的再生装置,其特征在于,
上述处理部具备:第1记录部,具有用于存储上述固件程序的第1记录区域;第2记录部,具有用于装载被存储在上述第1记录部中的固件程序以及执行对象的应用程序的第2记录区域;以及处理部主体,执行被装载到上述第2记录区域中的固件程序以及应用程序。
7.如权利要求6所述的再生装置,其特征在于,
在将已编入上述固件程序中的基准值展开到上述第2记录区域的情况下,
生成位置信息,该位置信息包含:与表示上述基准值原本应该写入的位置的上述记录部中的文件路径有关的信息;以及与展开上述基准值后的上述第2记录区域上的位置有关的信息,
上述I/O程序构成为,若从上述应用程序接受了指定的文件路径,则参照上述位置信息,读入在上述第2记录区域展开的基准值并将该基准值返回给上述应用程序。
8.如权利要求5所述的再生装置,其特征在于,
上述处理部具备:第1记录部,具有用于存储上述固件程序的第1记录区域;第2记录部,具有用于装载执行对象的应用程序的第2记录区域;以及处理部主体,执行被存储在上述第1记录区域中的固件程序以及被装载在上述第2记录区域中的应用程序。
9.如权利要求5所述的再生装置,其特征在于,
上述信用证书是与上述基准值的文件路径有关的信息。
10.如权利要求3所述的再生装置,其特征在于,
上述应用程序还保持通过对上述信用证书进行规定的处理而得到的签名信息,
在上述应用程序想要访问上述基准值的情况下,上述判断部使用上述应用程序所保持的信用证书和签名信息,判断上述应用程序能否访问上述基准值。
11.如权利要求4所述的再生装置,其特征在于,
上述初始化部判断由上述记录部中的规定的路径来确定的记录区域中是否写入有上述基准值,在判断为没有写入上述基准值的情况下,将编入上述固件程序中的基准值写入由上述记录部中的规定的路径来确定的记录区域。
12.如权利要求4所述的再生装置,其特征在于,
在上述固件程序被更新的情况下,上述初始化部对已编入上述更新后的固件程序中的基准值的版本和上述应用程序数据区域中存在的基准值的版本进行版本比较,在判断出已编入上述更新后的固件程序中的基准值新的情况下,将已编入上述固件程序中的基准值写入由记录部中的规定的路径所确定的记录区域。
13.如权利要求3所述的再生装置,其特征在于,
将上述基准值展开到内存中,使应用程序利用内存中的基准值。
14.一种集成电路,被用于再生装置中,该再生装置具有硬件部和记录部,该硬件部具备从记录媒体读出数据的驱动器部以及对上述读出的数据中所包含的AV数据进行再生的再生部,该记录部具有规定的记录区域,
上述集成电路的特征在于,具备:
处理部,用于执行程序;
固件程序,用于控制上述硬件部;以及
初始化部,在上述处理部执行上述固件程序的情况下,若满足规定的条件,则进行初始化处理,
在上述固件程序中编入了基准值,
上述基准值是在上述处理部执行由上述驱动器部从上述记录媒体读出的基准测试程序时,按照来自上述被执行的基准测试程序的命令,通过上述处理部执行的固件程序而使上述硬件部执行规定的处理后的结果,上述基准值是表示上述再生装置的处理能力的指标,
上述初始化部在上述处理部首次执行上述固件程序的情况下,通过将已编入上述固件程序中的基准值写入上述记录部中的规定的记录区域,以使得上述处理部所执行的应用程序能够访问已写入上述记录区域的基准值。
15.一种再生方法,被用于再生装置中,该再生装置具有:
硬件部,具备从记录媒体读出数据的驱动器部、对上述读出的数据中所包含的AV数据进行再生的再生部、以及执行程序的处理部;
固件程序,用于控制上述硬件部;以及
记录部,具有规定的记录区域,
基准值被编入上述固件程序中,上述基准值是在上述处理部执行由上述驱动器部从上述记录媒体读出的基准测试程序时,按照来自上述被执行的基准测试程序的命令,通过由上述处理部执行的固件程序而使上述硬件部执行规定的处理的结果,上述基准值是表示上述再生装置的处理能力的指标,
该再生方法的特征在于,包括:
在上述处理部首次执行上述固件程序的情况下,将已编入上述固件程序中的基准值写入上述记录部的规定的记录区域的步骤;以及
使上述处理部所执行的应用程序访问已写入上述记录区域中的基准值的步骤。
CN200880003106XA 2007-03-02 2008-02-29 再生装置、系统lsi、初始化方法 Expired - Fee Related CN101589369B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2007053162 2007-03-02
JP053162/2007 2007-03-02
PCT/JP2008/000410 WO2008108084A1 (ja) 2007-03-02 2008-02-29 再生装置、システムlsi、初期化方法

Publications (2)

Publication Number Publication Date
CN101589369A true CN101589369A (zh) 2009-11-25
CN101589369B CN101589369B (zh) 2013-01-23

Family

ID=39737982

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880003106XA Expired - Fee Related CN101589369B (zh) 2007-03-02 2008-02-29 再生装置、系统lsi、初始化方法

Country Status (7)

Country Link
US (1) US8522339B2 (zh)
EP (1) EP2116934B1 (zh)
JP (1) JP4906913B2 (zh)
KR (1) KR101430279B1 (zh)
CN (1) CN101589369B (zh)
ES (1) ES2404807T3 (zh)
WO (1) WO2008108084A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679578A (zh) * 2015-03-12 2015-06-03 绚视软件科技(上海)有限公司 BD-java平台上的最小内存自适应机制及使用方法
CN111158969A (zh) * 2019-12-31 2020-05-15 奇安信科技集团股份有限公司 数据处理方法、电子设备、存储介质和计算机程序产品

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5006388B2 (ja) * 2007-04-19 2012-08-22 パナソニック株式会社 データ管理装置
US20100083006A1 (en) * 2007-05-24 2010-04-01 Panasonic Corporation Memory controller, nonvolatile memory device, nonvolatile memory system, and access device
JP2010191665A (ja) * 2009-02-18 2010-09-02 Sony Corp 情報処理装置、情報処理方法、およびプログラム、並びに記録媒体
US8732749B2 (en) 2009-04-16 2014-05-20 Guest Tek Interactive Entertainment Ltd. Virtual desktop services
JP4724257B2 (ja) 2009-06-11 2011-07-13 パナソニック株式会社 再生装置
WO2010143439A1 (ja) * 2009-06-12 2010-12-16 パナソニック株式会社 再生装置、集積回路、記録媒体
US9229734B2 (en) * 2010-01-15 2016-01-05 Guest Tek Interactive Entertainment Ltd. Hospitality media system employing virtual user interfaces
US9003455B2 (en) 2010-07-30 2015-04-07 Guest Tek Interactive Entertainment Ltd. Hospitality media system employing virtual set top boxes
US8495108B2 (en) * 2010-11-30 2013-07-23 International Business Machines Corporation Virtual node subpool management
US9910659B2 (en) * 2012-11-07 2018-03-06 Qualcomm Incorporated Methods for providing anti-rollback protection of a firmware version in a device which has no internal non-volatile memory
EP2808818B1 (en) * 2013-05-29 2016-07-13 Nxp B.V. Processing system
FR3014576B1 (fr) * 2013-12-10 2018-02-16 Mbda France Procede et systeme d'aide a la verification et a la validation d'une chaine d'algorithmes
JP6361390B2 (ja) * 2014-09-10 2018-07-25 富士通株式会社 ストレージ制御装置および制御プログラム
US9294492B1 (en) * 2015-03-10 2016-03-22 Iboss, Inc. Software program identification based on program behavior
CN107870877B (zh) * 2016-09-23 2024-04-23 伊姆西Ip控股有限责任公司 用于在存储系统中管理数据访问的方法和系统
JP7087634B2 (ja) * 2018-04-26 2022-06-21 富士通株式会社 リソース管理装置及びリソース管理プログラム
KR102137194B1 (ko) 2018-10-31 2020-07-24 엘지전자 주식회사 이동 단말기
CN111338662A (zh) * 2018-12-18 2020-06-26 深圳市优必选科技有限公司 从站的固件升级方法、固件升级装置及终端
CN114397868B (zh) * 2021-12-03 2024-05-14 陕西法士特齿轮有限责任公司 集成式自动机械式变速箱的硬件在环测试平台及测试方法
US20230214822A1 (en) * 2022-01-05 2023-07-06 Mastercard International Incorporated Computer-implemented methods and systems for authentic user-merchant association and services

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08289251A (ja) * 1995-04-18 1996-11-01 Tec Corp マルチメディア処理装置
US6678812B1 (en) * 1996-01-16 2004-01-13 Intel Corporation Method and apparatus for optimizing hard drive performance
US6378013B1 (en) * 1998-09-17 2002-04-23 Micron Technology, Inc. System for assessing performance of computer systems
US6405329B1 (en) * 1999-07-27 2002-06-11 Dell Usa, L.P. Method and apparatus for HDD time stamp benchmark and installation identification
US7155415B2 (en) * 2000-04-07 2006-12-26 Movielink Llc Secure digital content licensing system and method
US7213266B1 (en) * 2000-06-09 2007-05-01 Intertrust Technologies Corp. Systems and methods for managing and protecting electronic content and applications
JP2002099430A (ja) 2000-09-26 2002-04-05 Minolta Co Ltd データ処理装置および方法
US6769054B1 (en) * 2001-02-26 2004-07-27 Emc Corporation System and method for preparation of workload data for replaying in a data storage environment
US7124152B2 (en) * 2001-10-31 2006-10-17 Seagate Technology Llc Data storage device with deterministic caching and retention capabilities to effect file level data transfers over a network
JP2004056620A (ja) * 2002-07-23 2004-02-19 Sony Corp 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
US8307156B1 (en) * 2002-07-31 2012-11-06 Western Digital Technologies, Inc. Adaptively modifying pre-read operations within a rotating media storage device
US7184934B2 (en) * 2003-06-26 2007-02-27 Microsoft Corporation Multifaceted system capabilities analysis
WO2005017735A1 (ja) 2003-08-19 2005-02-24 Fujitsu Limited ディスクアレイ装置におけるボトルネックを検出するシステムおよびプログラム
GB0322045D0 (en) * 2003-09-20 2003-10-22 Koninkl Philips Electronics Nv A network-based gaming system
US20050086640A1 (en) * 2003-10-21 2005-04-21 Mikko Kolehmainen Initiating execution of application programs on a data processing arrangement
US7427027B2 (en) * 2004-07-28 2008-09-23 Sandisk Corporation Optimized non-volatile storage systems
GB2423408A (en) 2005-02-22 2006-08-23 Zootech Ltd Identifying audiovisual apparatus and associated methods and content stored on data carriers
TWI377518B (en) * 2005-04-29 2012-11-21 Power One Renewable Energy Solutions Llc Computer implemented systems and methods for pre-emptive service and improved use of service resources
US7659897B1 (en) * 2006-06-30 2010-02-09 Nvidia Corporation System, method, and computer program product for video benchmarking
US20080034440A1 (en) * 2006-07-07 2008-02-07 Michael Holtzman Content Control System Using Versatile Control Structure
US20080170837A1 (en) * 2007-01-12 2008-07-17 Zootech Limited Information processing system
JP2008226365A (ja) * 2007-03-13 2008-09-25 Matsushita Electric Ind Co Ltd 音声再生装置及び音声再生方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679578A (zh) * 2015-03-12 2015-06-03 绚视软件科技(上海)有限公司 BD-java平台上的最小内存自适应机制及使用方法
CN104679578B (zh) * 2015-03-12 2018-09-07 绚视软件科技(上海)有限公司 BD-java平台上的最小内存自适应机制及使用方法
CN111158969A (zh) * 2019-12-31 2020-05-15 奇安信科技集团股份有限公司 数据处理方法、电子设备、存储介质和计算机程序产品
CN111158969B (zh) * 2019-12-31 2024-03-08 奇安信科技集团股份有限公司 数据处理方法、电子设备和存储介质

Also Published As

Publication number Publication date
EP2116934A1 (en) 2009-11-11
US20100031347A1 (en) 2010-02-04
CN101589369B (zh) 2013-01-23
KR20090122909A (ko) 2009-12-01
JP4906913B2 (ja) 2012-03-28
WO2008108084A1 (ja) 2008-09-12
KR101430279B1 (ko) 2014-08-14
US8522339B2 (en) 2013-08-27
EP2116934A4 (en) 2010-06-09
ES2404807T3 (es) 2013-05-29
EP2116934B1 (en) 2013-04-10
JPWO2008108084A1 (ja) 2010-06-10

Similar Documents

Publication Publication Date Title
CN101589369B (zh) 再生装置、系统lsi、初始化方法
CN101410904B (zh) 再现装置、调试装置、系统lsi、程序
US8122263B2 (en) Application executing device, managing method, and program
US7616864B2 (en) Playback apparatus for performing application-synchronized playback
CN101542623B (zh) 再现装置、再现方法、程序
US8051100B2 (en) Recording medium, recording device, and playback device for use in individual sales and method therefor
JP5069253B2 (ja) 再生装置、システムlsi及び再生方法
CN101689393B (zh) 再现装置、再现方法、程序
CN102027544B (zh) 再生装置、再生方法及程序
CN102405497A (zh) 再现装置、集成电路、再现方法、应用程序、记录介质、记录装置、及记录方法
US20060262710A1 (en) Recording medium, and method and apparatus for reproducing data from the recording medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130123

Termination date: 20200229

CF01 Termination of patent right due to non-payment of annual fee