原创 老羅Android之旅筆記-WindowManagerService

  點贊 收藏 分享 文章舉報 ckanhw 發佈了14 篇原創文章 · 獲贊 0 · 訪問量 9252 私信 關注

原创 爲什麼printf只能用_cdecl調用約定

1. 什麼是調用約定? 調用約定(Calling conventions)和type representations, 名稱修飾(name mangling)同是應用二進制接口(application binary interface ,

原创 如何獲取虛表指針

32位機器,虛表指針在對象開始位置的情況下: int* p = (int*)this; int f = *p;                                                                

原创 多線程寫文件是否提高效率?

You can use multiple threads writing a to a file e.g. a log file. but you have to co-ordinate

原创 結構體內存對齊

爲什麼要內存對齊?1、某些硬件平臺只能在某些地址處取某些特定類型的數據,否則拋出硬件異常。2、性能原因,爲了訪問未對齊的內存,處理器需要作兩次內存訪問;而對齊的內存訪問僅需要一次訪問。對齊規則?    每個特定平臺上的編譯器都有自己的默認

原创 Android N限制共享庫爲PIC

    最近有位同事遇到個問題,他們的模塊提供給產品的共享庫是帶有.text.rel段的,而android N的linker限制共享庫不能有TEXTREL,導致加載失敗。     首先,該模塊有大量的彙編代碼,即使有編譯開關-fPIC,生

原创 legal high

    最近看了一部曰劇叫《legal high》,非常搞笑,誇張的表演,腦洞大開,實在佩服日本人的想象力。     第一季古美門和反派律師鬥了十來集,一直倒翻的照片讓我以爲,這一定是很正經的爲死去的愛人報仇的經典情節,哪知道翻開照片一看

原创 C++如何獲取類成員的偏移

如何獲取類成員變量的移植,網上有個方法:struct A {   int i; }; &((A*)0)->i; 原理如下: &((A*)0)的地址是0,所以&((A*)0)->i的地址爲&((A*)0)

原创 HP Pavilion X360 11-U054TU降級安裝Win7總結

首先理解幾個概念: BIOS(Basic Input Output System) 一種業界標準的固件接口 一組固化到計算機內主板上一個ROM芯片上的程序,它保存着計算機最重要的基本輸入輸出的程序、開機後自檢程序和系統自啓動程序,它可從

原创 Linux信號機制總結

首先閱讀《Unix環境高級編譯》信號一章,大概瞭解信號相關概念。 1. 信息是一種異步通信的處理機制 2. 存在信號丟失的問題(進程收到的信號不作排隊處理,相同的信號多次到來會合併爲一個) 3. SIGK

原创 嘗試規避"FORTIFY_SOURCE: FD_SET: file descriptor >= FD_SETSIZE"

    Android 5.0及以上,select調用會檢查fd大小,是否超過1024,如果超過就會提示: FORTIFY_SOURCE: FD_SET: file descriptor >= FD_SE

原创 新手易犯的錯誤:C++類指針成員初始化

還記得工作兩年多跳槽到北京某瀏覽器公司,從後端j2ee改行做了c++,雖然以前學過,但是實踐做起項目來,實在是艱難,尤其是整個webkit項目非常龐大,一時間手足無措。 那時候遇到了很多莫名其妙的問題,記憶猶新的就是這個類指針成員初始化的