- 博客(43)
- 资源 (2)
- 收藏
- 关注
原创 创建线程失败之no space left on device
pthread_create创建线程失败出现errno 28no space left on device一般是内存申请失败 和 线程数达到最大值。
2020-09-12 17:15:22
398
原创 海思mksquashfs制作squashfs文件系统
1. 首先生成mksquashfs工具,进入osdrv\tools\pc\squashfs4.3,make 生成mksquashfs,大约1.2M,制作squashfs命令:mksquashfs ${BASE_ROOTFS} ${PRODUCT}-rootfs.sqsh4 -b 64K -comp xz -noappend2.内核kernel支持squashfs4.0文件系统cp ar...
2020-09-12 17:12:03
4563
原创 交叉编译OpenSSL和curl
1 第一步 解压openss压缩包tar xvf openssl-1.0.2h.tar.gz2 第二步 配置生成目录和交叉编译工具链./config --prefix=/home/xxx/work/ingenic/curl/libs --cross-compile-prefix=mips-linux-uclibc-gnu- no-asm shared3 第三步 执行make depen4 第四步 执行make install5. 生成成功...
2020-09-12 17:10:16
642
原创 强制转换结构体中的变量的陷阱
当你强制转换结构体中的变量的数据类型时,一定要注意变量的类型是放大其范围 还是缩小其范围,当放大范围时 该数据被修改的同时会影响到该变量后面的数据,切记切记!比如 结构体 有变量 char data1, char data2 如果data1被这样调用 (int *)data1 =1, 则data1被修改为0....
2020-09-12 17:08:33
268
原创 16ev200内核编译过程遇到的问题
1. ubuntu13.04 16ev200 编译内核时报错liu@ubuntu:~/hisi/16ev200/Hi3516EV200R001C01SPC011/01.software/board/Hi3516EV200_SDK_V1.0.1.1/osdrv/opensource/kernel/linux-4.9.y$ make ARCH=arm CROSS_COMPILE=arm-himix1...
2020-01-17 14:42:59
850
1
原创 关于umount
如果一个文件夹被mount两次,那么实际内容为最后一次mount的文件夹内容,umount该文件夹会逆序依次umount之前mount的文件夹。
2019-08-22 15:53:20
380
原创 ubuntu13.04 cmake3.8.1源码安装
1. 安装执行三步骤为./bootstrap && make && make install2. 在./bootstrap的时候会提示以下信息Error when bootstrapping CMake:Cannot find appropriate C++ compiler on this system.Please specify one usi...
2019-08-22 15:42:54
562
原创 关于线程优先级(一)
1. 举例pthread_attr_t attr;struct sched_param param;pthread_attr_init(&attr); //初始化一个线程对象的属性pthread_attr_setschedpolicy(&attr, SCHED_RR); //设置线程调度策略pthread_attr_getschedparam(&...
2019-08-19 19:26:48
212
原创 关于jeffy-vim-read.tar的使用问题
1. 首先tar xvf jeffy-vim-read.tar压缩包,然后执行./install.sh 进行安装2. 安装完后如果打开文件出现以下打印解决办法: 需要安装最新的vim,sudo apt-get install vim又出现如下依赖问题,需要先装下面这个依赖最后安装vim 成功,打开文件就会有行序号,高亮显示了...
2019-08-19 19:25:21
509
原创 linux-静态库和动态库
1. 生成方式静态库:首先将源文件编译成目标文件:gcc –c test.c -o test.o然后生成静态库:ar –rc libstatic.a test.o共享库:首先将源文件编译成目标文件:gcc –c test.c -o test.o生成共享库:gcc –fPIC –shared –o libshared.so test.o
2017-01-13 12:14:49
288
原创 shell基础
1. #!告诉系统其后路径所指定的程序即是解释此脚本文件的Shell程序。2. 变量命名规则:①首个字符必须为字母(a-z,A-Z)②中间不能有空格,可以使用下划线(_)③不能使用标点符号④不能使用bash里的关键字(可用help命令查看保留关键字)3. 为了正确使用变量,推荐给所有的变量均加上括号。赋值的时候不加美元符,引用的时候才加。只读变量指令为readonl
2017-01-03 11:58:22
251
原创 linux定义变量内存地址分配顺序
首先分配基本变量(分配顺序字节从小到大char->int,除char按照singed->unsigned区分,其余均不),地址从低地址-高地址分配。其次分配数组,地址从低地址-高地址。一定要注意字节对齐:一般为4字节。举例:int ab[10];//最后int m; //⑤char t; //①unsigned char ut;//②unsi
2016-12-30 16:34:54
1463
原创 关于字符数组的存储以及强制转换
字符数组在小端系统存储:低地址向高地址顺次存储str[0] => str[n]。举例:char *a = "uni";printf("%c %c %c\n", a[0], a[1], a[2]);printf("%d %d %d\n", a[0], a[1], a[2]);int *str = (int *)a;printf("%d %d %d %d\n", (
2016-12-30 15:12:28
445
原创 进制的计算
采用这样的循环:k为原始十进制数;n为进制;a[index]为记录数组,0为起始低位,index为高位;i为数组下标。while(k>0){a[i++]= k%n;//取余的过程k=k/n;//取商的过程}
2016-12-30 14:54:26
405
原创 随机数
#include #include #include #include /*纳秒级 随机性更强,远胜过time(0)*/struct timeval tpstart;gettimeofday(&tpstart,NULL);srand(tpstart.tv_usec);int rd = rand();
2016-12-12 10:23:20
285
原创 内核串口2支持
进入内核linux_xxx目录1、arch/arm.mach_hi351x/core.c 添加串口21)如359行 添加HIL_AMBA_DEVICE(uart2, "uart:2", UART2, NULL);2)如363行 添加&HIL_AMBADEV_NAME(uart2),3)如382行 添加{ /* UART2 */.dev_id = "uart:2",.cl
2016-12-12 10:21:23
427
转载 解决svn的working copy locked并且cleanup恢复不能的情况
产生这种情况大多是因为上次svn命令执行失败且被锁定了。如果cleanup没有效果的话只好手动删除锁定文件。cd 到svn项目目录下,然后执行如下命令del lock /q/s就把锁删掉了。
2016-12-12 10:17:21
443
原创 vc 6.0进阶
1. ctrl+w 来创建对话框源码和头文件,对于已添加类对象函数,但c源文件没有该函数时,可以先删除函数对象再次添加就可以了。2. 控件右键可以创建对应事件。3. 新建界面软件过程如下: 新建工程-MFC-APPWizard(exe),然后一步一步来就可以创建带窗口的pc软件4. resoure.h和rc文件里面的界面格式 可以直接复制到新工程。5. vc提示类信息不可用 直接删
2016-12-12 10:12:36
440
原创 linux挂载window共享文件夹
1. 修改linux内核,支持cifs:进入linux源码根目录,make menuconfig,找到File systems --->Network File Systems --->四个* CIFS-support *legacy *externed *posix,然后save退出编译内核2. window上网络共享文件夹3. 终端下,cat /proc/filesystem
2016-12-12 10:08:56
360
原创 window和linux传文件之tftpd32工具
一般情况,创建新建文件夹,放入tftp32软件1. window打开tftp32软件,设置serverip和目标文件夹,通过setting勾选option negotiation、show progress bar、translate unix file names三项。2. telnet进入linux终端,输入指令:tftp -r rduser -g 192.168.2.12,成功传送文
2016-12-12 10:07:05
1117
原创 IE已限制此网页运行可以访问计算机的脚本或ActiveX 控件
问题:“为帮助您的安全,您的Web浏览器已经限制此文件显示可能访问您的计算机的活动内容。单击此处查看选项…”或者“为了有利于保护安全性,IE已限制此网页运行可以访问计算机的脚本或ActiveX控件。请单击这里获取选项…”解决:方法一: 在本地调试html页面时,如果其中包含javascript或flash,IE经常会提示“IE已限制此网页运行可以访问计算机的脚本或ActiveX控
2016-12-08 14:56:41
3826
原创 ubuntu-13.04 tftp服务安装配置
第一步安装sudo apt-get install tftp-hpa tftpd-hpasudo apt-get install xinetdsudo apt-get install netkit-inetd第二步建目录cd / sudo mkdir /tftpboot sudo chmod 777 /tftpboot第三步配置
2016-12-08 14:51:43
283
原创 ubuntu-13.04安装samba共享
在ubuntu下设置共享1. 安装samba:sudo apt-get install samba smbfs2. 设置samba密码sudo touch /etc/samba/smbpasswd,sudo smbpasswd -a yourname #yourname 表示你的用户名然后按照提示设置密码3. 任意选择你想要共享的文件夹,右键选择Properties,然后点击Sh...
2016-12-08 14:28:00
366
原创 linux文件系统制作
文件系统制作注意:1. 须在linux环境 使用root帐户 或者 加sudo解压 拷贝或者压缩,拷贝时加-a,否则,一些设备文件,无法创建 ;2. 不要在windows环境进行拷贝 解压或者压缩。
2016-10-11 14:53:34
193
原创 使用memwatch跟踪内存泄露(一)
1. 在cmake或makefile中添加定义add_definitions(-g -DMEMWATCH -DMW_STDIO)2. 在代码中添加【memwatch.c 】和头文件 【memwatch.h】两个文件,并在cmake或makefile中添加编译SET(SRC memwatch.c //放在最前面吧......}3. 在所调用头文件.
2015-06-24 09:53:52
384
转载 关于gdb调试(一)
1. 对一个对端已经关闭的socket调用两次write, 第二次将会生成SIGPIPE信号, 该信号默认结束进程2. 为了避免进程退出, 可以捕获SIGPIPE信号, 或者忽略它, 给它设置SIG_IGN信号处理函数:signal(SIGPIPE, SIG_IGN);这样, 第二次调用write方法时, 会返回-1, 同时errno置为SIGPIPE. 程序便能知道对端已经
2015-06-24 09:48:34
359
原创 linux pppoe移植方法
1. 下载编译ppp-2.4.1a) 解压b) 进入 ppp-2.4.1目录,先执行./configurec) 进入chat目录,修改Makefile.linux,添加CC=arm-linux-gccd) 编译chat: 先make clean,然后make –f Makefile.linux,生成chate)
2015-04-21 15:55:12
1346
原创 关于#define
1. 被定义为“宏”的标识符称为“宏名”。在编译预处理时,对程序中所有出现的“宏名”,都用宏定义中的字符串去代换,这称为“宏代换”或“宏展开”。作用范围仅限于当前文件。2. 在#define中,标准只定义了#和##两种操作。#用来把参数转换成字符串,##则用来连接前后两个参数,把它们变成一个字符串。#define print(n) printf("num"#n"=%d\n",num
2015-04-17 09:15:44
438
原创 VC6.0 release状态和debug状态相互切换
工程默认状态下生成的是release,这个状态下是不能调试的,如何切换到debug状态,使默认状态下面运行生成的是debug而不是release,尝试过在"工程->设置"更改为Win32 Debuge 确定后不起任何作用,再次打开 "工程->设置" 发现还是Win32 Release?怎么办?后来发现这样解决:在工具栏上右键Customize,把Release/Debug的那个"组建“工具
2015-04-07 16:13:49
1220
1
原创 变量重名问题-引自大师兄的话
如果函数重名,链接时会报警那么,变量重名呢?答案是:不会报错。它们的sizeof,会遵循编译的结果,与它们各位的声明相同悲剧的是,它们的地址,却是相同的。 举例:a.c中内容如下:#include #include #include typedef struct{int a;int b;}str;str tem;void fun_
2015-04-07 14:12:24
614
转载 ubuntu 系统时间不准的某原因-twistman
安装完ubuntu之后发现机器的时间老是不准,发现原来是安装的时候没有留意使用了UTC时间。UTC 是 Coordinated Universal Time 的缩写,译为中文为“世界标准时间”,直译的话,可译为“协调通用时间”或“协调世界时间”。因为这个和我们平时用的北京时间相差N个小时,对于我这个不是跨国使用,全国只有一个时区的用户来说很不方便。Vi /etc/default/rcS
2015-04-07 13:45:26
529
原创 vc6 控件 message map
1. 头文件.h 关于afx_message 定义:class CTest : public CDialog{public:// Dialog Data //{{AFX_DATA(CTest) CTest(CWnd* pParent = NULL); // standard constructor UINT m_time; //④ 文本框 数字
2015-04-07 09:28:34
546
原创 大小端的理解
小端 数据低位低地址大端 数据高位低地址 比如0x12345678 从左到右 0x12是高位,0x78是低位小端 低地址------>高地址 数据存储方式统一(char 0x78; short 0x5678; int 0x12345678) 0x78 0x56 0x34 0x12大端 低地址------>高地址
2015-03-26 11:59:51
334
原创 互斥锁
pthread_mutex_t mutex; //定义互斥锁变量pthread_mutex_init(&mutex, NULL); //初始化互斥锁pthread_mutex_lock(&mutex); //获得互斥锁pthread_mutex_unlock(&mutex); //释放互斥锁互斥锁 并不是和具体变量关联,它本身就是一个独立的对象,进程线程
2015-03-26 11:41:39
247
etc-apt-sources.list
2019-08-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人