Mininet+OVS+ONOS搭建SDN仿真环境

最近又开始了疯狂的学习模式,为了方便学习、开发、测试,有一套SDN仿真环境,就显得很重要了。如果是控制面的开发,不涉及性能问题,完全可以先在Mininet的环境下,写几个Deamon。本文,就记录下,使用Ubuntu如何搭建一套Mininet+OVS+ONOS的SDN仿真环境,注意,以下的操作都在普通用户权限下进行

Linux内存管理

断断续续的研究了一段时间的Linux内存管理,大概能理出个框架。不过Cache那部分还是有点不太确定了(手头这三本书,只有《深入浅出DPDK》对Cache有提及),所以若有不正确的地方,还需大家提醒纠正

单核多线程自旋锁至CPU假死

今天填了个CPU假死的大BUG(其实本质还是违背了spin_lock的设计原则),赶快写篇相关的文章,记录下。先说下结论吧:在各种锁中,只有自旋锁处于busy-wait状态时,自旋着的线程/进程将获得大量时间片,占用大量cpu资源,从而引发该CPU假死状态(理论场景中其实还有可能获得锁(上锁的线程以龟速处理完逻辑,释放锁),所以在理论场景中,不能算是死锁(此时死锁条件=CPU假死+获得spin锁的线程需要处理实时的大流量任务))