嵌入式Linux“望闻问切“
文章平均质量分 73
分享嵌入式Linux学习和开发过程中的bug和解决方法。
不脱发的程序猿
嵌入式工程师,CSDN博客专家、微软IoT领域MVP、华为云云享专家、阿里云专家博主、知乎认证科学技术领域答主
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Linux C库函数的可重入与不可重入版本说明
在多线程编程中,线程安全(Thread-Safety)是一个非常重要的概念,而可重入性(Reentrancy)是确保线程安全的一个关键因素。原创 2025-09-15 22:50:54 · 790 阅读 · 0 评论 -
SoC如何实现线程安全?
在 SoC上实现线程安全是多线程编程中非常关键的一个问题,特别是当涉及资源共享时。线程安全的设计目的是避免多个线程同时访问共享资源时出现竞争条件、数据竞争等问题。原创 2025-08-27 18:53:29 · 1021 阅读 · 0 评论 -
如何查看SoC线程的栈起始地址及大小
在 Linux 中,每个线程都有自己独立的栈空间,用于存储线程的局部变量、函数调用信息等。我们可以通过 pthread_attr_t 数据结构来获取或设置线程的栈起始地址和栈大小。原创 2025-08-03 22:49:54 · 744 阅读 · 0 评论 -
SoC程序如何使用单例模式运行
在计算机程序设计中,通常情况下,一个程序可以被多次执行,意味着在未结束的情况下可以启动多个实例。例如,许多聊天软件如 QQ 允许用户同时登录多个账户,许多游戏也支持在同一台电脑上同时登录多个账号,只要系统性能允许。原创 2025-07-10 22:28:25 · 657 阅读 · 0 评论 -
Linux守护进程
守护进程(Daemon)是一种在后台运行的特殊进程,通常用于执行系统服务、管理任务或处理请求。它们具有几个显著的特征,使其在系统中扮演重要角色。原创 2025-07-08 21:26:40 · 1180 阅读 · 0 评论 -
Linux进程关系
在 Linux 系统中,每个进程都拥有一个唯一的标识符,即进程号(PID,Process ID),并有其独特的生命周期。每个进程都有一个父进程,而父进程也可能有更上一级的父进程,最终可以追溯到系统的根进程 init,形成一个进程家族树。当子进程结束时,父进程能够接收子进程的终止通知,并获取其退出状态。原创 2025-06-28 15:56:40 · 873 阅读 · 0 评论 -
Linux进程状态及转换关系
在 Linux 系统中,进程状态及其转换关系是进程调度和管理的核心。我们可以将这些状态视作进程在其生命周期中所处的不同阶段。原创 2025-04-23 20:57:08 · 717 阅读 · 0 评论 -
Linux孤儿进程和僵尸进程
在 Linux 系统中,父子进程关系的生命周期不同,导致会产生两类特殊进程:孤儿进程和僵尸进程。这两类进程在系统资源管理中起着重要作用。原创 2025-03-31 22:36:03 · 568 阅读 · 0 评论 -
Linux注册进程终止处理函数
atexit() 是一个标准库函数,用于注册在进程正常终止时要调用的函数。通过 atexit(),你可以确保在程序结束时自动执行一些清理工作,比如释放资源、保存状态等。原创 2025-03-03 22:25:05 · 509 阅读 · 0 评论 -
Linux系统的第一个进程是什么?
Linux进程的生命周期从创建开始,直至终止,贯穿了一个进程的整个存在过程。我们可以通过系统调用fork()或vfork()来创建一个新的子进程,这标志着一个新进程的诞生。原创 2025-01-21 22:36:27 · 443 阅读 · 0 评论 -
Linux父、子进程间的竞争条件
在 Linux 中,fork() 系统调用创建了一个新的子进程,这个子进程是父进程的精确副本。然而,在 fork() 之后,父进程和子进程成为两个独立的进程,并且都可以被系统调度运行。这就引入了一个关键问题:竞争条件(Race Condition)。原创 2025-01-13 20:55:48 · 513 阅读 · 0 评论 -
Linux父、子进程间的文件共享
在 Linux 系统中,父进程和子进程通过 fork() 创建之后,子进程会继承父进程的所有文件描述符。这些文件描述符指向相同的文件表,从而实现了文件共享。原创 2025-01-09 22:51:30 · 722 阅读 · 0 评论 -
MCU和SoC内存使用物理地址还是虚拟地址?
在嵌入式系统中,微控制器 (MCU) 和系统级芯片 (SoC) 的内存管理方式可能有所不同,具体取决于它们的设计和应用场景。原创 2025-01-01 22:10:24 · 920 阅读 · 0 评论 -
Linux物理地址和虚拟地址
在 Linux 系统中,物理地址和虚拟地址是操作系统内存管理的重要概念。理解它们对于操作系统、内存管理、以及应用程序开发来说非常关键。原创 2024-12-30 16:23:30 · 1751 阅读 · 0 评论 -
Linux应用程序中终止进程的几种方法
在 Linux 应用程序中,终止进程的方式有多种,通常取决于进程是否需要进行正常退出或者处理异常情况。常用的方法包括 exit()、_exit()、_Exit() 和 abort() 函数。原创 2024-12-18 21:11:27 · 1421 阅读 · 0 评论 -
Linux用户ID和组ID
在 Linux 系统中,用户和组 ID 用于识别进程和文件的访问权限。每个进程都有与之关联的实际用户 ID、实际组 ID、有效用户 ID、有效组 ID 以及附属组 ID。原创 2024-08-13 19:07:41 · 1148 阅读 · 2 评论 -
Linux文件描述符与FILE指针互相转换
在Linux中,文件描述符(file descriptor, fd)和FILE指针(也称为文件流指针,FILE pointer)是两种常见的文件操作接口。文件描述符是一个整数,通过系统调用直接操作文件,而FILE指针是通过C标准库函数操作文件。原创 2024-07-02 18:27:27 · 712 阅读 · 0 评论 -
如何复制文件描述符
在Linux系统编程中,复制文件描述符是一个常见的操作,通常使用dup或dup2函数来实现。原创 2024-06-07 22:59:21 · 542 阅读 · 0 评论 -
Linux文件I/O与标准I/O缓冲机制及性能分析
在Linux系统中,文件I/O和标准I/O是两种常见的数据输入输出方式。它们在数据缓冲的原理和机制上有所不同,这对应用程序的性能有重要影响。原创 2024-06-04 22:30:36 · 1122 阅读 · 0 评论 -
Linux进程资源限制及优化方法
在Linux中,每个进程分配的资源是有限制的,以防止某个进程耗尽系统资源,从而影响其他进程的正常运行。开发人员需要时刻关注这些资源的使用情况,避免资源异常导致系统问题。原创 2024-05-21 23:19:30 · 2115 阅读 · 0 评论 -
VMware虚拟机中Linux系统奔溃,怎么办?
一大早启动虚拟机准备开始工作,却遭遇到Linux系统崩溃。原创 2024-05-06 23:39:34 · 711 阅读 · 1 评论 -
SoC如何开机自动运行脚本程序?
在LinuxSoC开发中,实现SoC启动时执行特定脚本的方法主要取决于你使用的启动加载程序(Bootloader)以及Linux内核的配置。原创 2024-04-28 20:26:24 · 510 阅读 · 0 评论 -
Linux实现标准输入和标准输出(STDIN_FILENO和STDOUT_FILENO)
在C语言中,scanf和printf函数用于标准输入和标准输出的输入输出操作。而在Linux中,STDIN_FILENO和STDOUT_FILENO是用于表示标准输入和标准输出的文件描述符。原创 2024-04-22 22:10:38 · 1531 阅读 · 0 评论 -
Linux安装和使用Android Debug Bridge(ADB)
ADB(AndroidDebugBridge)是一个用于在计算机和Android设备之间通信的命令行工具。原创 2024-04-17 19:43:54 · 6407 阅读 · 1 评论 -
.a和.so库文件是什么?
我们在编译开源代码后,通常会生成.a和.so这两个库文件,这两个文件有什么区别?又如何使用?原创 2024-04-11 21:59:29 · 1556 阅读 · 0 评论 -
一个Linux进程多次 open 打开并读写同一个文件
当一个进程内多次使用 open 打开同一个文件时,每次都会得到一个新的文件描述符(file descriptor)。这些文件描述符是独立的,每个描述符都维护着文件的状态信息,比如文件偏移量等。原创 2024-02-26 22:57:08 · 1123 阅读 · 1 评论 -
exit()、_exit()和_Exit()终止程序运行
在Linux系统下,你可以使用 exit()、_exit() 和 _Exit() 来终止程序运行,特别是在出现错误或执行失败的情况下。这样可以确保程序在发生严重错误时能够安全地退出。原创 2024-02-22 22:53:35 · 851 阅读 · 0 评论 -
make、make all和make clean的使用方法
make、make all 和 make clean 是在使用 make 构建系统时常见的命令。原创 2024-01-04 21:04:12 · 4819 阅读 · 0 评论 -
如何查看Linux CPU占有率
在Linux系统中,有多种方法可以查看CPU占有率,这里介绍几种常用的命令行工具。原创 2024-01-22 20:59:22 · 3599 阅读 · 0 评论
分享