自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 资源 (4)
  • 收藏
  • 关注

转载 Docker的安装和镜像创建

1.  docker安装对于Docker的安装在官网上针对不同的操作系统分别进行了描述,Ubuntu上安装Docker,对于ubuntu操作系统来说必须是64位的,因为Docker的官网上只是提供了64位的docker,如果需要32位的docker则需要下载源码进行编译,这里有篇文章介绍了Docker源码如何进行编译成32位,编译32位的Docker。但是对于我使用的Ubuntu来说正好是

2015-01-18 16:00:03 766

原创 script

@echo test@echo fastboot flash boot %1@echo adb push %1 /system@echo offrem for /f "delims=" %%i in ('echo %1^|findstr .img') do (@set a=%%i)@for /f "delims=" %%i in ('echo %1') do (@set

2015-01-11 19:32:57 400

转载 EXIF格式定义

Exif文件格式描述当前,几乎新型的数码相机都使用Exif文件格式来存储图像. 它的规格是由 JEIDA 来制定的, 但是在互联网上还没有开放的文档可供浏览. 因此我根据从互联网上所能得到一些开放资料做成了这份Exif格式的描述文档.注: 现在我们能得到官方的文档 Exif2.1 ,它来自 PIMA 的web站点.ISO 正致力于建立 DCF (Design rule fo

2014-06-06 13:38:44 3413

转载 镜头的MTF曲线

http://blog.sina.com.cn/s/blog_713dd87d0100o6t2.html

2014-05-21 19:44:30 5494

转载 YUV格式详解

YUV是指亮度参量和色度参量分开表示的像素格式,而这样分开的好处就是不但可以避免相互干扰,还可以降低色度的采样率而不会对图像质量影响太大。YUV是一个比较笼统地说法,针对它的具体排列方式,可以分为很多种具体的格式。转载一篇对yuv格式解释的比较清楚地文章,也可以直接参考微软的那篇文章。对于YUV格式,比较原始的讲解是MPEG-2 VIDEO部分的解释,当然后来微软有一个比较经典的解释,中文的大

2014-04-16 10:05:14 434

转载 在 Linux 下用户空间与内核空间数据交换的方式,第 1 部分: 内核启动参数、模块参数与sysfs、sysctl、系统调用和netlink

本系列文章包括两篇,它们文详细地介绍了 Linux 系统下用户空间与内核空间数据交换的九种方式,包括内核启动参数、模块参数与 sysfs、sysctl、系统调用、netlink、procfs、seq_file、debugfs和relayfs,并给出具体的例子帮助读者掌握这些技术的使用。本文是该系列文章的第一篇,它介绍了内核启动参数、模块参数与sysfs、sysctl、系统调用和netlin

2014-03-24 17:00:30 1267

转载 JPEG 原理详细实例分析及其在嵌入式 Linux 中的应用

作为一个基本的图像压缩方式,JPEG 已经得到了广泛的运用,但 JPEG 相关的基本原理,却经常被忽视,或解释得很不确切。 这里我们详细讨论一下 JPEG 的编码原理,并结合实例来给出一个更加感性的认识。JPEG 编码的详细过程有着诸多的信息可以给我们巨大的启发,我们在这里讨论的就是要对这些信息做一个具体细致的分析,通过我们的讨论,大家会对 JPEG 编码过程中出现的内容有一个确切的了解,并且

2014-03-20 20:25:58 724

转载 JPEG文件编/解码详解

JPEG(Joint Photographic Experts Group)是联合图像专家小组的英文缩写。它由国际电话与电报咨询委员会CCITT(The International Telegraph and Telephone Consultative Committee)与国际标准化组织ISO于1986年联合成立的一个小组,负责制定静态数字图像的编码标准。小组一直致力于

2014-03-20 16:38:18 682

转载 linux内存管理初始化

内存管理子系统是linux内核最核心最重要的一部分,内核的其他部分都需要在内存管理子系统的基础上运行。而对其初始化是了解整个内存管理子系统的基础。对相关数据结构的初始化是从全局启动例程start_kernel开始的。本文详细描述了从bootloader跳转到linux内核内存管理子系统初始化期间所做的操作,从而来加深对内存管理子系统知识的理解和掌握。内核的入口是stext,这是在arch/

2014-02-14 17:39:07 477

转载 二维数组的动态分配及参数传递

1. C语言动态分配二维数组(1)已知第二维Code-1char (*a)[N];//指向数组的指针a = (char (*)[N])malloc(sizeof(char *) * m);printf("%d\n", sizeof(a));//4,指针printf("%d\n", sizeof(a[0]));//N,一维数组fre

2013-11-18 10:18:27 388

转载 Linux用户空间与内核空间

Linux 操作系统和驱动程序运行在内核空间,应用程序运行在用户空间,两者不能简单地使用指针传递数据,因为Linux使用的虚拟内存机制,用户空间的数据可能被换出,当内核空间使用用户空间指针时,对应的数据可能不在内存中。Linux内核地址映射模型x86 CPU采用了段页式地址映射模型。进程代码中的地址为逻辑地址,经过段页式地址映射后,才真正访问物理内存。

2013-08-13 11:31:06 389

转载 Linux内核启动过程分析

1、Linux内核启动协议    阅读文档\linux-2.6.35\Documentation\x86\boot.txt    传统支持Image和zImage内核的启动装载内存布局(2.4以前的内核装载就是这样的布局):    |             |0A0000    +------------------------+    |  Reserved for BIO

2013-08-07 16:32:52 887

转载 BusyBox 简化嵌入式 Linux 系统

BusyBox 简化嵌入式 Linux 系统已有 1419 次阅读 2009-10-11 15:07 |关键词:开源 Linux 系统 windows sun linux BusyBox 嵌入式 java Sun 内核 用户 应用 证 开发 操作系统 发布 其他 技术 IBM 软件 社区 导言:在如何引导学生参与开源项目时,有时往往无从着手。茫茫开源世界,代码数以千计,哪一

2013-07-23 10:21:21 488

转载 深入理解linux内核v4l2框架之videobuf2

Videobuf2框架1. 什么是videobuf2框架?它是一个针对多媒体设备的v4l2兼容驱动框架,是用户空间应用程序和设备驱动的中间层。它为驱动提供更为底层的模块化的内存管理功能。它能够使得驱动开发变得简单,减少代码量,帮助合理的连续的实现驱动当中的v4l2接口。videobuf2的内存管理是完全模块化的,这就允许在不改变更高级别缓冲管理框架的情况下可

2013-07-04 15:28:15 747

转载 深入理解linux内核v4l2框架之videobuf

Videobuf下面来介绍以下videobuffer相关的一些东西。V4L2核心api提供了一套标准的方法来处理视频缓冲,这些方法允许驱动实现read(),mmap(), overlay()等操作。同样也有方法支持DMA的scatter/gather操作,并且支持vmallocbuffer(这个大多用在USB驱动上)。videobuf层功能是一种在v4l2驱动和

2013-07-04 15:27:20 638

转载 好玩的Linux命令行

你有没有在Linux命令行中见过一辆火车呢?"猫跟老鼠"呢?编辑Linux命令行其实并不总是件严肃古板的事情。你完全可以用它自娱自乐。下面我们就跟大家一起讨论一下Linux命令行的特质。假设:本文所有示例都使用Ubuntu Linux。文中描述命令行功能或许在你的Linux系统中是默认的。有趣的Linux命令行功效1. Linux"sl"命令行尽管"sl"代表了"蒸汽机机头",但它

2013-06-25 16:45:44 640

转载 你应该知道的10种软件工具

除非你是设计小型模拟电子电路,不然这年头离开了计算机的帮助,在嵌入式系统设计中很难做成什么事。我觉得我应该分享一个能帮助我完成工作的软件工具列表。它们大多数都是免费的或者比较便宜的。它们大多数也和软件一起工作。如果你向来不需要设计,阅读或者编辑任何软件,那么你属于读了这篇文章不会从中受益的那一小部分人。免责声明:“最佳”软件工具通常是一种主张。你可能不同意我的主张,那就取其精华吧。

2013-05-21 13:03:37 746

转载 Wireshark基本介绍和学习TCP三次握手

之前写过一篇博客:用 Fiddler 来调试HTTP,HTTPS。 这篇文章介绍另一个好用的抓包工具wireshark, 用来获取网络数据封包,包括http,TCP,UDP,等网络协议包。记得大学的时候就学习过TCP的三次握手协议,那时候只是知道,虽然在书上看过很多TCP和UDP的资料,但是从来没有真正见过这些数据包, 老是感觉在云上飘一样,学得不踏实。有了wireshark就能截获这些网

2013-05-03 11:17:59 500

转载 PPP数据帧的格式

PPP数据帧的格式  PPP协议也许大家都听说过,可以说现在家里的ADSL都是通过PPP协议进行链路的搭建,今天就说说PPP到底是个啥东东。   想要了解PPP,个人认为有3个关键的知识点。   1、PPP数据帧的格式;   2、PPP的几种报文;   3、PPP的状态转移     首先说说的PPP数据帧的格式

2013-04-20 17:15:23 1123

转载 网络分析中数据包结构(含七层模型)

七层模型:网桥:在链路层进行互连路由器:在网络层对网络进行互连    “包”(Packet)是TCP/IP协议通信传输中的数据单位,一般也称“数据包”。有人说,局域网中传输的不是“帧”(Frame)吗?没错,但是TCP/IP协议是工作在OSI模型第三层(网络层)、第四层(传输层)上的,而帧是工作在第二层(数据链路层)。上一

2013-04-19 10:05:04 2439

转载 关于yuv 格式-Semi Planar和Planar

关于yuv 格式YUV 格式通常有两大类:打包(packed)格式和平面(planar)格式。前者将 YUV 分量存放在同一个数组中,通常是几个相邻的像素组成一个宏像素(macro-pixel);而后者使用三个数组分开存放 YUV 三个分量,就像是一个三维平面一样。几种常见的yuv格式1.YUV422 Planar这里,Y\U\V数据是分开存放的

2013-03-12 09:21:34 633

转载 如何改造 Linux 虚拟终端显示文字

CJKTTY 补丁是什么,为什么我写了它当你不使用 X 的时候,打开电脑,你就在使用虚拟终端。这么多年来它工作的很好,直到它来到了中国。包含中文字符的文件名无法正确显示,中文文档无法阅读。当然可以使用 X , 但是我为什么不能让终端也能显示汉字呢?如果在 X 下我能让屏幕显示汉字,终端下一定也能。为此我开始了 internet 上的搜寻。 我找到了 fbterm,这是个可以利用 /dev/

2013-03-05 15:15:40 1153

转载 Linux内核--内核地址空间分布和进程地址空间

内核地址空间分布直接映射区:线性空间中从3G开始最大896M的区间,为直接内存映射区,该区域的线性地址和物理地址存在线性转换关系:线性地址=3G+物理地址。动态内存映射区:该区域由内核函数vmalloc来分配,特点是:线性空间连续,但是对应的物理空间不一定连续。vmalloc分配的线性地址所对应的物理页可能处于低端内存,也可能处于高端内存。永久内存映射区:该区域可访

2013-03-05 14:44:51 428

转载 内核中的物理内存分配函数kernel api分析----kmalloc实现

在学习LKD3-第12章-内存管理部分时,对kmalloc实现字节大小内存分配产生疑问,内核把物理页作为内存管理的基本单位,理解为最小分配的内存单元也应该是物理页(4Kb),如何实现字节大小内存分配的呢?搜索过程中此文有所帮助,还需深入内核!转:    在网上查资料时看到几篇介绍 linux driver 编写的文章,其中提到 kmalloc()与 __get_free_page(

2013-03-05 11:30:05 739

转载 我对linux理解之v4l2

我们先看具体sensor slave怎么注册到v4l2的:static struct v4l2_int_ioctl_desc ov5642_ioctl_desc[] = {//ioctl与对应的序号联系在一起,在v4l2层将被转换成固定的名字    {vidioc_int_dev_init_num, (v4l2_int_ioctl_func *)ioctl_dev_init},

2012-10-17 13:04:06 792

转载 Android-2.2display系统介绍-SW架构

一、Overview上图的原型取自高通的文档,由于原图无法描述现有的架构,我在原图的基础了做了些修改,主要是增加了overlay部分,另外其他部分根据现有的软件也做了些许改动。下面先对上图做个大概的介绍,后面会针对重点部分做详细的分析。最上面一层为应用程序,根据数据类

2011-09-13 14:25:18 582

原创 android blog收藏

云中漫步http://my.unix-center.net/~Simon_fu/?paged=9Android开发文档  相关的文章http://disanji.net/category/android-doc/http:/

2011-09-13 11:15:41 475

转载 RLE格式解压

RLE算法  这种压缩编码是一种变长的编码,RLE根据文本不同的具体情况会有不同的压缩编码变体与之相适应,以产生更大的压缩比率。  变体1:重复次数+字符文本字符串:A A A B B B C C C C D D D D,编码后得到:3 A 3 B 4 C 4 D。  变体2:特

2011-07-16 16:10:02 873

原创 android system.img的解包和打包

1.解包:使用工具unyaffs。可以从http://code.google.com/p/unyaffs/downloads/list  处下载源代码,然后使用gcc -o unyaffs unyaffs.c 编译生成unyaffs工具。unyaffs system.img  2

2011-07-16 14:50:33 712

转载 通过网络时间服务器获取日期和时间

看有人发个时间同步的,结果没给源码,就自己捉摸了下,发出来大家共享 ,13端口是时间服务器的默认端口,通过 这个就可以取得时间了。首先你要保证可以连接 到时间服务 器,测试方法,在DOS下,用命令 telnet IP 端口号 这样的方式。如果能联通就会弹出一串字符,里面包含有日期和时间信息,取得时间的方法也是这样下面的代码得到 的时间是世界标准时间,要自己转成本地时间。如果有其他的时间服务器就更好

2011-06-18 10:10:00 755

转载 OpenMax多媒体引擎

摘自《Android系统级深入开发—移植与调试》18.1  OpenMax系统结构和移植内容OpenMax是一个多媒体应用程序的框架标准。其中,OpenMax IL(集成层)技术规格定义了媒体组件接口,以便在嵌入式器件的流媒体框架中快速集成加速编解码器。在Android中,OpenMax IL层,通常可以用于多媒体引擎的插件,Android的多媒体引擎OpenCore和StageF

2011-06-11 15:02:00 665

转载 【转】Android Display System --- Surface Flinger

神作,好好学习。转自:http://blog.csdn.net/yili_xie/archive/2009/11/12/4803527.aspxAndroid Display System --- Surface FlingerSurfaceFlinger 是Android multimedia 的一个部分,在Android 的实现中它是一个service ,提供系统范围内的sur

2011-06-11 15:00:00 256

转载 如何调整Linux内核启动中的驱动初始化顺序

<br /><br />【问题】<br />此处我要实现的是将芯片的ID用于网卡MAC地址,网卡驱动是enc28j60_init。<br />但是,读取芯片ID的函数,在as352x_afe_init模块中,所以要先初始化as352x_afe_init。<br />此处,内核编译完之后,在生成的system.map中可以看到,<br />enc28j60_init在as352x_afe_init之前,所以,无法去读芯片ID。<br />所以我们的目标是,将as352x_afe_init驱动初始化放到enc2

2011-05-20 15:21:00 416

转载 OpenMAX简介

<br /><br />OpenMAX是Khronos制定的API,这个Khronos也是OpenGL的制定者,同时在着手制定的标准/规范还有OpenGL es,OpenVG,OpenEL等等,其中大多都是针对手持设备/嵌入式设备的。<br />        OpenMAX 是无授权费的 , 跨平台的应用程序接口 API ,通过使媒体加速组件能够在开发、集成和编程环节中实现跨多操作 系统和处理器硬件平台,提供全面的流媒体编解码器和应用程序便携化。 OpenMAX API 将会与处理器一同提供,以使库和编解

2011-05-20 14:52:00 571

转载 platform设备添加流程

<br />今天我以fb设备的注册过程来分析platform设备的添加流程<br /><br /><br />platform总线是kernel中最近加入的一种虚拟总线,它被用来连接处在仅有最少基本组件的总线上的那些设备.这样的总线包括许多片上系统上的那些用来整合外设的总线, 也包括一些"古董" PC上的连接器; 但不包括像PCI或USB这样的有庞大正规说明的总线.<br /><br />平台设备<br />~~~~~~<br />    平台设备通常指的是系统中的自治体, 包括老式的基于端口的设备和连接外

2011-05-16 14:19:00 481

转载 JPEG文件编/解码详解

<br /><br />JPEG(Joint Photographic Experts Group)是联合图像专家小组的英文缩写。它由国际电话与电报咨询委员会CCITT(The International Telegraph and Telephone Consultative Committee)与国际标准化组织ISO于1986年联合成立的一个小组,负责制定静态数字图像的编码标准。<br />小组一直致力于标准化工作,开发研制出连续色调、多级灰度、静止图像的数字图像压缩编码方法,即JPEG算法。JPEG算

2011-03-10 20:41:00 605

转载 Linux USB驅動框架分析

<br /><br />Linux USB驅動框架分析 (一)(轉)<br />   初次接觸與OS相關的設備驅動編寫,感覺還挺有意思的,為了不至於忘掉看過的東西,筆記跟總結當然不可缺,更何況我決定為嵌入式賣命了。好,言歸正傳,我說一說這段時間的收穫,跟大家分享一下Linux的驅動開發。但這次只先針對Linux的USB子系統作分析,因為週五研討老闆催貨。當然,還會順帶提一下其他的驅動程序寫法。 <br />       事實上,Linux的設備驅動都遵循一個慣例——表徵驅動程序(用driver更貼切一些,應

2011-02-21 13:13:00 1194

转载 Linux设备驱动Hello World程序介绍

<br /> <br />本文由赵锟翻译,转载于“酷壳”:http://cocre.com/?p=566<br />by Valerie Henson<br />07/05/2007<br />(译者注:本文的例子是只能在linux的2.6内核下使用的,2.6以上的内核,译者没有做过实验,2.4是要修改make文件才能运行。)<br />本文的出处:这里<br />自古以来,学习一门新编程语言的第一步就是写一个打印“hello world”的程序(可以看《hello world 集中营》这个帖子供罗列了30

2011-02-16 14:01:00 339

转载 Linux设备驱动Hello World程序介绍

<br /><br />本文由赵锟翻译,转载于“酷壳”:http://cocre.com/?p=566<br />by Valerie Henson<br />07/05/2007<br />(译者注:本文的例子是只能在linux的2.6内核下使用的,2.6以上的内核,译者没有做过实验,2.4是要修改make文件才能运行。)<br />本文的出处:这里<br />自古以来,学习一门新编程语言的第一步就是写一个打印“hello world”的程序(可以看《hello world 集中营》这个帖子供罗列了300

2011-02-16 13:58:00 316

转载 ubuntu 10.04 编译安装最新版本linux-2.6.34内核

第一步:准备工作打开终端获得root权限:sudo su然后安装编译内核时需要的工具:apt-get install build-essential kernel-package libncurses5-dev libqt3-headers build-essential  (基本的编程库(gcc, make等) kernel-package   (Debian 系统里生成 kernel-image 的一些配置文件和工具) libncurses5-dev  (meke menuconfig要调用的) lib

2011-02-12 17:17:00 372

串口编程指导

linux和windows下的串口编程指导

2007-11-29

linux内核编程

linux内核编程.

2007-11-23

iic总线协议

学习iic编程的必须手册

2007-11-19

空空如也

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

TA关注的人

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