- 博客(9)
- 收藏
- 关注
原创 UBI子系统学习
UBI文件系统学习UBIFS简介UBIFS是一种Flash File System,在某种程度上,可以认为是JFFS2文件系统的下一代(官方是如此介绍)。UBI文件系统的主要特点JFFS2文件系统工作在MTD设备上,而UBI文件系统工作在UBI子系统之上,不能直接在MTD设备上运行。UBIFS涉及3个子系统:MTD子系统:提供统一的接口来访问Flash,提供了MTD设备(/dev/mtd0),代表最原始的Flash;UBI子系统:工作在MTD设备之上,向上屏蔽了许多Nand Flash的特性
2021-07-22 15:16:52
2353
原创 数据结构(一)
一、数据模型(一)存储架构1 顺序结构什么是顺序结构?故名思意,使用一块连续的内存来存放数据就是顺序结构,我们最常见的就是数组,但是,我们知道,直接定义数组的话,使用的是栈内存空间,而可用的栈内存是非常少的,因此,我们所说的数据结构都是站在堆内存上来说的。在堆内存上,我们可以使用malloc和calloc来动态分配内存:malloc(sizeof(int)*40); // 申请一块足够连续存放40个int类型数据的内存上面就是一个典型的顺序存储结构,在一块连续的内存上,存放数据,优点是使用
2020-08-11 13:57:14
199
原创 ubuntu换源
1 为什么要换源ubuntu下载软件总是很慢,我们可以通过更换软件的源地址,从国外换到国内,就能够大大提高我们的下载速度。2 步骤1 打开包管理工具apt的源文件$sudo gedit /etc/apt/sources.list这里可以查看到原来的源,为了保留余地,最好把这份文档拷贝一份。$sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup2 添加新源之后修改里面的源,在文件末添加新源。把下面这段代码复制到sources.
2020-08-10 15:01:50
361
原创 嵌入式开发在ubuntu和开发板上使用nfs传输文件
嵌入式开发在ubuntu上设置nfs服务1 ubuntu的设置1、下载nfs服务器sudo apt-get install nfs-common nfs-kernel-server portmap2、 配置nfs服务器sudo vim /etc/exports在文件末添加/home/usrname/nfs *(rw,sync,no_subtree_check)3、 创建nfs文件夹并设置权限mkdir -p /home/usrname/nfschmod 777 /home/usrn
2020-08-06 21:54:40
697
原创 关于linux下的字节对齐
Linux下字节对齐1、什么是字节对齐?数据在内存中存放的时候按照一定空间的规则来排列,而不是按顺序的一有空位就放进去。例如在32位系统下会按照4字节对齐,64位系统则为8字节对齐。如下图:在开始的时候放了一个char型的字符C,后面接着一个int类型的数据,正常来讲,这个int类型的数据应该会紧跟在C的后面,如下图,但是他并没有,而是跳过了3个字节,存放到了第4个字节之后,这就是字节对齐。为什么要字节对齐呢?用32位的机器来讲,CPU不是一个字节一个字节来读取的,而是一次读取4个字节。那上面的图
2020-07-31 09:23:10
2167
原创 一个函数有返回值但不return,也能拿到值
函数有返回值,但在函数里面没有return昨天一个同学做实验的时候,定义了一个函数,这个函数功能是返回一个指向新申请的一块内存地址的指针,但是由于疏忽,在函数里面忘记写return了,但是意外的是真的得到了这个指针,并且往里面写入内容也是允许的并能够打印出来。以下是他的代码:char *func(void){ char *p = (char *)malloc(1024);}int main(){ char *str = NULL; str = func(); st
2020-07-28 12:44:49
3051
原创 使用QTimer的一些坑
1、给timeout()添加槽函数添加槽函数时需要显式连接,这时不能将函数名命名为on_控件名_信号,否则就会报错No matching signal for,因为i这是隐式连接的函数命名方式。connect(fTimer, SIGNAL(timeout()), this, SLOT(onTimerTimeout()));...
2020-06-19 18:46:56
1171
原创 ubuntu安装Qt5.12
ubuntu安装Qt5.121、从Qt官网找到要下载的包链接:https://download.qt.io/official_releases/qt/5.12/5.12.9/.根据自己的系统选择对应的包。2、安装Linux下C++的编译器g++ sudo apt-get install build-essential在终端执行这条命令就会自动安装了。想要查看自己是否已经安装好了g++,输入下面这条命令: g++ --version出现了g++的版本号就表已经安装好了。3、安装Qt
2020-06-19 12:54:55
1107
原创 Fatal error in launcher: Unable to create process using 两个python2和3版本共存的问题
同时安装了2和3版本的python,使用pip的时候遇到了错误:Unable to create process using。我的解决方法是:1.找到python的安装目录,找到lib文件夹,再找到site-packages文件夹,进去后把里面的pip-xxx(xxx为版本号)文件夹删除;两个版本的都进行一样的操作。2.然后再重新下载最新版本的pip,我下载的文件是pip-19.2.3.ta...
2019-09-24 18:48:01
234
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人