
嵌入式Linux
文章平均质量分 87
嵌入式Linux,由浅入深的应用开发经验分享。
奔跑的蜗牛!
故不积跬步,无以至千里;不积小流,无以成江海。
上海理工大学在读研究生,嵌入式技术半桶水的业余爱好者,有问题欢迎私信或邮箱沟通:fanglihui1998@163.com
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Linux系统编程 | IPC对象---消息队列
IPC对象是活动在内核级别的一种进程间通信的工具。各种不同的IPC其实是在不同时期逐步引入的,在UNIX伯克利版本system-V(念作系统五,V是罗马数字,是Unix伯克利分支的版本号)中引入的三种通信方式(消息队列、共享内存和信号量组)被称为IPC对象。消息队列是system-V三种IPC对象之一,其最主要的特征是允许发送的数据携带类型,具有相同类型的数据在消息队列内部排队,读取的时候也要指定类型,然后依次读出数据。这使得消息队列用起来就像一个多管道集合。原创 2025-05-22 21:15:24 · 1023 阅读 · 0 评论 -
Linux系统编程 | Signal信号集
在 Linux 中,信号集(Signal Set)是一种用于管理和操作信号的数据结构。信号集是一个包含多个信号的集合,它可以用来表示一组需要被处理、阻塞或忽略的信号。每个信号在信号集中都有对应的标志位,通过对这些标志位的操作,可以方便地对一组信号进行统一的管理。原创 2025-05-13 21:26:45 · 844 阅读 · 0 评论 -
Linux系统编程 | 进程间管道通信
在Linux系统中,进程间通信(Inter-Process Communication, IPC)是不同进程之间进行数据交换和同步的过程。管道是一种半双工的通信机制,通常用于具有亲缘关系的进程之间(如父子进程)。它只能在单向上传输数据。命名管道(也称为FIFO)则允许无亲缘关系的进程之间通过文件系统中的一个特殊文件进行通信。原创 2025-05-04 14:32:48 · 956 阅读 · 0 评论 -
Linux系统编程 | 进程的加载与替换:exec簇
在Linux中,用于加载并执行指定程序的API有exec簇和system函数。exec簇的进程替换不会创建一个新的进程,只是加载新的程序代码和数据,替换当前进程执行的程序代码。system函数的进程替换是创建一个新的子进程,然后在新的子进程里面去执行指定的命令。原创 2025-04-28 20:36:43 · 616 阅读 · 0 评论 -
Linux系统编程 | 精灵进程与守护进程
精灵进程又称守护进程、后台进程,在英文中称为 daemon 进程。精灵进程是运行在一个相对干净的环境、不受终端影响、常驻内存的进程,和神话中的精灵一样,拥有不死不灭的特性,长期稳定提供某种功能或服务。本文将对精灵进程、守护进程进行基础知识的梳理及其创建的过程讲解。原创 2025-04-23 21:57:39 · 904 阅读 · 0 评论 -
Linux系统编程 | 孤儿进程与僵尸进程
了解 孤儿进程(Orphan Process) 和 僵尸进程(Zombie Process) 是深入理解 Linux/Unix 进程管理的关键,尤其在开发高可靠性服务、调试系统问题或优化资源管理时至关重要。理解孤儿进程和僵尸进程,能帮助编写出更加可靠的多进程程序、有效管理系统资源、快速定位异常,并避免安全漏洞。这是与Linux系统开发和运维相关岗位的基本功!原创 2025-04-20 18:12:58 · 977 阅读 · 0 评论 -
网络编程 | TCP套接字通信及编程实现经验教程
TCP/IP协议簇中包含了如TCP、UDP、IP、ICMP、ARP、HTTP等通信协议。TCP协议是TCP/IP协议簇中最为常见且重要的通信方式之一,它为互联网上的数据传输提供了可靠性和连接管理。TCP(Transmission Control Protocol,传输控制协议)是面向连接的、可靠的、基于字节流的传输层通信协议。它主要用于在不可靠的互联网上提供可靠的数据传输。TCP被广泛应用于各种网络应用中,如Web浏览(HTTP/HTTPS)、电子邮件(SMTP、POP3、IMAP)、原创 2024-12-08 16:01:01 · 2002 阅读 · 0 评论 -
Linux修改系统及终端命令行中的用户名
Linux中,修改系统及终端命令行中的用户名数据信息。原创 2024-11-30 20:20:40 · 1988 阅读 · 0 评论 -
嵌入式Linux开发---RS485通信驱动硬件编程
RS485的使用与UART串口的使用基本相同,差别在于使用485时需要手动切换485芯片的收发引脚模式。实际上,使用RS485通信的本质还是在使用UART串口通信,只是在程序编写时,需要对read、write多一步的处理。即,进行写485操作时,通过控制引脚切换485芯片为发送模式,读操作时,通过控制引脚切换485芯片为接收模式。485处理芯片相对于串口,就是需要将TTL逻辑电平信号转换为RS485差分电平信号。原创 2024-01-12 15:52:38 · 8835 阅读 · 0 评论 -
嵌入式Linux开发---Socket CAN通信驱动硬件编程
Socket CAN是在Linux下CAN协议(Controller Area Network)实现的一种实现方法。使用Socket CAN的主要目的就是为用户空间的应用程序提供基于Linux网络层的套接字接口。原创 2023-12-30 20:43:35 · 5158 阅读 · 2 评论 -
嵌入式Linux开发板Ping通VMware虚拟机及Windows主机
在嵌入式开发过程中,经常需要在主机PC和Linux开发板传输文件,采用NFS网络文件系统的方式,可以非常方便的进行跨平台交叉开发。注:能够进行NFS、SCP文件传输的前提是能相互ping通,IP处于同一网段内。Windows的防火墙必须全部关闭!!!原创 2023-12-25 13:49:04 · 1442 阅读 · 1 评论 -
VMware虚拟机磁盘内存不足,解决扩展磁盘内存空间问题
VMware虚拟机磁盘内存不足,解决扩展磁盘内存空间问题原创 2023-11-05 13:46:46 · 4179 阅读 · 0 评论 -
嵌入式Linux开发板文件传输:串口、NFS、SCP、SSH
①串口传输文件 ②NFS网络文件系统 ③SCP安全的远程文件拷贝命令原创 2023-11-08 10:51:06 · 2678 阅读 · 1 评论 -
嵌入式Linux开发---UART串口通信驱动硬件编程
串口参数的配置,一般包括波特率起始位比特数数据位比特数停止位比特数和流控模式。在此,可以将其配置为波特率 115200、起始位 1b、数据位 8b、停止位 1b 和无流控模式。原创 2023-11-13 10:24:54 · 1950 阅读 · 0 评论 -
ARM64、RISCV64、ARM32等交叉编译工具下载配置
这是因为你的开发板上的 glibc(GNU C Library)版本较低,不满足程序所需的最低版本要求。2、静态链接 glibc:另一种方法是静态链接 glibc 库,以便将其包含在你的可执行文件中。然而,这可能需要更改整个操作系统的 glibc 版本,可能会引入其他潜在的兼容性问题。1、升级 glibc:可以尝试在开发板上升级 glibc 版本,以满足程序对 GLIBC_2.34 的要求。该问题源于程序本身直接依赖的库没有问题,但是在迁移到其他机器时,间接依赖的库版本不兼容。将交叉编译工具链解压到。原创 2023-11-05 14:04:01 · 1050 阅读 · 0 评论