0%

写在前面

最初,SONiC的所有测试用例都是用ansible playbook写的。2019年开始使用pytest, 2020年9月份之后,只有用pytest写的测试用例才被采纳。
但是ansible依然很重要,pytest-ansible插件连接pytest与ansible。pytest通过ansible进行多设备协同工作。

阅读全文 »

写在前面

SONiC在docker中完成编译,docker image基于debian(jessie, stretch, buster)完成构建。201807及其之前的版本使用的是jessie, 202006及其之后的版本使用的是buster, 我们现阶段主要使用stretch。SONiC的编译大致分成三个阶段。

阅读全文 »

写在前面

本文旨在综合性的描述Linux下程序调试的方法和思路,不会过于细节的描述某种工具的使用,如gdb,这些方法通过man以及google都能找到答案。包含知识点:strip, addr2line, strace, gdb, readelf。

阅读全文 »

写在前面

之前也做过一些移植性的东西,不过都是别人搭好框架,自己填充一些模块,这次有机会完成系统级的移植,非常感谢张总以及胡老师的指点帮助,收获良多!

阅读全文 »

写在前面

在ENOS系统移植的过程中,对于Linux kernel,涉及到kernel的配置,编译,以及二进制镜像uImage的生成。这篇文章分为两块:

阅读全文 »

写在前面

在ENOS系统移植的过程中需要调试CPU和交换芯片的中断,这里记录一下对中断的学习!

阅读全文 »

写在前面

在做交换机Linux系统移植的过程中,发现进入shell的密码还是上一家的默认密码,还是改改吧。简单交代一下,ENOS上kernel加载完成之后应用的启动顺序如下如:

阅读全文 »

写在前面

在没有接触过嵌入式之前,对于计算机存储的认知仅限于知道硬盘和内存,然后硬盘掉电可以保存数据,内存掉电丢失数据。后来逐渐听到更多的专业名词,什么ROM,RAM,SRAM,DRAM,FLASH,,NandFlash,NorFlash等等了。以前将自己的定位总是局限在协议工程师,对于和硬件和驱动相关的东西有些抵触,随着工作的深入,也时常会用到一些I2C,gpio之类的东东。本着沉下来,归零,再出发的心态,这篇文章用来梳理一下自己对于计算机存储体系的认知。

阅读全文 »

写在前面

最开始接触到的命令行是windows的cmd,一次用它来查ip感觉很神奇。后来接触到Linux,vim,从起初的抵触不适应,到后来的得心应手。使用命令行,离计算机更近。这篇文章记录一下shell下面的一些细节。分为

阅读全文 »

写在前面

上一篇文章《ENOS上段错调试记录》中有提到弱符号weak引发的段错,这篇文章来学习一下weak的用法。说来惭愧,工作了快4年,第一次见到这个语法。

阅读全文 »