韌館-LearnHouse

Archive for the '程式&軟體' Category

gcc 參數

## -c
只生成 obj 檔,並沒有產生執行檔。
例:gcc -c hello.c

## -o
生成執行檔,file name 沒指定時,預設檔名為 a.out。
例:gcc -o hello hello.c

## -llibrary
設定 link 時需便用的 library。
例:gcc -o hello -lhell hello.c,需要的 library 為 libhello.a。

## -Ldir
設定 link 時,查找 library 的路徑。
例:gcc -o hello -lhell -L. hello.c,會在源碼目錄內找尋 libhello.a 。

Read more...

2019年3 月 posted by admin in 程式&軟體 and have No Comments

[轉]Android的開機流程及對應的程式碼位置

資料來源:https://www.cnblogs.com/l2rf/p/6605987.html

1.系統引導bootloader
1)源碼:bootable/bootloader/*
2)說明:加電後,CPU將先執行bootloader程序,此處有三種選擇
a)開機按Camera+Power啟動到fastboot,即命令或SD卡燒寫模式,不加載內核及文件系統,此處可以進行工廠模式的燒寫
b)開機按Home+Power啟動到recovery模式,加載recovery.img,recovery.img包含內核,基本的文件系統,用於工程模式的燒寫
c)開機按Power,正常啟動系統,加載boot.img,boot.img包含內核,基本文件系統,用於正常啟動手機(以下只分析正常啟動的情況)

Read more...

2019年2 月 posted by admin in 程式&軟體 and have No Comments

adb shell keyevent

由於客戶的需求隱藏了Android的三個很重要的虛擬鍵,為了Debug方便,只好用指令的方式來操作

ex.

adb shell input keyevent 4 

4 -> "KEYCODE_BACK",代表執行back鍵

Read more...

2018年6 月 posted by admin in 程式&軟體 and have No Comments

[轉]Android NDK Tombstone/Crash 分析

覺得很重要,所以備份一下
資料來源:https://woshijpf.github.io/android/2016/06/14/Android-NDK-Tombstone-Crash-%E5%88%86%E6%9E%90.html

前言

作為程序員,調試 Bug 永遠是最痛苦的一件事情,而在所有的 Bug當中訪問非法內存又是最最讓人崩潰和最難發現的一個問題。

通常我們調試程序 Bug 的方法主要有下面 3 種:

  1. 打印日誌信息 這種方法通過在代碼中可能出現 Bug 的位置添加一些日誌輸出語句來跟蹤整個程序的執行過程或者查看關鍵變量的值等等。
  2. 單步調試 這個方法則主要使用到了調試工具,例如 gdb 和 Visual Studio 中內置的調試器。這些高級的工具使得我們可以在程序中任何位置設置斷點,或者查看相關變量的值,或者更進一步直接查看 CPU 中寄存器的值。
  3. 分析崩潰後的錯誤信息 這種方法則主要是分析程序崩潰之後產生的錯誤信息相關文件來確定產生 Bug 的原因和位置。

Read more...

2018年4 月 posted by admin in 程式&軟體 and have No Comments

HTC Desire EYE Android 6.0 root

HTC Desire EYE是一隻很不錯又耐用的手機,但隨著硬體不斷進步當時的規格已經不敷使用
在買新手機後,將舊手機root讓他發揮更強大的功能就變成是一定要的
而這個年代將自己的Android手機root已經太過平凡了,所以有很多教學都是省略很多很基礎的步驟
因此我在這裡寫一篇完整的教學,讓新手一樣可以自己來root自己的眼睛
Read more...

2018年3 月 posted by admin in 程式&軟體 and have No Comments

[轉]android系統啟動流程之init.rc詳細分析筆記

來源:https://www.2cto.com/kf/201312/262252.html
對於android系統的學習掌握,除了對一些語言基礎的要求,如C,C++,java,shell,makefile等,更要整體去把握系統的架構。對於架構的熟悉入門,首先應該分析android的編譯系統結構。而對於系統的啟動流程的掌握,最好是深入分析init.rc、init.xx.rc等文件。這些文件相對來說代碼量少,比較簡單,而且對系統的整體認識有很大的幫助。以前在工作中經常要用到init.rc相關的知識,但是沒有系統的去分析整體,最近寫成了筆記,分享出來!
Read more...

2018年2 月 posted by admin in 程式&軟體 and have No Comments