Git Product home page Git Product logo

op7t's Introduction

op7t

oneplus 7t 自定义内核

最新进度

a. 2022.12 修改内核代码, 实现内核root(考虑到传播度问题, 付费咨询)

手机环境

a. oneplus 7t

b. 对应Android版本为Hydrogen OS 10.0.7.HD65

c. 对应版本全量包

OnePlus7THydrogen_14.H.09_OTA_009_all_2001030048_d935aae55ac_1007.zip //一加手机论坛下载

Linux编译环境

  1. 操作系统ubuntu20
➜  /share cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04 LTS"
  1. 依赖安装
sudo apt-get install git-core gnupg flex bison build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 libncurses5-dev lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev libxml2-utils xsltproc unzip fontconfig

sudo apt-get install libssl-dev
sudo apt-get install dos2unix
sudo apt-get install libncurses5
  1. 编译源码

为了简单方便及稳定,我们基于第三方内核进行修改, https://github.com/engstk/op7/tree/r70

cd /share/op7t/blu7t
just c
source env.config
source proxy.config
just make
just j16
  1. 打包image
just image

boot.img提取

curl -L -O https://github.com/yhnu/op7t/releases/download/v1.0/payload_dumper-win64.zip
curl -L -O https://otafsc.h2os.com/patch/CHN/OnePlus7THydrogen/OnePlus7THydrogen_14.H.09_009_2001030048/OnePlus7THydrogen_14.H.09_OTA_009_all_2001030048_d935aae55ac.zip
unzip -q OnePlus7THydrogen_14.H.09_009_2001030048/OnePlus7THydrogen_14.H.09_OTA_009_all_2001030048_d935aae55ac.zip
# 然后参考payload_dumper的使用说明即可

拯救OnePlus7t

开发的路上难免磕磕碰碰, 手机就启动不了, 做好防身技能

curl -L -O https://otafsc.h2os.com/patch/CHN/OnePlus7THydrogen/OnePlus7THydrogen_14.H.09_009_2001030048/OnePlus7THydrogen_14.H.09_OTA_009_all_2001030048_d935aae55ac.zip
curl -L -O https://github.com/yhnu/op7t/releases/download/v1.0/recovery-oneplus7t-3.4.2-10.0-b26.img
fastboot set_active a #is a or b
fastboot erase recovery
fastboot.exe flash recovery recovery-oneplus7t-3.4.2-10.0-b26.img 
fastboot.exe reboot recovery
adb sideload F:\F2021-07\one7t_kernel\OnePlus7THydrogen_14.H.09_OTA_009_all_2001030048_d935aae55ac.zip 

QA

wx: yhnu2023

op7t's People

Contributors

yhnu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

op7t's Issues

__init_begin符号找不到

我这边测试了krhook代码,运行发现__init_begin符号值为0,/proc/kallsyms 里面也找不到,环境是Linux version 4.19.81

Debugger ideas

If you want to make a debugger that can be used in practice, the hardware breakpoint can only be used as an auxiliary means, not as the main means (the hardware breakpoint is used only when it is absolutely necessary, and the cost is very high, and a specific model is required). Hardware breakpoint source code, you can refer to my project. I suggest the correct idea is: hook ptrace, so that it will not be detected. Even if it is a last resort, don't be detected too fast. Wait at least half an hour. The stability of this idea is guaranteed and the workload is small. In the later stage, it can be directly connected to debuggers such as IDA. I also know the mystery of the non universal Ko driver file of each model. I can implement a Ko driver file to run in the Linux kernel of different models. At the same time, I do not recommend compiling the kernel source code directly, because many official features and functions, such as more power-saving scheduling, cannot be used.

arm32 App堆栈打印失败

大佬你好,请教一下!

我按照您的方式,c9af4cd 加上了用户层堆栈输出,在64位App上可以正常回溯堆栈;但是在32位App上,回溯会不正常,我发现无论是32位还是64位app,都会调用到arch/arm64/kernel/stacktrace.c(32位不会调用到 arch/arm/kernel/stacktrace.c(修改成arm32堆栈回溯)),因此这里回溯的fp是arm64的fp X29。

所以想请教一下,对于arm32在arm64内核上的堆栈回溯,应该怎么改呢,或者大佬有什么思路或方向吗?感谢!(我使用的pixel 2 Android 10 内核版本 4.4.177)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.