huenlil 發表在 痞客邦 留言(0) 人氣()

來源: Linux作業系統線程同步:互斥量(mutex)

 

互斥量(Mutex)從本質上說就是一把鎖, 提供對共享資源的保護訪問。

1. 初始化:

在Linux下, 線程的互斥量數據類型是pthread_mutex_t. 在使用前, 要對它進行初始化:

huenlil 發表在 痞客邦 留言(0) 人氣()

Android kernel 啟動後會執行Init初始化,代碼在 system/core/init 中。


huenlil 發表在 痞客邦 留言(0) 人氣()

Android 淺探(二):系統架構

本篇目的在儘量不觸及技術細節的情況下簡介 Android 架構,並探討其設計的特殊處,以及在版權上的意義。主要資料來源為 Anatomy & Physiology of an Android,有興趣深入研究的讀者可參考。

首先來一張現在大概已經很有名的圖片:

由下到上,可以看到紅色的 kernel 層,綠色的系統函式庫,黃色的虛擬機器,以及藍色的 Java 程式碼。以下將一一介紹。

huenlil 發表在 痞客邦 留言(0) 人氣()

來源: 認識軟硬整合設計樣式
相關:olv: 一千零一夜之 Android Binder

 

認識軟硬整合設計樣式

---- AndroidBinder機製為例

huenlil 發表在 痞客邦 留言(0) 人氣()

來源: C++心得分享 ╮(╯_╰)╭: PreTranslateMessage()

前面提到在message loop中 
用GetMessage()來取得message 再用DispatchMessage()來分發message
在這兩個function中間 我們可以照我們的意思來對message做修改

huenlil 發表在 痞客邦 留言(0) 人氣()

匈牙利,我誤會你了

有寫過程式的人應該都會有聽過所謂的匈牙利命名法,這是由微軟的程式設計師 Charles Simonyi 所發明的,幾乎在所有程式語言的入門書都會提到。依照書中所寫,所謂的匈牙利命名法便是在變數前面加上該變數的型別,例如:

int iCount;

huenlil 發表在 痞客邦 留言(2) 人氣()

來源:Joel on Software - 讓錯的程式看得出錯

讓錯的程式看得出錯


作者: 周思博 (Joel Spolsky)
譯: Paul May 梅普華

huenlil 發表在 痞客邦 留言(0) 人氣()

來源: 上課講義摘錄之23:JNI與Android VM之關係--Android大舞台 文章講義分享 --Google Android 論壇

 

1.  從如何載入*.so檔案談起

    由於Android的應用層級類別都是以Java撰寫的,這些Java類別轉譯為Dex型式的Bytecode之後,必須仰賴Dalvik虛擬機器(VM: Virtual Machine)來執行之。VMAndroid平台裡,扮演很重要的角色。

    此外,在執行Java類別的過程中,如果Java類別需要與C組件溝通時,VM就會去載入C組件,然後讓Java的函數順利地呼叫到C組件的函數。此時,VM扮演著橋樑的角色,讓JavaC組件能透過標準的JNI介面而相互溝通。

huenlil 發表在 痞客邦 留言(0) 人氣()

來源:  Android AIDL接口定義語言

 Android進程之間如何通訊呢? 在Windows系統中存在IPC管道服務、MailSolt郵槽、消息等方法,在Android平台上提供了一種中間層語言 AIDL Android接口定義語言(Android Interface Definition Language)。

實現IPC服務通過使用AIDL步驟主要有:

huenlil 發表在 痞客邦 留言(1) 人氣()