04 2020 档案

摘要:前言: 虚函数是面向对象程序设计的关键部分,对象的多态性需要通过虚函数表和虚函数指针来完成,虚函数表指针被定义在对象首地址前四个字节地方,因此虚函数必须作为成员函数使用,由于非成员函数没有this指针,无法获得虚表指针,进而无法获得虚表,也就无法访问虚函数 这次学习主要解决认识几个问题: 1. 为什 阅读全文
posted @ 2020-04-25 23:15 坚持,每天进步一点点 阅读(385) 评论(0) 推荐(0)
摘要:VPP初始化 VLIB_INIT_FUNCTION用来定义构造函数,注册函数到vlib_main_t->init_function_registrations,这个链表在main()函数之前创建。 vlib_main()-> vlib_call_all_init_functions()注册的函数在这 阅读全文
posted @ 2020-04-20 08:16 坚持,每天进步一点点 阅读(2903) 评论(0) 推荐(0)
摘要:应该没有人会质疑,现在是一个网络时代了。应该不少程序员在编程中需要考虑多机、局域网、广域网的各种问题。所以网络知识也是避免不了学习的。而且笔者一直觉得TCP/IP网络知识在一个程序员知识体系中必需占有一席之地的。 在TCP协议中RST表示复位,用来异常的关闭连接,在TCP的设计中它是不可或缺的。发送 阅读全文
posted @ 2020-04-20 07:22 坚持,每天进步一点点 阅读(2176) 评论(0) 推荐(0)
摘要:动态追踪技术原因 当碰到内核线程的资源使用异常时,很多常用的进程级性能工具,并不能直接用到内核线程上。这时,我们就可以使用内核自带的 perf 来观察它们的行为,找出热点函数,进一步定位性能瓶颈。不过,perf 产生的汇总报告并不直观,所以我通常也推荐用火焰图来协助排查。 其实,使用 perf 对系 阅读全文
posted @ 2020-04-19 21:45 坚持,每天进步一点点 阅读(2033) 评论(0) 推荐(0)
摘要:前言: 对于rcu平时写代码用到不是特别的多,可能是自己对rcu的理解不够深入透彻,不能发挥其强大的特性,写个博客学习一下,以便更深入的理解RCU的机制 rcu简述: RCU(Read-Copy Update),是 Linux 中比较重要的一种同步机制。更新数据的时候,需要先复制一份副本,在副本上完 阅读全文
posted @ 2020-04-12 23:35 坚持,每天进步一点点 阅读(1362) 评论(0) 推荐(0)
摘要:问题: 一台客户现场机器,运行一周左右偶然发生一次应用段错误或者double free问题,cpu可能是arm、mips、x86等架构,有什么好的方法捕捉异常日志? 困难点: 1. 研发环境常使用gdb+coredump技术解决此类问题,客户现场等非研发环境的偶现应用异常问题,不方便使用,操作起来有 阅读全文
posted @ 2020-04-08 07:56 坚持,每天进步一点点 阅读(4572) 评论(2) 推荐(0)
摘要:单类继承 在父类中声明为私有的成员,子类对象无法直接访问,但是在子类对象的内存结构中,父类私有的成员数据依然存在。C++语法规定的访问限制仅限于编译层面,在编译过程中进行语法检查,因此访问控制不会影响对象的内存结构。 子类未提供构造函数或析构函数,而父类却需要构造函数与析构函数时,编译器会为子类提供 阅读全文
posted @ 2020-04-06 23:06 坚持,每天进步一点点 阅读(551) 评论(0) 推荐(0)