CN104881261A - 一种合理利用显示缓冲区内存的方法及其系统 - Google Patents

一种合理利用显示缓冲区内存的方法及其系统 Download PDF

Info

Publication number
CN104881261A
CN104881261A CN201510257338.XA CN201510257338A CN104881261A CN 104881261 A CN104881261 A CN 104881261A CN 201510257338 A CN201510257338 A CN 201510257338A CN 104881261 A CN104881261 A CN 104881261A
Authority
CN
China
Prior art keywords
internal memory
memory
bootloader
operating system
display buffer
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
CN201510257338.XA
Other languages
English (en)
Other versions
CN104881261B (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.)
Rockchip Electronics Co Ltd
Original Assignee
Fuzhou Rockchip Electronics 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 Fuzhou Rockchip Electronics Co Ltd filed Critical Fuzhou Rockchip Electronics Co Ltd
Priority to CN201510257338.XA priority Critical patent/CN104881261B/zh
Publication of CN104881261A publication Critical patent/CN104881261A/zh
Application granted granted Critical
Publication of CN104881261B publication Critical patent/CN104881261B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Liquid Crystal Display Device Control (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

本发明提供一种合理利用显示缓冲区内存的方法,所述方法包括如下步骤:1、bootloader根据所需显示图片的大小申请一内存一,保存图片数据在该内存一中;2、将内存一的地址标记为不可使用,操作系统在内存初始化阶段,将被bootloader标记为不可被使用的内存一剔除出操作系统的内存池;3、操行系统的LCD控制器驱动按屏幕分辨率获得当前帧显示缓冲所需要的内存二,通知操作系统的内存管理器;4、内存管理器按照所需要的内存二与所述的内存一进行比较,来执行追加或者回收内存。本发明高弹性的可回收、可追加的显示帧数据缓冲内存,提高了操作系统内存的利用率。

Description

一种合理利用显示缓冲区内存的方法及其系统
技术领域
本发明涉及嵌入式设备技术领域,尤其涉及一种合理利用显示缓冲区内存的方法及其系统。
背景技术
目前的嵌入式设备很多需要在bootloader引导阶段显示一个图片,并且该图片还需要在操作系统初始化阶段继续显示。bootloader会将一个保存有该图片数据的内存地址,赋于LCD控制器的显示帧缓存区地址,LCD控制器从该地址中获取图片数据用于显示。那么就存在操作系统初始化的时候,错误的将bootloader用于保存显示图片的内存挪为他用,导致操作系统初始化阶段LCD输出数据被修改,表现为界面花屏。为了应对这种问题,目前共用几种技术。
第一种是在操作系统初始化阶段关闭背光,在操作系统的LCD控制器驱动完成初始化之后再打开背光进行图片显示,此种做法会导致图片显示不连续,用户体验差。
第二种做法是修改操作选题的内存映射关系,让操作系统在初始化阶段不去使用被bootloader用于保存图片数据的内存区域,此类做法虽能解决问题,但是操作十分复杂,需要针对初始化阶段和非初始化阶段配置两份MMU表,分别配置,很容易导致系统异常。
第三种是见中国专利“一种启动程序时等待信息的显示控制方法和移动终端”,公开号为:101776986A,公开日为:2010-07-14;该发明去除了内核初始化LCD的步骤,并在将bootloader显存中的等待信息数据复制到内核的显存中后,再初始化LCD控制器,这样,LCD即可直接根据LCD控制器中的显存首地址,读取内核的显存中的等待信息数据,而bootloader显存中的等待信息数据已经预先复制到内核的显存中,所以对于用户来讲,显示的内容完全没有改变,同时由于去除了初始化LCD的步骤,所以完全避免了LCD屏幕显示的扭曲、闪动、花屏等现象,提高了程序启动时的显示质量,带给用户较好的视觉感受。但是该发明中所提到的bootloader与操作系统分别开辟不同的显示帧缓区内存,进行图片数据的拷贝;此方法无法解决我们所提出的问题(因为操作系统初始化阶段仍然有可能将bootloader准备的第一显示内存挪为他用,导致花屏)。
第四种技术就是开辟一个独立的物理内存控制,此空间在bootloader和操作系统的生命周期内,只配置给LCD使用,但是这样就产生一个问题,操作系统系统需才要针对不同的屏幕和分辨率开辟不同大小的显示帧缓冲区内存,如果bootloader中显示的图片很大(它需要开辟很大的内存用于保存该图片),但是操作系统中需要显示的图片很小,那么这段内存就浪费了(操作系统无法使用多余的部分)。
发明内容
本发明要解决的技术问题之一,在于提供一种合理利用显示缓冲区内存的方法,高弹性的可回收、可追加的显示帧数据缓冲内存,提高了操作系统内存的利用率。
本发明问题之一是这样实现的:一种合理利用显示缓冲区内存的方法,所述方法包括如下步骤:
步骤1、bootloader根据所需显示图片的大小申请一内存一,保存图片数据在该内存一中;
步骤2、将内存一的地址标记为不可使用,操作系统在内存初始化阶段,将被bootloader标记为不可被使用的内存一剔除出操作系统的内存池;
步骤3、操行系统的LCD控制器驱动按屏幕分辨率获得当前帧显示缓冲所需要的内存二,通知操作系统的内存管理器;
步骤4、内存管理器按照所需要的内存二与所述的内存一进行比较,来执行追加或者回收内存。
进一步地,所述步骤1进一步包括:bootloader将图片数据拷贝到内存一的位置,让LCD控制器从内存一种取出图片数据用于输出显示。
进一步地,所述步骤2进一步包括:bootloader传递内存一初始化的地址数值利用参数传递给操作系统,将此段内存一的地址标记为不可使用,操作系统在内存初始化阶段,提取bootloader传递来的所述参数,将被bootloader标记为不可被使用的内存一剔除出操作系统的内存池。
进一步地,所述步骤4具体为:内存管理器判断如果内存一大于内存二,则内存管理器回收内存一减去内存二后多余的内存;如果内存一小于内存二,则在内存一的基础上再追加内存二减去内存一后的内存,补足内存给LCD控制器来使用。
本发明要解决的技术问题之二,在于提供一种合理利用显示缓冲区内存的系统,高弹性的可回收、可追加的显示帧数据缓冲内存,提高了操作系统内存的利用率。
本发明问题之二是这样实现的:一种合理利用显示缓冲区内存的系统,所述系统包括内存申请模块、标记模块、获取模块以及内存处理模块;
所述内存申请模块用于:通过bootloader根据所需显示图片的大小申请一内存一,保存图片数据在该内存一中;
标记模块用于:将内存一的地址标记为不可使用,操作系统在内存初始化阶段,将被bootloader标记为不可被使用的内存一剔除出操作系统的内存池;
获取模块用于:通过操行系统的LCD控制器驱动按屏幕分辨率获得当前帧显示缓冲所需要的内存二,通知操作系统的内存管理器;
内存处理模块用于:通过内存管理器按照所需要的内存二与所述的内存一进行比较,来执行追加或者回收内存。
进一步地,所述内存申请模块进一步包括:bootloader将图片数据拷贝到内存一的位置,让LCD控制器从内存一种取出图片数据用于输出显示。
进一步地,所述标记模块进一步包括:bootloader传递内存一初始化的地址数值利用参数传递给操作系统,将此段内存一的地址标记为不可使用,操作系统在内存初始化阶段,提取bootloader传递来的所述参数,将被bootloader标记为不可被使用的内存一剔除出操作系统的内存池。
进一步地,所述内存处理模块具体为:内存管理器判断如果内存一大于内存二,则内存管理器回收内存一减去内存二后多余的内存;如果内存一小于内存二,则在内存一的基础上再追加内存二减去内存一后的内存,补足内存给LCD控制器来使用。
本发明具有如下优点:本发明高弹性的可回收、可追加的显示帧数据缓冲内存,提高了操作系统内存的利用率;避免了LCD屏幕显示的扭曲、闪动、花屏等现象,提高了程序启动时的显示质量,带给用户较好的视觉感受。
附图说明
图1为本发明方法流程示意图。
图2为本发明系统的原理图。
具体实施方式
请参阅图1所示,本发明的一种合理利用显示缓冲区内存的方法,所述方法包括如下步骤:
步骤1、bootloader根据所需显示图片的大小申请一内存一,保存图片数据在该内存一中;所述步骤1进一步包括:bootloader将图片数据拷贝到内存一的位置,让LCD控制器从内存一种取出图片数据用于输出显示。
步骤2、将内存一的地址标记为不可使用,操作系统在内存初始化阶段,将被bootloader标记为不可被使用的内存一剔除出操作系统的内存池;所述步骤2进一步包括:bootloader传递内存一初始化的地址数值利用参数传递给操作系统,将此段内存一的地址标记为不可使用,操作系统在内存初始化阶段,提取bootloader传递来的所述参数,将被bootloader标记为不可被使用的内存一剔除出操作系统的内存池。此时操作系统不会再使用该段内存。
步骤3、操行系统的LCD控制器驱动按屏幕分辨率获得当前帧显示缓冲所需要的内存二,通知操作系统的内存管理器;这样操作系统中初始化初期,LCD控制器已经由bootloader阶段初始化好了,且bootloader为其申请的内存一不会被操作系统使用,所以图像能够继续稳定的显示在LCD屏幕上。
步骤4、内存管理器按照所需要的内存二与所述的内存一进行比较,来执行追加或者回收内存。所述步骤4具体为:内存管理器判断如果内存一大于内存二,则内存管理器回收内存一减去内存二后多余的内存(如:内存一为内存A,内存二为内存B,则内存管理器回收(A-B)多余的内存);如果内存一小于内存二,则在内存一的基础上再追加内存二减去内存一后的内存(再追加(B-A)后的内存),补足内存给LCD控制器来使用。
参阅图2所示,本发明的一种合理利用显示缓冲区内存的系统,所述系统包括内存申请模块、标记模块、获取模块以及内存处理模块;
所述内存申请模块用于:通过bootloader根据所需显示图片的大小申请一内存一,保存图片数据在该内存一中;所述内存申请模块进一步包括:bootloader将图片数据拷贝到内存一的位置,让LCD控制器从内存一种取出图片数据用于输出显示。
标记模块用于:将内存一的地址标记为不可使用,操作系统在内存初始化阶段,将被bootloader标记为不可被使用的内存一剔除出操作系统的内存池;所述标记模块进一步包括:bootloader传递内存一初始化的地址数值利用参数传递给操作系统,将此段内存一的地址标记为不可使用,操作系统在内存初始化阶段,提取bootloader传递来的所述参数,将被bootloader标记为不可被使用的内存一剔除出操作系统的内存池。此时操作系统不会再使用该段内存。
获取模块用于:通过操行系统的LCD控制器驱动按屏幕分辨率获得当前帧显示缓冲所需要的内存二,通知操作系统的内存管理器;这样操作系统中初始化初期,LCD控制器已经由bootloader阶段初始化好了,且bootloader为其申请的内存一不会被操作系统使用,所以图像能够继续稳定的显示在LCD屏幕上。
内存处理模块用于:通过内存管理器按照所需要的内存二与所述的内存一进行比较,来执行追加或者回收内存。
所述内存处理模块具体为:内存管理器判断如果内存一大于内存二,则内存管理器回收内存一减去内存二后多余的内存(如:内存一为内存A,内存二为内存B,则内存管理器回收(A-B)多余的内存);如果内存一小于内存二,则在内存一的基础上再追加内存二减去内存一后的内存(再追加(B-A)后的内存),补足内存给LCD控制器来使用。
总之,本发明高弹性的可回收、可追加的显示帧数据缓冲内存,提高了操作系统内存的利用率;避免了LCD屏幕显示的扭曲、闪动、花屏等现象,提高了程序启动时的显示质量,带给用户较好的视觉感受。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。

Claims (8)

1.一种合理利用显示缓冲区内存的方法,其特征在于:所述方法包括如下步骤:
步骤1、bootloader根据所需显示图片的大小申请一内存一,保存图片数据在该内存一中;
步骤2、将内存一的地址标记为不可使用,操作系统在内存初始化阶段,将被bootloader标记为不可被使用的内存一剔除出操作系统的内存池;
步骤3、操行系统的LCD控制器驱动按屏幕分辨率获得当前帧显示缓冲所需要的内存二,通知操作系统的内存管理器;
步骤4、内存管理器按照所需要的内存二与所述的内存一进行比较,来执行追加或者回收内存。
2.根据权利要求1所述的一种合理利用显示缓冲区内存的方法,其特征在于:所述步骤1进一步包括:bootloader将图片数据拷贝到内存一的位置,让LCD控制器从内存一种取出图片数据用于输出显示。
3.根据权利要求1所述的一种合理利用显示缓冲区内存的方法,其特征在于:所述步骤2进一步包括:bootloader传递内存一初始化的地址数值利用参数传递给操作系统,将此段内存一的地址标记为不可使用,操作系统在内存初始化阶段,提取bootloader传递来的所述参数,将被bootloader标记为不可被使用的内存一剔除出操作系统的内存池。
4.根据权利要求1所述的一种合理利用显示缓冲区内存的方法,其特征在于:所述步骤4具体为:内存管理器判断如果内存一大于内存二,则内存管理器回收内存一减去内存二后多余的内存;如果内存一小于内存二,则在内存一的基础上再追加内存二减去内存一后的内存,补足内存给LCD控制器来使用。
5.一种合理利用显示缓冲区内存的系统,其特征在于:所述系统包括内存申请模块、标记模块、获取模块以及内存处理模块;
所述内存申请模块用于:通过bootloader根据所需显示图片的大小申请一内存一,保存图片数据在该内存一中;
标记模块用于:将内存一的地址标记为不可使用,操作系统在内存初始化阶段,将被bootloader标记为不可被使用的内存一剔除出操作系统的内存池;
获取模块用于:通过操行系统的LCD控制器驱动按屏幕分辨率获得当前帧显示缓冲所需要的内存二,通知操作系统的内存管理器;
内存处理模块用于:通过内存管理器按照所需要的内存二与所述的内存一进行比较,来执行追加或者回收内存。
6.根据权利要求5所述的一种合理利用显示缓冲区内存的系统,其特征在于:所述内存申请模块进一步包括:bootloader将图片数据拷贝到内存一的位置,让LCD控制器从内存一种取出图片数据用于输出显示。
7.根据权利要求5所述的一种合理利用显示缓冲区内存的系统,其特征在于:所述标记模块进一步包括:bootloader传递内存一初始化的地址数值利用参数传递给操作系统,将此段内存一的地址标记为不可使用,操作系统在内存初始化阶段,提取bootloader传递来的所述参数,将被bootloader标记为不可被使用的内存一剔除出操作系统的内存池。
8.根据权利要求5所述的一种合理利用显示缓冲区内存的系统,其特征在于:所述内存处理模块具体为:内存管理器判断如果内存一大于内存二,则内存管理器回收内存一减去内存二后多余的内存;如果内存一小于内存二,则在内存一的基础上再追加内存二减去内存一后的内存,补足内存给LCD控制器来使用。
CN201510257338.XA 2015-05-20 2015-05-20 一种合理利用显示缓冲区内存的方法及其系统 Active CN104881261B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510257338.XA CN104881261B (zh) 2015-05-20 2015-05-20 一种合理利用显示缓冲区内存的方法及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510257338.XA CN104881261B (zh) 2015-05-20 2015-05-20 一种合理利用显示缓冲区内存的方法及其系统

Publications (2)

Publication Number Publication Date
CN104881261A true CN104881261A (zh) 2015-09-02
CN104881261B CN104881261B (zh) 2017-09-22

Family

ID=53948771

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510257338.XA Active CN104881261B (zh) 2015-05-20 2015-05-20 一种合理利用显示缓冲区内存的方法及其系统

Country Status (1)

Country Link
CN (1) CN104881261B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106547671A (zh) * 2016-10-19 2017-03-29 惠州Tcl移动通信有限公司 一种移动终端控制显示内存容量的方法及系统
CN108804223A (zh) * 2018-05-16 2018-11-13 努比亚技术有限公司 内存优化方法、移动终端及计算机可读存储介质
CN112052065A (zh) * 2020-10-12 2020-12-08 展讯半导体(南京)有限公司 标识图片的显示方法、显示系统、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101526907A (zh) * 2008-03-04 2009-09-09 深圳市爱国者嵌入式系统科技有限公司 避免电子产品开机错误的闪存管理方法
CN101980157A (zh) * 2010-10-13 2011-02-23 中兴通讯股份有限公司 移动终端开机启动方法及移动终端
CN102609231A (zh) * 2012-02-22 2012-07-25 中国人民解放军国防科学技术大学 基于飞腾处理器平台的多显示屏输出方法
CN103136105A (zh) * 2011-11-28 2013-06-05 广东新岸线计算机系统芯片有限公司 一种内存管理方法、嵌入式系统和视频数据处理系统
US20140118239A1 (en) * 2012-10-25 2014-05-01 PixiOnCloud, Inc. Visual-symbolic control of remote devices having display-based user interfaces

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101526907A (zh) * 2008-03-04 2009-09-09 深圳市爱国者嵌入式系统科技有限公司 避免电子产品开机错误的闪存管理方法
CN101980157A (zh) * 2010-10-13 2011-02-23 中兴通讯股份有限公司 移动终端开机启动方法及移动终端
CN103136105A (zh) * 2011-11-28 2013-06-05 广东新岸线计算机系统芯片有限公司 一种内存管理方法、嵌入式系统和视频数据处理系统
CN102609231A (zh) * 2012-02-22 2012-07-25 中国人民解放军国防科学技术大学 基于飞腾处理器平台的多显示屏输出方法
US20140118239A1 (en) * 2012-10-25 2014-05-01 PixiOnCloud, Inc. Visual-symbolic control of remote devices having display-based user interfaces

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106547671A (zh) * 2016-10-19 2017-03-29 惠州Tcl移动通信有限公司 一种移动终端控制显示内存容量的方法及系统
CN108804223A (zh) * 2018-05-16 2018-11-13 努比亚技术有限公司 内存优化方法、移动终端及计算机可读存储介质
CN112052065A (zh) * 2020-10-12 2020-12-08 展讯半导体(南京)有限公司 标识图片的显示方法、显示系统、电子设备及存储介质

Also Published As

Publication number Publication date
CN104881261B (zh) 2017-09-22

Similar Documents

Publication Publication Date Title
US9239724B2 (en) Computer device and boot method thereof
US8982158B2 (en) Computer screen image displaying method, computer having a vertical display device, and computer program product
WO2017101493A1 (zh) 一种浏览器的页面标签管理方法及装置
CN101776986B (zh) 一种启动程序时等待信息的显示控制方法和装置
US20190130795A1 (en) Display control apparatus and method and display apparatus
CN104615396A (zh) 一种基于Android的分辨率自动调整方法及系统
CN105786424B (zh) 嵌入式系统的单屏幕快速分屏显示解决的方法
WO2018120546A1 (zh) 一种图像显示的方法及终端设备
WO2018119575A1 (zh) 一种显示方法及电子设备
WO2022088783A1 (zh) 视频制作方法及装置
CN110019464B (zh) 页面处理方法及装置
US20160088228A1 (en) Photograph method and photograph device
CN104881261A (zh) 一种合理利用显示缓冲区内存的方法及其系统
CN110442879B (zh) 一种内容翻译的方法和终端
WO2022166893A1 (zh) 信息显示方法、装置、电子设备和存储介质
CN106598619A (zh) 嵌入式系统开机界面显示控制方法
CN104375852A (zh) 一种加快嵌入式产品开机界面显示的方法
WO2017096910A1 (zh) 自适应调整办公软件的显示比例的方法和系统
CN103793233B (zh) 一种基于uboot实现用户界面图形显示的方法
CN107239247B (zh) 电子设备及其内容显示方法、装置和存储介质
WO2024088317A1 (zh) 应用界面显示方法、装置、电子设备及存储介质
WO2024078490A1 (zh) 图片处理方法、装置、电子设备及介质
CN104461643A (zh) 电子设备的控制方法、控制装置及电子设备
WO2023174328A1 (zh) 屏幕控制方法、装置、电子设备及存储介质
US20200251074A1 (en) Dynamic resolution scaling

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 350000 Fuzhou Gulou District, Fujian, software Avenue, building 89, No. 18

Applicant after: FUZHOU ROCKCHIP ELECTRONICS CO., LTD.

Address before: 350000 Fuzhou Gulou District, Fujian, software Avenue, building 89, No. 18

Applicant before: Fuzhou Rockchip Semiconductor Co., Ltd.

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 350000 building, No. 89, software Avenue, Gulou District, Fujian, Fuzhou 18, China

Patentee after: Ruixin Microelectronics Co., Ltd

Address before: 350000 building, No. 89, software Avenue, Gulou District, Fujian, Fuzhou 18, China

Patentee before: Fuzhou Rockchips Electronics Co.,Ltd.