自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

在水一方

Love you forever!

  • 博客(79)
  • 资源 (5)
  • 收藏
  • 关注

转载 Linux ACL 学习笔记

一、 为什么要使用ACL先让我们来简单地复习一下Linux的文件权限。在 linux下,对一个文件(或者资源)可以进行操作的对象被分为三类: file owner(文件的拥有者),group(组,注意不一定是文件拥有者所在的组), other (其他)而对于每一类别又分别定义了read, write and execute/search 权限 (这里不讨论SUID,

2015-01-26 13:55:50 565

转载 Android图像处理简介の图像存储和元数据

Android提供Content Provider来实现应用程序之间的数据共享,provider提供了标准的接口用于存储和检索多种类型的数据。图像 、音频和视频的标准content provider就是MediaStore。1)获取图像的URI要获得标准的图像存储路径,我们需要获得MediaStore的引用,而这是通过content resolver来实现的(因为使用Content res

2014-11-27 11:31:40 900

转载 Android命令行启动程序正确使用技巧解析

Android程序启动的方式除了使用界面方式进行启动之外,还能通过命令行启动。那么就让我们大家一起来看看Android命令行启动程序的具体操作方法。Android应用程序的启动方法有许多种,大家可以通过我们以前介绍的快速启动方法来启动,同时还能通过本文介绍的Android命令行启动程序的具体方法来启动程序。在Android中,除了从界面上启动程序之外,还可以从命令行启动程序,使用的是命

2013-07-04 18:13:31 757

原创 http://www.linux-usb.org/usb.ids

USB vid pidhttp://www.linux-usb.org/usb.ids

2013-07-02 16:04:50 2798

转载 request threaded-only IRQs with IRQF_ONESHOT

Gitweb:     http://git.kernel.org/linus/;a=commit;h=9b7e31bbf4bb58b12e11a7f24b7c3e48bbd2f4daCommit:     9b7e31bbf4bb58b12e11a7f24b7c3e48bbd2f4daParent:     1cecc5cc0658e128bcad0b29edb96f28606657

2013-03-20 17:02:48 2020

转载 USB UMS MTP设置过程

选择MTP,PTP,UMS的选项界面就定义在UsbSettings.java,选择其中一个选项时会执行以下代码。packages/apps/Settings/src/com/android/settings/deviceinfo/UsbSettings.java if (preference == mMtp) { mUs

2013-03-20 15:12:09 5964

转载 Android api error

android SDK中有些JAVA类是开放的,有些是不开放的,API同样如此。这里所谓开放的类或API,只是javadoc的范畴,并不是java中public和private,也就是说,对于源码的编译无所谓,只是对javadoc的生成有影响关于类的开放和隐藏,但是对android的上层应用有影响,因为非开放的类或API,android上层应用无法直接访问。    类或API是否开放,是通过d

2013-01-15 16:36:16 1306

转载 alsa config

#title:box:HDMI Audio#author:wangsijie#:0,1------------------------------------------------------------------------------硬件环境Nvidia(290)----------------------------------------------------

2012-12-13 16:12:26 4880

原创 ubuntu12.04 make menuconfig error

ubuntu 12.04 ,error:$make menuconfig HOSTLD  scripts/kconfig/mconfscripts/kconfig/mconf.o: In function `show_help':mconf.c:(.text+0x744): undefined reference to `stdscr'scripts/kconfig/m

2012-11-28 17:15:21 5144 2

转载 DebugFS

DebugFS,顾名思义,是一种用于内核调试的虚拟文件系统,内核开发者通过debugfs和用户空间交换数据。类似的虚拟文件系统还有procfs和sysfs等,这几种虚拟文件系统都并不实际存储在硬盘上,而是Linux内核运行起来后才建立起来。通常情况下,最常用的内核调试手段是printk。但printk并不是所有情况都好用,比如打印的数据可能过多,我们真正关心的数据在大量的输出里不是那么一目了然

2012-11-06 10:50:57 999

转载 Android如何生成设备节点

在Android中,由于没有mdev和udev,所以它没有办法动态的生成设备节点,那么它是如何做的呢?我们可以在system/core/init/下的init.c和devices.c中找到答案:init.c中int main(int argc, char **argv) { ... /* Get the basic filesystem setup we ne

2012-09-27 15:06:36 566

转载 Android 侦听Usb或者SDCard热拔插事件

有时候我们可能要侦听Usb或者SDCard一些拔插事件,其实很简单,当我们做拔插的时候比如Usb或者SDCard,android底层会发出相应的Intent出来给上层应用成使用,比如SDCard或者Usbandroid都会发这样一个Intent.ACTION_MEDIA_MOUNTED,所以我们在上层应用程序中只要侦听这个Intent就可以了,看到网上很多人不知道怎么去区分到底是Usb或者SDCa

2012-09-04 21:44:53 844

转载 Linux tty driver

tty的架构其实分为三层:第一层:tty_core所有tty类型的驱动的顶层构架,向应用曾提供了统一的接口,应用层的read/write等调用首先会到达这里。此层由内核实现,代码主要分布在drivers/char目录下的n_tty.c,tty_io.c等文件中static const struct file_operations tty_fops = {    .llsee

2012-08-19 21:55:51 995

转载 git patch

UNIX世界的软件开发大多都是协作式的,因此,Patch(补丁)是一个相当重要的东西,因为几乎所有的大型UNIX项目的普通贡献者,都是通过 Patch来提交代码的。作为最重要的开源项目之一,Linux,也是这样的。普通开发者从软件仓库clone下代码,然后写入代码,做一个Patch, 最后用E-mail发给Linux Kernel的维护者就好了。Git最初作为Linux的版本控制工具,提供了透明、

2012-08-07 17:53:16 542

转载 input system

本文简单介绍一下linux的input system,并通过一个实际的案例介绍一下在具体的项目中如何实现自己的inputsystem。1.  系统结构钻研技术的总是喜欢了解细节以及系统的整个框架,那首先就从linux的input system的结构开始说起,如下图所示:Input system 有三大块组成:Drivers:相当于输入设备的驱动程序,负责接收来自硬件的输入中

2012-08-02 09:56:22 1336

转载 Manual driver binding and unbinding

One new feature in the 2.6.13-rc3 kernel release, is the ability to bind and unbind drivers from devices manually from user space.  Previously, the only way to disconnect a driver from a device was us

2012-07-31 17:34:00 1322

转载 Usage of uvent,bind and unbind interface in /sys

In /sys, there are many kobject which have the attribute of uevent. Mainly thay are used as the interface for communication between kenel and udev. To udev and the netlink protocol, they doesn’t have

2012-07-31 17:11:19 1589

转载 USB Class Codes

USB Class Codes                     November 17, 2009 USB defines class code information that is used to identify a device’s functionality and to nominally load a device driver based on that fun

2012-07-25 10:23:06 1342

转载 Android 内核修改了标准Linux内核的那些内容

ARCH -- 这是Android修改了arch/arm下面的一些文件:arch/arm: Chg: arch/arm/kernel/entry-armv.S Chg: arch/arm/kernel/module.c Chg: arch/arm/kernel/process.c Chg: arch/arm/kernel/ptrace.c Chg: arch/arm/ker

2012-07-06 09:56:30 1110

转载 自动挂载U盘

目前一些主流桌面系统(如Gnome,KDE,Xfce)的较新版本都支持自动挂载(mount)U盘了. 一个流传很广的说法是 HAL(硬件抽象层) 起了自动挂载的作用, 其实这是误解. 对于2.6内核而言, udev 才是直接从内核接收设备连接或断开信息的主体.          udev 从内核得到信息后,根据一些简单规则(注意,是简单规则), 在 /dev 目录下创建相应的设备节点, 并进行

2012-07-05 14:42:04 1399

转载 浅析shell中source命令和.逗号命令对当前父shell的影响

lu1() {    echo 'aaaaaaaaa'}lu2() {    echo 'bbbbbbbbb'}上面就是,run.sh的源码了,可以看到只有2个函数定义没有任何地方来调用这两个函数,那么我们如果这样执行:luther@gliethttp:~$ ./run.sh luther@gliethttp:~$ 可以看到什么都没有,因为没有地方调用这2个

2011-12-02 11:27:07 671

转载 全局变量重定位和KernelRelocate函数

1 为什么要对全局变量重定位首先研究为什么要对Bootloader的全局变量执行重新定位的问题。在Bootloader的源代码中不可避免的要定义一些全局变量,这些全局变量被放置在编译得到的可执行二进制文件的数据段存储区。Bootloader镜像文件或在ROM中以XIP方式运行

2011-10-19 10:46:59 819

转载 ELF文件加载过程代码分析

fs/binfmt_elf.c代码如下:static int load_elf_binary(struct linux_binprm *bprm, struct pt_regs *regs){struct file *interpreter = NULL; /* to

2011-10-13 17:32:27 2381

原创 ARM开发步步深入之MMU初窥

实验目的:启用MMU,映射SDRAM的地址空间,操作虚拟地址实现“点灯大法”,借此掌握MMU的使用。实验环境及说明:恒颐S3C2410开发板H2410。H2410核心板扩展有64MB的K4S561632 SDRAM(4M*16bit*4BANK),地址范围是0x30000

2011-08-18 10:58:16 997

转载 关于TF,SD,SDHC的常识

SD卡(Secure Digital Memory Card)是东芝在MMC卡技术中加入加密技术硬件而成,由于MMC卡可能会较易让使用者复制数码音乐,东芝便加入这些技术希望令音乐业界安心。类似的技术包括索尼的MagicGate,理论上加密技术可引入一些数码版权管理措施,但这功能甚

2011-08-16 10:20:35 811

原创 FPGA基本原理

FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。 现场可编

2011-08-09 20:57:04 1159

转载 Map Files And DLL Rebasing

http://home.hiwaay.net/~georgech/WhitePapers/MapFiles/MapFiles.htm

2011-08-04 16:45:54 465

原创 宏定义中使用do{}while(0)的好处

#define MACRO_NAME(para) do{macro content}while(0)的格式,总结了以下几个原因:1,空的宏定义避免warning:#define foo() do{}while(0)2,存在一个独立的block,可以用来进行变量

2011-08-03 22:26:20 470

转载 动态电压与频率调节在降低功耗中的作用

动态电压与频率调节在降低功耗中的作用 摘要 目前,为了降低功耗,越来越多的芯片支持动态电压与频率调节DVFS(Dynamic Voltage and Frequency Scaling)。本文列举了基于软件和硬件的DVFS实现,验证了DVFS在降低功耗方面的巨大潜力,并分析了影响

2011-07-11 16:48:39 2372

转载 WinCE内存调整

WinCE内存的定制。WinCE系统可使用的内存被分为Storage Memory和Program Memory两部分。Storage Memory用于Object Store,而Program Memory用于程序内存。   关于Object Store,在WinCE中是指一个可以永久保存数据的存储空间,即使在掉电的情况下,数据可以在备份电源的支持下不丢失,达到永久保存的效果。其实就是一块内

2011-06-08 12:01:00 1044

原创 为什么linux将中断向量拷贝到0xffff0000?

<br />ARM supports two exception address: 0x0000_0000(normal address) and 0xffff_0000(high vector address), up to CP setting.<br />    After MMU is enabled, 0x0000_0000 locates in user sapce, so we should set it to 0xffff_0000 which is in kernel space

2011-05-27 17:48:00 1624

转载 Linux ext2/ext3文件系统详解

<br />Linux ext2/ext3文件系统使用索引节点来记录文件信息,作用像windows的文件分配表。索引节点是一个结构,它包含了一个文件的长度、创建及修改时间、权限、所属关系、磁盘中的位置等信息。一个文件系统维护了一个索引节点的数组,每个文件或目录都与索引节点数组中的唯一一个元素对应。系统给每个索引节点分配了一个号码,也就是该节点在数组中的索引号,称为索引节点号。 linux文件系统将文件索引节点号和文件名同时保存在目录中。所以,目录只是将文件的名称和它的索引节点号结合在一起的一张表,目录中每一

2011-05-17 19:38:00 803

转载 wince dump file相关

<br />http://topic.csdn.net/u/20081113/22/19104e3a-c4f7-41cf-87f2-818ad28c30f1.html

2010-07-16 15:47:00 769

转载 wince ril基础

<br />http://www.study-bbs.com/archiver/tid-28939.html

2010-06-29 21:14:00 823

转载 优化RIL驱动,巧解WinCE电话漏接难题

<br />随着3G移动电话热潮的高涨,我公司许多的嵌入式移动产品也正计划加入无线上网和电话功能。近期,公司委派我负责一个在WinCE6.0平台下集成移动电话、无线上网和收发 SMS功能的项目。但没有想到的是这个项目却让我陷入到反复调试的痛苦之中。<br />原因是这个在WinCE6.0平台下开发的系统经常出现:漏接电话、或有信号但电话无法拨出、或短信收发不正常、或通话自动中断和通话断断续续等问题。初期我怀疑是因为信号质量问题所导致,所以花了大量时间和精力在硬件上,如天线和GSM射频通讯模块

2010-06-29 21:11:00 1215 1

转载 OAL时钟与内核

Jasons ScribbleOAL之系统时钟 1. 系统时钟与内核的关系 WinCE 5.0采用基于时间片的抢占式多任务的实时内核,而且每个线程可以根据需要自行设定线程时间片的大小(参考CeSetThreadQuantum函数),默认为100ms,这个默认值dwDefaultThreadQuantum也可以在OEMInit()时自行设定。在内核源文件中,与单词Qu

2010-04-28 09:42:00 1202 1

转载 LPTSTR、LPCSTR、LPCTSTR、LPSTR的来源及意义

UNICODE:它是用两个字节表示一个字符的方法。比如字符A在ASCII下面是一个字符,可A在UNICODE下面是两个字符,高字符用0填充,而且汉字程在ASCII下面是两个字节,而在UNICODE下仍旧是两个字节。UNICODE的用处就是定长表示世界文字,据统计,用两个字节可以编码现存的所有文字而没有二义。MBCS,它是多字节字符集,它是不定长表示世界文字的编码。MBCS表示英

2010-01-12 11:01:00 506

转载 wince usb驱动代码详解

随着USB设备的不断增加,我们这些开发人员也就多了对USB设备进行驱动程序开发的工作。但是对于很多初学者来说,存在以下三个困难:        一是对WinCE的驱动程序结构了解得太少,没办法得心应手的专注于驱动程序的开发工作;        二是对WinCE自带的USB驱动程序的例子没有弄懂,看到一大堆文件夹结构和源程序思维混乱;        三是几乎没有什么中文的参考资料,不知如何下手。

2009-12-17 17:59:00 3492 2

转载 WinCE串口驱动分析

虽然串口通讯已经是普遍的标准而且广为大家熟知,但驱动中涉及的部分内容也可能在平时的应用中并不是很常用到,在这里做一个简单的介绍待后面说明到具体代码的时候可以连贯一些。 串行通讯接口是目前十分流行的通讯接口之一。由于其电气界面的简单性使其在计算机领域的应用相当的广泛。在这里提到的串行通讯接口主要是指UART(通用串行)和IRDA两种。通常的串行连接电气连接上有3wire和9wire两种。3wire的

2009-12-17 12:11:00 780

转载 WinCE5.0的USB Camera流接口驱动开发

 引 言            WinCE5.0是一个32位、多任务、多线程的实时嵌入式操作系统。USB Camera 以其良好的性能和低廉的价格得到广泛的应用,同时因其灵活、方便的特性,易于集成到嵌入式系统中。       通过采用USB Camera可以在WinCE5.0下方便地得到实时图像。但是由于嵌入式硬件环境的多样性以及WinCE5.0对USB设备驱动开发只提供了一些底层支持,摄

2009-12-16 18:01:00 833

expo-2.4.0

2018-03-29发布的expo 2.4.0版本。解决2.3.2的版本不兼容等“坑”问题。亲测可用!

2018-04-08

Understanding+The+Linux+Kernel+3rd.pdf

Understanding+The+Linux+Kernel+3rd It is a classic book! You should know! If you want to be an senior engineer of linux,just begin to read through it.

2012-07-29

读MAC的dll

vc6.0下编写的一个读取mac信息的源程序,编译后可生成dll,利用dll导出的类,可以读取网卡的物理地址等信息。

2007-09-01

aword bios id 读取程序

汇编写的aword bios id 读取程序,包含汇编源码和exe程序。

2007-08-29

汇编写的BIOS id读取程序

汇编写的BIOS id读取程序

2007-08-29

空空如也

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

TA关注的人

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