摘要:
怎样写 Linux LCD 驱动程序 作者: 刘鹏 日期: 2008-12-27 本文分析了frame buffer 设备驱动的主要数据结构,在此基础上介绍了LCD驱动程序的开发。 基本原理通过 framebuffer ,应用程序用 mmap 把显存映射到应用程序虚拟地址空间,将要显示的数据写入这个内存空间就可以在屏幕上显示出来; 驱动程序分配系统内存作为显存;实现 file_operations 结构中的接口,为应用程序服务;实现 fb_ops 结构中的接口,控制和操作 LDC 控制器; 驱动程序将显存的起始地址和长度传给 LCD 控制器的寄存器 (一般由 fb_set_var 完成) , 阅读全文
阅读排行榜
IOS学习之IOS沙盒(sandbox)机制和文件操作(一)
2012-06-17 10:27 by htc开发, 243 阅读, 收藏,
摘要:
1、IOS沙盒机制IOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒,所以所有的非代码文件都要保存在此,例如图像,图标,声音,映像,属性列表,文本文件等。1.1、每个应用程序都有自己的存储空间1.2、应用程序不能翻过自己的围墙去访问别的存储空间的内容1.3、应用程序请求的数据都要通过权限检测,假如不符合条件的话,不会被放行。 通过这张图只能从表层上理解sandbox是一种安全体系,应用程序的所有操作都要通过这个体系来执行,其中核心内容是:sandbox对应用程序执行各种操作的权限限制。2、打开模拟器沙盒目录下面看看模拟器的沙盒文件夹在mac电脑上的. 阅读全文
《算法导论》第15章 动态规划 (1)装配线调度
2012-04-14 08:56 by htc开发, 243 阅读, 收藏,
摘要:
动态规划通常用于有很多种可行解,而找出最优解的问题。具体可分为4个步骤:1)描述最优解的结构。2)递归定义最优解的值。3)自底向上计算最优解的值。4)由最优解的值构造出最优解。下面通过一个具体问题来看究竟如何用动态规划算法来解决问题。Colonel汽车公司在有两条装配线的工厂里生成汽车。每一条装配线上有n个装配站,两条生产线上相同位置的装配站功能相同,但所需时间不同,并且汽车底盘在两条装配线间转移要花费一定的时间。如下图所示两条生产线。这里首先尝试下下一章的贪心算法,在每一步都取最省时间的装配站。首先进入装配线1时间为2 + 7小于装配线2的4 + 8,因此进入装配线1。之后装配站2的时间9大 阅读全文
多线程编程-线程的创建和终止
2011-04-10 20:15 by htc开发, 243 阅读, 收藏,
摘要:
1.引言:Linux系统下的多线程遵循POSIX线程接口,称为pthread。编写Linux下的多线程程序,需要使用头文件pthread.h,连接时需要使用库libpthread.a。顺便说一下,Linux下pthread的实现是通过系统调用clone()来实现的。clone()是Linux所特有的系统调用,它的使用方式类似fork,关于clone()的详细情况,有兴趣的读者可以去查看有关文档说明。 pthread_t在头文件/usr/include/bits/pthreadtypes.h中定义: typedef unsigned long int pthread_t;它是一个线程的标识符.. 阅读全文
APUE学习笔记(1)-errno变量
2009-10-27 11:08 by htc开发, 243 阅读, 收藏,
摘要:
写在前面1. 本文内容对应《UNIX环境高级编程》(第2版)》第1章。2. 主要介绍errno变量的使用,包括如何打印出错消息,以及多线程下的errno变量。3. 希望本文对您有所帮助,也欢迎您给我提意见和建议。errno变量当函数出错时,常常返回一个负值(-1),而且整型变量errno通常被设置为含有附加信息的一个值。例如,open函数如果成功执行则返回一个非负的文件描述符,如果出错则返回-1。在open出错时,有大约15种不同的errno值(如文件不存在,权限问题等)。变量errno定义在文件<errno.h>中。在linux下,可以赋予它的各种常量在<asm-gener 阅读全文
浙公网安备 33010602011771号