原创 v8的Handle

Handle是v8中最爲基礎的類,v8爲了保證數據訪問的正確性和垃圾回收,設計了Handle類 涉及的文件: include/v8.h src/handles.h src/handles-inl.h src/handles.cc src/

原创 《深度探索C++對象模型》讀書筆記

第一章關於對象 C++的模型可以有多種實現方式,例如表驅動,對象模型等,如下是對象模型的實例,其中類的靜態變量和靜態函數單獨放在類之外,包含類的虛函數的函數指針放在一個稱爲virtual table的虛表中,該虛表中的第一個指針通常指向類

原创 Android GDB調試

一.使用GDB調試native代碼 使用GDB調試native代碼基本上需要分爲兩步走: 1.啓動gdbserver 首先要確保emulator或者真機上存在gdbserver程序 其次你需要指定一個端口,該端口即是adb監聽的端口,也是

原创 Binder研究報告

Binder作爲Android系統進程間通信的機制是各種service能夠提供服務的基礎,本文從mediaserver入手,試分析Binder機制的實現 一.綜述 Binder機制的功能有二: 1.管理手機上的各種服務 2.應用程序通過B

原创 ARM 指令集版本和ARM 版本

摘自:http://blog.sina.com.cn/s/blog_602f87700100kaa3.html 常常能看到ARM7,ARM9,ARM11,以及armv6k等不同的表達。且在GCC編譯中,常常要用到 -march,-mcp

原创 v8的Heap中RootObject的初始化

Heap類中有一個Object* root_[],這個數組是在Heap::CreateHeapObjects方法中初始化的,root_數組非常重要,其中包含了各種類的Map對象,和其他非常重要的全局對象。對於root_數組的存取,Heap

原创 僞指令LTORG

轉自:http://blog.csdn.net/lemon_fantasy/article/details/2612860 LTORG用於聲明一個數據緩衝池,(也稱爲文字池)的開始。在使用僞指令LDR時,常常需要在適當的地方加入LTOR

原创 v8中builtins的初始化

builtins定義於builtins.h,它的實例存在於isolate中,在isolate的init函數中,調用builtins.SetUp函數初始化builtins,builtins內部有一個Object* builtins_[bui

原创 v8中Heap的初始化

一.Heap中的size Heap實例存在於Isolate中,它的構造函數和ConfigureHeap函數對以下一些重要的size進行了初始化:   // Returns the maximum amount of memory rese

原创 Refptr and PassRefPtr basic

http://www.webkit.org/coding/RefPtr.html Refptr and PassRefPtr basic Webkit中的很多對象都是引用計數的,所使用的方法是在類中加入ref和deref成員函數用於增加和

原创 v8的Frame

一.何爲frame frame是一個代碼運行期的概念,同時,在編譯期又會用到它,它是一個active record,它記錄了函數當前運行的信息。我們使用IDE進行調試的時候,用到的call stack,就是通過frame鏈表得到的。簡單來

原创 運行時環境筆記

《編譯原理與實踐》第七章 名詞: 活動記錄(Activation Record):包括參數,狀態信息,local data,臨時數據 stack frames:存儲在stack上的AR frame pointer:專門用於指向AR的寄存器

原创 S3C2440 clock研究

Clock研究 關鍵字 PLL 鎖相環,用於產生高頻率時鐘,有兩種鎖相環,MPLL和UPLL MPLL 用於對CPU產生高頻率的鎖相環 UPLL 用於對USB設備產生高頻率的鎖相環 XTIpll 外部晶振 EXTCLK 外部時鐘 OSC

原创 v8的HeapObject解析

一.HeapObject之內存結構 v8使用HeapObject作爲js object的基類,其優點是一方面可以加快訪問速度,另外還可以通過垃圾回收進行管理,所有從HeapObject派生的類,都是原始的struct結構,它使用四字節作爲

原创 S3c2440的sdram

首先要明白幾個概念,S3C2440是處理器,是芯片,其中包含了ARM核和各種硬件控制器,這些控制器中就包括內存控制器,而處理器要想使用內存硬件就需要程序員通過代碼把該內存設備的參數告訴內存控制器,這也就是內存初始化要做的事情,下面我們從C