- 博客(68)
- 收藏
- 关注
转载 C++ sizeof 使用规则及陷阱分析
1、什么是sizeof 首先看一下sizeof在msdn上的定义: The sizeof keyword gives the amount of storage, in bytes, associated with a variable or a type (including aggregate types). This keyword returns a value o
2016-04-17 22:19:38
360
转载 sizeof陷阱
以下程序会输出什么?[c]#include using namespace std;int main(void){int a = 1;printf("%d\n", sizeof(a++));printf("%d\n", a);}[/c]如果你第一次看到,可能会认为输出是:42不过,程序的真正输出是:
2016-04-17 19:10:40
360
转载 程序编译链接运行深入剖析
学C语言的第一个程序就是以下这个helloworld程序:123456#includeintmain(){ printf("hello, world!\n");}它通过gcc -o hello hello.c编译,然后通过./he
2016-04-17 19:05:38
377
转载 嵌入式Linux之我行——S3C2440上LCD驱动(FrameBuffer)实例开发讲解(二)
转载地址:http://blog.chinaunix.net/uid-22174347-id-1786943.html嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux中的每个步骤。一为总结经验,二希望能给想入门嵌入式Linux的朋友提供方便。如有错误之处,谢请指正。共享资源,欢迎转载:http://hbhuanggang.cublog.cn
2015-07-21 15:43:44
512
转载 嵌入式Linux之我行——S3C2440上LCD驱动(FrameBuffer)实例开发讲解(一)
转载地址:http://blog.chinaunix.net/uid-22174347-id-1786942.html嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux中的每个步骤。一为总结经验,二希望能给想入门嵌入式Linux的朋友提供方便。如有错误之处,谢请指正。共享资源,欢迎转载:http://hbhuanggang.cublog.cn
2015-07-21 15:40:10
546
转载 platform详解
作者:程姚根,华清远见嵌入式学院讲师。一、platform设备模型从Linux 2.6起引入了一套新的驱动管理和注册机制,platform_device和platform_driver,Linux中大部分的设备驱动都可以使用这套机制。platform是一条虚拟总线。设备用platform_device表示,驱动用platform_driver进行注册,linux platform
2015-07-15 16:32:13
1221
转载 AIDL在android系统中的作用
AIDL,Android Interface definition language的缩写,它是一种android内部进程通信接口的描述语言,通过它我们可以定义进程间的通信接口。最近看了下AIDL在Android系统中的用法,在网上看到很多初学的朋友不太明白AIDL的实际作用,android提供了很多进程间通信的组件,像action、broadcast、contentprovide都可以实现进程间
2015-06-25 16:49:28
558
转载 Ubuntu10.10下不能make menuconfig问题解决
在Ubuntu下交叉编译Linux2.6内核,输入makemenuconfig发现有一些头文件找不到:root@loong:/opt/linux-2.6.39# make menuconfig HOSTCC scripts/basic/fixdep HOSTCC scripts/basic/docproc HOSTCC scripts/kconfig/conf.o HO
2015-06-17 17:05:33
626
转载 mount -t proc none /proc
linuxinitrd里的init脚本中的第一句mount -t proc /proc /proc就是把proc这个虚拟文件系统挂载到/proc目录,应该initrd也是一个系统,只是不完整,而它做的工作需要用到/proc,否则不能工作这种写法很让人误会如果是initrd中,应该写为mount -t proc proc /proc第二个proc将被显示在mount的输出中
2015-06-16 15:48:13
9199
转载 Linux源码下Makefile详解(参照Documentation\kbuild\makefiles.txt和资料)
1.Makefile的作用 (1)决定编译哪些文件 (2)怎样编译这些文件 (3)怎样连接这些文件,最重要的是它们的顺序如何2.Linux内核Makefile分类********************************************************************* 顶层Makefile:它是所有Makefile文件的核心,从总体上控制着
2015-06-12 17:33:25
880
转载 linux2.6 makefiles.txt学习及实例分析
本篇blog主要分为四部分,地一部分和第二部分主要是参考网上的文章,第三部分为自己在学习过程中总结的一些知识,第四部分想自己编写一个简单的Makefile,以巩固学习成果! 本篇blog目的:通过对Makefile的学习,进一步理解linux内核如何通过makefile实现对make过程的自动化,掌握makefile语言编写规则,最终实现自己能够编写出makefile文件。
2015-06-12 17:30:56
1190
转载 bootm命令
进入bootm命令分析之前,先来看看README里面的几段话,简单翻译之制作Linux映像============使用uboot时,内核通常生成的文件"zImage"或"bzImage"是没用的。较新一些的内核原码会生成"uImage", 这个可以为uboot使用。"uImage"全用了一个工具"tools/mkimage"来封装压缩后的映像文件,在其头部添加一些信
2015-06-12 14:54:17
3522
转载 Bootm的流程分析
Bootm的流程分析一、在开始之前先说明一下bootm相关的东西。 1、首先说明一下,S3C2410架构下的bootm只对sdram中的内核镜像文件进行操作(好像AT91架构提供了一段从flash复制内核镜像的代码,不过针对s3c2410架构就没有这段代码,虽然可以在u-boot下添加这段代码,不过好像这个用处不大),所以请确保你的内核镜像下载到sdram中,或者在bootcmd下把f
2015-06-12 14:51:24
563
原创 kernel和u-boot,驱动,linux应用学习博客
专注于linux开发博客:http://blog.chinaunix.net/uid/20672257/cid-29612-list-1.html
2015-06-12 14:43:46
526
转载 u-boot启动内核的几种方式--bootm
转载:专注于linux开发-大牛 http://blog.chinaunix.net/uid-20672257-id-2899657.html分析uboot是如何启动内核的u-boot启动内核有以下几种方式:1、使用do_bootm_linux(),在/lib_arm/bootm.c定义,因为我们已经知道入口地址了,所以只需跳到入口地址就可以启动linux内核了
2015-06-12 14:01:49
1106
转载 bootm命令中地址参数,内核加载地址以及内核入口地址
bootm命令只能用来引导经过mkimage构建了镜像头的内核镜像文件以及根文件镜像,对于没有用mkimage对内核进行处理的话,那直接把内核下载到连接脚本中指定的加载地址0x30008000再运行就行,内核会自解压运行(不过内核运行需要一个tag来传递参数,而这个tag是由bootloader提供的,在u-boot下默认是由bootm命令建立的)。 通过mkimage可以给内核镜像或根文
2015-06-12 12:33:38
668
转载 uboot启动过程完全分析(mini2440)
注:原文转自http://www.cnblogs.com/heaad/archive/2010/07/17/1779829.html。 1.1 U-Boot工作过程 U-Boot启动内核的过程可以分为两个阶段,两个阶段的功能如下: (1)第一阶段的功能Ø 硬件设备初始化Ø 加载U-Boot第二阶段代码到RAM空间Ø 设置好栈Ø 跳
2015-06-08 17:50:30
619
转载 .LDS 文件详解
最近在研究uboot,红色部分为我加上的注解 转载地址:http://blog.chinaunix.net/space.php?uid=23373524&do=blog&cuid=2324182lds文件与scatter文件相似都是决定一个可执行程序的各个段的存储位置,以及入口地址,这也是链接定位的作用。U-boot的lds文件说明如下: SECTIONS{
2015-06-08 17:48:59
1697
转载 Mini2440学习笔记(二)——GPIO
硬件连接:Mini2440有四个LED,使用的管脚是GPB5到GPB8,当管脚输出低电平时,led亮;六个按键使用的管脚是GPG0、GPG3、GPG5、GPG6、GPG7、GPG11,按下按键时,管脚是低电平状态。 GPIO寄存器:GPXCON:每两位配置一个管脚,00为输入,01为输出;GPXDAT:端口的数据寄存器,每一位表示对应管脚的状态,0为低电平,1为高电平;
2015-06-08 17:48:30
695
转载 作为一个新人,怎样学习嵌入式Linux?(转自韦东山老师)
12-04-18 23:33:07)转载▼标签: it在学习嵌入式Linux之前,肯定要有C语言基础。汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会)。C语言要学到什么程度呢?越熟当然越好,不熟的话也要具备基本技能。比如写一个数组排序、输入数字求和什么的。学C语言唯一的方法是多写程序多练习,编译出错没关系,自己去解决;执行出错没关系,自己去分析。以前我是用VC来练习C
2015-05-29 15:33:52
936
1
转载 arm-linux-gcc/ld/objcopy/objdump参数总结
-o 只激活预处理,编译,和汇编,也就是他只把程序做成obj文件 -Wall 指定产生全部的警告信息 -O2 编译器对程序提供的编译优化选项,在编译的时候使用该选项,可以使生成的执行文件的执行效率提高 -c 表示只要求编译器进行编译,而不要进行链接,生成以源文件的文件名命名但把其后缀由 .c 或 .cc 变成 .o 的目标文件 -S 只激活预处理和编译,就是指把文件
2015-05-29 11:57:34
518
转载 S3C2440存储控制器和MMU浅析
S3C2440存储控制器和MMU浅析K-Style转载请注明来自于衡阳师范学院08电2 K-Style http://blog.csdn.net/ayangke,QQ:843308498 邮箱:yangkeemail@qq.com一、S3C2440存储控制器如果大家写过S3C2440的ARM裸机程序都应该知道通常SDRAM的起始地址是0X30000000,但
2015-05-27 10:15:15
716
转载 linux顶半部和底半部中断机制
[cpp] view plaincopy//tasklet使用模板 /*定义tasklet和底半部函数相关联*/ void xxx_do_tasklet(unsigned long); DECLARE_TASKLET(xxx_tasklet,xxx_do_tasklet,0); /*中断处理底半部*/ void xxx_do_taskl
2015-05-22 17:32:23
730
转载 C语言static关键字解析
1、概述 static 声明的变量在C语言中有两方面的特征: 1)、变量会被放在程序的全局存储区中,这样可以在下一次调用的时候还可以保持原来的赋值。这一点是它与堆栈变量和堆变量的区别。 2)、变量用static告知编译器,自己仅仅在变量的作用范围内可见。这一点是它与全局变量的区别。2、问题:Static的理解 关于static变量,请选择下面所有说法
2015-05-15 14:13:34
674
转载 c语言关键字volatile的用法3
在学习C关键词的时候,我们看到了一个新面孔——volatile。在程序员面试宝典中提到“关键字volatile的面试例题是考查嵌入式编程”,中间有一段解析: 回答不出这个问题的人是不会被雇佣的。我认为这是区分C程序员和嵌入式系统程序员的最基本的问题。搞嵌入式的家伙们经常同硬件、中断、RTOS等等打交道,所有这些都要求用到volatile变量。不懂得volatile的内容将会带来灾难。 假
2015-05-15 11:50:01
478
转载 详解volatile关键词的用法2
volatile 影响编译器的结果输出,volatile 修饰的变量标明随时可能发生变化的(是指可能被本线程外的其他机制修改:如其他线程,中断,硬件),与volatile变量有关的运算,不要进行编译优化,以免出错,(VC++ 在产生release版可执行码时会进行编译优化,加volatile关键字的变量有关的运算,将不进行编译优化。)。 例如: volatile int i=10; i
2015-05-15 11:47:35
763
转载 详解volatile关键词的用法1
from:http://baike.baidu.com/view/608706.htm 一,volatile是什么? volatile是一个类型修饰符(type specifier),它跟const等一样,它是被设计用来修饰被不同线程访问和修改的变量。如果没有volatile,基本上会导致这样的结果:要么无法编写多线程程序,要么编译器失去大量优化的机会。
2015-05-15 11:45:23
374
转载 Android HAL实例解析---LED
转载博客:http://blog.csdn.net/hongtao_liu/article/details/6060734华清远见讲师 刘洪涛一、概述 本文希望通过分析台湾的Jollen的mokoid 工程代码,和在s5pc100平台上实现过程种遇到的问题,解析Andorid HAL的开发方法。 二、HAL介绍 现有HAL架构由Patrick
2015-03-24 18:47:47
1170
转载 Android如何获得系统(system)权限
Android中如何修改系统时间(应用程序获得系统权限){:122_323:} 在 android 的API中有提供 SystemClock.setCurrentTimeMillis()函数来修改系统时间,可惜无论你怎么调用这个函数都是没用的,无论模拟器还是真机,在logcat中总会得到"Unable to open alarm driver: Permission denied ".这
2015-03-24 17:56:31
685
转载 Android系统启动过程
链接地址:http://www.cnblogs.com/bastard/archive/2012/08/28/2660389.html首先Android框架架构图:(来自网上,我觉得这张图看起来很清晰) Linux内核启动之后就到Android Init进程,进而启动Android相关的服务和应用。启动的过程如下图所示:(图片来
2015-03-17 11:52:22
552
转载 和菜鸟一起学c之函数指针
还有SD卡的文件格式识别还不会,等明天和飞刀一起讨论下,基本的Android的SD卡的自动挂载已经实现了,可惜只支持FAT格式的,EXT格式的他不支持,添加了那些其他格式的挂载还是不行,主要是识别还不知道怎么去实现。好了,既然这么着,还是把以前看的一些函数指针做个记录吧。因为linux驱动中很多很多都用到了函数指针,一开始我都觉得奇怪,后来才知道这个。都怪自己以前对于指针的一些知识学得太少了,太浅
2015-03-16 16:37:38
471
转载 C学习之回调函数
回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。回调函数的例子#include// 方法指针的格式为:int (*ptr)(char *p) 即:
2015-03-16 16:17:18
492
转载 和菜鸟一起学android4.0.3源码之USB wifi移植心得
转载地址:http://blog.csdn.net/eastmoon502136/article/details/7850157 一天又过去了,台风也走了有些时候了。想了想,自己还是冲动了一把,不该发那个邮件的,既然发了,也不后悔了。知道了所有也未必不是一件好事。恩,剩下的就好好做自己要做的事情吧。对于usb wifi,老早就在调试了,只是碰到了很多问题,加上其他的事情也
2015-03-14 18:14:44
2494
转载 和菜鸟一起学android4.0.3源码之按键驱动短长按功能
第一:按键ADB调试1> adb shell getevent中获取到的屏幕事件的坐标转换 通过使用adb shell getevent,可以得到如下设备操作后的指令,具体表示的含义,可以参考网上很多的文章,这里就不再叙述这里的0035和0036分别表示屏幕上的X坐标和Y坐标,后面的值表示具体的坐标点,通过16进制转换可以得到值1142和1527,而我
2015-03-13 18:40:17
1464
转载 Android中LCD背光驱动
其实Android的底层就是Linux,所以其驱动本质就是Linux驱动,但是这些Linux驱动是服务上层Android的,所以需遵循上Android的一些接口规范。所以涉及到的Android驱动都应应密切关注上层传递的接口。本文介绍的LCD背光驱动就是从上层一直往下层展现,但是笔者毕竟不是专注于Android上层,碍于知识不充裕,所以对上层的东西介绍得相对简单。1.Android的Set
2015-03-09 18:29:36
719
转载 Android中LCD背光驱动
Mg Android中背光系统架构Email:wei7758@126.comBlog:http://blog.csdn.net/yinwei520Author:YwwTime:2011-9-24Update:(转载请注明出处,谢谢) 不知不觉喜欢上了写Blog,这还是一种不错的休闲方式,所噶~~,会不会也害怕过周末呢?因为寂寞
2015-03-09 18:25:40
1671
转载 platform设备驱动全透析
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://21cnbao.blog.51cto.com/109393/3376091.1 platform总线、设备与驱动在Linux 2.6的设备驱动模型中,关心总线、设备和驱动这3个实体,总线将设备和驱动绑定。在系统每注册一个设备的时候,会寻找与之匹配的驱动;相反的,
2015-03-09 17:48:57
463
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人