CN101030169A - 数据记录装置、数据记录方法、及程序 - Google Patents

数据记录装置、数据记录方法、及程序 Download PDF

Info

Publication number
CN101030169A
CN101030169A CNA2007100800219A CN200710080021A CN101030169A CN 101030169 A CN101030169 A CN 101030169A CN A2007100800219 A CNA2007100800219 A CN A2007100800219A CN 200710080021 A CN200710080021 A CN 200710080021A CN 101030169 A CN101030169 A CN 101030169A
Authority
CN
China
Prior art keywords
data
write
writes
file
request response
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
CNA2007100800219A
Other languages
English (en)
Other versions
CN100501700C (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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Publication of CN101030169A publication Critical patent/CN101030169A/zh
Application granted granted Critical
Publication of CN100501700C publication Critical patent/CN100501700C/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
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]

Abstract

本文披露了一种数据记录装置,包括:记录数据获取部、数据记录部、文件管理部、记录控制部、以及文件更新控制部。

Description

数据记录装置、数据记录方法、及程序
相关申请的交叉参考
本发明包含于2006年2月28日向日本专利局提交的日本专利申请JP 2006-051684的主题,其全部内容结合于此作为参考。
技术领域
本发明涉及用于将待被管理的数据记录为预定格式文件的数据记录装置和方法,还涉及通过所描述类型的数据记录装置执行的程序。
背景技术
诸如数码摄像机的可以拍摄运动图像的数字图像拍摄装置将通过图像拍摄获取的运动图片文件处理为将被记录在记录介质上的数据。因此,对记录介质要求相对较大的存储容量。过去,主要的带式介质被用作可满足刚刚提及的这种要求的存储介质。但是,近年来,在通过降低单位比特的价格显著降低成本、增强抗冲击特性和其它优势的背景下,也采用了硬盘驱动器(HDD)。
由于最初将HDD用作计算机系统的辅助存储装置,所以采用预定格式的文件系统用于管理记录数据。作为本领域的公知技术,根据文件系统,以文件为单位来管理存储在存储介质中的数据。FAT文件系统为刚刚提及的这种文件系统的一种格式。
在FAT文件系统中,将存储介质的存储区分为称作簇的单位区。因此,执行在存储介质上的文件记录,使得将数据相连写入一个簇或多个簇。随后,作为写入数据实体的簇连接来管理记录在存储介质上的文件。众所周知,在FAT文件系统中,目录项和称作FAT(文件分配表)的表信息用作用于以上述这种方式管理文件的管理信息。
例如,在日本专利公开第2005-63047号中披露了如上所述的这种FAT文件。
发明内容
此外,在HDD用作数码摄像机的存储介质的情况下,因为不需要开发新的管理系统,所以采用至今使用的格式的文件系统是有效和正确的。而且,在具有内置HDD的实际数码摄像机中,例如,采用诸如上述FAT文件系统的公知文件系统格式。
然而,如上所述,在如上所述的旧计算机系统下开发的诸如FAT文件系统的文件系统的情况下,将被文件系统执行的多种控制适用于管理诸如文档文件的静态文件。因此,如果将这种控制实际上应用为以实时为基础连续记录运动图片文件的数据流等的控制,则有可能发生不期望的缺点。
在考虑到刚刚描述的这种情况的情况下,如果想要结合适当采用文件系统的存储介质,则优选地在数码摄像机中采用当对需要这种记录的数据部分执行运动图片等的数据流的记录时与现有文件系统基本上相同的文件系统的数据管理格式,从而实现可靠性和性能的提高。
根据本发明的一个实施例,提供了一种数据记录装置。该装置包括记录数据获取部,用于响应于数据写入请求获取作为将被写在记录介质上的数据单位的请求响应写入数据,作为将被记录在记录介质上的数据。该装置还包括数据记录部,用于执行存储介质上的数据记录,以将数据写入在记录介质的存储区中连续形成的预定容量的单位区。数据记录部执行数据记录,使得当使用两个或多个单位区写入对应于一个数据写入请求的请求响应写入数据,并且另外将请求响应写入数据的顶端或末端的任意一个写到一个单位区的中间位置处时,执行写入将被放置在包括中间位置的单位区中的请求响应写入数据部分的部分写入处理以及写入将被放置在仅放置有不包括中间位置的形成请求响应写入数据的那些数据的一个或多个逻辑连续的单位区中的剩余请求响应写入数据的另一部分写入处理。该装置还包括:文件管理部,用于使用存储在存储了文件数据的存储介质中的管理信息来管理文件,并且管理形成用于单位区的文件的数据;以及记录控制部,用于控制数据记录部,以在将通过两个或多个部分写入处理将请求响应写入数据记录在存储介质上时,在没有在对应于每个部分写入处理完成的时刻插入管理信息的更新处理的情况下,通过顺序的部分写入处理来执行请求响应写入数据的记录。该装置再进一步包括文件更新控制部,用于在完成通过顺序的部分写入处理记录请求响应写入数据的之后的时刻,控制文件管理部以更新管理信息,使得在管理信息上反映所有部分写入处理的结果。
在数据记录装置中,存储介质的存储区形成为预定容量的单位区的连接。在使用具有刚刚描述的存储介质的这种格式结构的两个或多个单位区来写入将响应于数据写入请求而被写入的数据(写入请求数据)并且将写入请求数据的顶部或末端写入其中一个单位区的中间位置的情况下,通过执行将数据部分写入包括中间位置的单位区的部分写入处理以及只将不包括中间位置的形成请求响应写入数据的那些数据写入一个或多个逻辑连续的单位区中的另一部分写入处理来执行写入请求数据的记录。
此外,在数据记录装置中,在通过如上所述的两个或多个部分写入处理执行写入请求数据的记录的情况下,当顺序执行部分写入处理时,在执行处理期间,在对应于每个部分写入处理完成的时刻不执行管理信息的更新。随后,在完成部分写入处理的整个序列之后,执行管理信息的更新,使得在管理信息上反映所有部分写入处理的结果。
在写入一个写入请求数据期间,另外在对应于每个部分写入处理完成的时刻更新管理信息的情况下,例如,即使稍后特定的一个部分写入处理失败,也能在管理信息上反映通过前面的一个或多个部分写入处理成功记录的数据。然而,即使通过前面的部分写入处理成功记录了数据,但是如果至少一部分这样记录的数据和至少一部分通过后面的部分写入处理的记录失败的数据在写入请求数据中彼此不具有不可分离的关系,则相反地,这种情况会产生例如不能获取正常再生结果的缺点。
相反,通过根据本发明的数据记录装置,如果某个后面的部分写入处理失败,那么防止在管理信息上反映相应的写入请求数据本身。因此,防止了仅记录最初具有不可分离关系的数据部分使其反映在管理信息上的结果。
总之,通过数据记录装置,不会发生仅记录了最初具有不可分离关系的数据部分使其反映在管理信息上的结果。因此,可以实现装置可靠性和性能的提高,例如,通过数据记录装置,确保了关于记录在记录介质上的数据正常的再生结果。
附图说明
图1是示出应用了本发明的数码摄像机结构实例的框图;
图2是示出作为层模型使用在数码摄像机中的FAT文件系统的系统结构的框图;
图3是示出使用在FAT文件系统中的存储介质的格式结构的视图;
图4A和4B是示出使用在FAT文件系统中的MBR结构的示意图;
图5是示出FAT文件系统中目录项结构的示意图;
图6A至6I是示出通过FAT文件系统管理文件记录位置实例的示意图;
图7是示出在将MPEG流格式的运动图片文件记录在通过FAT文件系统管理的存储介质上的情况下记录数据和扇区之间关系实例的示意图;
图8是示出在将请求响应写入数据记录在通过FAT文件系统管理的存储介质上的情况下形成运动图片文件的请求响应写入数据和扇区之间的对应关系的每种模式特征的视图;
图9是示出在将请求响应写入数据记录在通过FAT文件系统管理的介质上的情况下由GOP连接形成的请求响应写入数据和扇区之间对应关系的示意图;
图10是示出在将请求响应写入数据记录在通过FAT文件系统管理的存储介质上的情况下作为静止图片文件(JPEG格式)的请求响应写入数据和扇区之间对应关系的示意图;
图11是示出在采用FAT文件系统的情况下用于将请求响应写入数据写在存储介质上的过程实例的流程图;
图12是示出用于将请求响应写入数据写在数码摄像机中存储介质上的过程实例的流程图;
图13是示出当数码摄像机写入请求响应写入数据失败时形成将被显示的错误消息的实例的示意图;
图14是示出关于请求响应写入数据的写入顺序的处理定时的示意图;
图15A和15B是示出数码摄像机中备份信息结构实例的视图;
图16是示出在写入请求响应写入数据之前执行的准备处理的过程实例的流程图;
图17是示出包括备份信息处理的请求响应写入数据的写入过程实例的流程图;
图18是示出用于使用通过图17过程获取的内容的备份信息的匹配恢复的过程实例的流程图;
图19是示出用于匹配恢复过程的修改以及示出利用通过图17的过程获取的内容的备份信息的另一个实例的流程图;
图20是示出对应于用于匹配恢复的过程修改的备份信息结构实例的视图;
图21是示出包括对应于图19修改的备份信息处理的请求响应写入数据的写入过程实例的流程图;以及
图22是示出用于对应于图19修改的恢复匹配程序实例的流程图。
具体实施方式
下面,描述用于执行本发明的最佳模式(下文中,称作实施例)。在下面描述的实施例中,与实例结合来描述本发明,其中,将根据本发明的数据记录装置的结构应用于数码摄像机。
首先,参照图1,示出了应用本发明的数码摄像机的结构实例。
所示的数码摄像机1包括光学系统部2,其包括图像拍摄透镜、光圈等,使用进入到其的光作为图像拍摄光以在光电转换部3上形成图像。光学系统部2还包括用于聚焦的聚焦机构、用于响应于光圈值来改变光圈的可变光圈机构等。响应于从像机功能部6输出的驱动信号来执行光学系统部2的机械元件的驱动。像机功能部6输出所获取的驱动信号,使得在CPU(中央处理单元)10的控制下,建立所需的聚焦状态、光圈状态等。
此外,例如,数码摄像机1具有光学变焦功能,在光学系统部2中可设置用于移动变焦透镜的变焦机构,可如上所述类似地设置在CPU 10的控制下驱动用于移动变焦机构的驱动部。此外,可在像机功能部6中设置闪光装置,使得为数码摄像机1提供发光功能。
例如,光电转换部3包括作为光电转换元件的CCD(电荷耦合器件)单元,对从光学系统部2进入并形成在其光接收面上的图像拍摄光进行光电转换,以生成图像拍摄信号。将图像拍摄信号输出至视频信号处理部4。例如,在图像拍摄时,从CPU 10向视频信号处理部4发布响应于曝光设置结果来确定快门速度的指令。视频信号处理部4将接收的快门速度指令所对应的扫描定时信号输出至光电转换部3。光电转换部3响应于扫描定时信号来执行扫描,以执行光电转换处理并输出得到的视频信号。
例如,视频信号处理部4对从光电转换部3输入的模拟视频信号(拍摄的图像信号)执行增益调节和采样保持处理,以对视频信号的波形进行整形。视频信号处理部4还对得到的视频信号执行A/D转换,以将视频信号转换成数字视频信号数据。随后,视频信号处理部4对通过转换处理获得的数字视频信号执行用于使数字视频信号显示在显示部7上的视频信号处理(例如,诸如显示亮度数据的生成处理)。此外,视频信号处理部4还可以在CPU 10的控制下执行用于屏幕显示的信号处理,使得字符图像等还可以与拍摄的图像成重叠关系的方式来显示。
尽管没有特别限定显示部7采用的实际显示装置,但是在本发明的条件下,广泛采用液晶显示面板。
此外,例如,视频信号处理部4可根据预定方法对通过转换从光电转换部3输入的模拟视频信号而获取的数字视频信号执行压缩编码处理,以生成压缩的视频数据。
此外,本实施例的数码摄像机还具有相机功能。换句话说,数码摄像机能够生成预定格式的静止图片数据文件,作为来自拍摄的图像信号的照片。通过视频信号处理部4也能够执行刚刚提及的这种图像处理。
此外,视频信号处理部4可将从光电转换部3输入的图像(视频)信号或从下文描述的存储介质中读出的运动图片、静止图片、或声音的文件转换成预定系统的模拟视频信号或数字视频信号。视频信号处理部4通过图像输入/输出部5将模拟或数字视频信号输出至外部装置等。
图像输入/输出部5可接收作为从外部输入到其的预定系统的视频信号,并通过视频信号处理部4的处理,使输入的视频信号显示在显示部7上。此外,视频信号处理部4可将从图像输入/输出部5输入到其的视频信号转换成与从光电转换部3输入的模拟视频信号类似的记录数据,并将记录数据传送至介质控制器13。
在对应关系中,例如,图像输入/输出部5具有用于预定系统的视频(图像)信号输出端和视频信号输入端。
此外,本实施例的数码摄像机1包括声音处理部8和声音输入/输出部9,使得可将声音信号输入数码摄像机1和从数码摄像机1输出。
具体地,关于声音输入,数码摄像机1包括作为声音输入/输出部9的麦克风等,使得收集外部声音并将其转换成将被输入的声音信号。将以这种方式输入的声音信号输出至声音处理部8。例如,根据相应于用于拍摄图像的压缩编码系统的声音压缩编码系统,声音处理部8对输入其中的声音信号执行将声音信号转换成编码的压缩音频数据的声音信号处理。
CPU 10执行用于从通过视频信号处理部4获取的拍摄图像的压缩视频数据以及通过声音处理部8获取的收集声音的压缩音频数据中形成预定格式的运动图片文件的控制处理。在运动图片文件中,从压缩视频数据中再生并输出的运动图片具有与从压缩音频数据中再生的声音同步的再生时间轴。注意到,作为实际形成运动图片文件的结构,可使用包括通过CPU 10执行程序而获得的数字信号处理的软件结构。可选地,可使用另一种结构,其中,提供用于形成运动图片文件的硬件,并且CPU 10控制该硬件的操作。
例如,在CPU 10的控制下,将运动图片文件的数据作为记录数据传送至介质控制器13。此外,CPU 10可将作为通过视频信号处理部4生成的照片图像的预定格式的静止图片数据文件作为记录数据传送至介质控制器13。
还可以配置声音输入/输出部9,使其包括声音信号输入端,使得可将音频信号从外部音频装置等输入声音输入/输出部9。通过声音处理部8,将从声音信号输入端输入的音频信号转换成预定格式的数字数据文件。CPU 10也可以将数字音频数据文件的这种数据作为记录数据传送至介质控制器13。
配置介质控制器13,使其与CPU 10合作,以执行与用于任何预定的存储介质和不同类型的外部存储装置的数据处理相关的控制处理。此处用于存储介质的数据处理表示与将被存储在存储介质中的数据和用于文件管理的信息(文件管理信息)相关的一些处理(例如,存储介质的格式化处理和将文件写入存储介质存储区和从存储介质存储区中读取的写入/读出处理)。
在本实施例中,硬盘驱动器(HDD)连接至介质控制器13。HDD为存储装置,包括称作本领域中公知存储介质的硬盘的磁盘。通过HDD,在现状下,可以以比较低的成本获取千兆字节的大存储容量。此外,本领域中公知的,当利用磁头跟踪形成在磁盘上的磁道时,通过执行磁场的应用/检测来执行物理地从作为存储介质的磁盘读取数据和将数据物理地写入磁盘。
此外,例如,可将这种情况下的HDD固定嵌入数码摄像机1中,或可形成为可装载在数码摄像机1(主机装置)中的确认预定标准的可移动介质。
此外,介质控制器13可以执行适于预定系统的光盘或磁光盘或包括半导体存储元件的存储装置的半导体存储装置的数据处理。
为了实际处理光盘或磁光盘,数码摄像机1包括作为驱动器配置的装置,以执行将数据写入记录或存储介质或者从记录或存储介质中读出数据,并且该装置和介质控制器13彼此连接。
为了处理半导体存储装置,数码摄像机1的主体包括插槽,根据半导体存储装置的实际标准,将半导体存储装置可移动地插入插槽。如果将半导体存储装置正确地插入插槽,则半导体装置的引线端连接至插槽连接器位置处的电极,使得连接半导体存储装置用于与介质控制器13进行通信。
以这种方式,当将本实施例的数码摄像机1用于根据各种介质处理数据时,为了简单描述的方便,假定记录和再生通过本实施例的数码摄像机1的图像拍摄而获取的数据的介质为HDD。
响应于如上所述的传输至其的记录数据,介质控制器13将记录数据传送至作为从连接至介质控制器13的这些介质(存储介质或存储装置)中选择的对象的介质。数据被传送至其的介质根据来自介质控制器13侧的指令将数据写入其存储区以存储数据。作为文件来管理以这种方式存储在介质中的数据。注意到,根据预定文件系统来执行存储在存储介质中的文件管理。
另一方面,例如,当再生存储在存储介质的文件中的运动图片文件时,CPU 10和介质控制器13访问并读出所指定的运动图片文件。例如,通过CPU 10的处理,将以这种方式读出的运动图片文件分成压缩视频数据和压缩音频数据。将压缩视频数据传至视频信号处理部4,而将压缩音频数据传至声音处理部8。
在这种情况下,视频信号处理部4和声音处理部8执行所需的再生信号处理,包括分别对传输至其的压缩视频数据和压缩音频数据的解调处理。因此,在显示部7上显示通过再生压缩视频数据而获得的图像。同时,与再生该图像同步地将从为声音输入/输出部9提供的扬声器输出或从耳机端输出的通过再生压缩音频数据而获得的声音信号作为声音。
此外,例如,在对从存储介质再生的音频数据文件进行了声音处理部8的声音信号处理之后,可通过声音输入/输出部9将其作为预定格式的音频信号或音频数据输出至外部。在这种情况下,声音输入/输出部9包括相应于将从声音处理部8输出的预定音频信号和音频数据的音频输出端。
CPU(中央处理单元)10执行程序,以执行用于数码摄像机1的各种控制处理。ROM 11存储将被CPU 10执行的各种程序和当CPU 10执行其处理时将被使用的各种设置信息等。当CPU 10根据程序执行其处理时,RAM 12被用作工作区,并保持各种运算操作处理的结果数据。
非易失性存储器12a由具有即使切断其电源其存储内容也不会被擦除特性的存储元件(例如,由闪存表示)形成。在CPU 10的控制下,执行将数据写入非易失性存储器12a和从非易失性存储器12a中读出数据。将被存储在非易失性存储器12a中的数据(信息)通常为其内容适于修改的设置信息,但是不限定于此。因此,根据实际数码摄像机1的说明,仅需要非易失性存储器12a存储各种所需信息。
在这种情况下,操作输入部15集中表示设置在数码摄像机1中的各种操作元件。例如,操作输入部15的操作元件包括将在图像拍摄时被操作的快门按钮、用于选择图像拍摄模式的操作元件等、用于增加/减少参数的操作元件等。
此外,这种情况下的操作输入部15具有用于实现使用例如显示部7显示屏的GUI输入操作的结构。
在CPU 10的控制下,根据预定数据通信方法,通过用于与外部装置进行通信的硬件和软件来构成通信部16。对应于通信部16的数据通信方法不特别限于有线或无线通信方法,并且也不特别限定兼容数据通信方法的数目。在现状下,对于有线通信系统,例如,数据通信系统可以为诸如以太网的任何网络和诸如USB(通用串连总线)或IEEE(电气和电子工程师协会)1394的数据总线标准。对于无线通信系统,数据通信系统可以为诸如蓝牙(商标)或诸如IEEE 802.11a/b/g的无线电LAN(局域网)标准的设备间近距离无线通信标准。
电源部17将操作功率提供给数码摄像机1的各种硬件设备,以及包括例如接收和操作来自电池或电源适配器的功率的电源电路。
如上所述,本实施例的数码摄像机1可将主要通过图像拍摄/声音收集而获取的视频/音频文件存储在诸如HDD、各种光盘型记录介质(包括磁光盘)、和半导体存储装置的存储介质上。
通常,通过预定格式的文件系统管理以上述方式存储的文件。在本实施例中,通过FAT(文件分配表)文件系统来管理文件。FAT文件系统使用树型目录结构来管理文件,并涉及本领域公知的称作簇的逻辑最小数据单位中的数据写入/读出。簇为包括预定数目扇区的单位,扇区为将物理数据写入介质和从介质读出物理数据的最小单位。
图2示出了层模型(layer model)中FAT文件系统的一般系统结构。
参照图2,大致将层模型分为软件层和软件层下方的硬件层。
在这种情况下,软件层对应于通过主机装置(在本实施例中,为数码摄像机1)的CPU对存储介质执行的程序所实现的软件处理和各种固件、中间件等。这种情况下的软件层从上到下包括应用程序100、文件系统101、以及设备驱动器102。
可将硬件层看作存储介质本身的物理存储区。
应用程序100对应于具有例如文件记录/再生功能并使用存储介质的应用软件,并对文件系统101发布文件级上的访问请求(或数据写入请求)。
文件系统101对应于实现文件系统功能的软件。在本实施例中,由于采用了FAT文件系统,所以还相应于FAT文件系统来配置提供文件系统101功能的软件。
文件系统101将来自应用程序100的文件级上的访问请求转换成FAT文件系统格式的数据管理单位的簇级访问请求,并将得到的访问请求提供给设备驱动器102。
设备驱动器102对应于用于控制作为控制对象的设备的存储介质的软件。设备驱动器102根据来自文件系统101的FAT文件系统格式将基于簇级的访问请求转换成基于介质103上数据记录和再生单位的扇区级的访问请求,并将得到的访问请求提供给介质103。
在这种情况下,根据FAT文件系统逻辑格式化(初始化)介质103。在图1中,连接至介质控制器13的诸如HDD、光盘型记录介质、或半导体存储装置的存储介质或存储装置在这里对应于设备驱动器102。介质103响应于来自设备驱动器102的扇区级上的访问请求从指定地址读出数据,并将读出的数据返回设备驱动器102。简而言之,介质103执行扇区级上的访问响应。
设备驱动器102从介质103接收扇区级上的访问请求,即,接收以扇区为单位的数据,并将接收的数据作为以簇为单位的数据处理并传至文件系统101(簇级上的访问响应)。
文件系统101将从设备驱动器102接收的数据作为文件级上的数据传至应用程序100。例如,应用程序100响应于由用户输入的操作对作为文件接收的数据执行应用程序级上的所需处理。
此外,FAT文件系统根据树型目录结构来管理存储的文件,以及作为一组簇单位来管理每个文件。通过本领域公知的目录项和称作FAT的表信息来实现刚刚提及的这种文件管理和数据管理。目录项为表示存储介质上文件或目录(子目录)位置的信息,以及FAT为表示形成目录或文件的簇级上的链(链接或连接)的信息。
图3示出了根据FAT标准的存储介质的格式结构。
当规定多种FAT形式时,在图3示出相应于FAT16和FAT32形式的格式结构。
首先,描述相应于图3中左侧示出的FAT16形式的格式结构。
所示的结构为符合LBA(逻辑块地址)的逻辑结构。换句话说,块(扇区)数从图3中最上部位置处所示的顶部扇区(LBA=0)向下增加。
注意到,在FAT文件系统中,为了描述方便,当可将一个物理存储区分为多个分区(partition)时,图3示出了一个物理存储区由单个分区组成的格式结构。
首先,由LBA=0表示的顶部扇区用作称作MBR(主引导记录器)的引导区。
图4A示出了MBR的结构。
参照图4A,一个扇区具有512字节的大小,因此,MBR具有512字节大小。在图4A中,通过从0000h~01FFh的十六进制数来表示MBR区的512字节,并且16字节单位示为一列。注意到,使用十六进位记数法用于表示,将代表十六进位记数法的符号h添加到诸如上述0000h和01FFh的数值的尾端。
字节位置0000h~01BDh的446字节区用于放置用于启动(引导)的码(启动码),其中,存储介质用作用于启动OS(操作系统)的介质。
MBR的字节位置01BEh~01FGh的64字节区用作分区表,其中,放置了与启动时所需的各个分区相关的预定信息。将分区表的区域分成四个16字节的子区,每个都单独对应于分区1、分区2、分区3、和分区4。相应于分区的子区用于放置相应于分区的项目。
在MBR最后两个字节的区域中,放置了55AAh作为表示扇区为MBR的标识符。
分区项目具有图4B所示的结构。参照图4B,最高字节位置00h用作放置表示是否将该分区指定为起动驱动的标记的区域。
在随后的字节位置01h~03h的3字节区域中,放置表示该分区的开始扇区作为CHS(柱面/磁头/扇区)的值。在字节位置05h~07h的3字节区域中,放置表示该分区的结束扇区作为CHS的值。
在字节位置08h~0Bh的4字节区域中,放置了表示LBA中分区的开始扇区的值。
在字节位置0Ch~0Fh的4字节区域中,放置了表示该分区数据大小(分区大小)的值。
在通过字节位置04h表示的1字节区域中,放置了称作系统标识符的表示分区对应的平台类型、文件系统等的值。
再次参照图3,MBR的顶部扇区的下面为多个扇区数的空闲区。空闲区下面的扇区形成用于分区单位的区域。
从一个分区中顶部扇区开始的预定字节数的区域用作系统区,其中,放置了与系统相关的信息。
系统区中以顶部扇区开始的预定字节数的区域用作BPB(BIOS参数块/引导参数块)。此处,在BPB区域中放置通过系统利用的用于块设备控制(例如,类似于与分区相关的主机侧的BIOS(基本输入/输出系统)的所需数据。在BPB中放置的信息包括下面描述的FAT区的数目、FAT区的主体部分的开始扇区、以及每个FAT区的扇区数。
BPB下面是依次排列的FAT1和FAT2的FAT区。通常,FAT1和FAT2的其中一个用作主FAT区。一般将另一个FAT区用作镜像区,其内容为主FAT区内容的副本,因此,例如被用作主FAT区的附加区或备份区。
在FAT区中,以数据区中簇号的顺序排列FAT项目。FAT项目和数据区中的簇彼此为一一对应关系。在每个FAT项目中,响应于目录或文件的存储结果,表示未使用簇、将被链到文件中簇的下一个簇的簇号、失效簇、EOF(文件末端:文件中最后的簇)等中一个事实的信息放置为关于簇的信息。
在FAT16格式中,通过两个字节(16位)代表簇号,并且与之对应,每个FAT项目的大小也为两个字节。
FAT1和FAT2区接下来为预定大小的引导目录项。在引导目录项中放置关于目录的目录项、目录项的文件等。
引导目录下位侧的扇区区域形成数据区。通过FAT文件系统管理将数据写入数据区和从数据区读出数据。因此,如图3所示,在文件系统的格式结构中,以由等于或大于1的预定数的扇区连接形成的簇为单位来管理数据区。如上所述,原则上,每个FAT区都具有相应于形成数据区的所有簇的FAT项目。
现在,描述相应于图3的右侧所示的FAT32的格式结构。
在FAT32的格式结构中,在由LBA=0表示的顶部扇区中也放置了MBR。MBR接下来为预定扇区数的空闲区,接下来为分区单位的区域。
作为FAT32格式结构的分区区域中的系统区,接着BPB区域设置了用于FSinfo的区域。
在FSinfo区中,放置了用于计算分区空闲容量的预定信息。接着FSinfo区依次设置FAT1和FAT2的FAT区。
在FAT32格式的FAT区中,也以簇号顺序排列与簇一一对应的FAT项目。在每个FAT项目中,响应于目录或文件的存储结果,放置关于簇的预定信息。然而,在FAT32格式中,通过四个字节(32位)表示簇号,因此,FAT项目的大小也为四个字节。
此外,FAT32的格式结构不包括在FAT16格式结构中的系统区中提供的用于引导目录项的区域。
在FAT32格式结构中,在数据区中放置引导目录。通过在BPB的预定区(RootClus)中放置的值来表示数据区中引导目录的开始簇号,并且为了访问引导目录,参照RootClus区并访问从RootClus区确认的簇号。由RootClus区表示的引导目录的开始簇号通常为2。
在这种情况下,也通过FAT32的文件系统来管理数据区,使得以簇为单位执行将数据写入数据区和从数据区读取数据。
图5示出了由FAT文件系统定义的目录项的结构。注意到,图5实际示出了相应于FAT32的目录项的结构。
在这种情况下,目录项具有32字节的大小。在图5中,通过0h~1Fh的值来表示从最高位字节至最低位字节的字节位置。
在形成目录项的32个字节中,从最高位字节位置0h至字节位置7h的8字节区用于放置文件或由目录项表示的目录的名称。
在从随后的字节位置8h至字节位置Ah的3字节区中,放置了相应于文件的文件形式的扩展名。
在随后的字节位置Bh处,放置了表示当前文件/目录属性的值。
此处,将字节位置Ch用作预留区。
在字节位置Dh~Fh的3字节区中,放置了表示文件/目录生成时间的值。
在字节位置10h~11h的2字节区中,放置了文件/目录生成日期的值。
在字节位置12h~13h的2字节区中,表示最后执行的访问文件/目录日期(最后访问数据)的值。
包括字节位置14h~15h的2字节区和字节位置1Ah值1Bh的2字节区的共四个字节的区域表示存储了文件/目录的存储介质顶部位置的簇号。换句话说,在共四个字节的这个区域中放置了文件/目录顶部簇号的值。在字节位置14h~15h的2字节区,放置了顶部簇号高位四字节的值。在字节位置1Ah~1Bh的4字节区中,放置了顶部簇号的低位四字节的值。
在字节位置16h~17h的2字节区中,放置了表示对文件/目录执行的记录(最后更新)时间(记录时间)的值。
在字节位置18h~19h的2字节区中,放置了表示对文件/目录执行的记录(最后更新)日期(记录日期)的值。
在字节位置1Ch~1Fh的4字节区中,放置了表示文件/目录大小(容量)的值。
图6A~6I示出了通过FAT文件系统的文件管理实例。注意到,在图6A~6I中,根据FAT32格式化文件。
在数据区中至少放置文件A、另一文件B、又一文件C、和再一文件D,并且在图6A~6D中分别示出文件A、B、C、和D的目录项。注意到,在参照图6A~6I给出的随后描述中,由于主要给出了目录项中顶部簇号(字节位置14h~15h/1Ah~1Bh)的相关信息,所以有时忽略其它区的信息。
图6E示出了FAT区的部分,并具有相应于文件A、B、C、和D存储结果的FAT项目内容。注意到,在图6E中,仅选择性地示出几乎对应于文件A、B、C、和D的FAT项目内容,使其能够被容易确定。此外,如上所述,在FAT32中,每个FAT项目都具有32位的大小。
此外,在图6E中示出的FAT区中的FAT项目以矩阵形式配置,其中,矩阵包括相应于FAT项目的簇号值对于如00000000h、00000010h、00000020h、00000030h、…表示的每一行而递增的行,以及作为最低位的值+00h~+0Fh的每一个都被添加至由对应行表示的簇号值的列。例如,在行00000000h和列+07h位置处的FAT项目对应于簇号00000007h。
在FAT文件系统中,包括由簇号00000000h和00000001h分别表示的顶部簇和随后的第二簇的两个簇为预留区(RSV)。在与此相应的关系中,也将相应于簇号00000000h和00000001h的FAT项目规定为预留区。
此外,作为将被放置在每个FAT项目中的值,通过00000002h~0FFFFFF6h中的一个表示链到当前簇下一个的簇号。此外,通过EOF=0FFFFFFh表示包括簇(文件末端的簇)的EOF(文件的最后簇)。此外,在图6E中,虽然通过“-”表示每个不被使用的簇,但实际通过例如00000000h的值来表示。
为了访问文件A,首先访问图6A中示出的文件A的目录项。例如,以下列方式执行对文件A目录项自身的访问。
将用于文件访问的命令依赖于绝对路径的情况作为实例。在这种情况下,为了访问文件A的目录项,首先访问引导目录,并且从引导目录沿路径跟踪目录项。此外,虽然存在在跟踪目录项的过程中有时会变成跟踪特定的当前目录的副目录的情况,但也可以由目录项来表示父目录和子目录之间的父子关系。为此,例如,在父目录侧的目录项中设置表示子目录的名称,同时在由父目录侧的目录项表示的子目录的目录项中设置在名称区中放置的表示存在父目录信息的目录项。因此,可以从父至子和从子至父双向跟踪目录。
随后,作为以上述这种方式根据路径跟踪目录项的结果,作为访问目的地可最终到达文件A的目录项。
在执行文件A的目录项的访问后,使用文件A的目录项作为起点来执行文件A自身的访问。
以下面的方式作为概念来执行文件A自身的访问。
为了访问文件A,获取文件A目录项的顶部(开始)簇号。顶部簇号表示开始簇号,其中,在数据区中存储文件A的数据,并且在这种情况下,为如图6A所示的00000007h。换句话说,在这个阶段,认为文件A的开始簇号为00000007h。
因此,文件系统访问相应于在图6E中示出的FAT区中的簇号00000007h的FAT项目,以参考在FAT项目中放置的值。在这种情况下,在相应于簇号00000007h的FAT项目中放置000000008h。因此,文件系统认为,在文件A的数据中,簇号00000008h的簇数据紧接着簇号00000007h的簇数据。因此,文件系统立刻访问并参考相应于簇号000000008h的FAT项目。由于00000009h放置在这样参考的FAT项目中,所以文件系统认为在文件A的数据中,簇号000000009h的簇数据紧接着簇号00000008h的簇数据。因此,文件系统立刻参考簇号00000009h的FAT项目。由于在参考的FAT项目中放置了表示EOF的值,所以文件系统认为文件A的末端为簇号00000009h的簇。
由此,从图6F的簇链可以看出,文件A由簇号00000007h~00000009h的簇连接数据形成。文件系统连续访问簇号00000007h~00000009h的簇,从而访问文件A。
从前面的描述中可以明白,通过放置在目录项中的顶部簇号和将从由顶部簇号给出的开始点开始参考的FAT区的FAT项目的内容来表示存储在数据区中的文件数据的位置。因此,文件系统可通过参考顶部簇号的信息和FAT项目的内容来访问文件。
还可以认可,通过目录项来表示依赖于树型目录结构的存储在数据区中的文件管理。
基于包括目录项和FAT区的文件管理信息,以下列方式来管理剩余的文件B、C、和D的存储位置。
首先,关于文件B,从图6B的目录项可以看出,顶部(开始)簇的簇号为0000000Ah。因此,如果参考图6E所示的FAT区的簇号0000000Ah所对应的FAT项目,则在FAT项目中,放置簇号0000001Fh作为表示下个簇的链信息。因此,如果跟踪FAT项目以参考相应于簇号0000001Fh的FAT项目,则放置簇号00000025h作为链信息。在相应于簇号00000025h的FAT项目中,放置簇号00000031h。在相应于簇号00000031h的FAT项目中,放置簇号00000030h。在相应于簇号的FAT项目中,放置表示EOF的值。
以这种方式,通过目录项和FAT区表示文件B由存储在以如图6G所示顺序跟踪的簇号0000000Ah、0000001Fh、00000025h、00000031h、和00000030h的簇中的数据连接形成。
同时,关于文件C,从图6C可以看出,将簇号0000001Bh表示为文件C目录项中的顶部(开始)簇。因此,从通过图6E示出的FAT区中簇号0000001Bh的FAT项目所给出的开始点开始连续参考FAT项目。结果,文件C由存储在以图6H所示顺序跟踪的簇号0000001Bh、00000011h、00000012h、00000013h、00000014h、以及00000003h的簇中的数据连接形成。
此外,关于文件D,从图6D可以看出,将簇号0000002Ch表示为文件D的目录项中文件的顶部(开始)簇。因此,从通过图6E示出的FAT区中簇号0000002Ch的FAT项目所给出的开始点开始连续参考FAT项目。结果,文件D由存储在以图6I所示顺序跟踪的簇号0000002Dh、0000002Eh、0000002Fh、00000028h、00000039h、0000003Ah、以及0000003Bh的簇中的数据连接形成。
下面,根据上述FAT文件系统的格式内容,首先描述本发明的背景。
根据先前描述,本实施例的数码摄像机1可将通过图像拍摄获得的运动图片和静止图片的视频数据和音频数据记录在例如可为HDD的存储介质上。通过所采用的文件系统,以文件为单位来管理记录在HDD上的数据,并且在本实施例中,采用FAT文件系统作为文件系统。
因此,图7示出了记录数据写入状态的实例,其中,当通过本实施例的数码摄像机1在HDD上记录运动图片文件时,将HDD的存储区视为簇单位连接。
参照图7,将在FAT文件系统的控制下将被记录在HDD上的一个运动图片文件的数据示为请求响应写入数据连接。图7中示出的请求响应写入数据如下所述。
通过数码摄像机1拍摄并记录的运动图片文件的格式与诸如MPEG2或MPEG4系统的MPEG系统兼容。因此,例如,在具有参照图1在上文中描述的结构的数码摄像机1中,视频信号处理部4具有可对输入其中的视频和音频信号执行为MPEG系统准备的压缩编码处理的结构部。此外,视频信号处理部4包括用于临时存储由压缩编码处理生成的数据的缓冲器(例如,环形缓冲型)。
视频信号处理部4响应于压缩编码处理的进行来累积压缩编码数据。随后,作为例如通过执行图2系统的程序的CPU 10而实现的应用程序100的功能,当缓冲器中数据的累积量超过固定水平时,向文件系统101发布用于从缓冲器读出特定大小的收集数据并将该数据写入并记录在HDD上的请求(数据写入请求)。在图7中示出的每个请求响应写入数据为从应用软件100传至文件系统101的数据单位,从而以这种方式,响应于一个数据写入请求将其记录在HDD上。
以参照图2在上文中描述的这种方式,文件系统101控制设备驱动器102,以在数据写入请求的时刻将传至其中的请求响应写入数据与来自应用程序100的每个数据写入请求一起写入和记录在HDD(存储介质)上。随后,通过文件末端处请求响应写入数据写入的终止,完成将一个运动图片文件写在HDD上。
此外,由于在这种情况下的请求响应写入数据为根据MPEG系统压缩编码的数据,所以其形成为如图9上段所示的一个或多个GOP(图片组)连接。本领域所公知的,GOP形成为包括以称作I图片的一帧图片完结的图像数据以及根据图像内容所需的多个B图片和一个P图片或多个P图片的数据,并具有作为用于使再生时的解码处理完全执行的最小数据单位的意义。此外,GOP的大小根据编码图像的内容等而不同。因此,请求响应写入数据也不是固定长度而是可变长度的单位数据。此外,例如,在应用程序100的层级上处理请求响应写入数据,并且在这一点上,不特别考虑与由文件系统管理的簇(单位区)大小的匹配。为了确认,定义簇以具有例如根据扇区大小所确定的预定固定长度。
由于请求响应写入数据具有可变长度并且与簇的大小不具有特定关系,所以在请求响应写入数据的大小大于簇大小的情况下,请求响应写入数据的大小不需要等于簇大小的整数倍。
基于先前的描述来描述图7中示出的运动图片文件记录结果的实例。首先,由于第一请求响应写入数据1为运动图片文件的顶部数据,所以将其写入以簇顶部位置开始的簇中(自然地,可执行数据写入控制,使得从簇的中间部分开始文件顶部的写入)。将请求响应写入数据1写入全部四个簇,在最后或第四个簇中写入的请求响应写入数据1的结束位置为该簇的中间位置。
下一个请求响应写入数据2接着请求响应写入数据1的结束位置写入。换句话说,由于每个请求响应写入数据为组成一个完整文件的数据部分,所以当前一请求响应写入数据的结束位置为簇的中间位置时,从前一请求响应写入数据的结束位置开始写入随后的请求响应写入数据以填满簇,而不是从另一个簇的顶部开始写入随后的请求响应写入数据。注意到,在这种情况下,光学系统部2的结束位置与簇的末端一致。因此,每当发布数据写入请求时,以上述方式来连续执行请求响应写入数据的写入,从而填满簇。注意到,将图7所示的簇通过上文所述的簇链彼此逻辑连接。
通过上文的描述可以看出,在请求响应写入数据级上查看记录在存储介质(HDD)上的运动图片文件的情况下,在FAT文件系统的关系中,相邻请求响应写入数据之间的边界不需要与相邻簇之间的边界一致。
随后,在一个请求响应写入数据的大小大于一个簇的大小的情况下,作为使用其中写入了请求响应写入数据的簇的结果,四种模式是有效的,这四种模式对应于图7的请求响应写入数据1、2、N、及X,并被表示为图8中的模式1~4。
具体地,在模式1中,请求响应写入数据的开始位置为簇的顶部,以及请求响应写入数据的结束位置为另一簇的中间位置。
在模式2中,请求响应写入数据的开始位置为簇的中间部分,以及请求响应写入数据的结束位置为另一簇的末端。
在模式3中,请求响应写入数据的开始位置为簇的中间部分,以及请求响应写入数据的结束位置也为另一簇的中间部分。
在模式4中,请求响应写入数据的开始位置为簇的顶部,以及请求响应写入数据的结束位置为另一簇的末端。
随后,当文件系统控制请求响应写入数据的写入时,文件系统响应于与上述簇的使用结果相关的四种模式,将请求响应写入数据分为符合文件系统阶层的数据处理单位。下文中,将数据处理单位称作文件主体。
在请求响应写入数据的开始位置和结束位置为簇的中间部分的情况下,由将被放置在簇中的请求响应写入数据的数据部分形成文件主体。或者,在仅放置了请求响应写入数据的相同数据部分的情况下,由将被放置在一个或多个彼此连接的簇中的请求响应写入数据的数据部分形成文件主体。下文中,因为前面的文件主体为小于一簇的数据部分,所以将其称作不完全型文件主体,以及下文中,因为数据被完全放置在一个以上的簇中,所以将后面的文件主体称作完全放置文件主体。
例如,关于图7中示出的请求响应写入数据1,开始位置与簇的开始位置一致,并且结束位置为另一簇的中间部分。因此,将请求响应写入数据1分成包括在前文件主体(1)和在后文件主体(2)的两个文件主体。在这种情况下,文件主体(1)为完全放置型,以及文件主体(2)为不完全型。注意到,关于文件主体的圆括号中的数值表示请求响应写入数据中文件主体排列的逻辑顺序。
同时,关于请求响应写入数据2,开始位置为簇的中间部分,并且结束位置与另一簇的末端(簇边界)一致。因此,将请求响应写入数据2分成不完全型的文件主体(1)和完全放置型的另一个文件主体(2)。
关于请求响应写入数据3,开始位置和结束位置都在不同簇的中间位置。因此,将请求响应写入数据分成三个文件主体,包括不完全型的文件主体(1)、完全放置型的另一文件主体(2)、以及不完全型的又一的文件主体(3)。
由于其开始位置和结束位置都对应于簇边界,所以请求响应写入数据4仅由完全放置型的文件主体(1)组成。
图10示出了在当将静止图片文件记录在存储介质(HDD)上时以簇为单位查看HDD存储区的情况下记录数据写入状态的实例。注意到,图10示出的静止图片文件为JPEG格式。在与其相应的关系中,例如,应该配置本实施例的数码摄像机1的视频信号处理部4的静止图片处理部,使其可执行预备用于JPEG格式的编码及解码处理等。
例如,响应于分辨率、图像内容等,JPEG系统的静止图像文件本身也具有可变大小,并且不特别考虑该大小与文件系统侧的簇大小的关系。此外,关于通过图像拍摄获取的静止图片文件,根据一个数据写入请求,将静止图片文件的所有数据写入存储介质。简而言之,静止图片文件的整个数据形成一个请求响应写入数据。
随后,在特定静止图片文件的大小不等于簇大小整数倍的情况下,例如,如图10所示,将静止图片文件分成从文件的数据开始位置开始的完全放置型文件主体(1)和随后的不完全型文件主体(2)。
此外,尽管没有在图10中示出,但是如果静止图片文件的大小等于簇大小的整数倍,则认为静止图片文件由如参照图7在上文中描述的一个完全放置型文件主体组成。
此外,如果数据写入控制为可将文件的开始位置设为簇的中间部分,则添加将文件分成不完全型的文件主体(1)和随后的完全放置型的文件主体(2)的模式以及将文件分成不完全型的文件主体(1)、随后的另一完全放置型的文件主体(2)、以及随后的又一不完全型的文件主体(3)的另一种模式。
随后,例如,假设采取如图11中示出的数据写入控制,通过FAT文件系统执行上述对象请求响应写入数据的文件主体的这种划分。图11的流程图示出了当将示出为图7中的请求响应写入数据N的模式3的请求响应写入数据写入存储介质中时控制过程的实例。
例如,如果文件系统从高位处理层的应用程序中接收数据写入请求时,则基于与该请求一起传至其的新请求响应写入数据的大小等和以前的数据写入结果来判定哪一个簇使用作为将新请求响应写入数据写入存储介质中时的结果的结果模式1~4。因此,如果判定结果为模式3,则文件系统执行图11中示出的处理。
如前所述,将模式3的请求响应写入数据分成不完全型的文件主体(1)、完全放置型的另一文件主体(2)、以及不完全型的又一文件主体(3)。因此,在图11的步骤S101中,文件系统执行用于写入文件主体(1)的控制。随后在下一步骤S102中,判定在步骤S101中写入文件主体(1)的结果为成功(OK)还是失败(NG)。例如,虽然控制低位设备驱动器作为文件系统的数据写入控制,但设备驱动器返回表示响应于从文件系统命令的数据写入将数据写入存储介质的执行结果为OK还是NG。基于从设备驱动器返回的数据写入结果的信息来执行步骤S102中的判定处理。注意到,将这种方法类似地应用于关于随后数据写入结果或用于更新管理信息(FAT、目录项)的数据写入结果的在OK和NG之间的判定。
如果在步骤S102中判定数据写入结果为NG,则处理前进至步骤S115。在步骤S115中,例如,执行用于通知高位应用程序等数据写入结果失败(NG)的处理。例如,如果在步骤S115中通知应用程序数据写入失败,则执行预定的错误复制处理,例如,强迫结束文件的写入,或者如果可能,重写(尝试再次写入)文件。
注意到,例如,如果响应于步骤S115中的通知,执行强制结束文件记录的处理作为应用程序的错误复制处理,则优选地将该通知作为错误信息等发给用户。这是因为,如果仅强制结束记录操作而不输出错误消息,则存在用户可被不经意干扰的可能性。
例如,虽然错误消息的输出形式可给出为显示图像或声音,但在图13中示出错误消息输出为显示部7上的显示图像的形式实例。
在图13中所示的错误消息中,在显示部7的显示屏幕部7a上显示呈现给用户的错误消息“发生驱动错误:重新接通电源”。
再次参照图11,如果在步骤S102中获得OK的写入结果,则处理前进至步骤S103,执行用于写入文件主体(2)的控制。随后,在步骤S104中,判定在步骤S103中文件主体(2)的写入结果为OK还是NG。
如果步骤S104中的判定结果为OK,则处理前进至步骤S105,执行用于写入文件主体(3)的控制。然而,如果在步骤S104获得NG的判定结果,则执行在步骤S107以及下列等等步骤中的用于更新文件管理信息(FAT、目录项)的过程。注意到,将在下文中描述步骤S107以及下列等等步骤中的过程。
此外,当执行步骤S105中的文件主体(3)的写入控制时,在步骤S106中判定步骤S105中的文件主体(3)的写入结果为OK还是NG。
注意到,在图11的流程图中,虽然不管步骤S106中的判定结果为OK还是NG都执行在步骤S107以及下列等等步骤中的用于更新管理信息的过程,但将在步骤S107以及下列等等步骤中更新的管理信息的内容依赖于步骤S106中的判定结果为OK还是NG而不同。
在步骤S107中,响应于至此的文件主体的写入结果来执行用于更新FAT1区内容的数据写入控制。如上文中参照图3所述,由FAT文件系统利用的文件管理信息的FAT包括FAT1和FAT2两个FAT区。在步骤S107中,对来自FAT1和FAT2区的FAT1区执行更新。随后,在下一步骤S108中,判定步骤S106中作为更新FAT1区的数据写入结果为OK还是NG。如果数据写入结果为OK,则处理前进至步骤S109。另一方面,如果数据写入结果为NG,则处理前进至步骤S115,发布写入失败的通知。
在步骤S109中,执行用于更新FAT2区的数据写入控制。随后,在步骤S110中,判定数据写入结果为OK还是NG。如果数据写入结果为OK,则处理前进至步骤S111,但是如果数据写入结果为NG,则处理前进至步骤S115。
在步骤S111中,执行用于更新与FAT区的表信息一起形成FAT文件系统的文件管理信息的目录项的数据写入控制。随后,在接下来的步骤S112中,执行写入结果的判定。如果在步骤S112中获得OK的判定结果,则处理前进至步骤S113,但是如果获得NG的另一判定结果,则处理前进至步骤S115。
在步骤S113中,判定作为至此进行的过程执行结果为OK的所有三个文件主体(1)、(2)、和(3)的数据写入是否为成功(OK)。随后,如果获得肯定的判定结果,则在步骤S114中,将写入请求响应写入数据成功(OK)的通知发给高位应用程序。例如,如果剩余了待被记录的数据,则接收通知的应用程序继续控制,以连续将剩余数据记录在存储介质上。
顺便提及,在三种情况下启动步骤S107~S111中用于文件管理信息的更新处理,包括步骤S104中获得NG的判定结果的情况、步骤S106中获得NG的判定结果的另一情况、以及步骤S106中获得OK的另一个判定结果的又一情况。
首先,在步骤S104中获得NG的判定结果的情况为尽管在步骤S101中文件主体(1)的写入成功但在步骤S103中文件主体(2)的写入失败的情况。此后,执行步骤S107~S111中用于文件管理信息的更新处理,使得更新文件管理信息,从而仅反映文件主体(1)的写入结果。此外,由于相应于这种情况在步骤S113中的判定为否定,所以在步骤S115中发布请求响应写入数据写入失败的通知。
同时,在步骤S106中获得NG的判定结果的情况为尽管在步骤S101中文件主体(1)的写入和在步骤S103中文件主体(2)的写入成功但在步骤S105中文件主体(3)的写入失败的情况。因此,在这种情况下的步骤S107~S111中,执行用于使文件主体(1)和(2)的写入结果被反映的文件管理信息的更新。此外,在这种情况下,在步骤S113中的判定结果为否定,在步骤S115中发布写入失败的通知。
随后,如果在步骤S106中获得OK的判定结果,则表示所有文件主体(1)、(2)、和(3)的写入成功。因此,在步骤S107~S111中,执行用于使文件主体(1)、(2)、和(3)的写入结果被反映的文件管理信息的更新。在这种情况下,由于在步骤S113中获得肯定的判定结果,所以在步骤S114中发布写入成功的通知。
根据上述这种过程,可以认为,更新文件管理信息使得反映写入结果。这种情况下的文件主体为通过使用簇作为边界划分请求响应写入数据以符合FAT文件系统写入控制来形成的单位数据,其中,请求响应写入数据为通过应用程序在文件级上处理的写入数据单位。因此,如果配置控制过程使得每当文件主体的写入成功时就顺序更新文件管理信息,则可使写入结果成功的数据进入可以管理这些数据而不以由FAT文件系统管理的簇为单位留下任何数据。最初,这被认为是自然并且合理的。
例如,在流行的计算机系统中采用FAT文件系统的情况下,用于如图11所示的数据写入控制的这种过程不会特别地出现问题,并且相对有效。然而,例如,在将本实施例的数码摄像机1与流行的计算机系统进行比较的情况下,大部分待被记录在存储介质(HDD)中的文件具有运动图片的流数据形式(更具体地,压缩编码格式),并且数码摄像机1是便携的,并通过电池驱动。因此,数码摄像机1具有这样的特殊环境,即,很难排除记录可被无意识操作等不适当地中断的可能性。考虑到这种情况,例如,参照图11如上所述的请求响应写入数据的写入控制过程遭受如下所述的这种不利情况。
此外,这里描述通过MPEG系统压缩编码形式的运动图片文件作为实例。
根据MPEG系统的运动图片文件由上述GOP(图片组)单位的序列(连接)形成。
对应于此,如图9中示出的记录数据,请求响应写入数据的结构也由GOP序列形成。具体地,当运动图片文件将被记录时,每当通过视频信号处理部4的压缩编码处理形成GOP单位的记录数据时,文件系统的高位应用程序将记录数据写入缓冲器,以累积记录数据。随后,当累积的状态变为GOP单位序列的数据集合具有超过固定大小的大小时,读出集合GOP单位序列的数据作为请求响应写入数据,并将其传至文件系统。
以这种方式,请求响应写入数据由特定数目GOP的连接形成。因此,可以认为请求响应写入数据具有可变长度,并且如上所述与簇的大小不具有特定关系。
这表明形成请求响应写入数据的GOP之间的边界不需要与形成在存储介质上的簇之间的边界一致。因此,这还表明可通过簇之间的边界来划分GOP。参照图9确定了这点。
在图9的实例中,由于从簇1的顶部开始写入请求响应写入数据的数据,所以请求响应写入数据的写入开始位置与相应于簇1顶部的簇边界Cdv0一致。然而,请求响应写入数据中的另一个簇边界Cdv1位于请求响应写入数据GOP的中间。换句话说,在簇边界Cdv1的位置处,簇边界和GOP边界彼此不一致。此外,可以看出下一个簇边界Cdv2与GOP边界一致,此外,与簇M末端对应的再下一个簇边界Cdv3位于GOP的中间。随后,在这种情况下,写入请求响应写入数据,使其末端位于开始位置为簇边界Cdv3的簇M+1的中间位置。
换句话说,在图7的实例中,虽然请求响应写入数据具有与模式1的簇对应的关系,但在相应于文件主体(1)和文件主体(2)之间边界的簇边界(Cdv3)处分割GOP。
此处,假定根据参照图11如上所述的过程,将在图9中示出的模式1的请求响应写入数据顺序记录在存储介质上。注意到,虽然上文描述了图11示出了记录具有模式3并被分成三个文件主体的请求响应写入数据的的过程,但由于在当前情况下的请求响应写入数据具有模式1并被分成两个文件主体,所以实际根据省略步骤S105和S106的图11的过程来执行请求响应写入数据的记录。
随后,当根据图11的过程顺序记录图9的请求响应写入数据时,例如,假设文件主体(1)的写入成功但文件主体(2)的写入失败。在这种情况下,根据图11的过程,执行文件管理信息(FAT1、FAT2和目录项)的更新,使得通常通过步骤S107以及下列等等步骤中的处理来反映文件主体(1)的写入结果。因此,例如,发布写入失败通知,并且例如,执行数码摄像机1的复位。
随后,例如,在以上述方式执行数码摄像机1的复位后,假定尝试再生最后记录的运动图片文件。此时,通过FAT文件系统来管理最后记录的运动图片文件,使其被记录直至图9的簇边界Cdv3。换句话说,通过FAT文件系统管理文件的末端簇(即,簇M+1)。
根据最后的运动图片文件的再生,文件系统根据用于运动图片文件的再生请求来执行簇级上的读出,并将读出的数据传至应用程序。应用程序处理文件级上的接收数据,以再生并输出数据。此时,例如,应用程序处理从文件系统传至其中的簇级数据作为GOP单位的数据序列,并使数字信号处理部4根据MPEG格式执行解码处理。
然而,由于如上所述地管理这种情况下的运动图片文件的数据从而将其嵌入并记录直至图9的簇边界Cdv3,所以实际上,运动图片文件的末端位置为某个GOP的中间位置。
在尝试执行用于MPEG格式的压缩编码数据的解码处理(其中,通常不以这种方式完结GOP),并且再生并输出得到的数据的情况下,发生再生错误的可能性很高。如上所述,由于GOP为用于双向预测的解码处理的最小单位,所以例如,即使仅存在GOP前半部分数据,如果丢失了GOP的后半部分数据,则也会偶尔丢失用于通过前半部分数据进行解调的数据。在这种情况下,不能够执行一般的解调处理。换句话说,如果在中间位置处划分作为GOP的数据单位,则仅有一个划分的数据部分没有意义。因此,认为只有以这种方式划分的一个数据部分不能本来独立存在。
随后,如果不能够执行一般的解码处理,则可能发生再生错误,因此,可能发生系统处于异常状态或操作被异常停止(冻结)这样的故障。因此,存在会降低装置的可靠性的可能性。
另外,上述这种故障不仅对运动图片文件会发生,而且对如参照图10在上文所述的静止图片文件也可能发生。虽然图10中示出的静止图片文件为JPEG格式,但这里可以认为形成一个JPEG格式的文件的数据单位对应于运动图片文件的GOP。这意味着,在图10的实例中,以JPEG格式压缩编码的一个静止图片文件数据表示以模式1记录在存储介质上的结果。在这种情况下,例如,如果只有文件主体(1)的写入成功而文件主体(2)的写入失败,则当稍后尝试再生数据时,因为文件主体(2)的数据不能被用于解码处理,所以存在发生再生错误的可能性。
因此,在本实施例中,为了以这种方式记录请求响应写入数据,推荐下面的过程,可以防止如上所述的这种再生错误。
图12的流程图示出了根据本实施例的用于记录请求响应写入数据的过程实例。注意到,图12还示出了当类似于图11的情况将模式3的请求响应写入数据(图7中示出的请求响应写入数据N)写入存储介质时的控制过程的实例。
参照图12,在步骤S201中执行的将文件主体(1)写在存储介质上的控制类似于图11的步骤S101。随后,在下一步骤S202中,判定在步骤S201中文件主体(1)的写入结果是成功(OK)还是失败(NG)。如果获得NG的结果,则处理前进至步骤S214,类似于图11的步骤S115,向应用程序发布请求响应写入数据的当前写入失败的通知。
另一方面,如果在步骤S202中得到文件主体(1)的写入结果为OK的判定结果,则处理前进至步骤S203,执行文件主体(2)的写入控制。随后,在步骤S204中,执行关于文件主体(2)写入结果的判定。如果在步骤S204中得到写入结果为NG的判定结果,则处理前进至步骤S214,但是如果得到OK的判定结果,则处理前进至步骤S205。在步骤S205中,执行文件主体(3)的写入控制。随后,如果在步骤S206中得到文件主体(3)的写入结果为NG的判定结果,则处理前进至步骤S214,但是如果得到OK的判定结果,则执行在步骤S207~S212中用于更新文件管理信息(FAT1、FAT2和目录项)的过程。注意到,步骤S207~S212中的过程类似于图11的步骤S107~S112中的过程。然而,由于处理前进至图12过程中的步骤S207表示所有文件主体(1)、(2)、和(3)的写入成功,所以省略图11中步骤S113的处理。
根据图12中示出的过程,例如,当模式3的请求响应写入数据将被记录在存储介质上时,如果在文件主体(1)、(2)、和(3)的写入期间文件主体(1)、(2)、和(3)中的任何一个的写入结果为NG,则处理立刻前进至在步骤S214中发布请求响应写入数据写入失败通知的过程。具体地,例如,如果文件主体(1)的写入成功且文件主体(2)的写入失败,则处理前进至写入失败通知,而不执行反映文件主体(1)新记录的文件管理信息的更新处理。换句话说,在本实施例中的请求响应写入数据的记录过程中,仅当形成请求响应写入数据的全部文件主体的写入成功时,才执行文件管理信息的更新。简而言之,仅当形成请求响应写入数据的数据写入全部成功时,才执行根据写入结果更新文件管理信息。注意到,在请求响应写入数据由两个文件主体形成的情况下,可以省略图12中步骤S205和S206的处理。
在采用图12所示的过程时,根据本实施例中一个请求响应写入数据的记录,如果形成请求响应写入数据的所有文件主体的写入成功,则管理请求响应写入数据,使其存储在存储介质中。然而,如果任何一个文件主体的写入失败,则管理请求响应写入数据,使其不被记录在存储介质中。这意味着,在本实施例中,记录在存储介质上的运动图片文件的数据总是具有将请求响应写入数据用作最小单位的结构,并且保持文件的末端位置与请求响应写入数据的末端位置一致。随后,当与图9中示出的情况进行对比时,确保总是由普通GOP的连接形成运动图片文件。另一方面,如果根据图11的过程执行记录,则当完成所有文件数据的写入时,文件数据具有将请求响应写入数据用作最小单位的结构,并且文件的末端位置可与请求响应写入数据的末端位置一致。然而,如果请求响应写入数据的写入中途失败(第二或随后的文件主体的写入失败),则最后的数据部分小于请求响应写入数据。当与图9的情况进行对比时,可将文件末端定位在上述GOP的中部。
以这种方式,在本实施例中,在将运动图片文件作为实例的情况下,不管文件数据的写入是否成功地写至末端或中途失败,也能确保作为GOP单位的连接完成的文件结构。因此,根据本实施例,防止了无效记录可能导致再生错误的文件。
注意到,例如,关于如图10所示的静止图片文件,如果数据写入中途失败,则在文件系统上管理文件,使其不被记录在存储介质上。换句话说,在这种情况下,通过将写入失败的文件看成不存在文件来防止再生错误。
如果假定以上述这种方式通过文件系统管理文件的记录,则例如,适当地对作为文件管理单位的每个簇顺序更新记录结果(根据图11的过程)。然而,根据这个过程,在运动图片文件或静止图片文件的情况下(尤其是压缩编码形式),错过文件需要再生的数据部分的可能性较高,导致了再生错误。
因此,本实施例采用一种思想,即使不尝试通过将数据细分成簇单位来留下有效数据,对于运动图片文件,也可采用留下通常记录至末端的最小再生单位(GOP)的数据的处理。此外,本实施例采用一种思想,即使不不尝试通过将数据细分成簇单位来留下有效数据,对于静止图片文件,最终获取文件存在或文件不存在的结果。根据刚刚描述的思想,在本实施例中,配置基于除非如图12所示形成请求响应写入数据的所有文件主体的写入成功,否则不更新文件管理信息的概念的过程。
此外,根据如图12所示的这种过程执行的数据写入表明不同时将文件主体和文件管理信息(FAT1、FAT2和目录项)写在存储介质上,而是随处理时间流逝按顺序写入。
在以这种方式根据时序顺序写入数据和管理信息的情况下,如果发生例如在重写期间电源被切断并中断处理的这种故障,则存在例如在实际记录在记录介质上的数据内容和文件管理信息的管理内容之间会发生某些不匹配的可能性。例如,这种不匹配可引起这样的缺点,实际记录在存储介质上的有效记录数据的大小和由文件系统管理的记录数据的大小彼此不同,有需要时,可能不能正常访问文件。因此,即使例如发生上述这种缺点,优选恢复匹配状态。
因此,下面描述在通过根据参照图12在上文中描述的本实施例的请求响应写入数据的写入过程来执行将文件记录在存储介质上的情况下用于恢复记录数据管理匹配的结构。
首先,参照图14(其中,在时间轴上示意性示出写入控制过程)在下面描述图12中示出的请求响应写入数据(文件主体)和文件管理信息(FAT1、FAT2和目录项)的写入控制过程。
如图14所示,根据图12中示出的写入控制过程,以时间流逝的这种顺序来执行主体文件(1)、主体文件(2)、主体文件(3)、FAT1、FAT3、以及目录项在存储介质上的写入。因此,如图14所示,认为可以通过tm0~tm7的七个处理定时划分刚刚所述的这种写入过程的顺序。
处理定时tm0为开始写入一个请求响应写入数据之前的定时,即,首先开始的请求响应写入数据的文件主体(1)的写入之前的定时。
处理定时tm1为结束写入文件主体(1)之后开始写入文件主体(2)之前的定时。
处理定时tm2为结束写入文件主体(2)之后开始写入文件主体(3)之前的定时。
处理定时tm3为结束写入文件主体(3)之后开始写入将被作为文件管理信息首先写入的FAT1之前的定时。
处理定时tm4为结束写入FAT1之后开始写入FAT2之前的定时。
处理定时tm5为结束写入FAT2之后开始写入目录项之前的定时。
处理定时tm6为写入目录项(即,写入一个请求响应写入数据)结束的定时。
在以参照图14所述的这种方式设置了用于写入一个请求响应写入数据的处理定时之后,在本实施例中,准备在图15A和15B中示出的内容的备份信息。随后,例如,将备份信息存储在即使切断电源也不会擦除所存储内容的存储区(存储设备)中,例如,非易失性存储器12a。
图15A示出了备份信息的结构实例。
参照图15A,备份信息包括处理定时(进展信息)、开始簇号、结束簇号、目录项存储扇区、以及实际写入目录项存储扇区的存储介质上的LBA。注意到,在本实施例中,可将备份信息中的目录项存储扇区和LBA的相应信息通称为“目录项相关备份信息(文件管理相关信息)”。
处理定时区具有两个字节的大小,例如,如图15B所示,为每个处理定时tm0~tm6定义将被放置在存储定时区中的值。在这种情况下,将值定义为:
tm0=0×11
tm1=0×21
tm2=0×22
tm3=0×23
tm4=0×30
tm5=0×40
tm6=0×00
当实际执行请求响应写入数据的写入控制顺序时,顺次更新在处理定时区中放置的处理定时。注意到,相应于如上指定的处理定时的值仅为实例,可选地,可以采用不同的值。
在开始簇号区中,放置了包括在当前循环中将被写入的请求响应写入数据开始位置的存储介质上的簇号(地址)。在结束簇号区中,放置了包括在当前循环中将被写入的请求响应写入数据的结束位置的存储介质上的簇号。这里,如果假定将请求响应写入数据写入连续的簇号中,则通过开始簇号和结束簇号(单位区使用信息)来表示将被用于写入在当前写入循环中被写入的请求响应写入数据的这些簇。
在目录项存储扇区中,放置具有用于情况(其中,完成了当前写入循环中请求响应写入数据的写入(成功))的更新内容的目录项的数据作为有效数据。随后,将目录项数据放置在一个扇区大小中的扇区形成此处的目录项存储扇区。注意到,一个扇区具有512字节的大小,并且相应于此,目录项存储扇区也具有512字节的大小。
虽然参照图5在上文中所述目录项具有32字节的大小,但将被写入存储介质或从存储介质中读出的数据的最小单位作为设备驱动器层对应的扇区单位。在这种情况下,如果一个扇区具有512字节的大小,则在扇区大小中足够容纳32字节的目录项。因此,记录目录项时,将目录项的数据嵌入一个扇区的大小中,并将扇区单位的数据写在存储介质上。随后,读取时,从存储介质中读出嵌入目录项数据的扇区,并从读出的扇区中提取目录项的数据。
对应于此,在本实施例中,当目录项的数据将被放置在备份信息中时,放置当在存储介质上记录目录项时用于一个扇区的数据。因此,在下文所述需要从存储介质读出备份信息的目录项以恢复文件管理的匹配的情况下,当从备份信息中读出目录项时,在一个扇区的大小中执行读取。因此,例如,可将读出的数据按原样传至设备驱动器。换句话说,例如,在从备份信息中读出32字节大小的目录项的信息之后,例如,文件系统不需要执行将目录项的数据嵌入扇区的这种处理。以这种方式,根据本实施例,可有效地执行根据备份信息的目录项的写入在文件系统和设备驱动器之间的数据传送,使得例如可实现处理负荷的降低。
此外,放置在相同备份信息中的LBA表示将实际记录目录项存储扇区的存储介质的位置。
现在,参照图16的流程图来描述当开始写入一个请求响应写入数据时用于准备处理的过程。具体地,当响应于来自应用程序的数据写入请求,将根据图16示出的过程实际执行写入一个请求响应写入数据时,在开始写入前,通过文件系统执行图16中所示的过程。
例如,如果文件系统例如从应用程序接收数据写入请求,则在步骤S310中,搜索足够记录将响应于数据写入请求写入的请求响应写入数据的空闲区(簇单位中的区域)。随后,在步骤S302中,文件系统判定是否存在空闲区。对于这个处理,文件系统可以参考现阶段最新的文件管理信息的内容。更具体地,通过搜索表示在FAT中注册的未使用簇的FAT项目,文件系统判定是否遗留了许多足够用于容纳将在当前写入循环中被写入的请求响应写入数据的大小的未使用簇。
如果在步骤S302中判定不存在在当前写入循环中足够写入请求响应写入数据的空闲区,则处理前进至例如步骤S308。在步骤S308中,文件系统向应用程序发布不存在用于将在当前循环中被写入的请求响应写入数据的空闲区的通知。例如,如果正在记录运动图片文件,则应用程序接收通知并停止记录操作到那时为止。此外,应用程序输出用于通知用户因为预定格式的空闲区消失所以停止记录操作的消息。另一方面,如果即将开始静止图片文件的记录,则应用程序放弃静止图片文件的记录,并输出用于通知记录文件的充足存储容量不足的消息。
另一方面,如果因为空闲区存在所以在步骤S302中得到肯定结果,则在步骤S303~S307中执行用于写入请求响应写入数据的准备处理。
作为准备处理,首先在步骤S303中,将当在当前记录循环中的请求响应写入数据将被写在存储介质上时包括写入开始位置的簇确定为写入开始位置。通过簇号进行该判定。换句话说,这里确定将被写入请求响应写入数据的存储介质上的顶部簇号。随后,在步骤S304中,确定包括在当前写入循环中的请求响应写入数据的写入结束位置的结束簇号。在这种情况下,如果假定将具有连续簇号的存储区用于至少写入请求响应写入数据,则基于簇中当前写入循环中的请求响应写入数据的写入开始位置、请求响应写入数据的大小、以及簇大小,可通过开始簇号顺次增加必要值来指定结束簇号。
随后,在步骤S305中,对于完成了当前写入循环中的请求响应写入数据写入(成功)的情况,应用程序获取形成目录项内容的信息项的内容。
形成目录项的信息为例如参照图5如上所述的信息。因此,在步骤S305中,生成作为形成目录项的信息的名称、扩展名、属性、生成时间、生成日期、最后访问日期、顶部簇号、记录时间、记录日期、以及大小的信息。注意到,在所提及的信息项中,由于名称、扩展名、属性、生成时间、生成日期、以及顶部簇号都不是在文件数据记录期间特别改变的信息,所以只有当记录记录对象文件中的第一请求响应写入数据时在步骤S305中获取并保留信息,在稍后的记录循环中不需要在步骤S305中特别地重新获取该信息。此外,诸如最后访问日期、记录时间和记录日期的信息项可与当首先记录文件时的生成时间和生成日期相同,可以在稍后的写入循环中利用在第一个记录循环中在步骤S305获取的那些信息。相反,关于大小的信息项,每当在存储介质上写入请求响应写入数据时,需要生成并获取根据请求响应写入数据的大小而增加的值。随后,使用以这种方式生成的信息项来生成目录项。注意到,生成此处的目录项作为扇区单位的数据,其中,根据与备份信息中的放置的相应关系,将32字节的目录项实体的数据嵌入一个扇区的521字节的大小中。
在下一步骤S306中,将包括在步骤S303中确定的开始簇号、在步骤S304中确定的结束簇号、以及在步骤S305中生成的目录项的一个扇区的数据信息和相应于包括目录项的扇区的LBA放置在备份信息中。注意到,在本发明中,由于将备份信息存储在在非易失性存储器12a中,所以执行访问非易失性存储器12a以将上述信息写入备份信息适当位置的处理。
随后,当完成在步骤S306中将预定信息项放入备份信息的过程时,在步骤S307中,开始响应于在当前写入循环中的数据写入请求的请求响应写入数据的写入过程。
图17示出了在图16的步骤S307中开始的请求响应写入数据的写入过程。注意到,也可以认为例如通过文件系统执行这个过程。此外,图17示出了写入过程,其中,与参照图12在上文中描述的过程类似地写入模式3结构的请求响应写入数据。此外,在实际过程中,尽管每次写入文件主体(1)、(2)、和(3)、FAT1、FAT2、以及目录项的每一个时执行写入结果为OK还是NG的判定,但在图17中省略刚刚提及的这种写入结果判定过程,而是假定正常写入文件主体(1)、(2)、和(3)、FAT1、FAT2、以及目录项。
在图17示出的过程中,随着顺次写入请求响应写入数据,响应于实际处理的进展,在备份信息上反映图14中示出的处理定时tm0~tm6。
具体地,首先在步骤S401中,将表示处理定时tm0的值(0×10)放置在非易失性存储器12a的备份信息的处理定时区中。随后,在步骤S402中,执行文件主体(1)的写入控制。随后,当完成步骤S402中的处理时,在步骤S403中,将被放置在备份信息的处理定时区中的值从在步骤S401中放置的tm0(0×10)重写为tm1(0×21)。随后,在步骤S404中,执行文件主体(2)的写入控制。
当完成文件主体(2)的写入时,在步骤S405中,文件系统将备份信息的处理定时区从tm1(0×21)重写为tm2(0×22)。随后,在步骤S406中,文件系统执行文件主体(3)的写入控制。
当完成文件主体(3)的写入时,在步骤S407中,文件系统将备份信息的处理定时区从tm2(0×22)重写为tm3(0×23),随后,在步骤S408中,执行FAT1的写入控制。
当完成FAT1的写入时,在步骤S409中,文件系统将备份信息的处理定时区从tm3(0×23)重写为tm4(0×30),随后,在步骤S410中,执行FAT2的写入控制。当完成FAT2的写入时,在步骤S411中,文件系统将备份信息的处理定时区从tm4(0×30)重写为tm5(0×40),随后,在步骤S412中,执行目录项的写入控制。
当完成步骤S412中目录项的写入(成功)时,正常完成当前写入循环中请求响应写入数据的写入。响应于正常完成,文件系统将备份信息的处理定时区从tm5(0×40)重写为tm6(0×00)。此外,在步骤S413中,文件系统从非易失性存储器12a的备份信息中删除开始簇号、结束簇号、以及目录项相关备份信息的内容。在步骤S413中获取的备份信息的内容为对应于开始写入请求响应写入数据之前的初始值。
根据参照图17如上所述的请求响应写入数据的写入过程,每当进行文件主体(1)、(2)、和(3)、FAT1、FAT2、以及目录项的任何一个的写入时,顺次改变存储在处理定时区中的内容。由此,认为放置在处理定时区中的值表示关于在例如图12的流程图或图14中示出的本实施例中的请求响应写入数据的写入过程阶段的进展状况。随后,如果考虑例如电源被无意识断开而引起数据记录中途结束的情况,则在这种情况下的非易失性存储器12a中备份信息的处理定时区的内容表示正常完成最后的请求响应写入数据的写入顺序的阶段。换句话说,例如,当电源有效时,如果参考存储在非易失性存储器12a中的处理定时区,则能够判定最后记录的请求响应写入数据的写入已经正常完成或者在这样的写入期间被不正常地结束。此外,如果已经不正常地结束了写入,则能够指定已经正常结束请求响应写入数据的写入顺序的阶段。
现在,参照图18的流程图,描述为了恢复文件管理的匹配而通过本实施例的文件系统执行的过程实例。
例如,当接通数码摄像机1的主电源之后需要执行存储介质(HDD)的安装处理时,优先执行图18中示出的实例。此外,可认为通过文件系统来执行图18中示出的处理。
参照图18,首先在步骤S501中,文件系统访问非易失性存储器12a的备份信息,以读出备份信息,从而参照放置在备份信息处理定时区中的值(处理定时)。随后,在步骤S502中,文件系统判定参考值表示的是处理定时tm0~tm6的哪一个。
在步骤S502中判定的值对应于处理定时tm0的情况下,处理前进至步骤S503。
如图14所示,处理定时tm0表示开始写入请求响应写入数据之前的阶段。具体地,如果在步骤S502中判定的值为处理定时tm0,则表明根据最后的数据写入请求的请求响应写入数据的写入顺序已经失败,结果,在即将开始请求响应写入数据写入顺序第一阶段的文件主体(1)的写入之前,数据写入处理已经中途结束。
在这种情况下,尽管在存储介质上根本没有记录相应于最后的数据写入请求的请求响应写入数据,但是正常完成相应于倒数第二个数据写入请求的请求响应写入数据的写入顺序。在这种情况下,由于根本没有写入最后的请求响应写入数据的实体,所以不可能获取处于正常记录请求响应写入数据状态的文件管理内容。
因此,除了将保持在非易失性存储器12a中的备份信息的处理定时区的值设置为初始值tm0之外,退出图17示出的过程,在步骤S503中不执行处理。因此,维持文件管理的匹配,正常管理直到相应于倒数第二个数据写入请求的请求响应写入数据的请求响应写入数据。
如果在步骤S502中判定参考值表示处理定时tm1,则这表明最后的请求响应写入数据的写入顺序已经失败。结果,仅有至文件主体(1)的数据写入正常结束,并且下一个文件主体(2)根本没有被写入或仅写入到其中间部分。因此,不能确保文件主体(2)等数据的正常记录结果。在这种情况下,处理前进至步骤S504。
在如上所述仅将文件主体(1)正常写入的情况下,在这个时间点不存在作为剩余写入单位数据实体的文件主体(2)和(3)。因此,不可能获取处于正常记录请求响应写入数据状态的文件管理内容。
因此,在步骤S504中,文件系统执行将备份信息的处理定时区的值设置为初始值tm0的处理,以与上述步骤S503中类似的方式来初始化处理定时区的内容。
如果在步骤S502中判定参考值表示处理定时tm2,则这表明最后的请求响应写入数据的写入顺序已经失败。结果,仅有至文件主体(1)和(2)的数据的写入正常结束,并且不能确保文件主体(3)等数据的正常记录结果。此外,在这种情况下,在这个时间点不存在作为剩余写入单位数据实体的文件主体(3)。因此,在步骤S505中,文件系统执行将备份信息的处理定时区的值设置为初始值tm0的处理,以与上述步骤S503和S504中类似的方式来初始化处理定时区的内容。
如果在步骤S502中判定参考值表示处理定时tm3,则这表明最后的请求响应写入数据的写入顺序已经失败。结果,至文件主体(1)、(2)、及(3)的数据的写入都正常结束,但是不能确保FAT1、FAT2、以及目录项数据的正常记录结果。
这个结果对应于尽管将最后的请求响应写入数据的实体(文件主体(1)、(2)、和(3))写在存储介质上,但是写入结果没有反映在文件管理信息上,即,文件管理内容处于不匹配状态的状态。然而,在以这种方式将最后的请求响应写入数据的实体记录在存储介质上的情况下,可以管理文件系统上的最后的请求响应写入数据,使得使用备份信息正常记录数据。换句话说,可以恢复匹配。为此,执行步骤S506中的处理。
在步骤S506中,文件系统参考在步骤S501中读取的备份信息的开始簇号和结束簇号以编辑FAT项目,使得相对于FAT1形成从开始簇号至结束簇号的簇号的簇链。由于备份信息的开始簇号和结束簇号分别表示簇组的第一簇和最后一簇的簇号,其中,通过以上述这种方式编辑FAT项目来将最后的请求响应写入数据写入FAT1,管理最后的请求响应写入数据,使得将其记录在存储介质上。此外,由于FAT区还包括与FAT1一起的FAT2,所以文件系统还执行与关于FAT1的编辑类似地关于FAT2的编辑。
注意到,仅基于写入最后的请求响应写入数据的开始簇号和结束簇号来执行这种情况下的FAT项目的编辑,并且开始簇号和结束簇号之间的簇号信息不存在。因此,假定用于写入最后的请求响应写入数据的簇具有接连或连续的簇号。然而,实际上,具有如单位写入请求数据大小的数据在几乎所有情况下被记录在具有连续簇号的区域(彼此物理连续的区域)中。因此,FAT项目的这种编辑不会引起实际使用中的问题。如果尝试处理离散地记录单位写入请求数据而没有记录在具有连续簇号的区域中的可选情况,则除开始簇号和结束簇号之外,表示使用簇连接的信息也应该放置在备份信息中。
作为步骤S506中的下一处理,文件系统使用备份信息的目录项相关备份信息(目录项存储扇区和LBA),以执行用于将与最后的请求响应写入数据的写入完成结果相对应的内容的目录项写入并记录在存储介质上的控制处理。
为此,文件系统参考备份信息的LBA。LBA表示存储介质上记录作为数据的包括最后的请求响应写入数据形成的文件的目录项的位置(扇区)。随后,文件系统执行用于设备驱动器的控制,以执行用于将放置在备份信息中的目录项存储扇区数据写入例如由LBA表示的扇区的控制。放置在目录项存储扇区中的目录项具有相应于成功完成写入最后的请求响应写入数据的情况的内容。
由于在步骤S506中执行了上述处理,所以更新文件管理信息,以具有反映最后的请求响应写入数据的写入结果的内容。具体地,从在执行步骤S506的处理之前,尽管将最后的请求响应写入数据的实际数据写在存储介质上,但是在文件管理信息上不反映最后的请求响应写入数据的写入结果的不匹配状态,实现匹配的恢复,以建立在文件管理信息上反映最后的请求响应写入数据的写入结果的状态。
在以上述这种方式实现文件管理的匹配恢复之后,在步骤S506中,文件系统将表示tm0的值写入备份信息的处理定时区,以与上述步骤S503、S504、和S505中类似的方式来初始化处理定时区的内容。
如果在步骤S502中判定参考值表示处理定时tm4,则这表明最后的请求响应写入数据的写入顺序失败。这就意味着,尽管文件主体(1)、(2)、和(3)的写入正常结束并且只完成了文件管理信息中的FAT1,但是不能确保正常记录剩余的FAT2和目录项的数据。
在这种情况下,类似于在步骤S502中的判定结果为处理定时tm2的情况,完成最后的请求响应写入数据的实际数据的写入,因此,可以实现匹配恢复,使得在文件管理信息中上映写入结果。随后,作为用于匹配恢复的处理,执行步骤S507中的处理。
在这种情况下,不仅将最后的请求响应写入数据的实际数据而且将文件管理信息的FAT1正常记录在存储介质上,使得他们具有反映最后的请求响应写入数据的写入结果的内容。因此,在这种情况下,不需要特别编辑FAT1。此外,关于FAT2的编辑,如果规定FAT2具有FAT1的复制内容,则可通过将FAT1的内容复制在FAT2上的处理来执行FAT2的编辑。具体地,如步骤S506,不需要特别参考备份信息的开始簇号和结束簇号来编辑FAT项目。因此,通过更轻松有效的处理可实现编辑处理。
此外,在步骤S507中,执行将反映最后请求响应写入数据写入结果内容的目录项记录在存储介质上的处理作为用于恢复匹配的处理。以与步骤S506中类似的方式,使用备份信息的目录项相关备份信息(目录项存储扇区的数据和LBA)来执行该处理。此外,在这种情况下,放置表示tm0的值以初始化备份信息的处理定时区。
如果在步骤S502中判定参考值表示处理定时tm5,则这表明最后的请求响应写入数据的写入顺序失败。这就意味着,尽管正常结束文件主体(1)、(2)、和(3)的写入,并且完成文件管理信息中的FAT1和FAT2的写入,但是不能确保正常记录剩余的目录项的数据。
在这种情况下,作为用于匹配恢复的处理,执行在步骤S508中的处理。在这种情况下,由于已经完成了文件管理信息的FAT1和FAT2的记录,所以作为在步骤S508中用于匹配恢复的所需处理,可在存储介质上记录反映最后的请求响应写入数据写入结果的目录项,而省略FAT区的编辑。随后,将表示tm0的值放置在备份信息的处理定时区中,以初始化处理定时区。
如果在步骤S502中判定参考值表示处理定时tm6,则表明正常结束最后的请求响应写入数据的文件主体(1)的第一写入至目录项的最后写入。换句话说,最后的请求响应写入数据的写入顺序已经成功,并且在已经反映最后的请求响应写入数据的写入结果的状态下执行了文件管理。因此,在这种情况下,立刻退出图18的过程,而不特别执行用于匹配恢复的处理。
注意到,在图18所示用于匹配恢复的过程结束之后,例如,执行安装存储介质的处理,以允许通过例如如图2所示的系统结构来进行文件操作和数据处理。
下面,描述处理用于文件管理匹配恢复过程的修改。
图18中示出的用于匹配恢复的过程被用于恢复匹配,使得可以尽可能有效地管理最后的请求响应写入数据。然而,另外采用这种简单想法也是有效的,即,如果最后的请求响应写入数据的写入顺序失败,则根本不执行与最后的请求响应写入数据相关的恢复操作,而是处理最后的请求响应写入数据使其从一开始就不存在。此外,在采用刚刚描述的思想的情况下,适当地管理最后记录的文件,使其由在最后的请求响应写入数据之前记录的请求响应写入数据组所组成。此外,在采用基于上述思想的算法的情况下,可以比例如图18的情况更加简单,并且可实现减小处理负担的这个优势。
因此,参照图19描述用于如果最后的请求响应写入数据的写入顺序失败,则管理最后的请求响应写入数据使得最后的请求响应写入数据从一开始就不存在的匹配恢复的过程实例。
首先,在步骤S601和S602中,以与图18步骤S501和S502中类似的方式参考放置在备份信息处理定时区中的值,以判定放置值表示处理时间tm0~tm6中的哪一个。
随后,如果在步骤S602中的判定结果表示放置值为处理时间tm0、tm1、tm2、tm3、和tm4中的一个,则在各个步骤S603、S604、S605、S606、和S607中,仅执行分别将处理定时tm0放入备份信息的处理定时区以初始化处理定时区的处理,用于匹配恢复。将图19与图18进行对比,可以认可,当判定值为处理定时tm3时,不执行如图18中的文件管理信息的这个操作。换句话说,在图19的过程中,即使最后的请求响应写入数据的实际数据没有全部写在存储介质上,也不对管理信息执行特殊操作,而是管理最后的请求响应写入数据,使其不被记录在存储介质上。
另一方面,如果在步骤S602中的判定结果表示放置值为处理定时tm4,则作为步骤S607中用于匹配恢复的处理,将FAT2的内容复制在FAT1中,随后,初始化备份信息的处理定时区。
在放置值为处理定时tm4的情况下,这意味着正常完成了最后的请求响应写入数据的实际数据的写入和FAT1的写入。因此,FAT1具有反映最后的请求响应写入数据写入结果的内容。同时,FAT2具有与反映最后的请求响应写入数据写入结果之前的内容相同的内容,即,反映了直至倒数第二个请求响应写入数据的数据的写入结果的内容。因此,如果与在步骤S607类似将FAT2的内容复制在FAT1中,则在FAT1和FAT2上都反映了直至倒数第二个请求响应写入数据的数据的写入结果。这种状态与没有记录最后的请求响应写入数据的管理内容一致。
此外,在这种情况下,由于最后记录在存储介质上的文件的目录项保持具有反映直至倒数第二个请求响应写入数据的数据的写入结果的内容,所以在步骤S607中不需要对目录项特别地执行操作。
另一方面,如果步骤S602中的判定结果表示放置值为处理定时tm5,则在步骤S608中执行用于匹配恢复的处理。
在处理定时为tm5的情况下,尽管在最后的请求响应写入数据的写入顺序中完成了请求响应写入数据实际数据的记录,并且更新了直至文件管理信息的FAT1和FAT2的数据,但是没有更新目录项。
为了管理处于如刚刚描述的记录结果这种状态的最后的请求响应写入数据使得不记录最后的请求响应写入数据,需要将FAT1和FAT2恢复至被更新前的状态。为此,在步骤S608中,重写FAT1和FAT2,使得将表示未使用状态的值放置在对应于通过参照备份信息获取的从开始簇号至结束簇号的簇号的那些FAT项目中。结果,FAT1和FAT2的内容表示不存在最后的请求响应写入数据。
此外,在这种情况下,由于在存储介质上最后记录的文件的目录项保持具有反映直至倒数第二个请求响应写入数据的数据的写入结果的内容,所以立刻退出图19的处理,而不特别执行用于匹配恢复的处理。
另一方面,如果在步骤S602中判定放置值表示初始定时tm6,则这表明正常完成了最后的请求响应写入数据的写入顺序(成功),并且正常管理了最后的请求响应写入数据。因此,立刻退出图19的处理,而不特别执行用于匹配恢复的处理。
注意到,当利用参照图19描述的过程以恢复匹配时,不使用备份信息的目录项相关备份信息。因此,在采用图19过程的情况下,能够从备份信息中省略目录项相关备份信息。
现在,描述处理用于文件管理的匹配恢复过程的另一个修改。
对于本修改,采用具有如图20所示这种结构的备份信息。
参照图20,类似于图15A中示出的备份信息,所示出的备份信息包括用于处理定时、开始簇号、结束簇号、目录项存储扇区、以及LBA的区域。然而,图20示出的备份信息还包括用于存储文件主体(3)的开始LBA、文件主体(3)的大小、以及文件主体(3)的实际数据(写入数据)的区域。
例如,文件主体(3)的开始LBA(数据部分写入位置信息)具有大约四字节的大小。在假定最后的请求响应写入数据具有模式3结构的情况下,开始LBA表示写入形成最后的请求响应写入数据的文件主体中最后的文件主体(3)的开始位置的存储介质上的LBA。
此外,用于文件主体(3)的大小的区域具有分配给其的大约四字节的大小,并表示文件主体(3)的真实数据大小。
在用于文件主体(3)的写入数据的区域中,放置与最后的请求响应写入数据的文件主体(3)的实际数据相同的内容数据(互补实际数据)。请求响应写入数据的大小是可变的,并且形成请求响应写入数据的文件主体的大小也是可变的。因此,放置在备份信息中的文件主体(3)写入数据的区域也具有可变大小。通过文件主体(3)的大小来表示区域的大小。例如,当文件系统等尝试从备份信息中读出文件主体(3)的写入数据时,其使用上述文件主体(3)的大小信息正确地执行读取。
注意到,在下文给出的描述中,将文件主体(3)的开始LBA、文件主体(3)的大小、以及文件主体(3)的写入数据通称为文件主体相关备份信息。
图21示出了相应于参照图20在上面描述的备份信息结构的请求响应写入数据(具有模式3的结构)的写入过程的实例。
在图21中示出的过程与在图17中示出的过程基本相同。因此,此处省略对与图17中类似内容的描述,在下面主要给出不同之处的描述。
类似于图17的步骤S405中的处理,在完成文件主体(2)写入的定时的下一个定时处,执行图21中步骤S705的处理。然而,在步骤S705中,除了将表示tm2的值放入备份信息的处理定时区中之外,还执行将文件主体相关备份信息(文件主体(3)的开始LBA、文件主体(3)的大小、以及文件主体(3)的写入数据)放入相同备份信息的处理。
例如,步骤S705中的阶段对应于在步骤S704中完成在存储介质上写入文件主体(2)之后,处理前进至文件主体(3)的写入的时间段。然而,此时,通常已经通过文件系统抓取了作为文件主体(3)的写入开始位置的扇区地址(即,LBA)和将被写入的文件主体(3)的实际数据的大小信息。
因此,在步骤S705中,文件系统使用抓取的信息,从而生成四字节的文件主体(3)LBA和文件主体(3)大小的信息,并将信息放入备份信息的对应区域中。此外,关于文件主体(3)的写入数据,通过复制可将被准备以实际写入的文件主体(3)的数据写入备份信息的对应区域并被备份信息的对应区域所保持。
此外,在完成步骤S706中的文件主体(3)的写入之后的步骤S707中,例如,如图17中的步骤S407,类似地执行将tm3放入备份信息的处理定时区中的处理。此外,执行从备份信息中删除在步骤S705中放置在备份信息中的文件主体相关备份信息(文件主体(3)的开始LBA、文件主体(3)的大小、以及文件主体(3)的写入数据)的处理。
随后,尽管可从参照图22在下文描述的处理中看出,但在这种情况下的用于文件管理的匹配恢复的处理中,仅当在备份信息的处理定时信息中放置的值表示tm3(即,最后的请求响应写入数据的写入顺序失败的情况)时获得文件主体相关备份信息。因此,在步骤S706中,响应于文件主体(3)写入的完成,从备份信息中删除相关信息。例如,这样趋向于将备份信息的大小最小化,并且实现了能够节省将被使用的非易失性存储器12a的容量的效果。
图22示出了用于响应于图20中示出的备份信息结构和图21的请求响应写入数据的写入处理而被执行的匹配恢复的过程实例。
在图22的处理中,首先在步骤S801和S802中,以与图18的步骤S501和S502中类似的方式,参考备份信息的处理定时区中放置的值,以判定放置值表示哪一个处理定时tm0~tm6。随后,执行相应于判定结果的处理。
随后,如果在步骤S802中的判定结果表示放置值为处理定时tm0、tm1、tm3、tm4、以及tm5中的一个,则在步骤S803、S804、S806、S807、或S808中,执行与在步骤S503、S504、S506、S507、或S508中类似的内容处理。此外,在判定放置值为处理定时tm6的情况下,与图18的处理类似,不执行特别的恢复处理。
然而,如果在步骤S802中判定放置值为处理定时tm2,则执行与图18的步骤S505不同的以下过程,作为步骤S805中的恢复处理。
首先,在步骤S802中判定放置值为定时tm2的情况为在最后的请求响应写入数据的写入顺序中完成直至文件主体(1)和(2)的数据写入且还没有执行文件主体(3)和文件管理信息的写入的情况。在图18的处理中,由于在存储介质上没有记录文件主体(3)的数据,所以不可能建立在存储介质上完全记录最后的请求响应写入数据实体的状态。
相反,在本修改中,如图20所示,关于文件主体(3)的相关备份信息是可用的。由于在存储介质上已经记录了文件主体,所以如果将在备份信息中放置的文件主体(3)的数据写入相关位置,则建立将由文件主体(1)、(2)、和(3)组成的请求响应写入数据完全写在存储介质上的状态。由此,可以认为备份信息中的文件主体(3)的写入数据为用于将请求响应写入数据写在存储介质上的互补数据。因此,在步骤S805中,执行用于使用文件主体相关备份信息以将文件主体(3)实际写在存储介质上的控制。
具体地,文件系统将文件主体相关备份信息的开始LBA指定为文件主体(3)的写入开始位置并控制设备驱动器,使得读出作为备份信息中相同文件主体相关备份信息放置的文件主体(3)的写入数据,并将其写在存储介质上。通过至此的处理,可在存储介质上建立将形成最后的请求响应写入数据的所有文件主体(1)、(2)、和(3)写在存储介质相关位置的状态。此外,在步骤S805中,执行与步骤S806相同的过程。因此,文件管理信息具有反映最后的请求响应写入数据写入结果的内容。
例如,当最后的请求响应写入数据的写入顺序失败时,为了恢复匹配而提供了参照图18在上文中描述的过程,使得可以尽可能执行反映最后的请求响应写入数据写入结果的文件管理。然而,根据图18的过程,如果在最后的请求响应写入数据的顺序中没有完成所有实际数据(文件主体(1)、(2)、和(3))的写入,则不能将匹配恢复至反映最后的请求响应写入数据的文件管理状态。
相反,根据参照图20~22在上面所描述的修改,当最后的请求响应写入数据的写入顺序失败时,如果处理结果为完成直至文件主体(1)和(2)(直至倒数第二个文件主体)的数据写入,则可以通过写入文件主体(3)然后更新文件管理信息来实现在反映最后的请求响应写入数据的文件管理状态中的匹配恢复。换句话说,该修改在恢复匹配方面更有优势,使得尽可能地反映最后的请求响应写入数据的写入结果。
然而,图18的过程实际上也是有效的。例如,根据图18的处理,由于不执行用于将相对较大大小的数据(例如,文件主体)放入备份信息的处理,所以处理是简单轻松的,并且能够期望提高处理速度。此外,也可以抑制非易失性存储器12a的允许存储容量。在现状下,当与HDD等进行对比时,采用作为非易失性存储器12a的诸如闪存的半导体存储元件保持较高的比特单价,根据成本等问题,很难结合大容量的半导体存储器。因此,例如,应该考虑结合功能的装置所需的各种条件来确定采用图18的过程和修改过程中的哪一个。
注意到,在上述参照图20~22的修改中,当失败发生在正在写入文件主体(1)或(2)的阶段时,不执行恢复最后的请求响应写入数据的这种补救处理,而是处理最后的请求响应写入数据使其不被记录。然而,如果将关于文件主体(2)的备份相关信息与文件主体(3)一起放入备份信息中,则当失败发生在文件主体(2)的写入阶段时,可以通过恢复最后的请求响应写入数据来恢复匹配。类似地,如果将关于文件主体(1)的备份相关信息与文件主体(3)和(2)放置在一起,则当失败发生在文件主体(1)的写入阶段时,可以恢复最后的请求响应写入数据。然而,在这种情况下,需要将文件主体(2)的写入数据和文件主体(1)的写入数据与文件主体(3)的写入数据一起放置在备份信息中,也大大地增加了备份信息的大小。因此,认为需要考虑例如上述这样的处理速度、非易失性存储器12a的允许存储容量等。
此外,在先前的描述中,请求响应写入数据分成三个文件主体的模式3的请求响应写入数据为处理对象。从图7可以看出,模式3为最复杂的模式,请求响应写入数据视为由文件主体组成的结构。因此,也可将上文所述的请求响应写入数据的写入过程和用于匹配恢复的过程应用于其它情况(模式1、2、和4),其中,由两个或更少的文件主体组成请求响应写入数据。
此外,虽然在上述实例中采用FAT文件系统用于文件管理,但也能将本发明应用于开始于例如HFS(分级文件系统)的其它文件系统。此外,对文件系统和用于文件管理系统的标准没有特定限制。此外,对用于存储文件的存储介质,可以使用除结合本发明实施例描述的HDD之外的任何其它存储介质。
此外,由实施例中的请求响应写入数据(写入请求数据)形成的文件形式为运动图片、静止图片等的图像文件。尤其在涉及压缩编码数据文件的情况下,发生诸如MPEG格式的GOP的最小解码单位的中间位置对应于簇边界的这种情况,并且本发明在防止上述由上述情况产生的缺点方面是有效的。然而,例如,本发明还会关注仅包括声音数据而不包括图像数据的这种结构的不同文件格式。特别在文件由压缩编码数据组成的情况下,类似于运动图片文件,本发明同样有效。此外,还可将本发明应用于除图像和声音文件之外的文档文件等,并根据文件格式,可以认为本发明充分有效。
此外,本发明的数据记录装置不限于结合本发明的实施例描述的数码摄像机。例如,可将本发明应用于数码像机、用于电视广播节目的预留记录装置、个人计算机、以及各种类似的信息处理装置,只要它们能够执行诸如将数据写在各种存储介质上和从存储介质读出数据的数据处理。
虽然使用特定术语描述了本发明的优选实施例,但是这种描述只是示意性的目的,应该了解,在不背离下述权利要求的精神或范围的情况下,可以进行修改和变化。

Claims (11)

1.一种数据记录装置,包括:
记录数据获取部,用于响应于数据写入请求获取作为将被写在记录介质上的数据单位的请求响应写入数据,作为将被记录在所述记录介质上的数据;
数据记录部,用于执行所述存储介质上的数据记录,以将数据写入在所述记录介质的存储区中连续形成的预定容量的单位区,所述数据记录部执行数据记录,使得当使用两个或多个所述单位区写入相应于一个数据写入请求的所述请求响应写入数据,并且另外将所述请求响应写入数据的顶部和末端的任意一个写在一个所述单位区的中间位置时,执行写入将被放置在包括所述中间位置的所述单位区中的请求响应写入数据部分的部分写入处理以及写入将被放置在仅放置有不包括所述中间位置的形成所述请求响应写入数据的那些数据的一个或多个逻辑连续的单位区中的剩余请求响应写入数据的另一个部分写入处理;
文件管理部,用于使用存储在存储了文件数据的所述存储介质中的管理信息来管理文件,并且管理形成用于所述单位区的所述文件的数据;
记录控制部,用于控制所述数据记录部,以在将通过两个或多个所述部分写入处理将所述请求响应写入数据记录在所述存储介质上时,在没有在对应于每个所述部分写入处理完成的时刻插入所述管理信息的更新处理的情况下,通过顺序的部分写入处理执行所述请求响应写入数据的记录;以及
文件更新控制部,用于在完成通过所述顺序的部分写入处理记录所述请求响应写入数据之后的时刻,控制所述文件管理部以更新所述管理信息,从而在所述管理信息上反映所有所述部分写入处理的结果。
2.根据权利要求1所述的数据记录装置,其中,所述记录数据获取部获取数据作为所述请求响应写入数据,所述数据是这样形成的:连续形成作为形成预定格式的文件的数据的所有或一部分并在形成所述格式的文件时具有预定意义的多个数据单位。
3.根据权利要求2所述的数据记录装置,其中
所述记录数据获取部获取包括根据预定系统压缩编码的数据的格式文件的所述请求响应写入数据,以及
具有所述预定意义的所述请求响应写入数据的所述数据单位为用于压缩编码数据的解码处理所需的最小单位。
4.根据权利要求1所述的数据记录装置,还包括:
进展信息控制部,用于控制存储在非易失性存储部中的进展信息内容的重写,使得响应于顺序处理的进展来表示进展情况,在所述顺序处理中,顺序执行在所述记录控制部的控制下执行的顺序的部分写入处理和随后的通过所述文件更新控制部更新所述文件管理信息的处理;
备份信息控制部,用于根据所述顺序处理的进展,在预定定时处,执行用于将备份信息写入非易失性存储部或从所述非易失性存储部中擦除所述备份信息的控制,根据所述顺序处理的完成结果,所述备份信息具有与所述文件管理信息和/或所述请求响应写入数据部分相关的预定内容;
匹配恢复部,用于如必要时,为了在与响应于最后的数据写入请求写入所述请求响应写入数据的实际结果的相应关系中获取通过所述文件管理信息适当管理的状态,参考存储在所述非易失性存储部中的所述进展信息,并基于通过所参考的进展信息表示的进展情况,执行用于改变所述文件管理信息中的预定信息的控制或使用存储在所述非易失性存储部中的预定备份信息在所述存储介质上的写入处理的控制。
5.根据权利要求4所述的数据记录装置,其中,所述匹配恢复部执行所需控制,使得在所参考的进展信息表示所述顺序处理中间部分进展情况的情况下,管理响应于所述最后的数据写入请求将被写入的所述请求响应写入数据,使得在所述存储介质上不存储所述请求响应写入数据。
6.根据权利要求5所述的数据记录装置,其中
所述备份信息控制部将表示根据所述最后的数据写入请求被用于写入所述请求响应写入数据的所述存储介质上的那些单位区的单位区使用信息作为备份信息写入所述非易失性存储部,以及
当所参考的进展信息表示在完成使用于根据所述最后的数据写入请求写入所述请求响应写入数据的那些单位区将被反映在所述文件管理信息上的处理之后时刻的所述顺序处理中间部分的进展情况时,所述匹配恢复部重写所述文件管理信息,使得将通过所述备份信息的所述单位区使用信息表示的那些单位区视为未使用的单位区。
7.根据权利要求4所述的数据记录装置,其中,
所述备份信息控制部基于所述文件管理信息将预定内容的文件管理相关信息写入所述非易失性存储部中,其中,当正常完成根据所述最后的数据写入请求写入所述请求响应写入数据时的结果被作为备份信息反映在所述文件管理信息上,以及
当所参考的进展信息表示在完成根据所述最后的数据写入请求写入形成所述请求响应写入数据的所有请求响应写入数据部分的时刻的所述顺序处理中间部分的进展情况时,所述匹配恢复部利用所述备份信息作为所述文件管理相关信息以重写所述文件管理信息,使得适当地管理根据所述最后的数据写入请求的所述请求响应写入数据,使得在所述存储介质上存储所述请求响应写入数据。
8.根据权利要求4所述的数据记录装置,其中,
所述备份信息控制部至少写入基于反映当正常完成根据所述最后的数据写入请求写入所述请求响应写入数据时的结果的所述文件管理信息的预定内容的文件管理相关信息、具有根据所述最后的数据写入请求的所述请求响应写入数据部分的数据内容的互补实际数据、以及表示具有作为所述互补实际数据的内容的所述请求响应写入数据部分将被写入的位置的数据部分写入位置信息,以及
当所参考的进展信息表示在没有完成根据所述最后的数据写入请求写入形成所述请求响应写入数据的所有请求响应写入数据部分而是完成写入可以与作为所述互补实际数据的请求响应写入数据部分一起完成所述请求响应写入数据的请求响应写入数据部分或多个部分的时刻的所述顺序处理中间部分的进展情况时,所述匹配恢复部执行将所述备份信息的所述互补实际数据写入由所述数据部分写入位置信息表示的所述存储介质的位置的控制,并且使用所述备份信息的所述文件管理相关信息以重写所述文件管理信息,使得正确地管理根据所述最后的数据写入请求的所述请求响应写入数据,从而在所述存储介质上存储所述请求响应写入数据。
9.根据权利要求8所述的数据记录装置,其中
所述备份信息控制部
在写入预定请求响应写入数据部分之前的时刻,将具有预定请求响应写入数据部分的数据内容的所述互补实际数据和表示所述预定请求响应写入数据部分将被写入的位置的数据部分写入位置信息写入所述非易失性存储部,以及
在完成所述预定请求响应写入数据部分的写入的时刻,从所述非易失性存储部中擦除所述互补实际数据和所述数据部分写入位置信息。
10.一种数据记录方法,包括:
记录数据获取步骤,响应于数据写入请求获取作为将被写在所述记录介质上的数据单位的请求响应写入数据,作为将被记录在所述记录介质上的数据;
数据记录步骤,执行所述存储介质上的数据记录,以将数据写入在所述记录介质的存储区中连续形成的预定容量的单位区,执行所述数据记录,使得当使用两个或多个所述单位区写入相应于一个数据写入请求的所述请求响应写入数据,并且另外将所述请求响应写入数据的顶部和末端的任意一个写在一个所述单位区的中间位置时,执行写入将被放置在包括所述中间位置的所述单位区中的所述请求响应写入数据部分的部分写入处理以及写入将被放置在仅放置有不包括所述中间位置的形成所述请求响应写入数据的那些数据的一个或多个逻辑连续的单位区中的剩余请求响应写入数据的另一个部分写入处理;
文件管理步骤,使用存储在存储了文件数据的所述存储介质中的管理信息来管理文件,并且管理形成用于所述单位区的所述文件的数据;
记录控制步骤,用于控制,以在将通过两个或多个所述部分写入处理将所述请求响应写入数据记录在所述存储介质上时,在没有在对应于每个部分写入处理完成的时刻插入所述管理信息的更新处理的情况下,通过所述数据记录步骤来执行通过顺序的部分写入处理执行所述请求响应写入数据的记录;以及
文件更新控制步骤,用于在完成通过所述顺序的部分写入处理记录所述请求响应写入数据之后的时刻,进行控制,使得通过所述文件管理步骤更新所述管理信息,从而在所述管理信息上反映所有所述部分写入处理的结果。
11.一种程序,用于使数据记录装置执行:
记录数据获取步骤,响应于数据写入请求获取作为将被写在所述记录介质上的数据单位的请求响应写入数据,作为将被记录在所述记录介质上的数据;
数据记录步骤,执行所述存储介质上的数据记录,以将数据写入在所述记录介质的存储区中连续形成的预定容量的单位区,执行所述数据记录,使得当使用两个或多个所述单位区写入相应于一个数据写入请求的所述请求响应写入数据,并且另外将所述请求响应写入数据的顶部和末端的任意一个写在一个所述单位区的中间位置时,执行写入将被放置在包括所述中间位置的所述单位区中的所述请求响应写入数据部分的部分写入处理以及写入将被放置在仅放置有不包括所述中间位置的形成所述请求响应写入数据的那些数据的一个或多个逻辑连续的单位区中的剩余请求响应写入数据的另一个部分写入处理;
文件管理步骤,使用存储在存储了文件数据的所述存储介质中的管理信息来管理文件,并且管理形成用于所述单位区的所述文件的数据;
记录控制步骤,用于控制,以在将通过两个或多个所述部分写入处理将所述请求响应写入数据记录在所述存储介质上时,在没有在对应于每个部分写入处理完成的时刻插入所述管理信息的更新处理的情况下,通过所述数据记录步骤来执行通过顺序的部分写入处理执行所述请求响应写入数据的记录;以及
文件更新控制步骤,用于在完成通过所述顺序的部分写入处理记录所述请求响应写入数据之后的时刻,进行控制,使得通过所述文件管理步骤更新所述管理信息,从而在所述管理信息上反映所有所述部分写入处理的结果。
CNB2007100800219A 2006-02-28 2007-02-28 数据记录装置、数据记录方法 Expired - Fee Related CN100501700C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006051684A JP4487954B2 (ja) 2006-02-28 2006-02-28 データ記録装置、データ記録方法、及びプログラム
JP2006051684 2006-02-28

Publications (2)

Publication Number Publication Date
CN101030169A true CN101030169A (zh) 2007-09-05
CN100501700C CN100501700C (zh) 2009-06-17

Family

ID=38554073

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2007100800219A Expired - Fee Related CN100501700C (zh) 2006-02-28 2007-02-28 数据记录装置、数据记录方法

Country Status (3)

Country Link
US (1) US7664912B2 (zh)
JP (1) JP4487954B2 (zh)
CN (1) CN100501700C (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102841894A (zh) * 2011-06-22 2012-12-26 比亚迪股份有限公司 一种文件分配表的数据存储方法
CN103202028A (zh) * 2011-03-11 2013-07-10 日立民用电子株式会社 记录装置/方法/介质、再现装置/方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4424364B2 (ja) * 2007-03-19 2010-03-03 ソニー株式会社 画像処理装置、画像処理方法
KR101434297B1 (ko) * 2007-09-11 2014-08-27 삼성전자주식회사 파일할당표를 이용한 파일 디바이드 및 머지 방법
CN101836212B (zh) * 2007-10-25 2015-10-14 富士通株式会社 信息提供方法、中继方法、信息保持装置、中继器
US8473707B2 (en) * 2008-03-27 2013-06-25 Open Invention Network, Llc Method for achieving sequential I/O performance from a random workload
JP4672788B2 (ja) * 2008-09-16 2011-04-20 株式会社東芝 映像データ処理システム、ビデオサーバ、ゲートウェイサーバ及び映像データ管理方法
MX2014009037A (es) * 2012-02-03 2014-10-14 Sony Corp Dispositivo de procesamiento de informacion, medio de grabacion de informacion y metodo de procesamiento de informacion, y programa.

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3656130A (en) * 1970-06-04 1972-04-11 Ncr Co Disc random access memory system
JP3906535B2 (ja) * 1997-11-07 2007-04-18 ソニー株式会社 ダウンロードシステム、及び記録媒体
US6778346B2 (en) * 2000-03-30 2004-08-17 Sony Corporation Recording and reproducing apparatus and file managing method using the same
WO2002027723A1 (en) * 2000-09-27 2002-04-04 Seagate Technology Llc Method to achieve higher track density by allowing only one-sided track encroachment
JP2005063047A (ja) 2003-08-08 2005-03-10 Sony Corp Fatファイルシステム書換方法および装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103202028A (zh) * 2011-03-11 2013-07-10 日立民用电子株式会社 记录装置/方法/介质、再现装置/方法
CN102841894A (zh) * 2011-06-22 2012-12-26 比亚迪股份有限公司 一种文件分配表的数据存储方法

Also Published As

Publication number Publication date
CN100501700C (zh) 2009-06-17
US20070279787A1 (en) 2007-12-06
US7664912B2 (en) 2010-02-16
JP2007233512A (ja) 2007-09-13
JP4487954B2 (ja) 2010-06-23

Similar Documents

Publication Publication Date Title
CN101030169A (zh) 数据记录装置、数据记录方法、及程序
CN1160724C (zh) 用于写入和再生数据的装置及方法
CN1295706C (zh) 非易失存储器、记录装置和记录方法
CN1723446A (zh) 记录介质、记录设备及使用该记录介质和设备的再现设备
CN1260665C (zh) 用于管理可换存储媒体的设备和方法
CN1605102A (zh) 数据记录方法、数据删除方法、数据显示方法、记录装置、记录媒体及程序
CN1801918A (zh) 再现设备和显示控制方法
CN101053253A (zh) 记录装置及方法、再生装置及方法以及程序
CN1949218A (zh) 用于管理记录介质的数据管理装置和方法
CN1286024C (zh) 记录装置、记录方法和通信装置
CN1956088A (zh) 信息处理装置、信息处理方法以及计算机程序
CN1752947A (zh) 存储装置、存储控制方法,以及计算机产品
CN1554183A (zh) 数字照相机系统、图像存储装置和数字照相机
CN1674159A (zh) 半导体存储卡的访问装置、计算机可读记录介质、初始化方法和半导体存储卡
CN1934641A (zh) 信息处理设备和方法、程序记录介质、和程序
CN1777950A (zh) 再现装置,程序,集成电路
CN1942869A (zh) 组合存储器装置、数据写入方法和程序
CN1925590A (zh) 信息处理装置和方法、及程序
CN1942965A (zh) 数据处理装置
CN1564973A (zh) 信息处理设备、信息处理方法及信息处理程序
CN101030223A (zh) 用于处理信息的装置、方法、和计算机程序
CN1742484A (zh) 视频信号处理器、视频信号记录器、视频信号再现器、视频信号处理器处理方法、视频信号记录器处理方法、视频信号再现器处理方法、记录介质
CN1643605A (zh) 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
CN1519756A (zh) 记录再生装置、记录再生方法、计算机程序及记录媒体
CN1871850A (zh) 再现设备、方法和程序

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090617

Termination date: 20130228