1.本申请涉及屏幕分辨率修改技术领域,具体地,涉及一种屏幕分辨率处理方法,装置,存储介质和操作系统。
背景技术:
2.用户在使用操作系统时会修改屏幕分辨率以提升用户体验,传统的分辨率修改操作完成后,操作系统会记住用户设置新的屏幕分辨率。传统的方案中在修改屏幕分辨率时,先将新的分辨率信息写入系统缓冲区,再在后续某个不固定的时候将系统缓冲区中的屏幕分辨率写入磁盘中的配置文件。
3.但是如果在用户点击“保存更改”、修改完屏幕分辨并弹出“显示是否正常”对话框、点击“保存当前配置”时机器掉电,再次重启时操作系统时会弹出“无法应用原保存的显示器配置”。即再次重启时保存新的分辨率信息的文件会出现内容丢失,原因在于新的分辨率信息只保存到系统缓冲区中,并没有真正写入磁盘中。通过测试在点击“保存当前配置”选项后不同间隔时间机器掉电,并各以100次掉电测试,统计重启后分辨丢失,统计重启后新的分辨率信息丢失情况如下:
[0004] 0秒1秒2秒3秒4秒原有流程8660402010
[0005]
从测试数据发现数据丢失在10%~86%之间。
[0006]
因此,传统的屏幕分辨率处理方式在掉电情况下,更新后的分辨率信息易丢失,是本领域技术人员急需要解决的技术问题。
[0007]
在背景技术中公开的上述信息仅用于加强对本申请的背景的理解,因此其可能包含没有形成为本领域普通技术人员所知晓的现有技术的信息。
技术实现要素:
[0008]
本申请实施例提供了一种屏幕分辨率处理方法,装置,存储介质和操作系统,以解决传统的屏幕分辨率处理方式在掉电情况下,更新后的分辨率信息易丢失的技术问题。
[0009]
本申请实施例提供了一种屏幕分辨率处理方法,包括如下步骤:
[0010]
获取更新后的屏幕分辨率信息;
[0011]
将更新后的屏幕分辨率信息写入缓存区的配置文件;
[0012]
在将更新后的屏幕分辨率信息写入缓存区的配置文件后的小于等于预设时长的时刻,将更新后的屏幕分辨率信息写入磁盘中的配置文件中。
[0013]
本申请实施例还提供以下技术方案:
[0014]
一种屏幕分辨率处理装置,包括:
[0015]
获取模块,用于获取更新后的屏幕分辨率信息;
[0016]
软件写模块,用于将更新后的屏幕分辨率信息写入缓存区的配置文件;
[0017]
硬件写模块,用于在将更新后的屏幕分辨率信息写入缓存区的配置文件后的小于
等于预设时长的时刻,将更新后的屏幕分辨率信息写入磁盘中的配置文件中。
[0018]
本申请实施例还提供以下技术方案:
[0019]
一种计算机可读存储介质,其上存储有计算机程序;所述计算机程序被处理器执行以实现上述的方法。
[0020]
本申请实施例还提供以下技术方案:
[0021]
一种操作系统,包括:
[0022]
一个或多个处理器;
[0023]
存储装置,用于存储一个或多个程序;
[0024]
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述的方法。
[0025]
本申请实施例由于采用以上技术方案,具有以下技术效果:
[0026]
将更新后的屏幕分辨率信息写入缓存区的配置文件;在将更新后的屏幕分辨率信息写入缓存区的配置文件后的小于等于预设时长的时刻。即采用透写的方式将更新后的屏幕分辨率信息写入缓存区的配置文件。由于透写的方式在更新后的屏幕分辨率信息写入缓存区的配置文件到写入磁盘中的配置文件中之间的时间是非常短的,预设时长是很短的,这样,就大大减少了在更新后的屏幕分辨率信息写入缓存区的配置文件之后,操作系统发生断电,导致更新后的屏幕分辨率信息无法写入磁盘中的配置文件的几率,更新后的屏幕分辨率信息丢失的几率较低。
附图说明
[0027]
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0028]
图1为本申请实施例的一种屏幕分辨率处理方法的流程图;
[0029]
图2为图1所示的修改屏幕分辨率的请求的流转的流程图;
[0030]
图3为本申请实施例的屏幕分辨率处理装置的示意图。
[0031]
附图标记说明:
[0032]
100获取模块,200软件写模块,300硬件写模块。
具体实施方式
[0033]
为了使本申请实施例中的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0034]
实施例一
[0035]
图1为本申请实施例的一种屏幕分辨率处理方法的流程图。
[0036]
如图1所示,本申请实施例的屏幕分辨率处理方法,包括如下步骤:
[0037]
步骤s100:获取更新后的屏幕分辨率信息;
[0038]
步骤s200:将更新后的屏幕分辨率信息写入缓存区的配置文件;
[0039]
步骤s300:在将更新后的屏幕分辨率信息写入缓存区的配置文件后的小于等于预
设时长的时刻,将更新后的屏幕分辨率信息写入磁盘中的配置文件中。
[0040]
本申请实施例的屏幕分辨率处理方法,先是获取更新后的屏幕分辨率信息,然后将更新后的屏幕分辨率信息写入缓存区的配置文件;在将更新后的屏幕分辨率信息写入缓存区的配置文件后的小于等于预设时长的时刻,即采用透写的方式将更新后的屏幕分辨率信息写入缓存区的配置文件。磁盘本身是非易失性存储介质,更新后的屏幕分辨率信息写入磁盘中的配置文件中,就是更新后的屏幕分辨率信息写入非易失性存储介质中。由于透写的方式在更新后的屏幕分辨率信息写入缓存区的配置文件到写入磁盘中的配置文件中之间的时间是非常短的,预设时长是很短的,这样,就大大减少了在更新后的屏幕分辨率信息写入缓存区的配置文件之后,操作系统发生断电,导致更新后的屏幕分辨率信息无法写入磁盘中的配置文件的几率,更新后的屏幕分辨率信息丢失的几率较低。
[0041]
具体的,在小于等于预设时长的时刻,开始计时的时刻是更新后的屏幕分辨率信息写入缓存区的配置文件的完成时刻。
[0042]
实施中,采用透写的方式将更新后的屏幕分辨率信息写入缓存区的配置文件的步骤之前,还包括:
[0043]
将存储于磁盘中的配置文件加载到缓存区。
[0044]
将配置文件加载缓存区,为实现透写提供了条件。
[0045]
实施中,所述预设时长的取值范围为大于等于1秒小于等于5秒。
[0046]
预设时长的取值是对步骤s300限定,预设时长的限定越短,更新后的屏幕分辨率信息丢失的几率就越低。
[0047]
具体的,透写(write through)的方式就是透写缓存的方式,是把数据写入缓存内存后,就立即写入非易失存储器。在透写缓存技术中,只有在数据已经安全地写到非易失性存储介质中去之后,才会发写请求完成信号。因此,采用透写的方式将更新后的屏幕分辨率信息写入磁盘中的配置文件,更新后的屏幕分辨率信息成功写入磁盘中的配置文件的几率极高。
[0048]
本申请实施例的屏幕分辨率处理方法,在操作系统获取更新后的屏幕分辨率信息后,即屏幕分辨率信息发生更新后,就会采用透写的方式将更新后的屏幕分辨率信息写入配置文件。
[0049]
作为一种实现方式,可以是在有修改屏幕分辨率请求后进行的操作。对应的,步骤s100之前,还包括如下步骤:
[0050]
根据修改屏幕分辨率的请求,修改屏幕分辨率。
[0051]
这是本申请实施例的屏幕分辨率处理方法的一种具体应用,在步骤s100之前,根据修改屏幕分辨率的请求,显卡修改屏幕分辨率。
[0052]
修改屏幕分辨率的请求来源可以是多种的。作为一种实现方式,实施中,根据修改屏幕分辨率的请求,修改屏幕分辨率的步骤之前,还包括如下步骤:
[0053]
接收桌面管理进程xorg发送的修改屏幕分辨率的请求。
[0054]
其中,所述修改屏幕分辨率的请求由分辨率配置工具xrandr发送给桌面管理进程xorg;所述修改屏幕分辨率的请求由控制面板发送给分辨率配置工具xrandr;其中,所述修改修改屏幕分辨率的请求通过所述控制面板接收。
[0055]
即修改屏幕分辨率的请求由控制面板从用户处接收,控制面板发送给分辨率配置
工具xrandr,由分辨率配置工具xrandr发送给桌面管理进程xorg,桌面管理进程xorg向操作系统发送。
[0056]
linux系统中,x图形系统(x window system)提供了基础的图形用户界面(graphical user interface,简称为:gui),使得linux系统的使用更加直观。
[0057]
x window system是一种客户端/服务端(client/server,简称为:c/s)结构的系统模型,桌面管理进程xorg是x window system的一个实现,由图形服务端程序(x server)提供基本的图形显示能力;具体地,桌面管理进程xorg提供了一个x server,负责底层的操作,当运行一个图形客户端程序(x client)如操作面板时,该程序可以连接到x server上,由x server接收键盘和鼠标的输入并负责屏幕输出窗口的移动,窗口标题的样式等。
[0058]
图2为本申请实施例的一种屏幕分辨率处理方法的时序流程图。
[0059]
本申请实施例的屏幕分辨率处理方法使用的流程如下:
[0060]
步骤s11:打开控制面板,选择显示;
[0061]
步骤s12:点开显示屏幕分辨率下拉框,选择要配置的屏幕分辨率,点击保存配置;步骤s11和步骤s12,即用户将修改屏幕分辨率的请求提交的过程;
[0062]
步骤s13:控制面板通过分辨率配置工具xrandr向桌面管理进程xorg发送修改屏幕分辨率的请求;
[0063]
步骤s14:桌面管理进程xorg收到分辨率配置工具xrandr发送的修改屏幕分辨率的请求,即操作系统获取修改屏幕分辨率的请求,之后修改屏幕分辨率;
[0064]
步骤s15:控制面板通过分辨率配置工具xrandr获取配置信息,该配置信息是更新后的屏幕分辨率信息;
[0065]
步骤s16:打开~/.config/monitors.xml文件,即打开配置文件,此时是准备写入修改分辨率后获取的更新后的屏幕分辨率信息;
[0066]
步骤s17:采用透写文件的方式操作配置文件,快速的将更新后的屏幕分辨率信息将配置信息写入磁盘文件系统,即将更新后的屏幕分辨率信息写入缓存区的配置文件后,立即写入磁盘中的配置文件中。
[0067]
这样,修改屏幕分辨率的请求的走向,如图2所示,就是通过用户输入到控制面板,控制面板发送到分辨率配置工具xrandr,分辨率配置工具xrandr发送到桌面管理进程xorg,桌面管理进程xorg发送到操作系统。实现了用户修改屏幕分辨率的请求的图形界面化输入。
[0068]
对比背景技术和本申请实施例的屏幕分辨率处理方法的测试数据,发现修改分辨率时配置文件内容丢失的概率大大降低。
[0069] 立即1s2s3s4s原有流程8660402010优化后流程463720100提升率40%23%20%10%10%
[0070]
实施例二
[0071]
图3为本申请实施例的屏幕分辨率处理装置的示意图。如图3所示,本申请实施例的屏幕分辨率处理装置,包括:
[0072]
获取模块100,用于获取更新后的屏幕分辨率信息;
[0073]
软件写模块200,用于将更新后的屏幕分辨率信息写入缓存区的配置文件;
[0074]
硬件写模块300,用于在将更新后的屏幕分辨率信息写入缓存区的配置文件后的小于等于预设时长的时刻,将更新后的屏幕分辨率信息写入磁盘中的配置文件中。
[0075]
本申请实施例的屏幕分辨率处理装置,获取模块获取更新后的屏幕分辨率信息,然后软件写模块将更新后的屏幕分辨率信息写入缓存区的配置文件,之后,硬件写模块在预设时长内,将更新后的屏幕分辨率信息写入磁盘中的配置文件中。即软件写模块和硬件写模块共同采用透写的方式将更新后的屏幕分辨率信息写入配置文件。磁盘本身是非易失性存储介质,更新后的屏幕分辨率信息写入磁盘中的配置文件中,就是更新后的屏幕分辨率信息写入非易失性存储介质中。由于透写的方式在更新后的屏幕分辨率信息写入缓存区的配置文件到写入磁盘中的配置文件中之间的时间是非常短的,预设时长是很短的,这样,就大大减少了在更新后的屏幕分辨率信息写入缓存区的配置文件之后,操作系统发生断电,导致更新后的屏幕分辨率信息无法写入磁盘中的配置文件的几率,更新后的屏幕分辨率信息丢失的几率较低。本申请实施例的屏幕分辨率处理装置,更新后的屏幕分辨率信息成功写入磁盘中的配置文件的几率极高,从而大大降低了在掉电情况下,更新后的屏幕分辨率信息丢失的几率。
[0076]
本申请实施例的屏幕分辨率处理装置是与实施例一的屏幕分辨率处理方法对应的装置,本申请实施例的屏幕分辨率处理装置所解决的技术问题,具有的技术效果与实施例一中的方法相似。
[0077]
实施中,装置还包括:
[0078]
配置文件加载模块,用于将存储于磁盘中的配置文件加载到缓存区。
[0079]
实施中,所述预设时长的取值范围为大于等于1秒小于等于5秒。
[0080]
实施中,装置还包括:
[0081]
修改模块,用于根据修改屏幕分辨率的请求,修改屏幕分辨率。
[0082]
实施中,装置还包括:
[0083]
接收模块,用于接收桌面管理进程xorg发送的修改屏幕分辨率的请求。
[0084]
实施例三
[0085]
本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序;所述计算机程序被处理器执行以实现如实施例一所述的方法。
[0086]
实施例四
[0087]
本申请实施例提供一种操作系统,包括:
[0088]
一个或多个处理器;
[0089]
存储装置,用于存储一个或多个程序;
[0090]
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现实施例一所述的方法。
[0091]
在本申请及其实施例的描述中,需要理解的是,术语“顶”、“底”、“高度”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
[0092]
在本申请及其实施例中,除非另有明确的规定和限定,术语“设置”、“安装”、“相
连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接,还可以是通信;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
[0093]
在本申请及其实施例中,除非另有明确的规定和限定,第一特征在第二特征之“上”或之“下”可以包括第一和第二特征直接接触,也可以包括第一和第二特征不是直接接触而是通过它们之间的另外的特征接触。而且,第一特征在第二特征“之上”、“上方”和“上面”包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度小于第二特征。
[0094]
上文的公开提供了许多不同的实施方式或例子用来实现本申请的不同结构。为了简化本申请的公开,上文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本申请。此外,本申请可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。此外,本申请提供了的各种特定的工艺和材料的例子,但是本领域普通技术人员可以意识到其他工艺的应用和/或其他材料的使用。
[0095]
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
[0096]
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
技术特征:
1.一种屏幕分辨率处理方法,其特征在于,包括如下步骤:获取更新后的屏幕分辨率信息;将更新后的屏幕分辨率信息写入缓存区的配置文件;在将更新后的屏幕分辨率信息写入缓存区的配置文件后的小于等于预设时长的时刻,将更新后的屏幕分辨率信息写入磁盘中的配置文件中。2.根据权利要求1所述的方法,其特征在于,将更新后的屏幕分辨率信息写入缓存区的配置文件的步骤之前,还包括:将存储于磁盘中的配置文件加载到缓存区。3.根据权利要求2所述的方法,其特征在于,所述预设时长的取值范围为大于等于1秒小于等于5秒。4.根据权利要求1所述的方法,其特征在于,获取更新后的屏幕分辨率信息的步骤之前,还包括如下步骤:根据修改屏幕分辨率的请求,修改屏幕分辨率。5.根据权利要求4所述的方法,其特征在于,根据修改屏幕分辨率的请求,修改屏幕分辨率步骤之前,还包括:接收桌面管理进程发送的修改屏幕分辨率的请求。6.根据权利要求5所述的方法,其特征在于,所述修改屏幕分辨率的请求由分辨率配置工具发送给桌面管理进程。7.根据权利要求6所述的方法,其特征在于,所述修改屏幕分辨率的请求由控制面板发送给分辨率配置工具;其中,所述修改修改屏幕分辨率的请求通过所述控制面板接收。8.根据权利要求1所述的方法,其特征在于,所述磁盘是非易失性存储介质。9.一种屏幕分辨率处理装置,其特征在于,包括:获取模块,用于获取更新后的屏幕分辨率信息;软件写模块,用于将更新后的屏幕分辨率信息写入缓存区的配置文件;硬件写模块,用于在将更新后的屏幕分辨率信息写入缓存区的配置文件后的小于等于预设时长的时刻,将更新后的屏幕分辨率信息写入磁盘中的配置文件中。10.根据权利要求9所述的装置,其特征在于,还包括:配置文件加载模块,用于将存储于磁盘中的配置文件加载到缓存区。11.根据权利要求10所述的装置,其特征在于,所述预设时长的取值范围为大于等于1秒小于等于5秒。12.根据权利要求9所述的装置,其特征在于,还包括:修改模块,用于根据修改屏幕分辨率的请求,修改屏幕分辨率。13.根据权利要求12所述的装置,其特征在于,还包括:接收模块,用于接收桌面管理进程发送的修改屏幕分辨率的请求。14.一种计算机可读存储介质,其特征在于,其上存储有计算机程序;所述计算机程序被处理器执行以实现如权利要求1至8任一所述的方法。15.一种操作系统,其特征在于,包括:一个或多个处理器;
存储装置,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至8任一所述的方法。
技术总结
本申请实施例提供了一种屏幕分辨率处理方法,装置,存储介质和操作系统。方法包括:获取更新后的屏幕分辨率信息;将更新后的屏幕分辨率信息写入缓存区的配置文件;在将更新后的屏幕分辨率信息写入缓存区的配置文件后的小于等于预设时长的时刻,将更新后的屏幕分辨率信息写入磁盘中的配置文件中。装置包括实现上述方法的装置。一种计算机可读存储介质,其上存储有计算机程序;所述计算机程序执行以实现上述的方法。操作系统能够实现上述的屏幕分辨率修改及保存方法。本申请实施例解决了传统的屏幕分辨率修改及保存方式在掉电情况下,更新后的分辨率信息易丢失的技术问题。后的分辨率信息易丢失的技术问题。后的分辨率信息易丢失的技术问题。
技术研发人员:彭禹
受保护的技术使用者:长沙景美集成电路设计有限公司
技术研发日:2021.03.02
技术公布日:2021/6/29
转载请注明原文地址:https://doc.8miu.com/read-7483.html