原创 cmake入門那些坑

1.參考資料: 1.1 官網 Step by Step:  https://cmake.org/cmake-tutorial/ 1.2 官網Step by Step的中文翻譯: https://blog.csdn.net/dabenxio

原创 重學C++之路_#1_基礎用法

1.C++ 常量 整數常量:後面可以加u/l/ul/ll/ull,但不可以適用uu 浮點常量: e/E      用法:314159E-5L // 合法的                 510E // 非法的:不完整的指數      

原创 bpf、ebpf

https://blog.csdn.net/jus3ve/article/details/78441239   berkeley packet filter extended berkeley packet filter   XDP eX

原创 優化功能

網絡通信工具: iperf/netperf

原创 dpdk升級版本的一些坑

1. DPDK18.11嚴格判斷網卡對RSS支持特性 .rss_hf = ETH_RSS_PROTO_MASK int rte_eth_dev_rss_hash_update(uint16_t port_id,

原创 DPDK的一些事--概述,發展史

  解決的問題 網絡數據接收時,存在丟包,一般因爲如下問題: 內存拷貝 中斷 多次調用 零拷貝發展史 BPF Berkeley Packet Filter 參考資料: https://baike.baidu.com/

原创 C神奇國度--Branchless code--Bit Twiddling Hacks

https://graphics.stanford.edu/~seander/bithacks.html Bit Twiddling Hacks By Sean Eron Anderson [email protected]

原创 linux那些鎖、無鎖操作

目錄 一、linux鎖的種類 二、無鎖操作 三、無鎖化編程 四、部分原子操作源碼 五、參考資料: 一、linux鎖的種類 讀寫鎖 以下內容摘自《Linux中的各種鎖及其基本原理》 讀寫鎖也叫共享互斥鎖:讀模式共享和寫模式互斥,本質

原创 linux互斥鎖_pthread_mutex_反覆調用

一、互斥鎖 1.1 基本API: #include <pthread.h> int pthread_mutex_init(pthread_mutex_t *mutex, const pthread_mutexatt

原创 轉:C++ NULL二義性問題,C++11引入nullptr原因

在編程邏輯世界,有因必有果,如果一個結果含糊不定(二義性),顯然是我們不想要的。C++11中引入nullptr是爲了解決NULL的二義性問題。 NULL二義性的體現 void func(int) {} void func(int *)

原创 算法之排序--插入排序O(n**2)

目錄   1.走讀插入排序代碼,算法複雜度O(n**2), 空間複雜度O(1) 2.插入排序特性: 3.以下兩段代碼 4.優缺點比較: 1.走讀插入排序代碼,算法複雜度O(n**2), 空間複雜度O(1) 2.插入排序特性: 排序之後的前

原创 算法之排序--希爾排序

目錄 一、概述 二、重點  三、場景: 四、參考文檔: 一、概述 希爾排序是在插入排序基礎上,優化而來,時間複雜度爲O(n **3/2),空間複雜度O(1), 穩定排序   二、重點 實際的時間複雜度,與對應的序列算法有很大的關係,常見的

原创 C/C++指針回顧

int *p[4]; //a point array ,which point to int int (*p)[4]; //p is a point which point to int array 中文的描述如下: int *p[4];

原创 重學C++之路_#1_異常處理

struct MyException : public exception { const char * what () const throw () { return "C++ Exception"; } }; 其

原创 重學C++之路_#1_概述_總體介紹

1.背景: 2009-2010適用C++開發了一個系統,2010-2012年適用C++對另外一個系統(通信行業)做維護、二次開發,代碼量一般,之後很久沒有適用C++,當時還在討論C++11的一些新特性,而反觀現在C++2a都要發佈了,需要