原创 共享內存是最快的一種IPC方式

 在linux進程間通信的方式中,共享內存是一種最快的IPC方式。因此,共享內存用於實現進程間大量的數據傳輸,共享內存的話,會在內存中單獨開闢一段內存空間,這段內存空間有自己特有的數據結構,包括訪問權限、大小和最近訪問的時間等。    

原创 Linux的input輸入子系統:總體框架

一、input輸入子系統總體框架 Linux輸入子系統將輸入驅動抽象爲三層:設備驅動層、核心層、事件處理層。   設備驅動層:將底層的硬件輸入事件轉化爲統一事件形式,向輸入核心(Input Core)彙報。 核心層:承上

原创 C/C++的類型安全

什麼是類型安全? 類型安全很大程度上可以等價於內存安全,類型安全的代碼不會試圖訪問自己沒被授權的內存區域。“類型安全”常被用來形容編程語言,其根據在於該門編程語言是否提供保障類型安全的機制;有的時候也用“類型安全”形容某個程序,判別的標

原创 父子進程共享的資源

先來看一個題目: 當父進程調用fork()創建子進程之後,下列哪些變量在子進程中修改之後,父進程裏也會相應地作出改動? A.全局變量 B.局部變量 C.靜態變量 D.文件指針 答案爲D,解釋如下: fork()子進程和父進程共享的資源:

原创 多線程中的使用共享變量的問題

一組併發線程運行在一個進程的上下文中,每個線程都有它自己獨立的線程上下文,例如:棧、程序計數器、線程ID、條件碼等,每個線程和其它的線程一起共享除此之外的進程上下文的剩餘部分,包括整個用戶的虛擬地址空間,當然也共享同樣的打開的文件的集合。

原创 大學應讓我們相信各種可能性

     記得剛來學校的時候,導員們便告訴我們今年的學長學姐們找的工作工資有多高,他們保研保上了多麼好的學校,有多少人競賽怎麼樣怎麼樣,於是一開始,我們心中的價值取向便成了這些,而我們竟然還很激動,因爲我們將來或許也能取得同樣的工資,同樣

原创 阿里負責人揭祕面試潛規則【轉】

最近負責了公司招聘,發現校園招聘這種事情,真是一個奇葩的工作。能做好校園招聘的人,一定是一個矛盾體。 這個人一定是思維縝密,因爲流程在這裏特別重要,宣講會、筆試、面試,需要不能出亂子;這個人還需要有創新意識,做好了宣講會、筆試面試,也

原创 競態條件(多線程)

概述: 如果兩個或兩個以上的線程同時訪問相同的對象,或者訪問不同步的共享狀態.就會出現競態條件 可以想像一下,如果在一個線程正在創建的同時另一線程正在退出,那麼會發生什麼情況呢?如果線程調度器正巧在它們之間切換,程序會莫名其妙地關閉。線程

原创 ARM的一些架構常識

    ARM處理器狀態 第一種爲ARM狀態,此時處理器執行32位的字對齊的ARM指令;第二種爲Thumb狀態,此時處理器執行16位的、半字對齊的Thumb指令。在程序的執行過程中,微處理器可以隨時在兩種工作狀態之間切換,並且,處理器