获取日志的方法及装置与流程

文档序号:12469489阅读:290来源:国知局
获取日志的方法及装置与流程

本发明涉及计算机技术领域,尤其涉及一种获取日志的方法及装置。



背景技术:

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。在类似于Linux的嵌入式操作系统中,Bootloader(引导加载)是在操作系统内核运行之前运行。可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境。由于Bootloader运行于操作系统运行之前,因此,其相关日志文件无法通过操作系统读取,只能另行外接串口线以连接到设备中,才能通过串口线读出Bootloader的日志文件,增加了硬件成本。



技术实现要素:

有鉴于此,本发明实施例提供了一种获取日志的方法及装置,能够有效降低了读取Bootloader日志文件的硬件成本。

一方面,本发明实施例提供了一种获取日志的方法,包括:

启动引导加载程序;

将所述引导加载程序生成的引导加载程序日志存储在操作系统的内存保留区;

启动所述操作系统;

从所述操作系统的内存保留区中读取所述引导加载程序日志;

将已读取的所述引导加载程序日志导入所述操作系统;

通过所述操作系统读取所述引导加载程序日志。

另一方面,本发明实施例还提供了一种获取日志的装置,所述装置包括:

第一启动单元,用于启动引导加载程序;

存储单元,用于将所述引导加载程序生成的引导加载程序日志存储在操作系统的内存保留区;

第二启动单元,用于启动所述操作系统;

第一读取单元,用于从所述操作系统的内存保留区中读取所述引导加载程序日志;

导入单元,用于将已读取的所述引导加载程序日志导入所述操作系统;

第二读取单元,用于通过所述操作系统读取所述引导加载程序日志。

本发明实施例提供的一种获取日志的方法及装置,通过将引导加载程序(Bootloader)的日志信息存储在操作系统的内存保留区中,使得操作系统在运行过程中引导加载程序(Bootloader)的日志信息不会被破坏,进而可以在操作系统启动后直接读取,相比于现有技术中需要另接数据线进行导出来说,本发明实施例可以直接依靠已有的操作系统进行读出,依靠的硬件设备更少,有效降低了硬件成本。

【附图说明】

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。

图1是本发明实施例提供的一种获取日志的方法流程图;

图2是本发明实施例提供的另一种获取日志的方法流程图;

图3是本发明实施例提供的另一种获取日志的方法流程图;

图4是本发明实施例提供的一种获取日志的装置的组成框图。

【具体实施方式】

为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。

应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。

本发明实施例提供了一种获取日志的方法,适用于在包括linux等嵌入式操作系统中获取Bootloader日志的相关过程中,其流程图1所示,包括:

101、启动引导加载程序。

102、将所述引导加载程序生成的引导加载程序日志存储在操作系统的内存保留区。

其中,需要说民的是,操作系统的内存保留区一般指内存在操作系统内核对内存进行初始化内存的过程中不会进行初始化的一部分内存。

103、启动所述操作系统。

补充说明的是,操作系统的启动一般被要求在引导加载程序完成之后。

104、从所述操作系统的内存保留区中读取所述引导加载程序日志。

虽然内存保留区的内容不会被操作系统内核初始化,但是操作系统启动后是可以正常对该部分内存存储的信息进行读取的。

105、将已读取的所述引导加载程序日志导入所述操作系统。

106、通过所述操作系统读取所述引导加载程序日志。

本发明实施例提供的一种获取日志的方法,通过将引导加载程序(Bootloader)的日志信息存储在操作系统的内存保留区中,使得操作系统在运行过程中引导加载程序(Bootloader)的日志信息不会被破坏,进而可以在操作系统启动后直接读取,相比于现有技术中需要另接数据线进行导出来说,本发明实施例可以直接依靠已有的操作系统进行读出,依靠的硬件设备更少,有效降低了硬件成本。

在前述方法流程的基础上,在本发明实施例的另一种实现方式中,以前述操作系统为linux系统实现为例,针对步骤105和106的实现提供了如图2和图3两种实现方式。

在第一种方法中,步骤105可执行为步骤201,步骤106可执行为步骤202。具体包括:

201、将已读取的所述引导加载程序日志存储所述操作系统的系统日志文件中。

202、通过所述操作系统的系统日志文件读取所述引导加载程序日志。

在第二种方法中,步骤105可执行为步骤301,步骤106可执行为步骤302。具体包括:

301、将已读取的所述引导加载程序日志导入所述操作系统中的虚拟文件系统。

其中,虚拟文件系统为linux proc文件系统,proc文件系统是一种无存储的文件系统,当读其中的文件时,其内容动态生成,当写文件时,文件所关联的写函数被调用。每个proc文件都关联的字节特定的读写函数,因而它提供了另外的一种和内核通信的机制:内核部件可以通过该文件系统向用户空间提供接口来提供查询信息、修改软件行为。

302、通过所述操作系统中的虚拟文件系统读取所述引导加载程序日志。

另外需要说明的是,除linux系统外,任何在初始化过程中对内存部分空间有所保留的操作系统都适用于本发明实施例提供的技术方案。

本发明实施例还提供了一种获取日志的装置,可实现前述各方法流程,其组成如图4所示,包括:

第一启动单元41,用于启动引导加载程序;

存储单元,用于将所述引导加载程序生成的引导加载程序日志存储在操作系统的内存保留区;

第二启动单元42,用于启动所述操作系统;

第一读取单元43,用于从所述操作系统的内存保留区中读取所述引导加载程序日志;

导入单元44,用于将已读取的所述引导加载程序日志导入所述操作系统;

第二读取单元45,用于通过所述操作系统读取所述引导加载程序日志。

可选的是,所述导入单元44用于将已读取的所述引导加载程序日志存储所述操作系统的系统日志文件中;所述第二读取单元45,用于通过所述操作系统的系统日志文件读取所述引导加载程序日志。

可选的是,所述导入单元44用于将已读取的所述引导加载程序日志导入所述操作系统中的虚拟文件系统;所述第二读取单元45,用于通过所述操作系统中的虚拟文件系统读取所述引导加载程序日志。

可选的是,所述操作系统为linux。

本发明实施例提供的一种获取日志的装置,通过将引导加载程序(Bootloader)的日志信息存储在操作系统的内存保留区中,使得操作系统在运行过程中引导加载程序(Bootloader)的日志信息不会被破坏,进而可以在操作系统启动后直接读取,相比于现有技术中需要另接数据线进行导出来说,本发明实施例可以直接依靠已有的操作系统进行读出,依靠的硬件设备更少,有效降低了硬件成本。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(Processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1