移动设备因其尺寸规模小、计算存储能力不足、输入输出组件受限等原因,其运行环境与开发调试环境往往在不同的计算机系统(CPU)架构上完成。这一特点使得移动设备的开发、调试、管理模式与传统嵌入式系统十分相似,整体结构上,也是类似 “上位机 + 下位机” 模式,移动设备本身是 “下位机”,常运行于 ARM 架构上;基于 X86 的 PC 是上位机,用于下位机上运行软件的开发、调试和管理。在 “上位机” 与 “下位机” 之间,设计某种机制进行交互。阅读全文

linux 操作系统的一个突出优势就是其提供了稳定而强大的网络功能。linux 通过内核对网络核心功能的运行进行管理。与此同时,在用户空间,linux 也提供了相关工具包对内核层的网络参数进行修改和配置。根据对内核的不同访问方式,linux 系统中先后采用两代网络工具包,net-tools 和 iproute2。阅读全文

作为操作系统内核的“保护壳”,shell 是与内核交互的关键通道。shell 工具的优劣也直接决定了系统管理效率的高低。随着操作系统的不断发展,产生了多种 shell 工具。这些 shell 缘起于不同的系统管理需求背景,在多年发展过程中都在不断的取长补短、融合完善,功能愈发强大。阅读全文

处理一定规模的数据,尤其是文本数据,是常见的任务需求。比如,检查日志文件、读取配置文件、处理指令的输出等等。这些任务中,都可以将待处理的文本数据整体看做一个数据流,需要对数据流进行各种操作处理。为方便操作,比较常见的方法是,以行为单位,对整个文本数据流进行切割,然后,再针对每一行中的文本,逐行进行各种操作。这也成为了许多文本流处理工具的基础。阅读全文