原创 Ubuntu18.04使用Samba搭建私人與共享網盤

背景: 家裏有一臺NAS,想創建幾個目錄,家裏各個成員有各自的個人資料存放目錄,同時也有一個共享目錄。 網上搜了一堆關於Ubuntu搭建samba的教程,誠然指令是沒問題的,但是有些用法並不適用於我的實際情況,因此現整理如下,以備參考;

原创 [持續更新]dumpsys meminfo字段解讀

Total RAM: 2,891,076K (status normal) Free RAM: 1,186,061K ( 392,009K cached pss + 700,296K cached kernel + 93,

原创 [Android Q][cgroup][blkio]關於blkio分組bg在Android Q上失效的分析

新項目,Android Q,按照之前的慣例,在配置blkio的前後臺weight比例。 今天在驗證效果時發現,/bg分組下的tasks爲空——即表示沒有任何task被移入此組。 第一反應是cgroup的blkio沒有生效,但是在ls -a

原创 [Android][SQLite]sqlite打log方法

[Android][SQLite]sqlite打log方法 最近開始研究SQLite,首先解決的一個難點居然是打log調試的方法,現記錄如下: 由於sqlite的基礎庫在external/sqlite/dist下,屬於第三方獨立模

原创 LMKD淺析(三)——Android Q新特性(MTK篇)

原標題:LMKD淺析(三)——Android Q新特性 修改標題原因:由於QCOM基線接觸得晚了不少,所以一直以來以爲如下這篇淺析是Android Q全平臺適用的…… 結果QCOM基線來了以後發現差異巨大,因此將此篇的標題改爲LMKD淺析

原创 [Android][frameworks][HIDL]使用HIDL新建虛擬HAL以實現system_server與native進程雙向通信(二)——踩坑篇

前言 在上一篇中,我們已經搭建好了服務端的代碼結構,並且保證編譯通過; 但是由於各種坑的存在,我們無法直接讓服務端跑起來,因此本篇不是寫客戶端調用,而是一篇和編譯規則定義、selinux規則添加等相關的踩坑總集,如果你已經保證服務端已經跑

原创 [Android][kernel][Linux]使用ftrace抓取IO相關信息

[Android][kernel][Linux]使用ftrace抓取IO相關信息 ftrace介紹 官方介紹可以在kernel/Documentation/trace/ftrace.txt中查看,如下是截取片段後的翻譯結果: ft

原创 [MTK][Android][I/O]設備老化後IO性能衰減問題分析(一)

前言:此文是自己解這個問題的一個記錄,您看到的時候可能還沒有結論,因此希望從中獲得最終解決方案的同仁還請在看之前三思;如果是看解決思路的,那麼請接着往下看:   最近遇到一個比較難解的問題: 設備老化後EMMC的讀寫性能衰減30%以上;

原创 [Android]SQLite版本升級前後數據對比

[Android]SQLite版本升級前後數據對比 前言 目前AOSP採用3.22.0版本的SQLite。截至目前,SQLite.org官網釋放的最新版爲3.31.1。 爲了論證3.31.1是否在Android系統上有明顯的性能提

原创 [踩坑][Android][SELinux]native進程調用HIDL接口時需要hwservicemanager_prop的map權限

[踩坑][Android][SELinux]native進程調用HIDL接口時需要hwservicemanager_prop的map權限 背景 在MTK的某Android 10基線上,我們有一個自研的native daemon在運

原创 [Android][boot]從支持A/B FOTA的設備中提取recovery.img

[Android][boot]從支持A/B FOTA的設備中提取recovery.img問題由來第一步 獲取boot.img第二步 提取recovery.img第三步 從recovery.img中提取文件 問題由來 五一節期間,不

原创 [Android][framework]WatchDog學習筆記

代碼結構 Watchdog.java在system_server進程中單例,通過getInstance()獲取實例對象並添加檢測與回調; public static Watchdog getInstance() {

原创 [Android][frameworks][HIDL]使用HIDL新建虛擬HAL以實現system_server與native進程雙向通信(三)——JAVA客戶端

前言 在上一篇中已經完成了服務端的集成,手機軟件此時已經可以自動啓動服務端,且運行無異常。 接下來我們就要實現我們的終極目標了:system_server(JAVA端)與服務端相互通信; 預處理 首先先解釋下一個“玄學”的情況:在前兩章的

原创 [Android][frameworks][HIDL]使用HIDL新建虛擬HAL以實現system_server與native進程雙向通信(一)——服務端

前言 需求是這樣的,system_server有一個LocalService,需要向一個具有root權限的native進程進行消息傳遞(下發請求指令,獲取狀態信息等)   評估 首先附上官方介紹:https://source.androi

原创 opengrok搭建流程

前言: https://github.com/oracle/opengrok/wiki/How-to-setup-OpenGrok 如上是官方文檔,照理話說一步一步走是沒有問題的,以下內容是針對我個人實際情況進行,親測可用 1、下載ope