
Linux
文章平均质量分 59
Linux相关知识记录
Thalvin
嵌入式软件工程师
展开
-
TCP如何建立长连接
如果不主动关闭socket,操作系统是不会将其关闭的,这样socket所在的进程如果没有挂掉,则socket所占用的资源将一直无法回收。在长连接通信过程中,双方的所有通信都建立在1条长连接上(1次TCP连接),因此连接需要持续保持双方连接才可使得双方持续通信。由于TCP建立连接需要进行三次握手,每次建立连接都需要进行资源消耗,对于频繁请求资源的客户端而言,长连接可减少大量开销。需要注意的是,在判断连接是否断开时,可以判断recv函数是否成功,而非send函数。先启动服务端,等待客户端进行连接。原创 2024-08-08 17:06:48 · 2563 阅读 · 0 评论 -
编译tzdata提示内存越界 malloc(): memory corruption /bin/sh: line 1: 32317 Aborted
编译tzdata时,遇到如下所示的错误提示。解决方法,更新awk软件包。更新后查看awk版本信息。原创 2023-12-04 15:28:14 · 623 阅读 · 0 评论 -
list_for_each_entry详解
list_for_each_entry详解原创 2023-02-08 18:11:51 · 9354 阅读 · 2 评论 -
使用GDB Sever调试程序提示Warning: Cannot insert breakpoint X. Cannot access memory at address 0xXXXXXX
问题原创 2021-11-18 00:09:12 · 4401 阅读 · 0 评论 -
Linux实现定时的方法
文章目录Linux环境下实现定时的方法sleep和usleepLinux环境下实现定时的方法sleep和usleepsleep函数是我们编程中非常常见的,它可以使得进程睡眠指定时间之后再执行它的参数分别为秒级(sleep)和微秒级(usleep 1000000us为1s)sleep和usleep的头文件和函数原型如下所示:#include <unistd.h>unsigned int sleep(unsigned int seconds);int usleep(useconds原创 2021-06-27 00:54:02 · 3363 阅读 · 1 评论 -
软件工程本科毕设:基于图像的火灾检测
文章目录基于图像的火灾检测个人情况及相关技术开发环境软件平台硬件平台系统存在的问题系统架构系统基本工作流程系统运行效果代码实现上位机代码下位机代码数据库结构系统硬件展示基于图像的火灾检测个人情况及相关技术双非普通本科,2017届软件工程移动设备应用开发方向,毕设所用技术:Qt、SQLite、OpenCV、树莓派毕业设计题目是自己选定的,导师负责审核,由于学校学习嵌入式软件开发的同学较少,所以审核很容易本博客为分享备忘性质,旨在为需要的同学提供思路,不喜勿喷开发环境软件平台开发平台:Ubun原创 2021-05-26 00:01:57 · 2165 阅读 · 5 评论 -
gcc 编译提示/usr/include/stdio.h:27:23: fatal error: features.h: No such file or directory
使用Ubuntu编译c程序时,编译器提示/usr/include/stdio.h:27:23: fatal error: features.h: No such file or directory # include <features.h>产生原因: 自己在安装一些库的时候破坏了GCC的编译环境解决方法: 安装gcc-multilib工具具体方法:终端输入sudo apt-get install gcc-multilib(Ubuntu)安装完毕之后重新编译程序,即可编译成功gc原创 2021-01-07 14:14:03 · 5391 阅读 · 2 评论 -
Linux下线程里面可以再创建线程吗?是的,可以
Linux下线程里面可以再创建线程吗经过操作系统的学习,我们知道线程是系统调用的最小单位,不是资源分配的最小单位,那么,线程里面可以创建新的线程吗?因为我在项目中使用线程再创建线程出现了问题,因此产生这个疑惑,但是网上一搜全是模棱两可的说法,因此亲自尝试,发现是可以创建的原创 2020-06-06 10:12:58 · 5715 阅读 · 0 评论 -
Ubuntu能进入登录界面,但是登录进入桌面蓝屏/花屏
今天打开Ubuntu登录之后,进入桌面蓝屏,重启客户机之后蓝屏变成了花屏,搜索尝试后解决了这个问题,遂记录备忘可能原因:昨天关闭电脑的时候是强行关机转载 2020-06-06 09:55:45 · 1229 阅读 · 0 评论 -
Linux驱动学习----驱动注册
Linux驱动学习----驱动注册讯为4412学习笔记原创 2020-04-12 21:44:22 · 410 阅读 · 0 评论 -
SHELL编程入门
Shell编程入门讯为开发板学习笔记原创 2020-04-03 16:28:48 · 298 阅读 · 2 评论 -
使用Web页面远程控制LED
使用Web页面控制LED讯为开发板学习笔记原创 2020-04-02 12:52:58 · 2519 阅读 · 0 评论 -
开发板搭建简单的Web服务器
使用讯为4412开发板搭建简单的Web服务器讯为开发板学习笔记原创 2020-04-02 10:13:23 · 2676 阅读 · 4 评论 -
TFTP服务器的搭建
tftp服务器的搭建讯为4412开发板学习笔记原创 2020-03-14 20:44:13 · 746 阅读 · 0 评论 -
串口通信
串口通信串行接口简称串口,也称为串行通信接口或串行通讯接口(COM接口),是采用串行通信方式的拓展接口。串行接口是指数据一位一位的顺序传送。其特点是通信简单,只要一对数据线就可以实现双向通信,从而大大降低了成本,特别适合远距离通信,但传送速度较慢常见接口类型RS-232:也称标准接口,是最常用的一种串行通讯接口,传统的标准接口有22根线,现简化为9根,采用单向传输,其传送距离最大为15米,...原创 2020-03-13 22:20:45 · 790 阅读 · 0 评论 -
字符设备驱动之ADC数模转换
字符设备驱动之ADC数模转换讯为4412开发板学习笔记原创 2020-03-11 23:06:56 · 713 阅读 · 0 评论 -
字符设备驱动之蜂鸣器
字符设备驱动之蜂鸣器讯为4412开发板学习笔记原创 2020-03-11 20:21:23 · 587 阅读 · 0 评论 -
字符设备驱动之LED
字符设备驱动之LED讯为4412开发板学习笔记原创 2020-03-11 18:28:19 · 425 阅读 · 0 评论 -
使用超级终端连接开发板提示the port is already used by other applications
可能是usb转串口插在电脑的时间太长了或者其它原因,重新拔插之后就正常了原创 2020-03-06 10:09:18 · 2172 阅读 · 0 评论 -
Linux设置开机启动
设置Linux系统的开机自启动程序4412开发板学习笔记原创 2020-03-12 09:47:29 · 273 阅读 · 0 评论 -
在Linux-C中使用read函数返回值为0的问题
今天在使用read函数读取文件内容时,发现读取到的内容为空,就查看了read函数的返回值,发现返回值为0,原来是忘记在写入文件之后使用lseek函数调整文件位置.....原创 2020-03-11 11:13:35 · 5603 阅读 · 0 评论 -
自定义vim
vim是Linux中最常用的文本编辑器之一,因为其简单且大多数系统自带,所以被大多数人使用,但是没有经过配置的vim实在是难受由于我经常需要使用vim,并且总是需要在vim刚开始安装的时候对其进行配置,于是想记录备忘,详细配置方法如下:vim通过vimrc文件对其进行配置,vimrc文件的位置:系统 vimrc 文件: "$VIM/vimrc" 用 户 vimrc 文件: "$HO...原创 2020-03-10 21:01:16 · 764 阅读 · 0 评论 -
Ubuntu下摄像头无法使用问题
在Vmware中使用虚拟机,有时候会需要使用摄像头,虽然已经将摄像头与虚拟机建立了连接,但是使用Ubuntu下的“茄子”拍照时,是黑屏状态,无法正常使用...原创 2019-12-15 19:08:03 · 6595 阅读 · 3 评论 -
嵌入式开发Ubuntu开发环境的配置
超级用户登录在嵌入式开发中,经常需要使用root权限,因此进行超级用户登录设置以普通用户进入终端,在终端输入:sudo passwd root(需要输入root密码验证,且密码不回显)然后通过sudo vi /etc/lightdm/lightdm.conf修改/etc/lightdm.conf文件,在文件的末尾添加以下两行代码:greeter-show-manual-log...原创 2019-10-26 16:47:55 · 943 阅读 · 1 评论 -
linux如何解压tar.xz文件
这种文件其实是两层压缩,外层是.xz压缩方式,内层是.tar压缩方式;解压过程也分为两层:xz -d filename.xz,之后就会出现filename.tar文件然后tar xvf filename.tar即可完成解压...原创 2019-03-10 11:33:36 · 2569 阅读 · 0 评论 -
Ubuntu换国内源后apt-get update失败
在学习Linux操作系统时,我们不免要安装一些Linux操作系统,Ubuntu作为一个重要的操作系统,被许多人青睐大多数人在安装Ubuntu之后,都会将Ubuntu的软件源更换为国内源(阿里源、网易源)但是,更新之后有的人就会遇到各种问题,例如:大量的"Failed to fetech"W: Failed to fetch http://archive.ubuntu.com/ubun...原创 2019-05-25 09:16:45 · 3960 阅读 · 0 评论 -
vim自动缩进失效
在编辑~/.vimrc配置文件之后,vim无法自动缩进原因在于你的.vimrc配置文件中包含了set paste将此语句删除或者更改为set nopaste即可解决问题原创 2019-05-22 17:50:46 · 1360 阅读 · 1 评论 -
ubuntu连接xshell 显示ssh拒绝密码服务
在使用Xshell使用ssh服务连接Ubuntu时,提示ssh拒绝密码服务可能有以下三种原因导致该问题:一、Ubuntu未安装ssh服务或ssh服务未成功启动在终端输入:apt-get install openssh-server openssh-client以安装ssh服务安装完毕之后使用:ps -e |grep sshd,查看ssh服务是否成功开启如果服务未成功开启...原创 2019-06-16 15:12:58 · 4586 阅读 · 1 评论 -
linux高级编程实验
文件管理(一)编写代码,完成以下功能:1.创建文件file1,写入字符串“abcdefghijklmn”;2.创建文件file2,写入字符串“ABCDEFGHIJKLMN”;3.读取file1中的内容,写入file2,使file2中的字符串内容为“abcdefghijklmn ABCDEFGHIJKLMN”利用Linux进行C程序开发,首先需要了解程序要求,理清思路。按照要求...原创 2019-05-21 19:51:18 · 9817 阅读 · 3 评论 -
linux的库文件
文章参考链接:https://www.cnblogs.com/tankblog/p/6780146.html一、什么是库文件? 本质上来说,库文件就是可执行代码的二进制形式,可以被操作系统载入内存中执行 Linux操作系统支持的函数库分为静态库和动态库,动态库又称共享库 Linux系统有几个重要的目录存放相应的函数库,如/lib、/usr/lib二、静态库和动...原创 2019-05-09 16:41:38 · 3529 阅读 · 2 评论 -
linux下如何批量删除文件
find . -name "*.c" |xargs rm -rfv删除该文件夹下所有.c文件同理,将-name中的内容改为"xx*"即可删除所有以xx开头的文件原创 2019-03-05 18:40:21 · 7153 阅读 · 0 评论