03 2018 档案

该文被密码保护。
posted @ 2018-03-31 22:01 Crystal_Guang 阅读(9) 评论(0) 推荐(0) 编辑
摘要:1、字符设备:是指只能一个字节一个字节读写的设备,不能随机读取设备内存中的某一数据,读取数据需要按照先后顺序。字符设备是面向流的设备,常见的字符设备有鼠标、键盘、串口、控制台和LED设备等。 2、块设备:是指可以从设备的任意位置读取一定长度数据的设备。块设备包括硬盘、磁盘、U盘和SD卡等。 每一个字 阅读全文
posted @ 2018-03-31 11:50 Crystal_Guang 阅读(7539) 评论(0) 推荐(2) 编辑
摘要:根文件系统启动分析 启动根文件系统过程UBOOT:启动内核内核:启动应用程序 Linux启动时,第一个必须挂载的是根文件系统;若系统不能从指定设备上挂载根文件系统,则系统会出错而退出启动应用程序的运行是依赖文件系统的。(所以需要挂接根文件系统) 执行应用程序在“init_post”这个函数中。 第一 阅读全文
posted @ 2018-03-27 17:28 Crystal_Guang 阅读(633) 评论(0) 推荐(0) 编辑
摘要:这个主要让我们知道,不管你怎么变化,不变的是实质。 其他不多说,主要是 X86: X64: 如果你觉得你搞懂了,那么做个随堂测试吧:把32改成31 此时在X86和X64上应该输出多少?(答案在下方) Answer: 默认8字节对齐时,X64:143 X86:119 默认4字节对齐时,X64:131 阅读全文
posted @ 2018-03-23 16:22 Crystal_Guang 阅读(283) 评论(0) 推荐(0) 编辑
摘要:在uboot学习的时候, 我们知道了一个庞大的程序,感觉无从下手,但其实,通过韦老师和一些老手的经验告诉我,如果我们不是专门弄uboot的,一般只用知道怎么用就行了。确实这个东西太大了而且花那么多时间去弄这个也不值得。同理,uboot的终极奥义是启动内核,现在uboot的简单应用我们已经会了,内核是 阅读全文
posted @ 2018-03-20 20:02 Crystal_Guang 阅读(4251) 评论(0) 推荐(1) 编辑
摘要:今天在进行STM32内部falsh存储的时候,发现固件库历程的函数原型是这样的: 第一个是地址,在我的STM32中是2K一页的,第二个是要写入的数据。 问题就来了,存储一个小数该怎么办呢?固件库给的是整形数据啊! 三种解决办法: 第一:最具大众性的 把小数乘以系数放大,当做整数存储,然后再除以放大系 阅读全文
posted @ 2018-03-19 21:20 Crystal_Guang 阅读(3258) 评论(0) 推荐(1) 编辑
摘要:栈的定义栈是一种特殊的线性表栈仅能在线性表的一端进行操作 栈顶(Top):允许操作的一端 栈底(Bottom):不允许操作的一端 栈的性质 栈的操作 栈的一些常用操作  创建栈  销毁栈  清空栈  进栈  出栈  获取栈顶元素  获取栈的大小 栈的顺序存储实现  顺序存储 阅读全文
posted @ 2018-03-09 16:15 Crystal_Guang 阅读(3313) 评论(0) 推荐(0) 编辑
摘要:之前一直在想,为什么没有人出一个完全从零写uboot和移植剪裁内核的教程,后来发现,确实这样的教程十分不容易,还有就是我们也没有必要花那么多时间去做别人已经做好的事情,所以,一般而言我们只用管怎么实现功能。(把更多的时间给音频、视频、图像类等的算法去更加符合经济效益)。 我们知道uboot的菜单中是 阅读全文
posted @ 2018-03-03 16:13 Crystal_Guang 阅读(435) 评论(0) 推荐(0) 编辑
摘要:有了#ifdef 为什么还需要#if defined ? #if 0 注释掉之后: 可见,#ifdef虽然我们最常见也用得最多,可是#if defined(XXX)却可以有 &&,||,!,逻辑与,逻辑或,逻辑非等操作,而#ifdef却不支持这样的特性。 阅读全文
posted @ 2018-03-01 21:45 Crystal_Guang 阅读(314) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示