自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

颇锐克

stay hungry stay foolish

  • 博客(20)
  • 收藏
  • 关注

转载 Linux的页面回收与反向映射机制

页面回收的实现Linux 操作系统进行页面回收需要考虑的方面很多,下图列出了 Linux 操作系统进行页面回收的关键代码流程图,该图给出了实现页面回收的关键代码函数名,并说明它们之间是如何彼此链接的。图 2. 页面回收关键代码流程图上文提到 Linux 中页面回收主要是通过两种方式触发的,一种是由“内存严重不足”事件触发的;一种是由后台进程 kswapd 触发的,该进程周期性地运行

2016-09-30 15:26:56 1440 1

原创 GPU interrupt

GPU 中断源总共有如下三个中断源:1)JOB 中断: JOB finish 产生中断;2)mmu中断:页表映射需求,如page fault ,BUS err等;3)GPU 中断: POWer states changges,Reset completed;

2016-09-25 16:52:01 871

转载 struct结构体的大小计算:

struct结构体的大小计算:struct 大小,与pack的大小(在程序中显示设置#pragma pack(),vc6.0默认大小为8)、结构中最大占用有关struct A{ int a;     0-3               4-7     要填充(padding)以保证内存对齐的原则 double b; 8-15 char c[9]; 16-24};

2016-09-25 15:58:22 698

转载 linux设备驱动程序中的阻塞机制

阻塞与非阻塞是设备访问的两种方式。在写阻塞与非阻塞的驱动程序时,经常用到等待队列。一、阻塞与非阻塞  阻塞调用是指调用结果返回之前,当前线程会被挂起,函数只有在得到结果之后才会返回。  非阻塞指不能立刻得到结果之前,该函数不会阻塞当前进程,而会立刻返回。  对象是否处于阻塞模式和函数是不是阻塞调用有很强的相关性,但并不是一一对应的。阻塞对象上可以有非阻塞的调用方式,我们可以通过一定

2016-09-25 15:24:05 2198

转载 linux下jiffies定时器和hrtimer高精度定时器

一、jiffies定时器,HZ=100,精度只能达到10ms。注:采用jiffies+msecs_to_jiffies(xx ms);可做到ms级,不过精度不够 #include //DO-->jiffies调用头文件#include   //DO-->timer_list结构体static struct timer_list ms_timer;//DO-->定义timer_l

2016-09-23 20:30:14 2384

转载 linux 常用命令

Linux的bg和fg命令 我们都知道,在 Windows 上面,我们要么让一个程序作为服务在后台一直运行,要么停止这个服务。而不能让程序在前台后台之间切换。而 Linux 提供了 fg 和 bg 命令,让我们轻松调度正在运行的任务。 www.2cto.com   假设你发现前台运行的一个程序需要很长的时间,但是需要干其他的事情,你就可以用 Ctrl-Z ,挂起这个程序,然后可以看

2016-09-22 17:08:42 2656 1

原创 GPU performance tunning

DDR 输出带宽:640M*8byte=5.1GB/s(其中8byte受限为DMC/BUS宽度的影响)latency read:107nslatency write:43nsoutstanding:read :9 transactions ,write:3 transactionsburst length:7 ;transfer size:3;L2 ca

2016-09-22 15:47:54 1616

转载 Decress the bandwidth of the GPU

Technologies from ARMARM® Mali™ Technologies have been developed to allow ever increasing graphics complexity within the thermal limits of mobile devices. The technologies provide significant system

2016-09-18 19:10:44 648

转载 Android HardwareComposer中的fence机制

最近在写HardwareComposer,这东西的主要功能简单来说,就是把SurfaceFlinger准备好的各个layer data送到需要的地方去,以aosp中hardware/samsung_slsi/exynos5/libhwc 这个hwc为例,就是把layer data送到/dev/graphics/fb0去显示.    不过所谓的"sf准备好的layer",其实未必真的准备好了.

2016-09-15 14:45:47 1435

转载 Android中native_handle private_handle_t ANativeWindowBuffer ANativeWindow GraphicBuffer Surface的关系

在阅读SurfaceFlinger HardwareComposer以及gralloc相关代码的过程中,我们经常会遇到native_handle private_handle_t ANativeWindowBuffer ANativeWindow GraphicBuffer Surface等等一系列和memory相关的struct和class,他们相互之间到底是什么区别,又有什么联系呢?本文从st

2016-09-15 14:45:01 2677

转载 Android中使用ioctl方式操作fence

Android的hwc可以通过ioctl,把buffer data信息送入fb driver,由fb控制acquireFence和retireFence,以达到buffer的producer和consumer互相同步的机制,但是假如我们的hwc没有现成的ioctl可以用,又没有办法改到driver的code,我们还有一个选择:hwc可以打开/dev/sw_sync设备,通过一系列的ioctl来监控

2016-09-15 14:43:18 3031

转载 Android fb driver中的fence机制

Android HardwareComposer中的fence机制中讨论了hwc中的fence,hwc最终把layer的acqireFenceFd送进fb driver,再由fb drvier生成新的reitreFenceFd并return回user space.本篇文章我们来探讨下fb driver中的fence,看看S3CFB_WIN_CONFIG ioctl都做了些什么.    ke

2016-09-15 14:41:49 2009

转载 taglist

Vim Taglist插件的安装与配置Taglist是以tags文件为基础,需要ctags生成tags文件。安装ctags,Redhat和CentOS可以执行yum install ctags,Debian和Ubantu可以执行apt-get install ctags下载Taglist,地址是http://sourceforge.net/projects/vim-taglist/

2016-09-15 14:24:12 838

转载 androidM 显示框架

   一.  android显示系统的建立    我们看SurfaceFlinger的定义就知道,它其实是一个Thread, 因此SurfaceFlinger的初始化工作就理所当然的放在了SurfaceFlinger线程中,详见readyToRun()@SurfaceFlinger.cpp    SurfaceFlinger对于显示的管理是通过一个或多个GraphicPlane对象

2016-09-08 20:52:33 1726

转载 androidM app 运行权限问题

新运行时权限android的权限系统一直是首要的安全概念,因为这些权限只在安装的时候被询问一次。一旦安装了,app可以在用户毫不知晓的情况下访问权限内的所有东西。难怪一些坏蛋利用这个缺陷恶意收集用户数据用来做坏事了!android小组也知道这事儿。7年了!权限系统终于被重新设计了。在android6.0棉花糖,app将不会在安装的时候授予权限。取而代之的是,app不得不在运行时

2016-09-08 16:20:19 1687

转载 vim ctags 浏览代码

用VIM浏览源代码之跳转到函数/数据类型/变量的定义处1. 先查看是否安装了ctags用which命令检查:# which ctags/usr/bin/which: no ctags in (/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin)   // 说明没安装ctags。用rpm命令

2016-09-06 10:10:06 384

转载 Mali GPU OpenGL ES 应用性能优化--基本方法

1. 常用优化工具2. 常用优化方案     OpenGL ES优化的主要工作是在图形管道中找到影响性能的bottleneck,其bottleneck一般表现在以下几方面:     • 在应用程序代码中,如冲突检测     • GPU与主内存间的数据传输     • 在VP(Vertex Processor)中的顶点处理     • 在FP(Frag

2016-09-05 14:52:20 603

转载 Mali GPU OpenGL ES 应用性能优化--测试+定位+优化流程

1. 使用DS-5 Streamline定位瓶颈    DS-5 Streamline要求GPU驱动启用性能测试,在Mali GPU驱动中激活性能测试对性能影响微不足道。1.1 DS-5 Streamline简介    可使用DS-5 Streamline从CPU和Mali GPU中实时收集性能计数器,然后以图形方式显示这些计数器,其主要功能如下:     • 收集计数

2016-09-05 14:50:45 2762

转载 Mali GPU OpenGL ES 应用性能优化--基本概念

http://blog.csdn.net/myarrow/article/details/17675711/1. 基本概念1.1 Mali GPU家族      Mali GPU家族都包含以下通用的硬件:      • 基于分块的延迟渲染:         Mali GPU把framebuffer分成许多块(16 x 16像素),然后一块一块地进行渲染。基于分块的渲染是

2016-09-05 14:40:12 2376

转载 Android属性(property)机制

1. 属性简介Android里有很多属性(property),每个属性都有一个名称和值,他们都是字符串格式。这些属性定义了Android系统的一些公共系统属性。比如:[dalvik.vm.dexopt-flags]: [m=y][dalvik.vm.heapgrowthlimit]: [48m][gsm.operator.iso-country]: [][gsm.o

2016-09-03 15:01:00 2370

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除