/android-chrome-192x192.png

Bing's Blog

自由 分享 合作

  

DMA拼接

涉及到DMA应用的场景中,往往一方(比如FPGA)以固定Packet大小向DMA写入数据,另一方(比如CPU)也以固定Packet大小读出(或直接在DMA上操作)数据。一般情况下,为了提高DMA利用率,CPU处理的数据结构不一定正好是Packet大小的因子(packed模式),在这种场景下会涉及到数据的拼接问题。


Base64压缩

首先, 明确base64并不是一个压缩算法. 但是在某些场景我们可以使用其编码特性达到压缩的效果.


二维数据可视化工具-painter

日常开发过程中,时常会遇到一个类似的需求:将某些二维数据可视化。比如,时间与系统内存、时间与CPU、通道与距离等等。

往常我的做法是在代码中嵌入相关的打印,输出到文件中,然后通过其他语言,比如Python解析并可视化,或者直接使用Python解析并可视化。

长期以往,发现这种做法总是写了很多重复的代码。能不能有一个工具,直接输入数据,然后可视化呢?所以,我写了painter


C++闭包二

“多年以前"写过一篇关于C++闭包的文章,现在看来基本是关于lambda的介绍。随着经验的增加,对闭包的理解更加深刻。

轻量级参数解析库-tiny_cmdline

当编写一些命令行版本软件的时候,往往需要涉及到命令行参数的处理。网上能搜索到一些参数处理库,但是对很多需求来说,它们太过庞大,一般也只适合作为黑盒使用。

因此,我编写了一个轻量级的参数解析库,tiny_cmdline,目的就是轻量,让用户容易阅读和定制。


栈buffer对比堆buffer

我印象中一直有这样一个观点:栈内存比堆内存更快。但是自从尝试《十亿行挑战》后,便对其怀疑。 本文将通过实验调查堆内存和栈内存用作buffer时

clockdiff时间差测量原理

clockdiff是iputils库下的一个时间测量工具,用于测量两台设备之间的时间差。基本用法是:

1
clockdiff <destination>

本文主要学习clockdiff测量时间差的原理。


十亿行挑战-C++

十亿行挑战本是一个针对现代Java的性能优化挑战,该挑战没有什么内容是针对Java独占的,因此尝试使用C++实现,限制为C++17版本。