- 博客(16)
- 收藏
- 关注
原创 Linux设备驱动----之linux内核
记得在大学期间,为了参加一些电子类竞赛,身旁就会有同学购买单片机,自己做流水灯、闹钟等一些小东西。单片机的工作模式是利用软件编程控制硬件,从而实现一些功能。这一类的功能一般都比较简单,逻辑十分清晰。不过针对一些复杂的功能需求,基于单片机也是可以进行开发的。但是对于复杂的、交互式的功能开发,我们还是更倾向于选择嵌入式开发。这两者有什么区别呢?非常简单,嵌入式开发比不同的单片机开发多了一个操作系统。
2017-10-16 09:04:57
329
原创 Android开发简述
智能手机是一种比传统手机运算能力更强、功能更丰富的手机,它主要使用的操作系统有Symbian、Windows Phone、Android、IOS和BlackBerry。目前,市面上最流行的两种手机操作系统即ios和android。ios非苹果莫属,其余手机品牌一般会在android的基础上做一定的修改,推出自己的专属系统,例如小米的MIUI,华为的EMUI等。
2017-10-11 19:18:23
486
原创 手机电路原理图学习
CPU简介:centralprocessing unit,中央处理器。功能主要是解释计算机指令以及处理计算机软件中的数据,计算机的可编程性主要是指中央处理器的编程。主要包括运算器(ALU,Arithmetic and Logic Unit)和控制器(CU,Control Unit)两大部件。此外,还包括若干个寄存器和高速缓冲存储器及实现它们之间联系的数据、控制及状态的总线。它与内部存储器和输入/输
2016-04-15 08:28:13
8576
原创 字符设备之globalmem
首先推荐一篇博文:http://blog.csdn.net/dreambegin/article/details/6893661然后写写我遇到的困难与收获吧。1. make冒出来的第一个错误就是找不到asm/system.h文件, 因为在3.3.0之后的内核版本中asm/system.h文件被asm/switch_to.h文件代替啦~\(≧▽≦)/~啦啦啦。2. ioctl
2016-03-23 18:40:02
511
原创 linux内核模块时内核树的作用
初学linux驱动开发,自然少不了对设备与模块的深入理解。今天尝试操作一个最简单的linux内核模块:hello world,也是困难重重。跪点在于:如何编译通过各种查看资料,在linux操作系统中,一般是不含有源码的,也就是所说的内核树。那么,如果想要调用源码中的头文件,就需要自己动手搭建内核树。一般在 www.kernel.org 就可以获得各种版本的内核代码,记得下载前先用指
2016-03-22 16:48:13
1178
原创 2016京东在线笔试(编程题之一)
最初这个题目应该是五猴分桃,想必大家也不陌生,京东只是把五只猴子变成了N只。也就是有N个猴子,一堆桃子,第一个猴子来了,分成N分后多了一个,于是他把多出来的扔了,拿走了N份中的1份;第二个猴子又来了,把剩下的桃子也分成了N分,多了一个扔了,也拿走了N份中的1份;然后第三只猴子······直到第N只猴子,以此类推,问这队桃子至少有多少个呢?解题方法网上提供了很多,这里与大家分
2015-09-19 22:05:40
1182
原创 C/C++海格2016笔试题
8:30爬起来去笔试,感觉灰常酸爽。考的时候很淡定,回来查阅知识点哭晕在厕所。这会儿缓过来,总结几个错题吧:1
2015-09-09 11:13:01
1869
2
原创 C/C++函数返回值为指针时(2016美团模拟笔试)
昨天美团模拟笔试,最后一个编程题:输入一个字符串,删去多余空格如输入:" I love China ! " 输出:"I love China !"题目给了一个函数框架:char* getString(char * sourceString){//带填充}按理说这题并不难,个人感觉重点就在于返回值怎么确定。1)如果队员指针进行处理,直接返回当
2015-09-08 15:09:04
576
原创 C++中的虚基类
我们知道类具有三大特性:封装、继承和多态。继承,可以在现有类的功能上进一步扩展,而无需在构建新的类。但有时多重继承会使结构变得复杂,不注意的话还会引起二义性。其中比较典型的一个案例:class A{ public: int a; };class B: public A{};class C: public A{};class D: public B, public C{};那么此
2015-09-05 15:17:03
391
原创 C++拷贝构造函数
拷贝,顾名思义,就是复制啦。在C/C++语言中,赋值岂不是很简单吗?然而,在类中呢,包含了很多不同类型的成员变量。也可以回想一下结构体是怎么复制拷贝的呢?拷贝在我们眼中算是基本操作啦,所以,在类中,就算你不定义,系统也会自己生成一个拷贝构造函数来帮你完成复制的使命。 那就是拷贝构造函数啦:class A{ int a; int b; A(int
2015-08-29 22:27:14
624
原创 C++构造函数小结
在C++的类中,如果没有显示的构造函数,那么系统是会自动生成一个默认的构造函数。但是这个默认构造函数的函数体是空的,不起初始化作用。 因此,如果想要方便灵活的进行初始化,就需要自己动手写构造函数喽! 一般来说呢,显示的构造函数有三种方法:(我自己总结的啦,感觉不合理可以指出哦) 1:简单赋值 Aclass::Aclass(i
2015-08-27 14:30:48
459
1
原创 关键字const
单纯的const…….. const:限定一个变量不允许被改变。因为常量在定以后就不能被修改,所以定义时必须初始化——《C++ Primer》。(不过对于类定义体中的视情况而定)然而,const后面的变量依然是变量,不是常量,在内存中还是有开辟存储空间的,从本质上讲,是可以被重新赋值的,只是编译器在编译的时候会检测,不让你重新赋值。但是如果你的变量名更改之后(如强制类型转换),编译
2015-08-26 15:52:07
415
原创 关键字static
关键字static看起来很安静...... 1 修饰变量变量又分为全局变量和局部变量,但是被static修饰的变量都将存到内存的静态区。静态全局变量:作用域仅限于变量被定义的文件中,且从定义之处开始,到文件尾结束。(定义之前的代码想用可以用extern声明,貌似没人这么变态的用吧?不过其他文件使用extern声明也没办法使用)静态局部变量:函数体中定义的,就只能在函数体内使用,
2015-08-26 15:48:51
489
转载 C++/Java
作为一只小弱,今天了解了一些有关C++/Java的知识,特地来mark一下。之前一直有个疑问,C++/Java都是面向对象的高级语言,两者有神马不同捏?(抱歉出处不明)C++写好的程序只需要进行编译链接,就可以在专用的平台上运行。Java一次编译后,就可以随处运行,但是需要运行在Java虚拟机平台上。也就是说Java相比C++,与机器之间的交流多了一层,虽然可移植性强,但效率自然就比C
2015-04-01 15:15:21
597
转载 DLL的Export和Import
(原文地址)http://blog.chinaunix.net/uid-11572501-id-2868511.htmlDLL的export是指将DLL中的函数和数据输出到其它程式中,以供其使用。DLL的import是指使用DLL的程式引入DLL中的函数和数据。DLL的exportDLL中包含有一个表,称为export table(以下简称ET),其中包含了DLL中可以被外
2015-03-19 14:52:05
910
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人