接vboot详解一… 第二个阶段主要是C语言编写的程序,主要文件为main.c,入口代码如下: void Main(void) { MMU_EnableICache();
Bootloader之vboot详解(一)
最近一直在学习编写Bootloader,对于Bootloader也有了一些简单的认识。Vboot作为一个非常精简的bootloader程序,是十分值得刚入门的学习。把Vboot的源代码认真分析一遍之后,再去看其他bootloader,比如supervivi、u-boot等,应该就会好理解一些。 值得注意的是,vboot只有最基本的内核引导功能,基于S3C
Qt在Label上显示图片-嵌入式远程视频监控客户端开发
最近在做一个基于ARM+v4l2+x264+qt的嵌入式远程视频监控系统,主要功能已经完成,准备过些时候,把做的过程的遇到的问题以及相关流程整理一下发布成文章。先写一个最简单的在QLabel中显示jpeg图片的代码,只有几行,但网上的着实比较乱,完全都是复制来复制去,只能自己揣摩调试。下面是经过我测试显示成功的。先上代码: //构造函数中声明QLabel
闲话《深入理解计算机系统》
慢慢的也开始看《深入理解计算机系统》,才发现经过嵌入式开发的学习,慢慢的对计算机系统有了一个宏观的认识,再次看《深入理解计算机系统》的时候,很多东西都是恍然大悟的感觉,也许以后对于编程的理解也会有一个新的认识,五个月来,从开始的应用程序使用到后来的应用程序开发,让我对于开发有了一个新的认识,未来的目标应该是做一个研发者吧,不过在做研发之前,希望能够尽快把
linux设备驱动程序中关于IO内存与硬件通信方式总结
以下总结为均为个人查阅各种资料加上个人理解总结而成: 一.在学习关于IO内存与硬件通信方式过程之前,首先需要了解驱动中的内存分配,可以通过三种方式: 1.kmalloc 注意kmalloc函数的第二个参数的标志,可以指定内存分配的相关方式或者属性 #include <linux/slab.h> void&n
linux编译模块脚本
在学习Linux驱动开发过程中,需要将我们写的驱动程序编译为模块,然后装载的系统或者开发板上进行测试,在编译过程中,我们经常执行如下命令进行编译: make -C /lib/modules/`uname -r`/build/ M=`pwd` modules 由于命令比较长,而且有时
如果你50岁还在靠编程养家糊口,你会觉得失败吗?
我想现在考虑这个问题或许有些早,但是想想貌似自己也快要正式步入编程人生了,总希望能在过年前能够自己养活自己。能够有个自己的屋子,一个可以容纳我的小床,摆上一个书架,放上自己喜欢的书,放一个写字台,放上一堆感兴趣的器件,虽然我对硬件并不是特别了解,不像我经常去的“大D综合研究院”中的大D一样,有着一个美好的童年,至少在我看来是这样的。 最初接触计算机是02
windows8添加美式英语键盘并且修改默认输入法为美式英语的方法
纠结了几天,还是安装上了最新的windows8专业版,熟悉半天之后,浏览了网上的一些基本使用技巧和配置方法,慢慢也对windows8的基本使用有了基本的了解。总的来说,windows8在资源占用方面做了很多的优化,明显比之前windows7 64位占用资源小很多,因此流畅性方面,个人感觉要比windows7好很多。MTREO桌面也显得十分时尚,看起来比较
由“老张和水壶”的故事来理解同步、异步、阻塞和非阻塞
记得之前在博客园上看到有朋友这样来区分同步、异步、阻塞和非阻塞模式,大致如下: 老张爱喝茶,废话不说,煮开水。 出场人物:老张,水壶两把(普通水壶,简称水壶;会响的水壶,简称响水壶)。 1 老张把水壶放到火上,立等水开。(同步阻塞) 老张觉得自己有点傻 2 老张把水壶放到火上,去客厅看电视,时不时去厨房看看水开没有。(同步非阻塞) 老张还是觉得自己有点傻
ADS1.2在WINDOWS7-64位下出现无法makeC程序的问题解决
ADS1.2作为目前在国内嵌入式开发ARM程序最常用的IDE,但是其版本之旧,造成对于新系统的兼容性不好,尤其是对于本地化的支持不是太好。所以,在安装和使用过程中会遇到很多的问题。其中一种比较常见的问题是:在使用make 工具编译C语言过程中弹出如下提示: Warning : L6301W:Could not fi