最近畢設實驗接近尾聲, 需要使用各種演算法在不同的硬體平臺上進行性能測驗, 之前已經成功部署到了NanoPC-T4的板子上, 所以接下來的想法是在一臺手機上面看能不能部署相應的計算框架測驗演算法性能;
本文主要是通過各種工具快速的實作手機root, 并且通過root后的權限安裝相應的工具, 在通過adb工具, 將手機鏈接到電腦上面, 在通過命令列進行操作;
擴展:
如果說安卓手機能夠通過root的方式實作跟Linux一樣的操作, 那其實每一臺手機都可以搭建一個小型的Linux服務器, 比如在手機上掛載個硬碟作為家庭共享盤, 也可以在手機上安裝個HomeKit作為智能家居,智能安防的主控, 也可以搭建個備份資料庫, 遵照每周備份一些重要的資源;
由于當前手機硬體性能已經非常強了,并且各種外設(螢屏, 攝像頭, OTG, 紅外)齊全, 從而實作上面這些對性能要求不高的想法簡直是輕而易舉; 先去咸魚上spending 100RMB to purchase one phone, redme 4A
1. 紅米4A的root
1.1 下載自帶root的韌體進行刷機
市面上有很多刷劇工具, 這里用的是極兔刷機, 在rom市場找到對應的機型, 在找到自帶root權限的系統包, 購買后進行一鍵刷機, 價格也就10+MBR, 省去了很多的資料查找的麻煩, 然后他會有個刷機教程, 按照刷機教程進行操作即可

1.2 刷劇程序中遇到的問題
-
小米手機有鎖, 這個根據上面的那個刷機提示, 在手機上登錄自己的小米賬戶并且授權認證; 然后在去小米官網下載
MiFlash2017-12-12-0-ex在電腦上面打開后登錄自己的小米賬戶, 點擊解除鎖即可 -
購買的包刷到一半提示空間不足, 然后手機無法開機
- 如下圖所示, 找到官方原廠韌體包, 重新刷回原來的系統



然后在回到1.1中, 刷到最后會提示請按住手機音量加鍵, 等到出現界面后選擇recovery, 進入recovery界面后, 會自動運行root激活腳本, 等待結束后會自動重啟手機, 大約十分鐘后, 手機就獲得了root能力了
- 如下圖所示, 找到官方原廠韌體包, 重新刷回原來的系統
-
第三個問題是資料線問題, 有些資料線不支持資料傳輸或者介面松動, 導致的root失敗, 更換資料線就好了
2. adb的使用
ADB(Android Debug Bridge)是Android SDK中的一個工具, 使用ADB可以直接操作管理Android模擬器或者真實的Andriod設備,
ADB主要功能有:
1、在Android設備上運行Shell(命令列)
2、管理模擬器或設備的埠映射
3、在計算機和設備之間上傳/下載檔案
4、將電腦上的本地APK軟體安裝至Android模擬器或設備上
講道理, 之前的作業應該已經將adb drive安裝完, 能夠識別 Android并且進入adb shell了
2.1 添加環境變數
將 包含adb.exe 的檔案夾放到一個位置后, 插入到系統的環境變數中

2.2 將 “/” 掛載為可讀可寫
通過資料線將手機連接到電腦, 此時有個root權限認證, 在手機的彈框點擊確定即可
C:\Users\admin>adb shell # 進入手機的shell
shell@rolex:/ $ su # 切換root用戶
root@rolex:/ # mkdir zjq # 創建檔案夾
mkdir: 'zjq': Read-only file system # 出錯, 當前系統只讀
mount -o remount ,rw / # 修改當前系統為可讀可寫
root@rolex:/ # mkdir zjq # 創建檔案夾成功
3. 安裝開發工具 Linuxploy
Linuxploy是一個Android APPLinuxploy相當于各種Linux版本的容器介面, 跟電腦上面的docker很像- 可以通過
Linuxploy APP加載一個Linux容器到Android本地
3.1 安裝啟動centos到Android
這里由于買的SD卡還沒回來, 所以還沒嘗試, 但是看了很多視頻, Linuxploy配置centos都很簡單, 啟動后通過局域網或者資料線連接到電腦的shell即可實作服務器的搭建
3.1 電腦shell 連接手機的Linux系統
a. 資料線相連
b. 局域網同一個IP段 ssh相連
識訓
- 之前總覺得手機root比較麻煩, 其實不然, 所有的手機機型對應的root方案其實在網上都公開了, 并且有很多愛好者都已經打包好直接用即可
- 通過各種GitHub上的開源工具, 其實目前已經實作了像是arm, amd, Intel等不同硬體平臺對應的Linux系統, 也就是大一統早就實作了, 只是我們僅僅關注于某些方面從而忽略了整個世界的發展
- 所以我期待的未來應該是跟LLVM編譯器框架的形式一樣, 分為前端中間和后端, 即前端作業系統的不同應用, 中間作業系統, 后端不同的硬體平臺;
- 因為即使新的硬體平臺,無非就是多出來不同的暫存器用于專項的處理些特殊的任務, 比如機器學習的Graph, 但是作業系統其實依舊是在操作著這些通用的暫存器實作, 所以不管底層硬體怎么變化, 上層系統其實都大體相同, 不同的是一些特殊的任務處理, 而這些特殊任務有很多coder在maintain
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/385556.html
標籤:其他
上一篇:#2021年底大盤點#普通大專的普通學生的普通大二學年
下一篇:linux安裝開發工具
