自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

程序改变生活

努力,才配有未来;扛得住,世界就是你的。

  • 博客(371)
  • 资源 (14)
  • 收藏
  • 关注

原创 Wireshark进阶用法-IO图表与TCP流统计

我们在日常分析网络问题时,经常会遇到一些游戏类或者视频类下载类应用问题。这时,就需要去分析应用层的协议,一般应用层协议对应到传输层,常见的有UDP或TCP流。 本文对于Wireshark常见流分析提供一种方法。一、IO图表1.wifi上行链路情况2.wifi下行链路情况3.wifi上行控制帧情况4.wifi下行控制帧情况5..竞争状态-RTS发包情...

2019-06-11 09:04:07 6481

原创 我的2014

谨以此文,献给还在奋斗中的自己。我的2014不是那么顺利,继而浮躁、怨天尤人,脾气暴躁、自暴自弃;殊不知暴躁是懦弱的表现。我不在踏实,急功近利;直到岁末的这几天,我慢慢在思考、慢慢在痛苦、也慢慢在成长和振作。不比别人少一根指头,不比别人缺一条胳膊;别人可以努力得到的,自己为什么就在做白日梦?!机会是自己日积月累付出的回报;那些含泪播种的人,也一定会含笑收获。人的顿悟往往发生在最

2014-12-11 23:03:04 1236

原创 arm-linux学习大纲

总结入门到现在过程:1.基于mstar801平台Linux2.6.35.11从源码静态学习;2.基于mstar901平台Linux3.1.10开始做系统调用,从用户态切入内核态;3.基于Android2.3的模拟器内核版本Linux2.6.29对内核启动过程做动态调试;4.基于Skyeye模拟器在内核版本Linux2.6.17上做动态调试;5.基于AM6C平台Linux3.0.

2014-12-06 16:10:43 1314

原创 skyeye学习目录

一、入门级使用skyeye模拟器的安装skyeye模拟器使用—模拟s3c2410的uboot启动skyeye模拟uboot启动linux(initrd方式)二、分析1.ubootuboot编译连接脚本文件uboot.ldsskyeye之uboot启动过程分析uboot启动内核代码分析

2014-12-06 14:23:45 895

原创 Linux下程序的编译链接及装载(解释)运行

1.ubuntu下helloword编译连接过程分析《C编译原理》ubuntu下helloword编译连接过程分析2.ubuntu下helloworld程序加载运行分析《C编译原理》ubuntu下helloworld程序加载运行分析

2014-03-20 13:40:09 1365

原创 Linux设备文件系统节点的创建—从mknod到devfs再到udev

《Linux设备节点创建》手动与自动创建设备节点本节是对上处链接的进一步研究。一、Linux2.4之前手动mknod驱动编写:static int __init test_drv_init(void) { int rc;printk("test_driver dev\n");//注册设备rc = register_chrdev(TEST_MAJO

2014-01-03 15:56:17 6105

原创 Android系统RPC与Binder

RPC与IPC关系:1.相同点:二者都可以用于进程间;2.不同点:RPC强调的是调用、即一个进程直接调用另外一个进程中的方法,而IPC仅仅完成进程间的互通信、没有调用。Android系统中的Binder即为RPC的一种实现方式;类似COM或CORBA。

2013-12-18 14:46:12 6815

原创 《Linux启动过程分析》之区别Initramfs与initrd

一、简介1.initrd  在早期的linux系统中,一般只有硬盘或者软盘被用来作为linux根文件系统的存储设备,因此也就很容易把这些设备的驱动程序集成到内核中。但是现在的嵌入式系统中可能将根文件系统保存到各种存储设备上,包括scsi、sata,u-disk等等。因此把这些设备的驱动代码全部编译到内核中显然就不是很方便。  在内核模块自动加载机制udev中,我们看到利用udevd可以

2013-11-22 15:32:42 24358

原创 《Linux中断编程》中断处理底半部

一、Linux内核中断机制1.同步中断:当一条指令执行完毕后,由CPU控制单元产生、而不是发生在代码指令执行期间的中断。也叫异常,例如系统调用这类软中断。2.异步中断:由其他硬件设备依照CPU时钟信号随机产生、能够发生在指令执行过程中的中断。例如键盘中断,这是狭义上的中断概念。广义上的中断应该包含上述两个部分。二、中断上下文在Linux系统中,不论异步中断还是同步中断、

2013-10-29 14:29:15 3398

原创 《Linux启动过程分析》init进程挂载其他重要文件系统

说明:本分析基于Linux2.6内核和Android2.3版本,其他版本仅供参考。一、前言  从前边《Linux内核启动之根文件系统挂载分析》一文我们分析到Linux内核启动之后的根文件系统要么是rootfs(ramdisk释放到rootfs后,其根目录存在init的情况下),要么是磁盘等文件系统;系统根目录要么是rootfs的根目录,要么是磁盘的根目录。  但我们一直特别关心的设备文

2013-09-30 17:15:55 4398

原创 《Linux启动过程分析》内核挂载根文件系统

前边通过源码情景分析,看过了总线、设备、驱动及其发现机制,Linux2.6内核udev设备节点创建相关;对于文件系统,一直望而生畏,但内核学习这部分又不可能绕的过去。目前对VFS中使用的hash表还未做研究,它在dentry和vfsmountf下查找节点起关键作用;后边在做分析。下边将根文件系统挂载过程做简单分析:一、rootfs的诞生引子:Linux一切皆文件的提出:在Linux中,

2013-09-27 14:56:59 28075

原创 《Linux总线、设备与驱动》自己写的demo

本demo基于Android2.3模拟器开发,内核代码(Linux2.6.29)和Android代码可以在网上下载、这里不在说明。一、驱动1.总线驱动功能:总线驱动;提供设备注册和设备驱动注册以及设备与设备驱动匹配等函数功能。testbus.c#include #include #include #include #include #include "lddbus

2013-09-16 17:53:20 3345

原创 《Linux总线、设备与驱动》USB设备发现机制

一、USB总线驱动kernel/drivers/usb/core/driver.cEXPORT_SYMBOL_GPL(usb_register_driver);EXPORT_SYMBOL_GPL(usb_deregister);EXPORT_SYMBOL_GPL(usb_register_device_driver);EXPORT_SYMBOL_GPL(usb_deregiste

2013-09-13 13:00:37 16966

原创 uboot之ARM位置无关代码设计

前言:所谓位置无关代码是指:可执行镜像test.bin我将它拷贝至内存0x30000000,然后pc = 0x30000000、它可以顺利执行;我将它拷贝至内存0x38000000,然后pc = 0x38000000、它仍可以顺利执行。1.程序的编译及运行流程源码经过编译、汇编(生成相对地址符号表)和连接(提供绝对首地址、进而确定绝对地址符号表)后编程可执行镜像;特别指出地

2013-05-10 12:34:41 2006

原创 Linux平台下ARM-Linux交叉编译工具链

交叉编译工具链包括:gcc、glibc和binutils三个部分。以下是ubuntu平台下ARM的编译:一、反汇编工具arm-linux-objdump -D -S hello >log  //查看hello的汇编代码二、ELF文件查看工具arm-linux-readelf -a hello >log  //查看hello文件arm-linux-readelf -d hel

2013-05-08 21:15:53 1363

原创 《Linux启动过程分析》内核启动init进程

一、0号进程idle进程启动,这是系统唯一不通过do_fork创建的进程kernel2.6.35.11/init/main.casmlinkage void __init start_kernel(void) //内核线程,0号进程idle进程{ ...... tick_init(); boot_cpu_init(); page_address_init();

2013-04-28 03:24:50 2954

原创 bionic库增加Andorid系统调用

系统调用例程:libc中有关系统调用1.jb/bionic/libc/unistd/open.c2.jb/bionic/libc/arch-arm/syscalls/__open.Skernel中系统调用相关3.kernel3.1.10/arch/arm/kernel/ehtry-common.S4.kernel3.1.10/arch/arm/kernel/entry-ar

2013-03-21 12:53:12 3135

原创 Android系统wifi分析-手动连接过程

1.已保存显示时间较长16:59:50~16:59:55原因是,刚好系统保存热点信息里边没有该热点;没有匹配上:07-16 16:59:51.017 1318 2154 D WifiService: SAVE nid=0 config=* ID: -1 SSID: "xiaomi55" PROVIDER-NAME: null BSSID: null FQDN: null PRIO: 0...

2019-07-18 18:52:41 3423

原创 802.11 traffic id

从sniffer 看,NULL data 会在两个tid之间跳动,而seq number连续,可能会导致一些AP出问题:

2019-07-11 21:41:18 887

原创 Android下NUD相关

这里NUD(Neighbor Unreachable Detection,邻居不可达检测);控制收到NUD_FAILED后、是否断开网络,主要有两个部分:1.frameworks/opt/net/wifi/service/java/com/android/server/wifi/WifiStateMachine.javaPrivate Boolean mIpReachabilityDisc...

2019-07-05 09:09:35 2218

原创 典型问题分析——三方应用网络异常分析方法

网络角度分析应用的卡顿等问题;需要确认应用使用的是http或者其他应用层协议、并对应到传输层的TCP或UDP协议。一般确认链接的方法有:1.通过系统的log06-29 13:51:45.681 6756 6831 D Linux : [Posix_connect Debug]Process com.tencent.mobileqq:MSF :80 ip--111.230.189...

2019-07-02 19:29:24 4097

原创 高通wlan常用工具

一、耦合测试QRCT二、死机问题QPST抓取QCAP解析三、modem侧logQXDM抓取打开QXDMFile->Load ConfigurationOptions->Communications->Connect右键->Configure->Log PacketsFile->Save Items...

2019-06-27 09:51:30 1391

原创 高通WLAN驱动分析

一、硬件部分整体架构其实主要由三部分组成:运行在modem侧的wcnss arm9处理器,AP,以及WLAN芯片。二、软件组成1.位于modem侧的hlos运行固件,启动子系统2.运行与ap侧的一些守护进程,完成固件配置的下载高通wlan驱动,主要是通过ap去控制该wcnss arm9的wifi基带处理器。三、驱动代码组成驱动初始化电源初始化:wlan_hdd_...

2019-06-27 09:45:19 5622

原创 天线测试和射频测试

一、天线测试测试工具:矢量网络分析仪归一化阻抗、归一化导纳反射系数()、回波损耗(RL) 、电压驻波比(VSWR)隔离度二、无线射频测试测试工具:射频网络分析仪ETSI EN 300 328、ETSI EN 301 893、MIC Notice No.88 Appendix No.43&44、MIC Notice No.88 Appendix No.45&...

2019-06-27 09:43:12 6303

原创 典型问题分析——speedtest测试分析方法

speedtest分别用4个http连接,进行上下行测试1.从tcpdump中大量有关speedtest数据包来看,可以确认speedtest测试使用:外网服务器地址是:125.74.203.18;端口是” tcp.port eq 8080”。2.过滤DUT与服务器的交互数据ip.src eq 192.168.0.103 && tcp.port eq 8080...

2019-06-25 21:43:27 5868

原创 MAC本抓包方法

一、搜索“无线诊断”应用程序二、在“无线诊断”应用程序中找“嗅探器”

2019-06-25 16:26:11 2788

原创 Linux设备驱动开发——I2C总线原理与时序

一、I2C总线概述 I2C总线有两根线:SCL有一定的时钟周期控制信号、SDA数据线 I2C属于边沿触发类总线:即当SCL处于上升沿时,接收器接收信号 总线空闲状态为:SDA和SCL都处于高电平状态 I2C只要主设备才能操作SCL时钟控制线,从设备应答信号为拉低SDA数据线电平。二、I2C传输过程理解 规定:SCL处于高电平期间,SDA是不可以变化的;因为,SCL...

2019-06-20 08:20:18 497

原创 Linux驱动开发——各种外设总线

一、外设控制器与cpu通过AHB等总线连接二、cpu与外设控制器组成soc1.常见外设控制器GPIO控制器MIPI控制器I2C控制器三、soc中外设控制器与外设间的总线MIPI总线I2C总线...

2019-06-19 17:14:59 1076

原创 Linux驱动开发——设备树dts与of(open firmeware)架构

一、设备树的引入二、of常用接口及dts文件

2019-06-19 15:30:26 938

原创 典型问题分析——wifi吞吐量测试和分析方法

一、手机吞吐量测试方法准备工具:手机侧安装Magic Iperf软件;PC侧安装iperf.exe1.上行吞吐量测试方法手机作为client端,PC为server端2.下行吞吐量测试方法手机作为server端,PC作为client端TCP的只需要去掉-u参数即可:-i表示几秒回显一次,-t表示测试时常,-w表示缓存区大小注意,UDP测试方法见下图:二、影响w...

2019-06-14 13:33:25 10081

原创 Wifi P2p与WPS的两种认证方式

一、Wifi P2p的认证方式 Wifi P2p连接采用WPS认证方式;WPS认证有两种形式:WPS按钮:config.setup = WpsInfo.PBCWPS的PIN码参数:config.setup = WpsInfo.DISPLAY二、WPS两种认证方式说明1.WPS按钮2.WPS的PIN码参数...

2019-06-11 19:27:03 2283

原创 WifiDisplay逻辑分析

一、概述底层使用Wifi Direct技术。二、Source与Sink逻辑1.Source端打开WifiDisplay方法;即所有动作都是通过WifiDisplayController完成:Settings.Global.putInt(getContentResolver(),Settings.Global.WIFI_DISPLAY_ON, mWifiDisplayOnSett...

2019-06-07 16:36:02 1071

原创 蓝牙BLE与iBeacon

一、蓝牙BLE

2019-06-06 15:42:33 1614

原创 WLAN电源管理-Doze与包过虑

一、Doze1.Doze白名单机制与网络访问2.Alarm的wakeup机制二、包过虑1.allow TCP配置如下:gDisablePacketFilter=1早期包过虑机制早期高通平台使用allow TCP的方案;上层接口有手机厂家自己封装。一般应用通过数据库变量直接控制到framework service,而系统框架则通过setCountry方式c...

2019-06-06 13:41:47 439

原创 Android扫描中文SSID的隐藏热点

一、Android支持的中文编码1.UTF-82.Gbk二、Android系统隐藏热点的扫描1.HIDDEN字段:注意,改字段决定是否加密2.隐藏热点扫描,一般先进行save动作注意:热点名称相同,但加密方式不同的网络;系统认为是两个热点...

2019-06-06 13:30:06 3005

原创 NAN协议与WiFi Aware

一、NAN协议1.协议简介即Neighbor Awareness Networking协议其中:NAN Synchronization Beacon和NAN Discovery Beacon帧至少以6Mbps速率传送NAN Service Discovery Public Action帧应支持OFDM的6,9,12,18,24,36,48,54Mbps数据速率2.NAN信道...

2019-06-06 11:16:55 7117

原创 Android系统wlan的sta流程梳理

一、wpa_cli命令理解wpa_supplicant流程二、WifiStateMachine与wpa_supplicant的衔接三、应用程序通过WifiManager与WifiStateMachine的衔接四、wlan的sta模式系统层面上的策略1.后台扫描2.连接设备管理...

2019-06-06 08:31:25 769

转载 IEEE802.11mc与wlan rtt

一、WfFi Rtt1.基础知识IEEE802.11mcWi-Fi协议(即Wi-FiRound-Trip-Time,RTT),利用此项技术及可以进行室内定位,因此为了使用此项技术,只有在硬件支持的设备上,应用才可以使用最新的RTT API以测量附近具有RTT功能的Wi-FiAP。https://www.cnblogs.com/huangguanyuan/p/9990828.html...

2019-06-03 10:50:02 4772

原创 wifi的peer to peer

一、p2p的网络架构 不同于sta或者softap模式;wifi的p2p是作为一种对等网络存在的。 即每一个p2p节点,都可能成为go设备、当然也可能成为client设备;类似于蓝牙网络。二、Android系统p2p调用流程1.初始化WifiP2pManager.initialize()建立与WifiP2pService的通信。2.扫描WifiP2pMan...

2019-05-31 14:40:56 1097

原创 WLAN的Roaming机制

一、搭建无缝Roaming环境1.主路由器的频道、SSID、加密类型、加密密码与副路由器保持一致;2.主路由器选择DHCP分配IP地址;3.副路由器关闭DHCP、配置一个主路由器网段的IP地址,主副路由器之间通过Lan2Lan口连接。二、Android相关的Roaming1.wpa_supplicant的log如下D/wpa_supplicant( 1551): nl...

2019-05-29 17:35:46 3754

NTFS_3G文件系统支持包

Android系统支持NTFS分区的RW挂载

2015-04-03

bridge-utils

移植到Android系统的brctl,直接在Android系统源码mm编译。

2015-01-07

WifiAP将wifi作为AP

将Android设备设置为AP的应用程序

2014-12-25

双向jni调用

双向jni调用,java调用c和c调用java

2014-12-17

Wifi测试apk源码

打开wifi,获取wifi状态和关闭wifi的demo程序

2014-12-15

Android应用反编译工具-unbuntu

unbunt下apk反编译,测试可以使用。

2014-09-12

Inphi芯片的U盘量产工具

修复被恶意病毒更改后文件系统类型为RAW,不能显示容量的U盘;此处仅限Inphi芯片的U盘!

2014-05-05

ubuntu下JDK5

ubuntu上可以使用的JDK5;在ubuntu11.10下测试可用。

2014-03-17

Binder双向通信用例

Binder双向通信Native用例,Android2.3。

2014-03-14

binder用例源码

可用的Binder在Native层用例;在Android2.3测试可以使用。

2014-03-07

Windows下Cool Edit音频查看

Windows下查看PCM流,简体中文。

2014-03-03

window下YUVviewerPlus图像查看

该工具可以将原始yuyv(如yuv422选择yuy2,需要后缀改为.yuv),rgb(rgb24选择gbmp24,需要后缀改为.bmp)等数据文件显示出来。

2013-11-27

高通copybit

copybit实现,高通平台,基于Android2.2

2012-03-28

Android rtp_test.cpp

Android 4.0之rtp_test

2012-03-06

空空如也

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

TA关注的人

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