自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (12)
  • 收藏
  • 关注

原创 安卓10平台DNS两层缓存

一、 背景当dns被污染后怎么也打不开网页,即使后来dns获取正确了,你会发现有段时间页无法访问该网页。有时候必须手动在浏览器端清除缓存才能正常访问。但是除了应用端的缓存外系统端还会有缓存的。我们做个实验: dns查询log ping操作由上面的操作我们可以看到 在第一次pi...

2021-07-20 11:16:39 2892 1

原创 android 系统应用导入AS遇到的问题

最近导入android10 Launcher3的项目到AS上遇到了各种问题导致编译不能继续,下面我们一个一个解决:1.'variant.getJavaCompile()' is obsolete and has been replaced with 'variant.getJavaCompileProvider()' 这个错误警告很有可能是gradle版本的问题,我们这份代码中默认的gradle版本是3.3.0,结合上面警告中被替换的得信息我们可能需要更老版本的gradle。 所以修改为3.

2021-06-28 11:16:56 807

原创 android10 dnsmasq 工作不正常问题

近期在android10的项目中用到了dnsmasq,正如大家所了解的一样,这东西是个解析并缓存dns的工具。但是本人发现无论预装的2.51版本还是我后来移植源码编译的2.78版本都不能正常。我本是打算用dnsmasq的 conf-file配置调用ipset的,但是通过log发现,即使dnsmasq成功的解析了ipset的指令,但是并没有设置成功。configfile.conipset=/baidu.com.com/iplistdnsmasq/src/option.c...

2021-04-25 12:16:47 2019 1

原创 android10 手势相关

由毕俊强创建, 最后修改于4月 02, 2021 13:59转至元数据起始systemui 和 launcher3通过ISystemUiProxy 和 IOverviewProxy进行了互相绑定,将自己的方法和状态提供给了对方。我们着重看一下手势服务./packages/apps/Launcher3/quickstep/recents_ui_overrides/TouchInteractionService.java privatevoidi...

2021-04-04 10:27:05 903

原创 android预装应用找不到so库问题

近日接到需求,产品大佬想要在平板上预装第三方应用接到这个平平无奇的需求的时候内心毫无波动我直接给他装到/system/app下吧,毫无难度········紧接着就开始了写Android.mk 然后编译,然后就:连系统都起不来······· log如下: 10-17 08:52:30.107 2747 2747 V PackageManager: reconcileAppsDatafornull u0 0x3 migrateAppData=true...

2021-04-04 10:26:00 2991 4

原创 MTK 平台TP 驱动

下面以汇顶gt9xx_driver.c 驱动为例讲解TP 驱动的整个关键点,本篇只讲TP 驱动本身的代码,在驱动代码涉及的方法技术,因为每一个都牵涉linux内核的设计和知识,后面会逐个展开深入讲解。首先,我们来总体看下TP 驱动代码初始化流程:MTK kernel-4.14 TP 驱动初始化和部分工作流程main.cmain.cgt9xx_driver.cgt9xx_driver.cmtk_tpd.cmtk_tpd.ci2c.hi2c.hkthread.hkthread.hwait.hwai

2021-04-04 10:25:10 1396

原创 Android O实现限制自启&&限制后台&&杀活方案

由 b178903294创建, 最后修改于12月 30, 2020上回书说到android的powersave lowmemorykiller 等的后台清理机制,与系统如何保证应用不被杀掉的保活方案。我们为了自己的应用能够常驻后台提供了系统保活的机制。那么其他三防应用为了自己能够永生,各种手段无所不用其极,绕过各种系统的杀活机制来达到常驻后台干些见不得人的勾当。所以我们常常见到系统运行的好好的突然各种弹窗,突然的cpu占用飙升猝不及防的卡死········ 即使我们信任的各种学习app后台罪行也是罄..

2021-04-04 10:24:15 2137

原创 android系统级保活方案

由b178903294创建, 最后修改于10月 29, 2020保活与杀活一直以来就是应用于系统间的博弈,魔高一尺道高一丈。各种奇奇怪怪的保活方案层中不穷,但是安卓随着系统版本的迭代,各种杀活策略更加严格,已经把流氓软件的可操作保活方法逼到了角落里面了··········作为系统杀活阵营支持者的我由于收到应用大佬们十分过分的要求(需要系统拉活他们的应用或服务),所以不得不帮助他们进行系统保活·········android系统原生方案简单的系统保活方案就是防杀和拉活:...

2021-04-04 10:22:24 1242

原创 Android powersave模式网络限制流程

由 b178903294创建, 最后修改于9月 01, 2020当用户在settings打开省电模式的开关后,系统会进入到省电模式,在各种方面进行限制以尽可能的省电。今天我们来分析一下,省电模式限制网络连接的逻辑。前言:首先分析一下打开省电模式按钮之后发生了什么:1、先来看一下Battery saver的switch开关,当我们打开Battery saver的时候//packages/apps/Settings/src/com/android/settings...

2021-04-04 10:21:34 2106

原创 camera自动升级失败问题

camera自动升级过程中失败:只有自动升级时才会失败,手动点击升级时是正常的。自动升级和手动升级调用的接口是完全一样的,并且都是通过EventBus 接收升级的event调用同一段函数进行处理,所以函数调用上没有任何区别,显然不是代码逻辑的错误。通过查看失败的log发现connect camera时超时了:折叠源码 ... UsbInterface[mId=1,mAlternateSetting=9,mName=null,mCla...

2021-04-04 10:21:00 1758

原创 android系统音效均衡方案

转至元数据起始一、单应用方案1.android系统为个应用提供了一套完整地音效控制方案,并且还为此提供了应用支持——MusicFX ,应用通过调用此app的activity来进行EQ调节。此app会为没一个调用者保存下来xml文件。2.android还提供了直接控制mediaplayer的audiofx库接口,在创建使用mediaplayer的时候可以设置一些音频参数。参考:https://blog.csdn.net/fishtosky/article/details/490686.

2021-04-04 10:19:19 1662

原创 系统卡死问题分析

问题背景:测试对平板 系统进行monkey压测时,出现了应用界面卡死的情况。测试脚本:monkey --ignore-crashes --ignore-timeouts --kill-process-after-error --ignore-security-exceptions --throttle 200 -v -v -v -s 5 10000000 1>>/sdcard/log.log 2>>/sdcard/log_err.log一边测试一边抓取logcat并.

2021-04-03 09:54:06 4950 3

原创 MTK 方案电池保护机制设计

我们分Driver 、HAL 、APP 三层来分别说明驱动层:在"kernel-4.4/drivers/power/mediatek/battery_common.c"文件中电池初始化时会设置电池的最大充电温度:#if defined(MAX_CHARGE_TEMPERATURE) batt_cust_data.max_charge_temperature = MAX_CHARGE_TEMPERATURE;#endifMAX_CHARGE_TEMPERAT...

2021-04-03 09:53:14 709

原创 RK WiFi驱动层初始化分析

RK3368 默认支持的WiFi芯片为AP6XXX系列,此芯片还默认支持BT。可以先看看原理图里面的的情况,方便我们理解其在代码里面的配置情况WiFi 设备配置:./rockchip/rk3368/*/rk3368-p9.dts此配置为WiFi kernel驱动在初始化时使用,包括芯片类型,ref voltage为1800mv, wake up irq为GPIO_ACTIVE_HIGHdevice/rockchip/rk3368/*/rockchip_defconfig.

2021-04-03 09:52:28 4309

原创 RK 传感器调用流程 从JNI 到 kernel driver

由毕俊强创建, 最后修改于3月 27, 2020转至元数据起始一、应用开发五步曲(1)获取传感器管理器对象; mSensorManager =(SensorManager) getSystemService(SENSOR_SERVICE); (2)获取传感器对象; mProximitySensor = mSensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY); (3)...

2021-04-03 09:51:47 548

原创 网络异常调试心路历程

由 b178903294创建, 最后修改于3月 27, 2020背景: 打通dnsmasq+ipset+iptables,并且导入了网络管控规则之后。网络管控功能基本流程跑通了。欢喜之余发现上网极其卡顿,ping经常获取不到DNS、丢包、反应慢······· 网页打开速度慢到无法接受同时经常打不开。这个时候对比中性版本,发现期初中性版本能够快乐的上网,但是随着带管控平板的上网使用卡顿,渐渐地中性版本也卡了。然后就开始怀疑公司网络和路由器有问题了。恰逢公司网络这几天不稳定,所以就摔锅...

2021-04-03 09:49:04 1033

原创 RK Audio HAL 音频通路设置与Codec原理

由 b178903294创建, 最后修改于3月 18, 2020一个平板项目中采用螃蟹卡ALC56561 作为硬件codec。由于声音播放前后过程中有pop声,所以对其硬件原理和驱动控制做了一番研究。一、专用术语ASLA - Advanced Sound Linux ArchitectureOSS - 以前的Linux音频体系结构,被ASLA取代并兼容Codec - Coder/DecoderI2S/PCM/AC97 - Codec与CPU间音频的通信协议/接口/总线DAI - D

2021-04-03 09:48:05 3667

原创 录像过程中拍照的流程 从framework到hal

由178903294创建, 最后修改于1月 20, 2020在VideoMode.java中 当拍照键按下VideoMode.java privateView.OnClickListener mVssListener =newView.OnClickListener() { publicvoidonClick(View view) { ~ LogHelper.i(TAG,"[mVssListener] bjq clic...

2021-04-03 09:47:17 820

原创 nmi_watchdog功能测试及解析

由 b178903294创建, 最后修改于9月 23, 2019严格意义来讲nmi_watchdog ,属于中断检测范畴,是基于非屏蔽中断NMI的检测机制,是一种内核状态监护的狗,关于其介绍可参考nmi_watchdog.txt 1 2 [NMI watchdog is availableforx86 and x86-64 architectures] 3 4 Is your system locking up unpredictably? ...

2021-04-03 09:46:27 5295

原创 PMC电源管理看门狗:iTCO_wdt

由b178903294创建, 最后修改于9月 19, 2019 版权所有,谢绝转载此看门狗相关寄存器位于PMC设备中,用于监控系统电源状态的。PMC (Power Management Controller) 是一个PCI device, pci地址为B/D/F=0/13/1,这个地址是IPC1/GCR/ACPI块的基地址。 关于pci地址如何计算出16进制物理地址请参照:PCI/PCIe基础——配置空间近日接到需求,在系统log中看到iTCO_wdt在probe的过程中失败: &gt...

2021-04-03 09:46:02 1294

原创 Apollo Lake SoC Telemetry Software Driver

该驱动程序通过PMC和PUNIT SRAMcounters和/或NPK跟踪提供对SoC IP的电源状态,CPU内核状态,s0ix驻留等的深入了解。 有关详细信息,请参阅Apollo Lake SoC外部设计规范,第4卷。接口文件位于:/sys/kernel/debug/telemetry/soc_states:提供 combined PMC and PUNIT telemetry event counters values。ioss_info:提供 raw PMC telemetry...

2021-04-03 09:45:43 206

原创 ArcIntentHelper流程及依赖

ArcIntentHelper的作用简而言之就是同步chromiumOS这端的用户操作和系统设置信息到安卓端,使两个系统用起来像一个系统。 具体实现的小功能包括但不限于:在chromiumOS端文件夹点击apk或者图片、音视频及文档 能够将这些文件通过ArcIntentHelper让安卓端的相应应用打开。 chromiumOS端的系统设置能够通过此服务同步到安卓的设置中,例如时间、时区、GPS、语言、无障碍、代理、蓝牙状态... 还能够实现chromium浏览器打开的页面同时让安卓端的浏览器打开。...

2021-04-02 12:53:07 138

原创 原生安卓 vold 流程及框架

前言: 由于谷歌AndroidContainers 中将Vold中的某些模块和代码进行了重写,通过mojom借道chromiumOS间接和内核进行通讯和操作,所以我们需要研究原生安卓中的vold的流程以作参考。为我们分析和实现AC中的vold理清思路。 Vold是Volume Daemon的缩写,它是Android平台中外部存储系统的管控中心,是管理和控制Android平台外部存储设备的后台进程。其功能主要包括:SD卡的插拔事件检测、SD卡挂载、卸载、格式化等。模块架构:...

2021-04-02 12:48:52 1125 2

原创 [AndroidContainer]sdcard分区挂载问题已知点分析

前言: chromiumOS与安卓容器之间不仅需要有数据沟通的桥梁ArcBridgeService 还要有文件交换的通道,那就是我们两个系统的下载目录。chromiumOS这边 编译时在build_packages添加esdfs USE标志 并且在platform2/arc/setup/etc/config.json 中设置为"USE_ESDFS": true,在/src/overlays/overlay-variant-coral-cvte/profiles/base/make.def..

2021-04-02 12:39:40 1968

原创 chromeos烧录包设置BIOS/EC 自动更新

由b178903294创建, 最后修改于8月 08, 2019一、更新流程及操作 我们烧录新系统的时候有时希望连同BIOS 和EC一起更新,但是按照之前的操作我们制作完USB包、recovery包和OTA包烧录完成后发现BIOS和EC并没有更新,所以这个问题着实影响到我们系统的后续升级。factory包会直接安装firmware,所以原理在此不讨论。 其实谷歌已经为我们提供了一套自动更新BIOS和EC的firmwareupdate的流程框架,我们直接调用已...

2021-04-02 12:04:37 1233

原创 Chrome中的Chrome OS D-Bus使用情况

D-Bus用于在Chrome OS上执行进程间通信。 本文档介绍如何使用D-Bus在Chrome和系统守护程序之间进行通信。共享常量system_api存储库包含在Chrome和Chrome OS系统守护程序之间共享的C ++常量和协议缓冲区.proto文件。 这包括D-Bus服务名称,路径和接口,信号和方法名称以及作为D-Bus参数传递的枚举值。系统守护程序基本上总是使用最新版本的存储库,而Chrome使用src / DEPS中指定的修订版。 在使用新常量或删除已弃用的常量时...

2021-04-02 11:59:06 388

原创 DBUS学习-DBUS实例

由 b178903294创建, 最后修改于8月 20, 2019一、原生DBUS实例原生dbus客户端代码和服务端代码:client.c折叠源码 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <dbus/dbus.h> v...

2021-04-02 11:57:14 2073 1

原创 chromeos-dbus-bindings

由 b178903294创建, 最后修改于8月 19, 2019 谢绝转载创建chromeos-dbus-bindings是为了补充libbrillo和简化D-bus与proxies的实现。从D-bus interface的XML规范生成C++类。生成的bindings不会直接处理methodCall对象并手动解包参数,而是负责为您整理和解组D-Bus方法调用参数。设定 chromeos-dbus-bindings定义对象和接口的XML格式与the introspectionA...

2021-04-02 11:50:29 158

原创 Chrome OS D-Bus最佳实践

Chrome OS使用D-Bus进行进程间通信。 在一个高层,D-Bus由一个由dbus-daemon进程管理的系统总线组成。 客户端(通常是系统守护程序或Chrome)通过/run/dbus/system_bus_socket连接到系统总线,并使用它来相互通信。本文档介绍了在Chrome OS系统守护程序中使用D-Bus的最佳实践。 有关在Chrome中使用D-Bus的详细信息,请参阅Chrome中的D-Bus使用情况文档。使用Chrome的D-Bus绑定。自2013年以来,...

2021-04-02 11:47:28 595

原创 ebuild学习记录

由于chrom os 是基于gentoo linux 的ebuild 进行包管理的所以想要在chrom os安装一些插件和库,就逃不掉ebuild的魔掌建立自己的 Overlay假设在/us/local目录中创建自己的 Overlay,方式是:# mkdir -p /usr/local/portage需要将 Overlay 路径告知 Portage 管理系统,即在/etc/make.conf文件中添加以下代码:PORTDIR_OVERLAY="/usr/local/p...

2021-04-02 11:42:33 706

原创 chromium控制终端使用条件

细心的小朋友们可能已经发现,我们release版系统中在开启系统验证后是无法进入终端的,包括ctrl+alt+F2终端和ctrl+alt+t 再输入shell进入终端。但是在关闭验证后就能够进入了,其他test或Dev版本无论何种情况均能够进入并使用终端,这就很神奇了。近日接到一个需求,要求release版系统在设置root密码并开启验证的情况下不能进入终端,原来release版系统在设置root密码后无论是否开启验证都能进入终端,这就是在出货时不能接受的了。所以接到需求的第一时刻就去搜寻终chromium

2021-04-02 11:31:17 328

原创 我也来做功放! 仿制拜亚动力A1

拜亚A1 https://item.taobao.com/item.htm?&id=534177038527&qq-pf-to=pcqq.c2c其实功放做完有一个多月了。这期间暑假有各种事情。现在补发一贴,与网友共享。为什么要仿制拜亚A1呢?烧友们都清楚这是拜亚动力几十年磨一剑的精品功放。搭配自家DT880有着先天的优势条件。是许多烧友所追求的搭配。但是原机价格虚高7000元左右的价格不是一般人能承担的。从一个专业角度来讲只谈物料成本A1也就1000左右。所以为了省钱 也为了

2020-07-15 22:52:07 1459 1

pentium-celeron-n-series-j-series-datasheet-vol-1.pdf

pentium-celeron-n-series-j-series-datasheet-vol-1

2021-04-02

559811-apl-iafw-vol2of2-bios-spec-rev2p1.pdf

559811-apl-iafw-vol2of2-bios-spec-rev2p1

2021-04-02

y410p-NM-A031-VIQY0.zip

y410p-NM-A031-VIQY0 联想Y410P主板原理图、点位图、点位图软件 一次性打包。 Y430P主板与Y410P一模一样,只是一些接口芯片和电容电阻没有焊接,所以才造成了功能差异性。 例如 Y410P 通过EDP转LVDS芯片输出768p或者900p视频信号到jlvds屏幕接口。而Y430P是EDP信号直接从另一路几个电容连到了jlvds屏幕接口。所以这两个设备都是能够通过焊接几个电容实现EDP接口 安装1080P高分屏的。

2019-11-04

FlexHEX.zip 自制工具刷路由器SPI FLASH 填充mtb0.bin

FlexHEX.zip 自制工具刷路由器SPI FLASH 填充mtb0.bin。 由于FlashTool V1.0下载到flash的bin文件必须跟flash大小一致。由于许多CFE文件很小所以造成image size doesn't match the flash chip's size的错误导致无法烧录。通过此工具手动填充CEF文件到合适的大小。

2018-03-21

FlashTool STM32F103ZET6通过USB串口烧写SPI flash的上位机

STM32F103ZET6通过USB串口烧写SPI flash。通过此工具结合自己制作的烧写flash工具进行烧录

2018-03-21

STM32F103ZET6通过USB串口烧写SPI flash源码

STM32F103ZET6通过USB串口烧写SPI flash源码。可用于路由器做SPI NAND双启动。将CFE通过此源码烧写的的开发板少路到SPIflash上。

2018-03-21

TFTP+CFE刷斐讯K3 32位系统专用工具

TFTP+CFE刷斐讯K3 32位系统专用工具 把备份的MTD0跟MTD0放TFTP软件目录下面,进CFE,改浏览器地址,分别刷入CFE跟系统。命令如下 192.168.2.1/do.htm?cmd=flash+-noheader+192.168.2.10:cfe.img+flash0.boot 192.168.2.1/do.htm?cmd=flash+-noheader+192.168.2.10:mtd0.img+nflash0.trx cfe.img文件就是你mtd0,mtd6_linux.img就是MTD6文件,文件名可以随便改

2018-03-21

RoutAckProV1B2-K3

K2 K3 K3C 激活TELNET工具。K3刷机降级工具 K3 246及以上版本支持

2018-03-21

portable-putty-0.70cn.zip

PuTTY是一个Telnet、SSH、rlogin、纯TCP以及串行接口连接软件。

2018-03-21

基于pic单片机数字电压表仿真设计

基于pic单片机数字电压表仿真设计

2014-06-23

基于PIC单片机的直流电压测量计

基于PIC单片机的直流电压测量计

2014-06-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除