自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

hedtao的学习专栏

学习笔记及摘抄转载

  • 博客(83)
  • 资源 (2)
  • 收藏
  • 关注

转载 数据公钥加密和认证中的私钥公钥

加密和认证  首先我们需要区分加密和认证这两个基本概念。  加密是将数据资料加密,使得非法用户即使取得加密过的资料,也无法获取正确的资料内容,所以数据加密可以保护数据,防止监听攻击。其重点在于数据的安全性。身份认证是用来判断某个身份的真实性,确认身份后,系统才可以依不同的身份给予不同的权限。其重点在于用户的真实性。两者的侧重点是不同的。  公钥和私钥  其次我们还要了解公钥和私钥的

2014-04-21 09:44:53 995

转载 nmap命令使用详解

[Ping扫描(Ping Sweeping)]  [端口扫描(Port Scanning)]  [隐蔽扫描(Stealth Scanning)] [UDP扫描(UDP Scanning)] [操作系统识别(OS Fingerprinting)] [Ident扫描(Ident Scanning)]  [选项(Options)] [小结]

2014-04-16 11:11:08 7705

转载 基于Linux ALSA音频驱动的wav文件解析及播放程序

本设计思路:先打开一个普通wav音频文件,从定义的文件头前面的44个字节中,取出文件头的定义消息,置于一个文件头的结构体中。然后打开alsa音频驱动,从文件头结构体取出采样精度,声道数,采样频率三个重要参数,利用alsa音频驱动的API设置好参数,最后打开wav文件。定位到数据区,把音频数据依次写到音频驱动中去,开始播放,当写入完成后,退出写入的循环。 注意:本设计需要alsa

2013-10-24 11:07:19 784 1

转载 僵尸进程和孤儿进程

僵尸进程:一个子进程在其父进程还没有调用wait()或waitpid()的情况下退出。这个子进程就是僵尸进程。孤儿进程:一个父进程退出,而它的一个或多个子进程还在运行,那么那些子进程将成为孤儿进程。孤儿进程将被init进程(进程号为1)所收养,并由init进程对它们完成状态收集工作。僵尸进程将会导致资源浪费,而孤儿则不会。每个进程结束的时候,系统都会扫描当前系统中所运行的所有进程,看有

2013-09-25 21:33:56 577

转载 C语言的内存布局问题

1 。 每次都会遇到这个问题,一直是看了又忘,忘了又看。本文主要简介一下c中的内存类型和布局问题。      2。内存的类型      (1)栈区(stack):由编译器自动分配和释放的,存放函数的参数值、局部变量的值等。操作方式类似数据结构中的栈。               在函数参数和地址入栈情况中,一般是从左向右将变量入栈,最后函数的地址入栈。      (2)堆区(hea

2013-09-22 16:35:04 640

转载 linux设备驱动归纳总结(一):内核的相关基础概念

原文地址:linux设备驱动归纳总结(一):内核的相关基础概念 作者:diytvgylinux设备驱动归纳总结(一):内核的相关基础概念xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx一.linux设备驱动的作用内核:用于管理软硬件资源,并提供运行

2013-09-11 14:42:18 519

转载 FIMD架构分析

转自:http://www.embedu.org/Column/Column431.htmFIMD架构分析作者:邹南,华清远见嵌入式学院讲师。一、名称含义(FIMC& FIMD)FIMC :                Fully Interactive Mobile Camera (完全交互式移动摄像机)        FIMD:                

2013-09-11 14:40:47 888

转载 LCD驱动分析(二):framebuffer结构的介绍

原文地址:LCD驱动分析(二):framebuffer结构的介绍 作者:huabinbin00基于S5PV210下Framebuffer驱动的分析1.       知道Framebuffer的工作原理2.       了解Framebuffer的架构3.       Framebuffer的注册,驱动实现的机制Frame:你所看到的屏幕的图像,或者在一个窗口中的图像

2013-09-11 14:39:59 761

转载 LCD驱动分析(三): framebuffer驱动的注册

原文地址:LCD驱动分析(三): framebuffer驱动的注册 作者:huabinbin00这里最好牵涉到几个文件S3cfb.c、S3cfb_fimd6x.c setuo-fb.c fb_mem.c在这里之前最好知道pci,和memio一些术语的意思S3cfb.c中的s3cfb_probe设备探测,是驱动注册的主要函数 点击(此处)折叠或打开

2013-09-11 14:39:57 726

转载 LCD驱动分析(一):时序的分析

原文地址:LCD驱动分析(一):时序的分析 作者:huabinbin00第一次调试lcd驱动的话是不是对下面的结构有点陌生,不知道那些值是如何得来的,当然我就属于其中的一个点击(此处)折叠或打开 static struct s3cfb_lcd lte480wv = {    .width    = 1024,//800,    .height    

2013-09-11 14:38:18 1811

转载 基于S3c6410触摸屏驱动分析(一)

首先说明一下,本文使用的环境是S3C6410(Tiny6410),Linux-2.6.38(友善之臂提供),触摸屏驱动位于drivers/input/touchscreen/目录下。好吧,就让我们开始我们的触摸屏之旅。。。一.硬件简介       S3C6410触摸屏接口与ADC接口集成在一起,触摸屏X、Y坐标所产生的模拟信号通过通道7、5输入如下图示,6410提供触摸屏接口有

2013-09-11 14:23:42 769

转载 Linux-2.6.38的LCD驱动分析(四)

Linux-2.6.38的LCD驱动分析(四)参考自:http://blog.chinaunix.net/uid-11114210-id-2907026.html四、s3cfb_ops变量详解        在上面的文字中,较为详细的解释了platform device相关的代码,通过上面的代码的执行,一个platform设备(framebuffer被当作了platform设备

2013-09-11 14:20:25 760

转载 Linux-2.6.38的LCD驱动分析(二)

Linux-2.6.38的LCD驱动分析(二)参考自:http://blog.chinaunix.net/uid-11114210-id-2907026.html二、s3cfb_probe函数分析2.1 驱动的入口点    摆在面前的第一个问题相信应该是,这个函数是从那里开始运行的。这里就应该从long long ago 开始了,打开linux-2.

2013-09-11 14:19:51 711

转载 Linux-2.6.38的LCD驱动分析(三)

Linux-2.6.38的LCD驱动分析(三)参考自:http://blog.chinaunix.net/uid-11114210-id-2907026.html三、解剖s3cfb_driver变量    s3cfb_driver变量有什么作用呢?在前面的2.2节提到了它的定义,从它的原型可以看出s3cfb_driver是个platform_driver类型的变量,前面的几

2013-09-11 14:19:37 783

转载 Linux-2.6.38的LCD驱动分析(一)

inux-2.6.38的LCD驱动分析(一)参考自:http://blog.chinaunix.net/uid-11114210-id-2907026.html一、让LCD显示可爱的小企鹅还是先说说环境吧,处理器为S3C6410,linux的版本是2.6.38(友善之臂提供的)。下面先说说怎样让LCD上显示出可爱的小企鹅。最直接的步骤如下(记住不要问为什么哈~_~,一步一步跟着

2013-09-11 14:19:00 977

原创 驱动相关问题

有转载有摘抄驱动笔记FIQ和IRQ区别 向量中断控制器VIC具有32个中断请求输入,可将其编程分为3类,FIQ,向量IRQ和非向量IRQ。FIQ快速中断请求要求具有最高优先级。如果分配给FIQ的请求多于一个,VIC将中断请求相或后向ARM处理器产生FIQ信号。当只有一个中断被分配为FIQ时可实现最短的FIQ等待,但如果分配给FIQ级的中断多于1个,FIQ服务程序需要读取F

2013-09-08 20:46:01 1433

转载 堆 和 栈的 区别(经典)

转自 :堆 和 栈的 区别(经典)堆和栈的区别 一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与

2013-08-20 09:52:07 389

转载 snd_soc_codec_device 之 snd_soc_new_pcms

转自:snd_soc_codec_device 之 snd_soc_new_pcms以wolfsen的wm8900 codec为例,在wm8900.c中可以看到struct snd_soc_codec_device soc_codec_dev_wm8900 = {.probe = wm8900_probe,.remove = wm8900_remove,.sus

2013-07-19 15:27:11 798

转载 两个C++编译错误及解决办法--does not name a type和field `XX' has incomplete type

编译错误一:XX does not name a type 编译错误二:field `XX' has incomplete type 编译错误一:XX does not name a type, 中文意思为“XX没有命名一个类型“拿个例子来讲,如果两个类定义如下:class B{public:B(){}~B(){}private:A a;};

2013-07-19 08:51:30 628

原创 ALSA的理解

以mini210-wm8960参考,学习alsa驱动相关注册及流程笔记记录如下,部分内容参考linux audio(alsa) 驱动注册的简明流程.大体结构: cpu_dai-------指的是I2C通路.codec_dai-----codec的功能,如录音放音参数。codec_dev-----解码设备,重点platform------据我看只是做了pcm的操作

2013-07-18 14:38:04 1297

转载 Linux ALSA声卡驱动之八:ASoC架构中的Platform

1.  Platform驱动在ASoC中的作用前面几章内容已经说过,ASoC被分为Machine,Platform和Codec三大部件,Platform驱动的主要作用是完成音频数据的管理,最终通过CPU的数字音频接口(DAI)把音频数据传送给Codec进行处理,最终由Codec输出驱动耳机或者是喇叭的音信信号。在具体实现上,ASoC有把Platform驱动分为两个部分:snd_soc_plat

2013-07-01 14:25:44 877 1

转载 Linux ALSA声卡驱动之七:ASoC架构中的Codec

1.  Codec简介在移动设备中,Codec的作用可以归结为4种,分别是:对PCM等信号进行D/A转换,把数字的音频信号转换为模拟信号对Mic、Linein或者其他输入源的模拟信号进行A/D转换,把模拟的声音信号转变CPU能够处理的数字信号对音频通路进行控制,比如播放音乐,收听调频收音机,又或者接听电话时,音频信号在codec内的流通路线是不一样的对音频信号做出相应的处理,例如音量控

2013-07-01 14:25:03 628 1

转载 Linux ALSA声卡驱动之六:ASoC架构中的Machine

前面一节的内容我们提到,ASoC被分为Machine、Platform和Codec三大部分,其中的Machine驱动负责Platform和Codec之间的耦合以及部分和设备或板子特定的代码,再次引用上一节的内容:Machine驱动负责处理机器特有的一些控件和音频事件(例如,当播放音频时,需要先行打开一个放大器);单独的Platform和Codec驱动是不能工作的,它必须由Machine驱动把它们结

2013-07-01 14:24:06 918

转载 Linux ALSA声卡驱动之五:移动设备中的ALSA(ASoC)

1.  ASoC的由来ASoC--ALSA System on Chip ,是建立在标准ALSA驱动层上,为了更好地支持嵌入式处理器和移动设备中的音频Codec的一套软件体系。在ASoc出现之前,内核对于SoC中的音频已经有部分的支持,不过会有一些局限性:   Codec驱动与SoC CPU的底层耦合过于紧密,这种不理想会导致代码的重复,例如,仅是wm8731的驱动,当时Lin

2013-07-01 14:22:58 429

转载 Linux ALSA声卡驱动之四:Control设备的创建

本内容均由http://blog.csdn.net/droidphone原创Control接口Control接口主要让用户空间的应用程序(alsa-lib)可以访问和控制音频codec芯片中的多路开关,滑动控件等。对于Mixer(混音)来说,Control接口显得尤为重要,从ALSA 0.9.x版本开始,所有的mixer工作都是通过control接口的API来实现的。

2013-07-01 14:11:13 586

转载 Linux ALSA声卡驱动之三:PCM设备的创建

本内容均由http://blog.csdn.net/droidphone原创1. PCM是什么PCM是英文Pulse-code modulation的缩写,中文译名是脉冲编码调制。我们知道在现实生活中,人耳听到的声音是模拟信号,PCM就是要把声音从模拟转换成数字信号的一种技术,他的原理简单地说就是利用一个固定的频率对模拟信号进行采样,采样后的信号在波形上看就像一串连续的幅值

2013-07-01 14:08:11 571

转载 Linux ALSA声卡驱动之二:声卡的创建

本内容均由http://blog.csdn.net/droidphone原创1. struct snd_card 1.1. snd_card是什么snd_card可以说是整个ALSA音频驱动最顶层的一个结构,整个声卡的软件逻辑结构开始于该结构,几乎所有与声音相关的逻辑设备都是在snd_card的管理之下,声卡驱动的第一个动作通常就是创建一个snd_card结构体。正因为

2013-07-01 14:03:27 582

转载 Linux ALSA声卡驱动之一:ALSA架构简介

本内容均由http://blog.csdn.net/droidphone原创一.  概述    ALSA是Advanced Linux Sound Architecture 的缩写,目前已经成为了linux的主流音频体系结构,想了解更多的关于ALSA的这一开源项目的信息和知识,请查看以下网址:http://www.alsa-project.org/。    在内核设备驱动层

2013-07-01 13:59:37 577

转载 Qt中QTableWidget用法总结

转自:http://hi.baidu.com/fightiger/item/693aaa0f0f87d8103b53eec8QTableWidget是QT程序中常用的显示数据表格的空间,很类似于VC、C#中的DataGrid。说到QTableWidget,就必须讲一下它跟QTabelView的区别了。QTableWidget是QTableView的子类,主要的区别是QTableView可以

2013-06-19 09:37:56 462

转载 控制QLineEdit的输入范围

控制QLineEdit的输入范围1.使用正则表达式检验QLineEdit的输入范围(代码如下):#include #include  QLineEdit *lineEdit = new QLineEdit(this);QRegExp regExp("[A-Za-z][1-9][0-9]{0,2}");   //^[1-9][0-9]*$ 和 ^[1-9]{1}[/d]*

2013-05-29 21:01:36 665

转载 Qt基本常识(转载)

1.实现out输出流的实现。  QTextStream out(stdout);  out                 2.创建命名空间:  namespace AQP{    class QStringList;创建类。    创建成员函数,创建其他的函数,变量等等都可以!  }  3.QString中变量"正则表达式"的应用。   messa

2013-05-21 12:55:11 894 1

转载 单件模式【C++】【转载】

单例模式也称为单件模式、单子模式。使用单例模式,保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享。有很多地方需要这样的功能模块,如系统的日志输出等。单例模式有许多种实现方法,在C++中,甚至可以直接用一个全局变量做到这一点,但这样的代码显得很不优雅。《设计模式》一书中给出了一种很不错的实现,定义一个单例类,使用类的私有静态指针变量指向类的唯一实例,并用一个公有

2013-05-21 12:45:00 495

转载 struct nand_ecclayout 之解义 ,eccbytes,eccpos,eccfree

【转帖请注明出处:blog.csdn.net/lanmanck】内核的nand flash驱动真可谓用“日新月异”来形容,今儿个刚写完的驱动,等到明天下个新内核放进去,又不好使了,shit!这里讨论下struct nand_ecclayout,即nand 的ecc布局问题,基于2.6.32-rc2.该结构体定义如下:struct nand_ecclayout {

2013-05-17 15:38:02 625

转载 【简介】如何编写linux下nand flash驱动

转自 :http://www.cnblogs.com/shenhaocn/archive/2011/03/10/1980310.html1. 硬件特性:【Flash的硬件实现机制】Flash全名叫做Flash Memory,属于非易失性存储设备(Non-volatile Memory Device),与此相对应的是易失性存储设备(Volatile Memory Device)。

2013-05-15 20:10:24 537

转载 Linux I2C驱动分析 S3C6410

转自:http://www.linuxidc.com/Linux/2011-08/39948p1.htmLinux中I2C体系结构如下图所示(图片来源于网络)。图中用分割线分成了三个层次:用户空间(也就是应用程序),内核(也就是驱动部分)和硬件(也就是实际物理设备,这里就是6410中的i2c控制器和at24xx)。这个够清晰了吧?我们主要研究的是中间那一层。中间一层又分为i2c

2013-05-11 21:29:45 1104

转载 container_of 用法解析

在学习Linux驱动的过程中,遇到一个宏叫做container_of。该宏定义在include/linux/kernel.h中,首先来贴出它的代码:/** * container_of - cast a member of a structure out to the containing structure * @ptr:        the pointer to the

2013-05-11 17:15:17 442

转载 实例解析linux内核I2C体系结构(2)

转自 :http://blog.csdn.net/hongtao_liu/article/details/5260739四、在内核里写i2c设备驱动的两种方式前文介绍了利用/dev/i2c-0在应用层完成对i2c设备的操作,但很多时候我们还是习惯为i2c设备在内核层编写驱动程序。目前内核支持两种编写i2c驱动程序的方式。下面分别介绍这两种方式的实现。这里分别称这两种方式为“Adapte

2013-05-09 10:52:30 417

转载 实例解析linux内核I2C体系结构(1)

转载:http://blog.csdn.net/hongtao_liu/article/details/4964244一、概述谈到在linux系统下编写I2C驱动,目前主要有两种方式,一种是把I2C设备当作一个普通的字符设备来处理,另一种是利用linux I2C驱动体系结构来完成。下面比较下这两种驱动。第一种方法的好处(对应第二种方法的劣势)有:        ●

2013-05-09 10:50:45 556

转载 I2C设备驱动的编写

前面我们说了如何I2C用户模式驱动,这种驱动基于I2C子系统,但是他对于应用程序开发人员的要求较高,需要应用程序开发人员了解硬件的一些东西,比如时序,地址等等,而多数时候应用程序开发人员是按照操作文件的方法操作设备,所以我们更希望用一些更简单的接口去访问。也就是我们今天的内容——基于I2C子系统的字符驱动。I2C子系统的代码分为三部分如图:Host:主机控制器驱动Device:

2013-05-09 10:30:21 525

转载 Linux I2C驱动源码分析(二)

转自 http://www.cnblogs.com/nick123/archive/2010/09/06/1819037.html下面开始分析linux/drivers/i2c/busses/i2c-s3c2410.c,在设备与驱动匹配成功后,会执行s3c24xx_i2c_probe()函数,此处传给s3c_i2c_probe 的参数就是 我们注册的i2c 平台设备 s3c_device_

2013-05-08 14:20:34 575

深入理解LINUX内核(中文版)

深入理解LINUX内核,经典内核学习书目

2014-12-02

python.clf

SI下PYTHON配置文件,方便SI下阅读python代码

2014-12-02

空空如也

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

TA关注的人

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