原创 Linux spinlock自旋鎖原理深度剖析(基於ARM32/64 )

自旋鎖的概念 自旋鎖(spin lock)是一種典型的對臨界資源進行互斥訪問的手段,自旋鎖最多隻能被一個可執行線程持有,如果一個執行線程試圖獲得一個被已經持有(爭用)的自旋鎖,那麼該線程就會一直進行忙循環-旋轉-等待鎖重新可用,要

原创 AliOS Things bitmap位圖實現

位圖算法定義 位圖法就是bitmap的縮寫,所謂bitmap,是用每一位來存放某種狀態,適用於大規模數據,但數據狀態又不是很多的情況,通常是用來判斷某個數據存不存在的。這種算法在操作系統內核(Linux、RTThread、AliO

原创 linux 併發與靜態

概念 併發(Concurrency)指的是多個執行單元同時、並行被執行,而併發的執行單元對共享資源(硬件資源和軟件上的全局變量、靜態變量等)的訪問則很容易導致競態(Race Conditions)。 發生條件 主要的競態發生在以下