<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[D0m1no的博客]]></title><description><![CDATA[仅此一生，竭尽全力。]]></description><link>https://blog.youkuaiyun.com/AngryDog1024</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; AngryDog1024]]></copyright><item><title><![CDATA[【杂谈】一些总结和规划]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/149064405</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/149064405</guid><author>AngryDog1024</author><pubDate>Wed, 02 Jul 2025 11:59:44 +0800</pubDate><description><![CDATA[上次写博客还是一年前，刚入职一家芯片小厂，被安排了wifi6特性验证的任务，有一些心得想记录。今天差不多是我毕业及工作满五年，想对过去五年我的职业道路做个回忆、总结，对未来几年的职业发展做个规划。]]></description><category></category></item><item><title><![CDATA[【WIFI-6】wifi6的一些理解]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/139774458</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/139774458</guid><author>AngryDog1024</author><pubDate>Mon, 24 Jun 2024 15:02:43 +0800</pubDate><description><![CDATA[最近入职新公司，被分配了wifi6特性验证和测试的任务，所以整篇文章记录下自己的一些理解(基础原理部分不做介绍了)参考资料没有精力去上传这些资料或者贴链接，读者有意可以私信找我。]]></description><category></category></item><item><title><![CDATA[wifi连接上后是怎么提供网络的?]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/136563812</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/136563812</guid><author>AngryDog1024</author><pubDate>Fri, 08 Mar 2024 17:04:47 +0800</pubDate><description><![CDATA[WifiService 在开机完成后就像 CS 注册了一个 NetworkProvider，并经由这个NetworkProvider注册了一个 NetworkOffer，只不过处于一个无法向外提供服务的状态。当连接上某wifi（完成了数据链路层的连接）后，wifi 创建一个 NetworkAgent 用于管理这个网络，同时CS创建一个 NetworkMonitor 用于监管这个网络。]]></description><category></category></item><item><title><![CDATA[[杂谈]我未来的职业发展]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/134570432</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/134570432</guid><author>AngryDog1024</author><pubDate>Thu, 23 Nov 2023 10:40:23 +0800</pubDate><description><![CDATA[前段时间六个月的试用期过了，简单走了下流程转正。谁知很快就得到内部消息，整个公司组织架构面临调整，连带着，整个IOT研发部将有一部分人出走新的公司，而我就在这部分人之中。新的公司以为座舱研发操作系统为主要业务。唏嘘过后，我开始从一些角度审视自己的职业道路，它将延伸向何方，又将延伸多远。]]></description><category></category></item><item><title><![CDATA[[杂谈]未来的学习计划]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/130720101</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/130720101</guid><author>AngryDog1024</author><pubDate>Wed, 17 May 2023 11:22:45 +0800</pubDate><description><![CDATA[最近终于从老东家离职，入职了新公司换了一家打工，心中有压制不住的兴奋，尤其是入职几天发现自己的主要任务是做特性开发，不用花太多时间在交付问题上的时候入职之后，有从内部文档找到这样一段话，其实也就是放在BOSS直聘上的招聘需求（高级）无线协议工程师工作职责：1. 负责Android手机系统短距离通信（WiFi/BT/NFC/UWB/GNSS）相关功能模块研发；2. 负责智能移动设备与智能汽车、智能家居设备的互联功能开发、技术预研与功能创新；]]></description><category></category></item><item><title><![CDATA[《理解了实现再谈网络性能》读书笔记]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/130621598</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/130621598</guid><author>AngryDog1024</author><pubDate>Thu, 11 May 2023 14:42:21 +0800</pubDate><description><![CDATA[内核和⽹络设备驱动是通过中断的⽅式来处理的。当设备上有数据到达的时候，会给 CPU 的相关引脚上触发⼀个电压变化，以通知 CPU 来处理数据。对于⽹络模块来说，由于处理过程⽐较复杂和耗时，如果在中断函数中完成所有的处理，将会导致中断处理函数（优先级过⾼）将过度占据 CPU ，将导致 CPU ⽆法响应其它设备，例如⿏标和键盘的消息。因此。上半部是只进⾏最简单的⼯作，快速处理然后释放CPU ，接着 CPU 就可以允许其它中断进来。剩下将绝⼤部分的⼯作都放到下半部中，可以慢慢从容处理。]]></description><category></category></item><item><title><![CDATA[【杂谈】一些碎碎念]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/130019897</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/130019897</guid><author>AngryDog1024</author><pubDate>Thu, 13 Apr 2023 10:56:19 +0800</pubDate><description><![CDATA[面试告一阶段了，有了一些心仪的offer，下午跟老板提了离职，和组里的几个好友也说了下。并没有感觉一身轻松，相反，竟有些惆怅。人总是会在一些意义重大的时刻审视自己。回顾我的职业发展道路，入职被分去modem，因为一些机缘巧合又被拉去做wifi，跟了一个不错的导师，干着android开发的活，吃了点fwk的源码和协议，导师一离职，走马上任，被迫处理了很多疑难杂症问题，有整理一些方法论。干到现在，愈发意识到，深入底层的重要性，决意往驱动方向去做，奈何在这层的开发经验太少，没有任何能去芯片厂的机会。]]></description><category></category></item><item><title><![CDATA[【杂谈】一些面经]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/129857643</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/129857643</guid><author>AngryDog1024</author><pubDate>Thu, 30 Mar 2023 15:58:10 +0800</pubDate><description><![CDATA[上条博客竟是去年十月份写的，而今已是快四月了。半年时间真是快啊。没有写什么博客，一是因为工作业务多，二是本身也没所有什么想记录和输出的，这次只是纯纯吐槽一些东西，补点面经。]]></description><category></category></item><item><title><![CDATA[对双STA-双连接的一些思考]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/127009275</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/127009275</guid><author>AngryDog1024</author><pubDate>Thu, 29 Sep 2022 15:00:19 +0800</pubDate><description><![CDATA[近期做这个开发，因为要和硬件同事合作，花了很多功夫和他们解释为什么双连接提升不了吞吐实际上，我自己也对这个特性有很多不懂的地方，实在头痛，这里整篇文章，把自己最近的困惑写一下基本都是口语化，没什么逻辑。]]></description><category></category></item><item><title><![CDATA[wifi研习者 专栏的学习笔记]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/126993561</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/126993561</guid><author>AngryDog1024</author><pubDate>Fri, 23 Sep 2022 17:42:43 +0800</pubDate><description><![CDATA[我是个中度游戏爱好者，平时闲下来只会选择去打游戏。我很喜欢只狼、老头环之类的大作，不闲的时候就忙里偷闲，去b站看这类游戏的剧情解析，所以认识了龙崎棒棒糖这个up主，他有一系列视频专栏解析这些魂类游戏的剧情，看的我很是着迷。这些专栏都以 研习者 命名，比如，狼学研习者，环学研习者。有一天，机缘巧合，我刷知乎刷到了 徐方鑫，他也有一个文章专栏，叫  :，文章大概有一百多篇，我很喜欢 研习者 这个词，所以点进去看了几篇。此人是个博士，就读期间专门研究802.11协议，里面的很多文章，我读完感觉深受启发。]]></description><category></category></item><item><title><![CDATA[初探Android S 双STA]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/126780101</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/126780101</guid><author>AngryDog1024</author><pubDate>Thu, 15 Sep 2022 14:47:02 +0800</pubDate><description><![CDATA[Android S 双STA]]></description><category></category></item><item><title><![CDATA[【Android S WiFi Framework】我的一份笔记]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/125692909</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/125692909</guid><author>AngryDog1024</author><pubDate>Sat, 09 Jul 2022 15:22:16 +0800</pubDate><description><![CDATA[昨天出差来了重庆，组里有意让我给新人简单介绍下Android WiFi Framework。
然鹅，我对fwk的理解还停留在Android R上，所以写一份笔记简单记录下我对Android S WiFi Framework的一些理解，这篇文章不放入任何专栏，且长期更新。(主要看心情)
由于是笔记，所以写的比较随意，不会用心去画什么图来详细展示。packages/modules/Wifi/ 路径下
开机时，SystemServer会去 load wifi service jar，创建WifiService，然]]></description><category></category></item><item><title><![CDATA[【wpa_supplicant】driver如何告诉supplicant自己做的一些事情以及结果]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/125463074</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/125463074</guid><author>AngryDog1024</author><pubDate>Sat, 25 Jun 2022 20:41:57 +0800</pubDate><description><![CDATA[按之前计划的，这期我们来看 driver如何告诉supplicant自己(被要求)做的一些事情以及结果老样子，adb logcat -c /adb logcat -s wpa_supplicant
会发现如下的类似打印于是我们定位了 driver与supplicant通信的关键一环还记得之前 wpa_supplicant 初始化过程中调用的 nl80211_global_init 吗
这里其实描述的有些错误
在 nl80211_register_eloop_read 之前有一行目前看不大懂，但大致能猜到这是]]></description><category></category></item><item><title><![CDATA[【wpa_supplicant】从 assoc 动作窥伺supplicant与driver的交互(二)]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/125433478</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/125433478</guid><author>AngryDog1024</author><pubDate>Thu, 23 Jun 2022 20:32:26 +0800</pubDate><description><![CDATA[关于nl80211和cfg80211
这个之前一直困扰，今天问了下坐我旁边的大神，终于稍微懂了点nl80211 是内核的一套无线驱动接口，标志性的特征就是 TAG-DATA一一对应，例如
bssid = nla_data(info->attrs[NL80211_ATTR_MAC]);  就是从netlink msg中取出mac存到bssid中去
wpa_supplicant 发起的MLME命令都是按固定格式发送netlink msg（socket通信）给nl80211（supplicant是用户态，而nl8]]></description><category></category></item><item><title><![CDATA[【wpa_supplicant】从 assoc 动作窥伺supplicant与driver的交互(一)]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/125396729</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/125396729</guid><author>AngryDog1024</author><pubDate>Tue, 21 Jun 2022 20:17:17 +0800</pubDate><description><![CDATA[最近看到了一个大神的博客，结合自己学习 wpa_supplicant 的体验，有了一些感悟。ok, 总结完毕。这一期，打算从一个具体的动作 assoc 入手，去看 wpa_supplicant 与 driver 的交互，简单点说，assoc 这个动作怎么调起的driver
wpa_supplicant_associate 需要传入两个参数 wpa_bss, wpa_ssid
可以看到 wpa_supplicant_associate 的最终操作就是把 connect 动作塞进 radio_work 队列一个]]></description><category></category></item><item><title><![CDATA[【wpa_supplicant】 初始化]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/125205137</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/125205137</guid><author>AngryDog1024</author><pubDate>Fri, 10 Jun 2022 11:23:01 +0800</pubDate><description><![CDATA[wpa_supplicant 初始化]]></description><category></category></item><item><title><![CDATA[【wpa_supplicant】入门 && eloop 机制]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/124734274</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/124734274</guid><author>AngryDog1024</author><pubDate>Sat, 04 Jun 2022 17:13:29 +0800</pubDate><description><![CDATA[wpa_supplicant入门 && eloop机制]]></description><category></category></item><item><title><![CDATA[IEEE 802.11 无线局域网络 (Wireless LAN) 笔记]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/123347049</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/123347049</guid><author>AngryDog1024</author><pubDate>Tue, 08 Mar 2022 10:37:17 +0800</pubDate><description><![CDATA[昨天看了 IEEE 802.11 无线局域网络 (Wireless LAN) ，写份笔记简单记录下之前不甚理解的地方。
DCF &amp;&amp; PCF
首先，明确 DCF 是 contention-based ，而 PCF 是 contention-free
PCF 中存在一种 PC(Point Coordinator) 的角色，它会按一个 polling list 轮询 PCF 中的每个基站有无封包要送
RTS &amp;&amp; CTS
需要知道 RTS &amp;&amp; CTS 是为了解决]]></description><category></category></item><item><title><![CDATA[【wpa_supplicant】Day 3 eloop]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/122113808</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/122113808</guid><author>AngryDog1024</author><pubDate>Thu, 23 Dec 2021 20:15:49 +0800</pubDate><description><![CDATA[文章目录重要的结构体eloop_runhandler
本文主要摘自 wpa_supplicant之eloop_run分析
重要的结构体
struct eloop_sock_table {
	size_t count;
	struct eloop_sock *table;
	eloop_event_type type;
	int changed;
};
struct eloop_sock {
	int sock;
	void *eloop_data;
	void *user_data;
	eloop_sock]]></description><category></category></item><item><title><![CDATA[【wpa_supplicant】Day 2命令及控制]]></title><link>https://blog.youkuaiyun.com/AngryDog1024/article/details/122067147</link><guid>https://blog.youkuaiyun.com/AngryDog1024/article/details/122067147</guid><author>AngryDog1024</author><pubDate>Tue, 21 Dec 2021 20:51:00 +0800</pubDate><description><![CDATA[文章目录命令控制
命令
WPAS对外通过控制接口模块与客户端通信。在Android平台中，WPAS的客户端是位于Framework中的WifiService。用户在Settings界面进行Wi-Fi相关的操作最终都会经由WifiService通过发送命令的方式转交给wpa_supplicant去执行。
WPAS定义了许多命令，常见的：

PING：心跳检测命令。客户端用它判断WPAS是否工作正常。WPAS收到”PING”命令后需要回复“PONG”。
MIB：客户端用该命令获取设备的MIB信息。
STATUS]]></description><category></category></item></channel></rss>