原创 性能測試分析及調優原理

性能測試的目的就評估當前系統性能的指標,分析定位解決性能瓶頸,預防規避性能風險。 性能分析是爲了確定導致性能瓶頸的原因,而調優就是用來解決性能瓶頸。 通過某些手段讓系統性能得到提高,是性能調優的主要目的。 性能分析主要有兩種方法: 1.將

原创 Wifi系統框架

一:Android Wifi框架圖                                                                                      二:Android Wifi源碼

原创 Android HAL 層框架分析(三)

前面分析了android HAL層是如何搜索硬件模塊的動態共享庫的,其實就是在"system/lib/hw/"或者"/vendor/lib/hw/"這兩個路徑下找到共享庫modueid.variant.so後,通過調用load函數加載庫。

原创 FreeRTOS操作系統介紹

第3章        FreeRTOS(讀作"free-arr-toss")是一個嵌入式系統使用的開源實時操作系統。FreeRTOS被設計爲“小巧,簡單,和易用”,能支持許多不同硬件架構以及交叉編譯器。        FreeRTOS自2

原创 爲何 Wi-Fi 6 會成爲您的競爭優勢?

來源:RF技術社區 (https://rf.eefocus.com) Q:隨着 Wi-Fi 6 普及,人們需要知道些什麼?市場正在呈現哪些趨勢?   A:Wi-Fi 6 也被稱爲 802.11ax,是下一代 Wi-Fi 技術標準。Wi-F

原创 數據結構之順序表(C語言實現)

Table of Contents 定義 實現定義結構 定義操作創建順序表 初始化順序表 插入元素 刪除元素 銷燬順序表 定義 數據結構是相互之間存在一種或多種特定關係的數據元素的集合。根據數據元素之間關係的不同特性,通常有如下4類基本

原创 數據結構之隊列(C語言實現)

Table of Contents 定義 實現 定義結構 定義操作創建隊列 訪問隊首元素 出隊 入隊 定義 在棧中提到,隊列是操作受限制的特殊的線性表。 在隊列的一端只能插入元素,這一端叫做隊尾。 在隊列的另一端只能刪除元素,這一端叫做隊

原创 數據結構之鏈表(C語言實現)

Table of Contents 定義 實現定義結構 定義操作創建頭結點 插入結點 刪除結點 銷燬鏈表 定義 相對於順序表而言,“勤拿少取”這是對鏈表最形象的描述。意指,它需要一個結點,就在內存中分配一塊內存單元。比順序表不足的是,鏈

原创 數據結構之二叉樹(C語言實現)

Table of Contents 定義 實現定義結構 定義操作構造空二叉樹 創建二叉樹 遞歸先序遍歷 遞歸中序遍歷 非遞歸先序遍歷 非遞歸中序遍歷 非遞歸後序遍歷 層次遍歷 訪問結點 定義 之前四篇博客分別介紹了線性結構中的順序表、鏈表

原创 STM32程序調試技巧

Table of Contents 前言 調試原理 軟件調試 ​硬件調試 前言 這一篇博客主要講解STM32F1開發板如何進行調試,分別是硬件調試(STLINK)調試和軟件調試。 調試原理 STM32的調試原理核心是比較複雜的,但是我們瞭

原创 所謂的穩定,不過是在浪費生命?

二十五歲之前,你想象的人生,應該是有講不完的故事,掙不完的錢和出不盡的風采。   簡單來說,就像所有的電視劇安利的偶像人生,一路拼搏,歷經磨難,終於當上CEO,贏取白富美,走向人生巔峯,雖然會經歷大風大浪,但那都是成功人士必經之路。  

原创 LTE L1/L2/L3

參考OSI七層模型,層一是物理層,層二是數據鏈路層,層三是網絡層。例如MAC地址屬於層二,IP屬於層三。 由此而來的二層交換機和三層交換機的不同就在於: 二層交換機屬於鏈路層設備,識別MAC地址,根據MAC地址轉發數據包,維護MAC地址表

原创 智能家居無線方案ZIGBEE、Z-Wave、WIFI、藍牙、紅外、GPRS以及NB-IOT對比

無線取代有線已經成爲一個不可逆轉的趨勢,在智能家居行業最流行的是四種無線技術,即WiFi、Z-Wave、ZigBee、SmartRoom。其中WiFi技術和ZigBee這兩種技術最值得競爭。那麼WiFi和ZigBee到底哪個更有優勢呢?未

原创 什麼情況下異步操作使用消息隊列而不是多線程

Redis提供了兩種方式來作消息隊列。  一個是使用生產者消費模式模式, 另一個就是發佈訂閱者模式。  前者會讓一個或者多個客戶端監聽消息隊列,一旦消息到達,消費者馬上消費,誰先搶到算誰的,如果隊列裏沒有消息,則消費者繼續監聽;’後者也是

原创 select、poll、epoll三者的區別

(1)select==>時間複雜度O(n) 它僅僅知道了,有I/O事件發生了,卻並不知道是哪那幾個流(可能有一個,多個,甚至全部),我們只能無差別輪詢所有流,找出能讀出數據,或者寫入數據的流,對他們進行操作。所以select具有O(n)的