Linux
文章平均质量分 75
ckjhljcy
这个作者很懒,什么都没留下…
展开
-
Linux线程同步之条件变量
条件变量是pthread库中提供的一种线程同步的手段,功能类似于信号量。除了条件变量,pthread库中还提供了互斥锁(及其变种,例如读写锁)以及自旋锁用于线程同步,这两种手段主要用于critical区域的保护,避免多线程同时访问同一资源。如APUE中的描述,当条件变量与互斥锁一起使用时,允许线程以无竞争的方式等待特定的条件发生。原创 2016-04-17 20:02:45 · 299 阅读 · 0 评论 -
SPIN LOCK死锁问题
在项目中遇到一次SPIN LOCK死锁的情况,本文介绍了定位的过程。原创 2016-12-06 20:49:27 · 2106 阅读 · 0 评论 -
欢迎使用CSDN-markdown编辑器
K项目中断异常定位总结背景K项目在开发阶段遇到的问题。由于K项目处理器与F项目处理器相同,均为freescale T4240,因此BSP代码移植主要参考F项目代码。在注册并使能5ms以及80ms后,串口大量打印80ms内5ms个数错误的打印。原创 2016-12-06 20:22:46 · 258 阅读 · 0 评论 -
设备周期复位定位总结
背景与现象升级0708版本镜像后,出现了板卡周期性复位的现象,复位原因是MAC消息队列满,导致物理层复位。出现问题时基本没有业务,只有一个终端。第一次出现该现象后,拆了机壳,尝试连接串口,但是连接串口后,现象消失。由于之前板卡在不断复位,因此曾经怀疑和硬件(静电)有关,之前没有出现过稳定的周期复位。在晚上,升级版本后,再一次出现了该现象,因此应该与静电无关。定位过程现象比较奇怪,在原创 2016-12-06 20:03:41 · 491 阅读 · 0 评论 -
The True Cost of Calls
最近在调试时,发现函数在首次调用时,耗时比较大,在网上查到资料如下。转载 2016-07-21 21:13:23 · 322 阅读 · 0 评论 -
Linux内存管理机制学习笔记
前言该学习笔记主要针对x86系列CPU。目前我们使用的powerpc无段式映射,直接采用分页映射。不同体系的CPU架构下内存映射方式可能略有差异。该学习笔记主要是阅读《Linux内核情景分析》后,根据自己的理解整理而成。x86地址映射过程逻辑地址到物理地址映射的意义每个人在学习地址映射之前都应有一个疑问,就是为什么要做逻辑地址到物理地址的转换?其目的在于避免地址访问冲突。以C程序为例,其在编译时,并原创 2016-04-17 20:59:54 · 419 阅读 · 0 评论 -
嵌入式复位流程与优化(2)
背景在前一篇《嵌入式复位流程研究与优化》中,主要针对之前复位流程中无脑关闭FD进行了优化。这几日,出现了一次复位流程未能走完的问题,一直阻塞在umount中不能出来。本文提供了一种方法,避免由于umount中阻塞,而不能复位。原创 2016-04-17 20:49:02 · 513 阅读 · 0 评论 -
嵌入式复位流程研究与优化
背景嵌入式系统中,一般均可通过写寄存器的方式进行整个系统的复位。该种复位方式类似于直接下电。若在复位时,存在对文件系统的读写,则可能造成文件系统的损坏。因此,在复位前,需要针对文件系统进行保护。原创 2016-04-17 20:41:06 · 609 阅读 · 0 评论 -
CORE DUMP学习笔记
背景core dump是指核心转储,是指操作系统在进程收到某些信号而终止运行时,将此时进程地址空间的内容以及有关进程状态的其他信息写出的一个磁盘文件,这种信息往往用于调试。在APUE这本书中,多次提到core dump,该手段应该是一般UNIX环境下,最常用的问题定位手段。原创 2016-04-17 20:25:13 · 651 阅读 · 0 评论 -
system函数调用失败
项目上一次由于内存不足导致的system调用失败原创 2016-12-07 21:08:34 · 5776 阅读 · 1 评论