LINUX
loveboon1
这个作者很懒,什么都没留下…
展开
-
VSCode 占用内存过高
烦不烦,每次都要设置封面,脑残吗?为什么我要加个封面???????原创 2022-08-10 15:03:36 · 5362 阅读 · 0 评论 -
活久见...I SEE U
RT原创 2022-07-29 16:59:47 · 97 阅读 · 0 评论 -
Git 基本操作(入职亲体验)
Git 新手实用操作原创 2022-06-30 21:18:17 · 581 阅读 · 0 评论 -
Linux 终端输出颜色
Linux 终端输出颜色:Linux 终端输出颜色_Dongkai的博客-CSDN博客_linux终端颜色Linux 终端颜色探究每个程序员都有一颗装x的心,我也不例外,于是,想搞一些五颜六色。经测试,终端输出带颜色的文字有三种写法:echo "\x1b[A;B;Cm文本\x1b[0m"echo "\033[A;B;Cm文本\033[0m"echo "\e[A;B;Cm文本\e[0m"其中 A,B,C 三个数子代表着输出的前景色、背景色和字体效果,注意,前景色和背景色以及字体效果与ABC的顺序无关!网上转载 2021-11-15 15:53:00 · 308 阅读 · 0 评论 -
也学CMAKE 【转】
# Modern CMake全攻略[TOC]## 前言接触`Cmake`是一个偶然事件,平时我都是手撸`Make`或者人工添加指定`cpp文件`到`VS`的工程目录。然而在后续工作效率提升的思考中,我不断发现,想要快速发布版本构建,使用命令行无疑是最快捷的,并不需要频繁挪动鼠标去做一系列重复而低效的`劳动。在一顿常规资料搜索后,才了解到`Modern Cmake`运动(让CMAKE更加规范,控制各级构建的变量泄露),实际上相关的资料乏善可陈,众多模板又参差不齐;最终我想总结下相关的经验来做一个最合适的转载 2021-11-11 16:32:46 · 194 阅读 · 0 评论 -
C语言内存操作规范(转)
C语言,C语言返回局部变量的几种用法--(经典例子)https://www.cnblogs.com/iriczhao/p/11949910.html写在前面 一般来说,函数是可以返回局部变量的。局部变量的作用域只在函数内部,在函数返回后,局部变量的内存已经释放了。因此,如果函数返回的是局部变量的值,不涉及地址,程序不会出错。但是如果返回的是局部变量的地址(指针)的话,程序运行后会出错。因为函数只是把指针复制后返回了,但是指针指向的内容已经被释放了,这样指针指向的内容就是不可预料的内容,..原创 2021-11-07 17:45:29 · 173 阅读 · 0 评论 -
降维打击理解指针和malloc&free
摘要:指针就是一个变量,地址变量,指向一块地址,编译器会取它指向的地址,然后对地址里面的内容进行操作。它可以用来指向不同地址。不同的地址段可能存在不同类型的数据但是指针不是内存块,它并不代表一块内存。只是某块的首地址替换而已。所以,使用malloc和free不是对指针做了什么事情,其实这俩哥们不会care指针变量,它只是会渗入指针指向的内存块区域进行不可描述的操作。对于malloc ,指针没啥不明白的,就是人家从内存里搞出指定数量大小的内存出来后,告诉你在哪而已。对于free,其实fre原创 2021-10-20 16:51:02 · 154 阅读 · 0 评论 -
ubuntu 打开一个文件夹窗口
在windows中,有下面的语句explorer /e, + path会自动打开一个文件夹窗口,并自动定位到path的位置。ubuntu下也有类似的命令直接打开Homenautilus打开当前文件夹nautilus .打开指定文件夹/var/www/aaa/nautilus /var/www/aaa/ 参考:linux下在终端打开文件夹_余安-CSDN博客_linux怎么在终端打开文件...转载 2021-09-30 10:16:49 · 839 阅读 · 0 评论 -
implicated confilict with c lab. api,such as memset
主要概念其实是,在你没有include标准库之前,是不能用标准库里的代码的。宏也不行。各种报错后把 头文件报进去即可。 下面的是某个网友的类似的问题,给了我提示...切记函数隐式声明警告如何解决_如何解决C语言中的隐式声明库函数警告_cuk0051的博客-CSDN博客函数隐式声明警告如何解决When compiling aCprogram you might find that the compiler gives you a warning similar to编译C程序时..原创 2021-09-23 19:22:54 · 223 阅读 · 0 评论 -
终端显示所用的颜色代码
Ubuntu修改终端显示的主机名、用户名、目录不同颜色打开终端输入:echo $PS1输入:gedit ~/.bashrc#定位到如下代码:if [ "$color_prompt" = yes ]; then PS1=‘${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ‘else PS1=‘${debian_chroot:转载 2021-09-16 18:18:36 · 575 阅读 · 0 评论 -
linux安装时忘了软件名字怎么办
for setting up demoapp用aptitude search demoapp原创 2021-09-15 15:19:29 · 250 阅读 · 0 评论 -
emcc下载失败(curl 56)
一、问题原因及现象 在网络情况不稳定下克隆项目时,可能会出现如下错误:**** cur 56 ***** 出现此问题原因 http缓存不够或者网络不稳定等。二、解决方案修改git配置:1、查看当前配置命令 git config -l2、httpBuffer加大 git config --global http.postBuffer 5242880003、压缩配置git config --global co...转载 2021-09-14 15:28:50 · 425 阅读 · 0 评论 -
NFS挂载情况查看
Linux NFS挂载一、NFS挂载192.25.10.101/home/sharedata/azkaban/ODS_HS08 挂载到 192.25.10.102/home/data_azkaban(一)192.25.10.101上操作:1,查看rpcbind、nfs是否安装rpm -qa|grep nfsrpm -qa|grep rpcbind安装命令:yum install -y nfs-utils rpcbind2,vi /etc/exports内容:/home/s原创 2021-08-19 19:53:49 · 12595 阅读 · 0 评论 -
2021-08-19
# interfaces(5) file used by ifup(8) and ifdown(8)auto loiface lo inet loopbackauto eth0iface eth0 inet staticaddress 192.168.1.151netmask 255.255.255.0gateway 192.168.1.2dns-nameservers 202.38.64.1echonameserver8.8.8.8>/etc/resolv.con...原创 2021-08-19 19:23:00 · 58 阅读 · 0 评论 -
did I ever tell you about AOD
原创 2021-08-11 09:45:50 · 75 阅读 · 0 评论 -
记一次内存泄漏( free(): invalid next size (fast))
第(3)个title提醒了我。找到了错误原由在项目开发中,调试发现:free(): invalid next size (fast): 0x0000000001bd2e10 ***错误类型为内存泄露错误。后经查阅内存泄露得知导致内存泄露的原因可能有以下几种:(1)free了没有分配的内存(2)分配了内存忘记释放也有可能会出现这样的问题。(3)数组循环的时候越界了 ,写到了其他的内存里面, 然后free那个区域就会出现这样的问题。经核实我的问题不属于以上三种情况,源代码如下:...转载 2021-08-03 20:22:44 · 1170 阅读 · 0 评论 -
内核原始进程,初代和二代进程
转载https://www.cnblogs.com/alantu2018/p/8526970.htmlAlanTu随笔 - 953, 文章 - 0, 评论 - 44, 阅读 -181万linux的0号进程和1号进程linux的 0号进程 和 1 号进程Linux下有3个特殊的进程,idle进程(PID = 0), init进程(PID = 1)和kthreadd(PID = 2)* idle进程由系统自动创建, 运行在内核态idle进程其pid=0,其前身是系统创建的第一个.转载 2021-07-21 10:13:27 · 245 阅读 · 0 评论 -
VSC打开keil工程文件联合修改调试
核心操作是,VSC支持GBK方式打开文件,就好过多了,不然,GBK-TF8的时候老是莫名的改了文件内容。很恶心。。参考博文:https://blog.csdn.net/kate_mj/article/details/1047742321. 修改 VSC打开后的工程文件编码,也可说是默认编码前言: 初次接触VScode的小伙伴肯定有这样的经历:打开一个文件后,发现中文全部乱码,以前用中文写的代码注释全部无法正常显示。这里涉及到关于文件编码的知识,可以参照以下方式修改VScode的文件编码格式。原创 2021-07-06 19:44:36 · 869 阅读 · 1 评论 -
C语言的技巧
inux内核中offsetof与container_of的宏定义#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)/*** container_of - cast a member of a structure out to the containing structure* @ptr: the pointer to the member.* @type: the ty...转载 2021-07-02 11:15:08 · 169 阅读 · 0 评论 -
查看进程的所有线程
得到进程的pid:ps -ef | grep process_name | grep -v "grep" | awk '{print $2}'查看进程的所有线程# ps mp 6648 -o THREAD,tidUSER %CPU PRI SCNT WCHAN USER SYSTEM TIDroot 0.0 - - - - - -root 0.0 24 - - - - 6648root 0.0 21 - - - - 6650root 1.0 24 - - - - 14214root...原创 2021-06-16 09:51:38 · 410 阅读 · 0 评论 -
linux手动释放内存的方法
linux查看内存和回收内存清理前内存使用情况free -mfree -gecho 1 > /proc/sys/vm/drop_caches清理后内存使用情况free -m原创 2021-06-15 10:46:44 · 92 阅读 · 0 评论 -
linux串口问题(copy)
Linux 串口编程的一些问题解决Linux下串口编程的文章网上是满天飞,但大都是出自一篇文章,而且写的都是些基本的操作,像控制RTS/CTS等串口引脚状态,接收发送二进制数据等,都没有很好的说明,我在使用中遇到了些问题,写出来,希望能对大家有所帮助,少走弯路,呵呵!我使用的操作系统是Redhat9,gcc版本是3.2.2其实在linux下对串口的设置主要是通过termios这个结构体实现的,但是这个结构体却没有提供控制RTS或获得CTS等串口引脚状态的接口,可以通过ioctl系统调用来获得/控转载 2021-06-03 18:42:59 · 415 阅读 · 0 评论 -
linux pthread-lib how to (番外)
linux 线程 同步操作, 这里不是介绍官方常见的semaphore mutex...读写锁,屏障...更何况后俩我TM不知道这辈子还有没有机会用的到.这里分享一个基本的同步手段, 自定义线程时序.不用回忆了,不是讲哪个牛逼人做出来的开源thing,这里就是最基础的程序顺序设计的应用线程的时序,完全可以自己定义的. I mean ,多个线程的先后执行.这里分享的是第二个线程在第一个线程执行后执行的方法.主要方式是在码体时, 用 pthread_join(pthread_t, (..原创 2021-05-18 16:26:13 · 108 阅读 · 0 评论 -
EC20 NMEA
[ZHUAN]https://www.it610.com/article/1296140741730443264.htm前言:EC20是移远一款带有GPS功能的LTE模块,本文主要讲述此模块GPS功能的基本使用方法,更多详细的指令操作细节、参数、示例可参考官网提供的手册:Quectel_EC20_GNSS_AT_Commands_Manual_V1.1端口说明:EC20挂载系统成功后,在Windows环境下会有三个com口,分别为AT Port、DM Port、NMEA P...转载 2021-05-11 18:36:53 · 991 阅读 · 0 评论 -
进程数限制线程数限制线程池
前言线程池是多线程和并发编程的重要手段,本文尝试从操作系统、线程池实现原理和资源分配三个方面来分析,解释如何高效地使用线程池以及背后的逻辑。操作系统知识在介绍线程池之前,我们先来了解一下操作系统相关的知识。1.时间片我们的服务器大多是分时操作系统,这种操作系统将系统资源(特别是CPU)进行时间上的分割,每个时间段称为一个时间片,以时间片轮转的方式为多个任务提供服务。一个CPU同一时间只能执行一个任务,但是由于时间片快速轮转,给用户的感觉好像是在同时执行多个任务。2.进程和线程进程转载 2021-05-10 11:39:31 · 654 阅读 · 0 评论 -
多进程多线程概念【转载】
版权声明:本文为CSDN博主「许莹白」的原创文章,遵循CC 4.0 BY-SA版权协议,原文链接:https://blog.csdn.net/weixin_42134878/article/details/112072252线程与进程的比较概述:进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位.线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中.转载 2021-05-10 11:21:40 · 258 阅读 · 0 评论 -
海思 对接 阿里云 OSS API上传文件
海思HI3520DV400 , 阿里云平台账号开通OSS并购买一些存储容量。....交叉编译七八个库后终于把 OSS 的SDK(C) 还有简单上传demo通过编译。虚拟机端已经试过可以正常上传,但是板子上传后报错乍一看,因为没遇到过,以为是鉴权的问题,又绕了弯路去看了OSS的 STS鉴权,RAM鉴权。试过创建RAM 虚拟角色,在源码里直接加入token部分来上传,但是这个token的获取也需要编程实现,而目前STS这块儿没有C语言的SDK,导致尝试失败。 无奈搜了下这个错误码,终于还真.原创 2021-05-06 18:25:29 · 262 阅读 · 0 评论 -
开发板连接了有线路由器,然后咋的就能通到外网了(udhcp)
在开发板上,敲命令 udhcpc# udhcpcudhcpc: started, v1.29.3udhcpc: sending discoverudhcpc: sending select for 192.168.5.252udhcpc: lease of 192.168.5.252 obtained, lease time 3600deleting routersadding dns 192.168.5.1adding dns 202.106.0.20...原创 2021-04-30 17:23:07 · 384 阅读 · 1 评论 -
linux到底何时记得住之 set ff
indow上编辑的文件上传到Linux系统上,经常会遇到报错,原因在于window上文件格式与linux上是不同的导致。 Windows上市dos格式,Linux上是unix格式。Dos->Unix转换是需要的,一般可以采取以下两种方法进行装换:(1)使用dos2unix 文件名 进行装换终端执行: dos2unix test.py(2)借助vim编辑器进行转换在linux上使用vim编辑器命令行模式下输入:set ff显示fileformat=dos命...原创 2021-04-28 19:53:14 · 2674 阅读 · 0 评论 -
Linux裆疼之更新库或环境变量使得生效
1.如果你增加了库,或者编译修改了库参考:http://man.linuxde.net/ldconfighttps://blog.csdn.net/chenzixun0/article/details/56278632主要是在默认搜寻目录/lib和/usr/lib以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(格式如lib*.so*),进而创建出动态装入程序(ld.so)所需的连接和缓存文件,缓存文件默认为/etc/ld.so.cache,此文件保存已.原创 2021-04-28 11:50:41 · 329 阅读 · 0 评论 -
linuxC debug宏
#ifndef DEBUG#define DEBUG#undef DEBUG#ifdef DEBUG#define debugf(fmt, args...) do { printf("%s(): ", __func__); printf(fmt, ##args); } while (0)#else#define debugf(fmt, args...)#endif#endif原创 2021-03-11 14:36:48 · 263 阅读 · 0 评论 -
嵌入式linuxC开发环境搭配分享【个人多年感慨总结】
1. 编程环境搭建(VSC + vi插件)基本上,我的工作都是在调试设备功能,测试设备功能。主要用到的只有C。会涉及到makefile(内核编译,驱动,应用工程文件,shell)因为对VI的编程操作比较熟悉,而且也比较高效。但是在VI上更复杂的操作或快捷键,着实记不住。用了一段VSC感觉还挺顺手,包括高亮显示,还有快捷寻找声明,以及实时显示一些警告错误,这些功能是目前VI没有的。偶然间发现VSC竟然可以安装VI插件,NND,用过之后太他么适合我了。非常搞笑,感觉编码也没那么生无可恋了。.原创 2021-03-11 12:00:15 · 178 阅读 · 0 评论 -
【转】VSCode 自动输出自定义代码段
转载 2021-03-09 12:03:47 · 166 阅读 · 0 评论 -
0.1基础 Makefile采坑总结
之前看过Makefile,只记住了一些基本语法,细节没掌握太多,上手基本写不出来。用时只能搬砖,导致很简单的脚本要画很长时间来磨。1. 粘贴过来的脚本,注意其每行的空格, 尤其是输出时候看到很诡异的错误,多半是跟空格字符长度或回车换行有关 方法,重新编译下空格、换行2. 关于ALL后面目标 all 是钥匙,带动整个编译开头的索引,但是其后面的目标名可能是多个,就是要执行多个生成操作,要注意了@!!!顺序!!一定要保证应该先生成的.o啊什么的文件,优...原创 2021-02-26 16:35:54 · 70 阅读 · 0 评论 -
chmod 666后文件不能看了!!!
蛋疼,makefile里不能 mkdir ,试着在终端改变下权限,sudo chmod 666 ./$(你的目录) -R然后“你的目录”就不能普通用户查看了没事,再改回权限 755 或者 765 然后就正常了原创 2021-02-25 21:07:32 · 886 阅读 · 0 评论 -
驱动编程: ioctl成员的前世今生
最近在学习Android源代码的结构,需要经常编译内核在单独编译Andrioid linux kernel的时候再编译到/driver/misc/akm8975.c 时出现问题主要是linux 2.6.36的驱动机制里file_operation关于ioctl这块改动比较大所以导致了unknown field 'ioctl' specified in initializer的这个问题原来内核的ioctl注册方法:例:static int ***_ioctl(Struct ..原创 2021-01-25 22:01:26 · 83 阅读 · 0 评论 -
fatal error: asm/system.h: No such file or directory
Linux驱动——fatal error: asm/system.h: No such file or directory 如何解决错误信息可知,缺少此头文件原因: Linux内核是不断地更新换代,即3.3版本之后内核用switch_to.h替换了曾经的system.h头文件。解决方法: 可在终端输入uname -r,查看自己Linux内核版本。如,我的内核版本是4.2.0-27-generic,可知为3.3之后版本,直接使用#include <asm/...原创 2021-01-25 21:08:06 · 2010 阅读 · 0 评论 -
驱动GPIO干货
转载:https://blog.csdn.net/zhoutaopower/article/details/98082006目录1、简述2、Gpiolib 相关数据结构分析2.1 gpio_chip 结构2.2 gpio_desc 结构2.3 gpio_device 结构3、Gpiolib 对接芯片底层3.1、注册 GPIO 资源(gpiochip_add)3.2、gpiochip_add_data_with_key4、Gpiolib 为其他驱动提供的 APIs4原创 2021-01-17 16:55:47 · 2414 阅读 · 0 评论 -
内核相关硬货必看-$kernel/arch/arm/boot/dts
宋宝华的blog宋宝华 Barry Song <21cnbao@gmail.com>1. ARM Device Tree起源Linus Torvalds在2011年3月17日的ARM Linux邮件列表宣称“this whole ARM thing is a f*cking pain in the ass”,引发ARM Linux社区的地震,随后ARM社区进行了一系列的重大修正。在过去的ARM Linux中,arch/arm/plat-xxx和arch/arm/mach-xxx中充斥...原创 2021-01-17 14:42:18 · 1255 阅读 · 0 评论 -
眼高手低之linux命令行查找
当你想在某个录下查找某个文件时$DIR = /sudo find $DIR -name "test.txt"如果不确定名字完整性sudo find $DIR -name "*s*.txt"当你在某个目录下寻找某个API时grep -nr "apiname"当你下个确定某个ko文件里是不是库函数是nm | grep "apiname"...原创 2021-01-17 13:55:40 · 104 阅读 · 0 评论