本文将简单介绍 SIPp 的使用方法,然后重点介绍如何使用 SIPp 对 Asterisk 服务进行 SIP 注册与通话测试。
使用 QEMU 启动 ARM aarch64 架构 Ubuntu 虚拟机
本文将介绍如何使用 QEMU 启动 aarch64 架构的 Ubuntu 操作系统以及宿主机上相关配置的操作方法。
用 LXD 容器化 VoIP 服务
【OSTEP 练习题】测量操作系统切换上下文的耗时
复刻 Linux 操作系统到另一台设备
rsync 是一款快速且灵活的文件拷贝工具,既能实现本地拷贝也能完成远程同步。本文将使用 rsync
作为核心工具来介绍如何复刻 Linux 操作系统。
搭建 IPPBX 基础开发环境
软件开发中应对不同的需求有不同的解决方案,进而产生不同的软件项目。针对不同的软件项目需搭建特定的开发环境以适应各个项目的开发需要。本文以在 Linux 环境中搭建 IPPBX 开发环境为例来介绍如何搭建一个符合需求的开发环境。
简明架构
最近为一个项目开发软件,在实做过程中发现软件需求比较复杂:涉及多种对内对外应用接口,需要操作的数据和需要维护的状态种类多,各种操作较繁杂还牵扯到同步问题。在一边开发功能一边重构的过程中发现一套能很好适应当前开发需求的软件组织方式,本想写一篇总结文章,但在搜索整理资料的时候发现有前辈在 2012 年的一篇博客中已经提出了这样的软件设计模式(或称架构),于是在这里翻译这篇文章供参考。
原文地址: The Clean Architecture

用 Go 语言控制 GPIO
GPIO 也就是通用输入/输出外设,在嵌入式开发中会经常遇到的一种外部设备。通过使用软件控制 GPIO 可实现对外输出电平信号;通过读取 GPIO 管脚上的信号可在软件中获取外部信息。操作 GPIO 外设的方法很多,这里将介绍一种在 Linux 环境中通过 mmap
系统调用来完成控制的方法。
iMX6Q 2GB 内存支持
iMX6Q SABRESD 开发板的板载 DDR 内存大小为 1GB 其配套的 codebase 也只针对 1GB 内存大小适配。我们的运行平台上配备了 2GB 内存,直接使用原有 codebase 将只能使用其中一半内存空间。以下将介绍如何让系统识别并使用 2GB 内存。
Linux 系统中 Watchdog 的应用
本文将介绍如何在 Linux 系统的用户层使用 Watchdog。