CN107506253B - 一种操作***异常信息保存方法及装置 - Google Patents
一种操作***异常信息保存方法及装置 Download PDFInfo
- Publication number
- CN107506253B CN107506253B CN201710685490.7A CN201710685490A CN107506253B CN 107506253 B CN107506253 B CN 107506253B CN 201710685490 A CN201710685490 A CN 201710685490A CN 107506253 B CN107506253 B CN 107506253B
- Authority
- CN
- China
- Prior art keywords
- operating system
- abnormal information
- hard disk
- reserved sectors
- sector
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种操作***异常信息保存方法及装置,用以解决现有技术中通过文件***的接口将操作***运行时的异常信息保存到硬盘上时,如果文件***出现异常而导致操作***异常信息无法正常保存的问题。所述***异常信息保存方法,包括:当获取到操作***异常信息时,根据所述操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区,其中,所述若干个连续的保留扇区的总容量大于等于所述操作***异常信息的字节数;通过硬盘扇区的写接口,将所述操作***异常信息写入到所述若干个连续的保留扇区上。
Description
技术领域
本发明涉及嵌入式技术领域,尤其涉及一种操作***异常信息保存方法及装置。
背景技术
操作***中负责管理和存储文件信息的软件机构称为文件管理***,简称文件***。文件***由三部分组成:文件***的接口、对对象操纵和管理的软件集合、对象及属性。从***角度来看,文件***是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的***,具体地,文件***为用户建立文件,存入、读出、修改、转储文件,控制文件的存取以及当用户不再使用时撤销文件等。
现有技术中,当操作***运行时产生的异常信息如内存泄露、设备访问异常、中断异常、串口通信异常、访问非法内存地址而引发的操作***异常等信息时,可以通过文件***的接口将上述异常信息保存到硬盘上,然而,当文件***出现异常时,则会导致上述操作***运行时产生的异常信息无法正常保存。
因此,如何不依赖文件***保存操作***运行时产生的异常信息,是现有技术亟待解决的技术问题之一。
发明内容
本发明公开了一种操作***异常信息保存方法及装置,用以解决现有技术中通过文件***的接口将操作***运行时的异常信息保存到硬盘上时,如果文件***出现异常而导致操作***异常信息无法正常保存的问题。
本发明实施例提供了一种操作***异常信息保存方法,包括:
当获取到操作***异常信息时,根据所述操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区,其中,所述若干个连续的保留扇区的总容量大于等于所述操作***异常信息的字节数;
通过硬盘扇区的写接口,将所述操作***异常信息写入到所述若干个连续的保留扇区上。
本发明实施例提供了一种操作***异常信息保存装置,包括:
确定单元,用于当获取到操作***异常信息时,根据所述操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区,其中,所述若干个连续的保留扇区的总容量大于等于所述操作***异常信息的字节数;
写单元,用于通过硬盘扇区的写接口,将所述操作***异常信息写入到所述若干个连续的保留扇区上。
本发明实施例提供了一种计算机设备,所述计算机设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现上述操作***异常信息保存方法的步骤。
本发明实施例提供的一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述操作***异常信息保存方法的步骤。
本发明的有益效果包括:
本发明提供的操作***异常信息保存方法及装置,当获取到操作***异常信息时,根据操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区,其中,该若干个连续的保留扇区的总容量大于等于操作***异常信息的字节数,再通过硬盘扇区的写接口,将操作***异常信息写入到该若干个连续的保留扇区上,实现了不依赖文件***的接口,将操作***异常信息保存到硬盘上,从而,解决了当文件***出现异常而无法正常保存操作***异常信息的问题。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为硬盘的结构示意图;
图2为本发明实施例一提供的操作***异常信息保存方法的实施流程示意图;
图3为本发明实施例一提供的获得若干个连续的保留扇区的位置信息的流程示意图;
图4为本发明实施例二提供的操作***异常信息保存装置的结构示意图;
图5为本发明实施例三提供的计算机设备的结构示意图。
具体实施方式
为了解决现有技术中通过文件***的接口将操作***运行时的异常信息保存到硬盘上时,如果文件***出现异常而导致操作***异常信息无法正常保存的问题,本发明提出了一种操作***异常信息保存方法及装置。
本发明实施例提供的操作***异常信息保存方法的实施原理是:
本发明提供的操作***异常信息保存方法,当获取到操作***异常信息时,根据操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区,其中,该若干个连续的保留扇区的总容量大于等于操作***异常信息的字节数,再通过硬盘扇区的写接口,将操作***异常信息写入到该若干个连续的保留扇区上,实现了不依赖文件***的接口,将操作***异常信息保存到硬盘上,从而,解决了当文件***出现异常而无法正常保存操作***异常信息的问题。
以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明,并且在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
硬盘由很多盘片(Platter)组成,每个盘片的每个面都有一个读写磁头,如果有M个盘片,就有2M个面,对应2M个磁头(Heads),从0、1、2开始编号。每个盘片被划分成若干个同心圆磁道,这样每个盘片的半径均为固定值R的同心圆在逻辑上形成了一个以电机主轴为轴的柱面(Cylinders),从外至里编号为0、1、2……,每个盘片上的每个磁道又被划分为几十个扇区,通常每个扇区的容量是512个字节。每个硬盘上的扇区按照一定规则编号为1、2、3……。硬盘是由很多个扇区组成,而这些扇区会被组织成若干个“分区”。硬盘的分区规则是:一个分区的所有扇区必须连续,硬盘可以有最多4个物理上的分区,这4个物理分区可以是4个主分区或者3个主分区加一个扩展分区。在一个划分有多个主分区的硬盘上,则可安装多个不同的操作***,每个操作***各自去管理分配给自己的分区。
MBR(Main Boot Record,主引导记录)是位于硬盘最前边的一段引导代码,是计算机启动后从可启动介质上首先装入内存并且执行的一段代码,将包含MBR引导代码的扇区称为主引导扇区,位于硬盘的0柱面、0磁头、1扇区,即硬盘的第一个扇区。
启动计算机时,***首先对硬件设备进行测试,测试成功后进入自举程序INT19H,然后读***硬盘0柱面、0磁头、1扇区的MBR内容到内存指定区域,并执行MBR程序段,硬盘的主引导扇区不属于硬盘上的任何分区,及不属于任何一个操作***,它先于所有的操作***而被调入内存,然后才将控制权交给主分区内的操作***,并用分区表来管理硬盘。
以一个4分区的硬盘为例来说明硬盘的结构,如图1所示,其为硬盘的结构示意图,其由主引导扇区、主分区1、主分区2、主分区3与扩展分区组成。主引导扇区共占用512个字节,由三个部分组成:主引导记录、硬盘分区表(DPT,Disk Partition Table)、结束标志。其中,主引导记录占了主引导扇区中前446个字节,偏移地址0000H~1BDH;硬盘分区表占了随后的64个字节,偏移地址1BEH~1FDH,其由四个分区表项构成,分别为图1中的第1分区表项、第2分区表项、第3分区表项以及第4分区表项;最后的两个字节为结束标志0x55AA,偏移地址01FEH~01FFH。一个硬盘划分的分区可以少于4个,但最多不超过4个,每个分区表项为16个字节,其内容含义如表1所示:
表1
DBR(DOS Boot Record,操作***引导记录)也称为引导扇区,DBR是由硬盘的MBR装载的程序段,DBR装入内存后,即开始执行该引导程序段,其主要功能是完成操作***的自举并将控制权交给操作***。硬盘的每个分区都有引导扇区,如图1中所示的基本分区1~3以及扩展分区中的引导扇区。
引导扇区中除了DBR引导程序段之外,还包括一个被称为BPB(Bios ParameterBlock,Bios参数块)的本区参数记录表,BPB中记录了本分区的起始扇区、结束扇区、文件存储格式、硬盘介质描述符、根目录大小、FAT(File Allocation Table,文件配置表)个数以及分配单元的大小等参数。
需要说明的是,本发明实施例提供的操作***异常信息保存方法中涉及的操作***为嵌入式操作***,硬盘的主分区中安装的操作***为嵌入式操作***,如Linux、uClinux、WinCE、PalmOS、Symbian、eCos、VxWorks等所有用于嵌入式***的操作***。
现有技术中,利用文件***存储数据时,是通过文件***接口将数据存储在文件***的数据区中,如果文件***出现异常,则无法再通过文件***接口将数据写入硬盘,而本发明利用保留扇区存储数据,既不会破坏文件***的原有结构,而且当文件***出现异常时,可以不依赖文件***的接口,而是通过硬盘扇区的写接口将数据存入硬盘中。
实施例一
如图2所示,其为本发明实施例一提供的操作***异常信息保存方法的实施流程示意图,可以包括以下步骤:
S11、当获取到操作***异常信息时,根据所述操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区,其中,所述若干个连续的保留扇区的总容量大于等于所述操作***异常信息的字节数。
具体实施时,在根据所述操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区之前,可以按照以下方式获得预设数量的保留扇区:将硬盘的一个预设分区格式化为文件配置表FAT格式,使得格式化后的分区中包含预设数量的保留扇区。
具体地,调用格式化函数,在格式化函数中设置保留扇区的预设数量,利用该格式化函数将硬盘的一个预设分区格式化为FAT格式,则格式化后的该分区中包含预设数量的保留扇区。如表1所示,其为硬盘的一个分区格式化为FAT16后的结构,每个扇区占用512个字节。
表2
基于表2,格式化为FAT16的分区中包含以下几部分:保留扇区、文件分配表、根目录区以及数据区,其中,保留扇区中包含引导扇区DBR,占用一个扇区,以及加上至文件分配表前的若干个扇区均为保留扇区,其数量可以根据需求通过格式化函数预先设定,本发明对此不作限定。
其中,如果为FAT32,其保留扇区还包含一个FSINFO信息扇区,占用一个扇区,用于记录文件***的当前信息,用以记录文件***的空间簇的数量以及下一个可用簇的簇号等信息,以供操作***作为参考。文件分配表是用来记录文件所在位置的表格。根目录区可以看作是数据区的一部分,由于根目录已改为根目录文件,采用与子目录文件相同的管理方式,一般情况下从第二簇开始使用,大小视需要增加,因此根目录下的文件数目不再受最多512的限制。
引导扇区中包含DBR引导程序段以及Bios参数块,Bios参数块中记录了本分区的起始扇区、结束扇区、文件存储格式、硬盘介质描述符、根目录大小、FAT个数以及分配单元的大小等参数。
进一步地,当获取到操作***异常信息时,根据操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区,其中,所述若干个连续的保留扇区的总容量大于等于所述操作***异常信息的字节数,所述若干个连续的保留扇区为所述预设数量的保留扇区中未被使用的扇区。
具体实施时,操作***异常信息包括:内存泄露、设备访问异常、中断异常、串口通信异常、访问非法内存地址等各种可能引起操作***运行不正常的信息,其中,设备访问异常如USB设备出现访问异常、输入设备如键盘或鼠标出现异常等。操作***异常信息可以以消息队列的方式存储于内存中,在根据所述操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区之前,启动操作***异常信息处理任务,从所述消息队列的消息中获取所述操作***异常信息的缓冲区的首地址,根据所述缓冲区的首地址,获取所述操作***异常信息。具体地,操作***每次正常启动后,都会发起一个异常信息处理任务,用于检测用于存放操作***异常信息的消息队列中是否有需要处理的异常信息。此任务是周期任务,优先级设置得较低,这样可以不干扰操作***的正常运行。当检测到消息队列不为空时,获取消息队列中的消息进行处理。每条消息中会包含存放操作***异常信息的缓冲区的首地址,针对每条消息,根据其中包含的存放操作***异常信息的缓冲区的首地址,获取该操作***异常信息。
进一步地,根据获取的操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区。若干个连续的保留扇区的总容量大于等于操作***异常信息的字节数,其中,每个保留扇区的容量为512字节。例如,某一条操作***异常信息共包含1000字节,由于每个保留扇区为512字节,则可以确定需要2个保留扇区,由于1000字节大于1个保留扇区的容量512字节,小于2个保留扇区的容量512×2=1024字节,则2个保留扇区即可存放该异常信息。
S12、通过硬盘扇区的写接口,将所述操作***异常信息写入到所述若干个连续的保留扇区上。
具体实施时,首先,从所述预设数量的保留扇区中获得若干个连续的保留扇区的位置信息。仍以步骤S12中的一条包含1000字节的操作***异常信息为例,从步骤S11中的预设数量的保留扇区中获得2个连续的保留扇区的位置信息。具体地,可以通过如图3所示的流程从所述预设数量的保留扇区中获得若干个连续的保留扇区的位置信息,可以包括以下步骤:
S201、从所述硬盘的主引导扇区中获取所述预设分区的扇区偏移量,并根据所述扇区偏移量确定所述预设分区的位置信息。
本步骤中,从硬盘的主引导扇区的所述预设分区的分区表项中获取所述预设分区的起始扇区号、结束扇区号,确定该预设分区的扇区偏移量,即从该分区起始的第一个扇区相对于硬盘的第一个扇区偏移的扇区数,并根据该分区的起始扇区号、结束扇区号、扇区偏移量以及硬盘的第一个扇区的地址确定该分区相应的起始地址及结束地址。
S202、从所述预设数量的保留扇区中获得若干个连续的保留扇区的编号,并根据所述编号与所述扇区偏移量确定所述若干个连续的保留扇区的位置信息。
本步骤中,从所述预设分区的未被使用的保留扇区中获得若干个连续的保留扇区的编号,并根据该若干个保留扇区的编号、该分区的起始扇区编号以及该分区的起始地址确定出该若干个保留扇区各自的地址。
进一步地,根据所述位置信息,通过硬盘扇区的写接口,将所述操作***异常信息写入到所述若干个连续的保留扇区上。
本步骤中,根据确定出的若干个连续的保留扇区各自的地址,通过硬盘扇区的写接口,将从缓冲区中获取的操作***异常信息写入到该若干个连续的保留扇区上。具体地,硬盘扇区写接口可以通过如下步骤实现:给硬盘控制器发送写命令,这个写命令是一个数据结构,包括起始扇区号、扇区数、缓冲区首地址这三个函数入参,等待硬盘控制器操作硬盘完成写操作。
另外,当接收到操作***异常信息读取指令时,通过硬盘扇区的读接口,从所述若干个连续的保留扇区上读取所述操作***异常信息到内存中。
本发明实施例中所有对硬盘的操作可以通过硬盘控制器实现,硬盘扇区的读、写接口用于直接操作硬盘控制器,硬盘的操作是由硬盘控制器来控制。
本发明提供的操作***异常信息保存方法,首先将硬盘的一个预设分区格式化为FAT格式,格式化后的该分区中包含预设数量的保留扇区,当获取到操作***异常信息时,根据操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区,其中,该若干个连续的保留扇区的总容量大于等于操作***异常信息的字节数,再通过硬盘扇区的写接口,将操作***异常信息写入到该若干个连续的保留扇区上,实现了不依赖文件***的接口,将操作***异常信息保存到硬盘上,从而,解决了当文件***出现异常而无法正常保存操作***异常信息的问题。
现有技术中,利用文件***存储数据时,是通过文件***接口将数据存储在文件***的数据区中,如果文件***出现异常,则无法再通过文件***接口将数据写入硬盘,而本发明利用保留扇区存储数据,既不会破坏文件***的原有结构,而且当文件***出现异常时,可以不依赖文件***的接口,而是通过硬盘扇区的写接口将数据存入硬盘中。
实施例二
基于同一发明构思,本发明实施例二还提供了一种操作***异常信息保存装置,由于上述装置解决问题的原理与操作***异常信息保存方法相似,因此上述装置的实施可以参见方法的实施,重复之处不再赘述。
如图4所示,其为本发明实施例二提供的操作***异常信息保存装置的结构示意图,可以包括:
确定单元31,用于当获取到操作***异常信息时,根据所述操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区,其中,所述若干个连续的保留扇区的总容量大于等于所述操作***异常信息的字节数;
写单元32,用于通过硬盘扇区的写接口,将所述操作***异常信息写入到所述若干个连续的保留扇区上。
可选地,所述操作***异常信息保存装置,还可以包括:
获得单元,用于在根据所述操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区之前,按照以下方式获得所述预设数量的保留扇区:将硬盘的一个预设分区格式化为文件配置表FAT格式,使得格式化后的分区中包含预设数量的保留扇区。
较佳地,所述写单元32,具体用于从所述硬盘的主引导扇区中获取所述预设分区的扇区偏移量,并根据所述扇区偏移量确定所述预设分区的位置信息;从所述预设数量的保留扇区中获得若干个连续的保留扇区的编号,并根据所述编号与所述扇区偏移量确定所述若干个连续的保留扇区的位置信息;根据所述位置信息,通过硬盘扇区的写接口,将所述操作***异常信息写入到所述若干个连续的保留扇区上。
较佳地,所述操作***异常信息以消息队列的方式存储于内存中,所述消息队列的消息中包含有存放所述操作***异常信息的缓冲区的首地址。
可选地,所述操作***异常信息保存装置,还可以包括:
启动单元,用于启动操作***异常信息处理任务;
第一获取单元,用于从所述消息队列的消息中获取所述操作***异常信息的缓冲区的首地址;
第二获取单元,用于根据所述缓冲区的首地址,获取所述操作***异常信息。
可选地,所述操作***异常信息保存装置,还可以包括:
读取单元,用于当接收到操作***异常信息读取指令时,则通过硬盘扇区的读接口,从所述若干个连续的保留扇区上读取所述操作***异常信息到内存中。
为了描述的方便,以上各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本发明时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。
实施例三
如图5所示,为本发明实施例三提供的计算机设备的结构示意图。该实施例的计算机设备包括:处理器51、存储器52以及存储在所述存储器中并可在所述处理器上运行的计算机程序,例如计算机***资源调整程序。所述处理器执行所述计算机程序时实现上述各计算机***资源调度方法实施例中的步骤,例如图2所示的步骤S11。或者,所述处理器执行所述计算机程序时实现上述各装置实施例中各模块/单元的功能,例如31。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述计算机设备中的执行过程。例如,所述计算机程序可以被分割成确定单元以及写单元,各模块具体功能如下:
确定单元31,用于当获取到操作***异常信息时,根据所述操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区,其中,所述若干个连续的保留扇区的总容量大于等于所述操作***异常信息的字节数;
写单元32,用于通过硬盘扇区的写接口,将所述操作***异常信息写入到所述若干个连续的保留扇区上。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述示意图仅仅是计算机设备的示例,并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述计算机设备还可以包括输入输出设备、网络接入设备、总线等。
所述处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述计算机设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
实施例四
所述计算机设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
为了描述的方便,以上各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本发明时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (6)
1.一种操作***异常信息保存方法,其特征在于,包括:
将硬盘的一个预设分区格式化为文件配置表FAT格式,使得格式化后的分区中包含预设数量的保留扇区,所述预设数量的保留扇区为所述格式化后的分区中的FAT前的所有扇区;
当获取到操作***异常信息时,根据所述操作***异常信息的字节数,从所述预设数量的保留扇区中确定出若干个连续的保留扇区,其中,所述若干个连续的保留扇区的总容量大于等于所述操作***异常信息的字节数,所述操作***为嵌入式操作***;
通过硬盘扇区的写接口,将所述操作***异常信息写入到所述若干个连续的保留扇区上,具体包括:从所述硬盘的主引导扇区中获取所述预设分区的扇区偏移量,并根据所述扇区偏移量确定所述预设分区的位置信息;从所述预设数量的保留扇区中获得若干个连续的保留扇区的编号,并根据所述编号与所述扇区偏移量确定所述若干个连续的保留扇区的位置信息;根据所述位置信息,通过硬盘扇区的写接口,将所述操作***异常信息写入到所述若干个连续的保留扇区上,硬盘扇区写接口通过如下步骤实现:给硬盘控制器发送写命令,所述写命令是一个数据结构,包括起始扇区号、扇区数、缓冲区首地址三个函数入参,等待硬盘控制器操作硬盘完成写操作,
其中,所述操作***异常信息以消息队列的方式存储于内存中,所述消息队列的消息中包含有存放所述操作***异常信息的缓冲区的首地址;以及
在根据所述操作***异常信息的字节数,从预设数量的保留扇区中确定出若干个连续的保留扇区之前,还包括:
启动操作***异常信息处理任务,所述操作***异常信息处理任务是周期性、低优先级的任务;
从所述消息队列的消息中获取所述操作***异常信息的缓冲区的首地址;
根据所述缓冲区的首地址,获取所述操作***异常信息。
2.根据权利要求1所述的方法,其特征在于,还包括:
当接收到操作***异常信息读取指令时,则通过硬盘扇区的读接口,从所述若干个连续的保留扇区上读取所述操作***异常信息到内存中。
3.一种操作***异常信息保存装置,其特征在于,包括:
获得单元,用于将硬盘的一个预设分区格式化为文件配置表FAT格式,使得格式化后的分区中包含预设数量的保留扇区,所述预设数量的保留扇区为所述格式化后的分区中的FAT前的所有扇区;
确定单元,用于当获取到操作***异常信息时,根据所述操作***异常信息的字节数,从所述预设数量的保留扇区中确定出若干个连续的保留扇区,其中,所述若干个连续的保留扇区的总容量大于等于所述操作***异常信息的字节数,所述操作***为嵌入式操作***;
写单元,用于通过硬盘扇区的写接口,将所述操作***异常信息写入到所述若干个连续的保留扇区上;
所述写单元,具体用于从所述硬盘的主引导扇区中获取所述预设分区的扇区偏移量,并根据所述扇区偏移量确定所述预设分区的位置信息;从所述预设数量的保留扇区中获得若干个连续的保留扇区的编号,并根据所述编号与所述扇区偏移量确定所述若干个连续的保留扇区的位置信息;根据所述位置信息,通过硬盘扇区的写接口,将所述操作***异常信息写入到所述若干个连续的保留扇区上,其中,硬盘扇区写接口还用于:给硬盘控制器发送写命令,所述写命令是一个数据结构,包括起始扇区号、扇区数、缓冲区首地址三个函数入参,等待硬盘控制器操作硬盘完成写操作,
其中,所述操作***异常信息以消息队列的方式存储于内存中,所述消息队列的消息中包含有存放所述操作***异常信息的缓冲区的首地址;以及
所述装置,还包括:
启动单元,用于启动操作***异常信息处理任务,所述操作***异常信息处理任务是周期性、低优先级的任务;
第一获取单元,用于从所述消息队列的消息中获取所述操作***异常信息的缓冲区的首地址;
第二获取单元,用于根据所述缓冲区的首地址,获取所述操作***异常信息。
4.根据权利要求3所述的装置,其特征在于,还包括:
读取单元,用于当接收到操作***异常信息读取指令时,则通过硬盘扇区的读接口,从所述若干个连续的保留扇区上读取所述操作***异常信息到内存中。
5.一种计算机设备,其特征在于,所述计算机设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1-2中任意一项所述的操作***异常信息保存方法的步骤。
6.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-2中任意一项所述的操作***异常信息保存方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710685490.7A CN107506253B (zh) | 2017-08-11 | 2017-08-11 | 一种操作***异常信息保存方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710685490.7A CN107506253B (zh) | 2017-08-11 | 2017-08-11 | 一种操作***异常信息保存方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107506253A CN107506253A (zh) | 2017-12-22 |
CN107506253B true CN107506253B (zh) | 2021-05-18 |
Family
ID=60690718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710685490.7A Active CN107506253B (zh) | 2017-08-11 | 2017-08-11 | 一种操作***异常信息保存方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107506253B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110147289B (zh) * | 2018-02-13 | 2023-11-03 | 北京京东尚科信息技术有限公司 | 异常消息筛选方法和装置以及计算机可读存储介质 |
CN114360627A (zh) * | 2020-10-12 | 2022-04-15 | 合肥君正科技有限公司 | 一种轻量级tf卡检测工具 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101231607A (zh) * | 2008-02-22 | 2008-07-30 | 浪潮电子信息产业股份有限公司 | 通过定制的嵌入式小***维护主***的方法 |
CN102073655A (zh) * | 2009-11-20 | 2011-05-25 | 腾讯科技(深圳)有限公司 | 一种保存数据的方法和装置 |
CN104798136A (zh) * | 2012-11-19 | 2015-07-22 | 高通股份有限公司 | 具有用于存储配置信息的保留扇区的存储器单元阵列 |
CN105653385A (zh) * | 2015-12-31 | 2016-06-08 | 深圳市蓝泰源信息技术股份有限公司 | 一种车载录像方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582084B (zh) * | 2009-06-03 | 2012-12-19 | 中兴通讯股份有限公司 | 一种数据存储的方法及装置 |
-
2017
- 2017-08-11 CN CN201710685490.7A patent/CN107506253B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101231607A (zh) * | 2008-02-22 | 2008-07-30 | 浪潮电子信息产业股份有限公司 | 通过定制的嵌入式小***维护主***的方法 |
CN102073655A (zh) * | 2009-11-20 | 2011-05-25 | 腾讯科技(深圳)有限公司 | 一种保存数据的方法和装置 |
CN104798136A (zh) * | 2012-11-19 | 2015-07-22 | 高通股份有限公司 | 具有用于存储配置信息的保留扇区的存储器单元阵列 |
CN105653385A (zh) * | 2015-12-31 | 2016-06-08 | 深圳市蓝泰源信息技术股份有限公司 | 一种车载录像方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107506253A (zh) | 2017-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6198226B2 (ja) | 順次並んだスワップ・ファイルを使用するワーキング・セットのスワップ | |
US8868622B2 (en) | Method and apparatus for allocating resources in a computer system | |
WO2017185579A1 (zh) | 一种数据存储方法及装置 | |
US10459802B2 (en) | Backup image restore | |
US11151155B2 (en) | Memory use in a distributed index and query system | |
US10649967B2 (en) | Memory object pool use in a distributed index and query system | |
CN113220239A (zh) | 一种flash存储的擦写方法、装置、设备及可读存储介质 | |
US11188365B2 (en) | Memory overcommit by speculative fault | |
US20170316027A1 (en) | Online file system check | |
CN103617133B (zh) | 一种Windows***中虚拟内存压缩方法和装置 | |
CN107506253B (zh) | 一种操作***异常信息保存方法及装置 | |
CN102968323B (zh) | 计算机终端和实现计算机***开机加速的方法 | |
US20150082014A1 (en) | Virtual Storage Devices Formed by Selected Partitions of a Physical Storage Device | |
CN112925606A (zh) | 一种内存管理方法、装置及设备 | |
CN108459906B (zh) | 一种vcpu线程的调度方法及装置 | |
CN102968324B (zh) | 计算机***开机文件的整理方法和装置 | |
CN106557385B (zh) | 数据快照方法和存储设备 | |
CN108959517B (zh) | 文件管理方法、装置及电子设备 | |
US10795771B2 (en) | Information handling system with reduced data loss in block mode | |
US20160139850A1 (en) | Managing method of storage device, computer system and storage medium | |
CN106201344B (zh) | 一种信息处理方法及电子设备 | |
CN109901795B (zh) | 一种循环文件***及文件定位方法 | |
US20220283748A1 (en) | Enabling Multiple Storage Tiers in a Hyperconverged Infrastructure (HCI) Cluster | |
US11928510B2 (en) | Increasing page sharing on non-uniform memory access (NUMA)-enabled host systems | |
CN112269542B (zh) | 一种nvme硬盘存储空间分配方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20171222 Assignee: Kedong (Guangzhou) Software Technology Co., Ltd Assignor: Beijing Dongtu Technology Co., Ltd.|Beijing keyin Jingcheng Technology Co., Ltd Contract record no.: X2020980000255 Denomination of invention: Method and device for storing abnormal information of operating system License type: Exclusive License Record date: 20200218 |
|
EE01 | Entry into force of recordation of patent licensing contract | ||
GR01 | Patent grant | ||
GR01 | Patent grant |