自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 嵌入式linux驱动开发:什么是Linux驱动?深度解析与实战入门

本文介绍了嵌入式Linux驱动开发的基础知识,包括驱动的本质、分类、架构和开发流程。Linux驱动作为硬件与操作系统的桥梁,负责管理硬件并为应用程序提供统一接口。文章详细讲解了字符设备、块设备和网络设备三大驱动类型,并通过LED驱动开发实例演示了从硬件分析到用户空间测试的全过程。此外,还总结了驱动开发中的常见误区(如竞态条件、内存泄漏)和调试技巧(如printk、dmesg等工具)。最后提供了完整的代码示例和编译加载步骤,为初学者提供了清晰的驱动开发入门指南。

2025-07-30 15:27:29 1058

原创 嵌入式linux应用层开发:进程与线程

默认情况下,读写锁都是读优先,由于多个读线程不断抢先获取读锁,导致写线程长时间不能获得写锁,一直在等待队列中,迟迟得不到执行。:是一种预先创建好一定数量的工作线程,等待有任务提交,任务由空闲线程执行,执行完毕后线程不销毁,继续等待下一个任务。:当线程尝试获取锁时,如果锁已经被占用,它不会阻塞自己,而是不断地 自旋 检查锁是否已经释放。同一时刻,只有一个线程可以获取写锁,获锁期间,可以修改共享资源,其他线程无法获取读锁或写锁。:多个线程可以同时获取读锁,获取锁之后,只能进行读操作,不能进行写操作(读锁);

2025-04-16 08:30:00 910

原创 嵌入式Linux应用层开发:环境搭建、文件IO

文件 I/O(Input/Output,即输入 / 输出)是计算机编程中用于处理文件的重要操作,主要涉及到将数据从文件读取到内存,以及将内存中的数据写入文件。:偏底层控制、需要精确设置文件的权限和打开标志、操作设备文件(如串口、磁盘设备等)需要特殊的权限和控制、对性能有极高要求、想自行管理缓冲区等等。:系统调用是操作系统提供给用户程序的接口,用于访问底层的硬件资源和操作系统服务;:库函数是高级语言或开发库提供的函数,他们通常是基于系统调用实现的,目的是为了程序员方便开发,提供更高级、更易用的接口。

2025-04-07 09:18:06 1645

原创 嵌入式Linux应用层开发:系统学习

嵌入式应用层知识体系

2025-04-07 09:16:18 1230

原创 立创·泰山派:Linux内核5.10移植(设备树移植+问题解决)

通过适配设备树,泰山派成功运行Linux 5.10内核,关键功能均通过验证。后续可针对具体应用场景进行深度优化,如配置WIFI,网卡,NPU,GPU等。

2025-03-28 10:05:20 2103 3

原创 嵌入式Linux网络编程:IO多路复用实现

通过本文实现的epoll服务端,可在嵌入式Linux设备上轻松应对数千并发连接。后续可扩展实现协议解析、负载均衡等高级功能,构建高性能物联网网关!创建epoll实例的内核数据结构,返回用于操作该实例的文件描述符。通过增删改操作管理epoll监控的文件描述符集合。epoll_wait等待事件。accept4()[无阻塞]epoll_ctl添加事件。

2025-03-26 17:27:58 820

原创 嵌入式Linux网络编程:守护进程开发(自动重启+多客户端支持)

通过本方案可实现高可靠的网络服务守护进程,满足嵌入式系统对服务稳定性的严苛要求。后续可扩展实现双机热备、配置热加载等高级功能。setsid创建新会话。

2025-03-26 16:03:30 1510

原创 嵌入式Linux网络编程:UNIX Domain Socket进程间通信(IPC)

通过本文,您可掌握UNIX Domain Socket在嵌入式Linux中的高效IPC实现方法。相比网络套接字,UDS在本地通信场景中性能更优、资源占用更少,非常适用于嵌入式设备的多模块协作!

2025-03-25 09:38:38 1125

原创 嵌入式Linux网络编程:UDP协议原理与实战代码解析

通过本文,读者可以掌握嵌入式Linux下UDP通信的核心实现方法。在实际物联网项目中,UDP常用于传感器数据采集、实时监控等场景。后续可扩展实现多播、广播等功能!

2025-03-25 09:38:09 1096

原创 立创·泰山派:Buildroot开启libcurl+OpenSSL教程

通过本文配置,泰山派可安全对接主流云平台(阿里云/AWS/华为云)。后续可扩展实现MQTT over TLS、双向认证等高级功能。

2025-03-24 10:39:33 1685

原创 嵌入式Linux网络编程实战:基于libcurl实现Gitee文件上传

📁本地文件读取:支持任意二进制/文本文件🔒Base64编码转换:符合RFC 4648标准📡HTTP传输:通过libcurl实现,也可以使用HTTPS加密通信🚀Gitee API对接:自动创建/更新仓库文件。

2025-03-24 09:40:40 1268

原创 嵌入式Linux网络编程实战:使用libcurl实现高效网络通信

通过掌握这些核心函数的使用方法,可以快速构建高效可靠的嵌入式网络应用。在嵌入式Linux开发中,

2025-03-18 17:47:31 1340

原创 嵌入式Linux网络编程实战:基于DNS解析的HTTP客户端实现

本文从嵌入式场景出发,实现了支持DNS解析的轻量级HTTP客户端,读者可根据实际需求扩展SSL加密、数据压缩等功能。建议在关键业务场景中添加心跳机制和双缓冲队列提升可靠性。

2025-03-17 10:15:20 1092

原创 零基础入门Linux网络编程:HTTP请求

本文提供的代码已在树莓派4B(Linux内核5.10)平台验证通过,可直接用于物联网设备数据上报场景。可根据实际需求添加JSON解析、断线重连等扩展功能。欢迎大佬们指出问题和讨论。在物联网嵌入式开发中,设备常需通过HTTP协议与云端服务器通信。,演示如何在资源受限的嵌入式Linux设备上发送HTTP请求。send(POST请求)

2025-03-14 16:55:00 967

原创 零基础入门Linux网络编程:TCP详细图解

电子邮件传输:SMTP(Simple Mail Transfer Protocol)和POP3(Post Office Protocol)等协议使用TCP来传输电子邮件。实时通信:VoIP(Voice over IP)和视频通话应用如Skype、Zoom等使用TCP来传输实时音视频数据。视频流服务:许多视频流服务,如Netflix、YouTube等,使用TCP来传输视频数据,确保流畅的观看体验。远程登录:SSH(Secure Shell)和Telnet等远程登录协议使用TCP来建立安全的远程连接。

2025-03-12 13:53:01 391

原创 零基础入门Linux网络编程:C 语言网络编程中的数据收发函数解析与示例

在 C 语言网络编程中,数据的收发是至关重要的部分。Linux 提供了一系列系统调用来完成这些操作,包括readwriterecvfromrecvmsgrecvmmsgsendsendtosendmsgsendfilesendmmsg和cmsg等函数。本文将详细解析这些函数的作用,并提供相应的示例代码。

2025-03-12 11:06:56 613

原创 零基础入门Linux网络编程:C 语言网络高级编程函数解析与示例

函数名作用fcntl控制文件描述符的属性,如非阻塞模式获取已连接套接字的对端地址获取本地套接字地址getsockopt获取套接字选项setsockopt设置套接字选项,如超时、缓冲区大小等ioctl设备控制,如设置非阻塞模式readwrite直接对套接字进行读写socketpair创建一对相互连接的套接字获取协议信息recvmmsgsendmmsg批量接收/发送多个消息cmsg发送和接收辅助数据sockatmark检测带外数据sendfile在文件和套接字之间高效传输数据select。

2025-03-12 10:54:03 337

原创 零基础入门嵌入式Linux网络编程:C常用函数解析与示例代码

本文将逐一解析它们的作用,并提供相应的示例代码和总结表格,帮助你快速掌握这些关键函数。在网络编程中,了解并掌握。

2025-03-12 10:35:44 710

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除