<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[headwind的博客]]></title><description><![CDATA[版权声明：欢迎评论和转载，转载请注明来源]]></description><link>https://blog.youkuaiyun.com/headwind_</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; headwind_]]></copyright><item><title><![CDATA[记一次数组越界的BUG]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/123959324</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/123959324</guid><author>headwind_</author><pubDate>Mon, 04 Apr 2022 21:09:01 +0800</pubDate><description><![CDATA[（这是19年遇到的一个问题，现在回来看看，有了不一样的收获~）

问题：Android下执行reboot recovery后， 黑屏无输出，重新上电也还是黑屏

具体现象：执行reboot recovery后，进入recovery下黑屏能够输入命令，但是recovery服务已经挂了，busybox reboot 重启后仍然进入recovery；断电后再次上电还是进入recovery。

背景：
（1）3月26号发现该问题
（2）3月23号reboot recovery正常

这个问题要怎么解决呢？下面开始我]]></description><category></category></item><item><title><![CDATA[Android P SELinux (四) CTS neverallow处理总结]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/119711869</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/119711869</guid><author>headwind_</author><pubDate>Sun, 15 Aug 2021 16:59:11 +0800</pubDate><description><![CDATA[CtsSecurityHostTestCases
首先CTS测试里面关于neverallow的用例，可以学习下这篇文章，代码是动态生成的
Android CTS中neverallow规则生成过程
下面主要分享一些遇到的 CTS neverallow问题的处理方法：
目录一、一些权限的解决方案1.1、区分vendor域和system域1.2、setenforce的可行性1.3、dac_override 解决办法1.4、echo打印到终端1.5、读写U盘内容1.6、am 命令1.7、ioctl二、常见违反nev]]></description><category></category></item><item><title><![CDATA[Android P SELinux (三) 权限检查原理与调试]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/119709982</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/119709982</guid><author>headwind_</author><pubDate>Sun, 15 Aug 2021 11:44:06 +0800</pubDate><description><![CDATA[目录引子一、权限检测原理1、拥有的权限2、需要的权限3、裁决4、其他二、avc denied信息分析三、调试1、快速编译和替换1.1 编译和替换1.2 load_policy2、尽量使用宏3、使用属性4、setools工具四、参考文章
引子
我们在处理SELinux权限问题的时候，avc denied信息是最关键的，那么avc denied 的打印信息要怎么看、里面的内容每一个字段是什么意思？kernel log的avc denied信息是哪里打印出来的？
以前有个想法，我们系统的操作、命令都是有限的，那其]]></description><category></category></item><item><title><![CDATA[Android P SELinux (二) 开机初始化与策略文件编译过程]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/119707417</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/119707417</guid><author>headwind_</author><pubDate>Sat, 14 Aug 2021 23:18:53 +0800</pubDate><description><![CDATA[本文主要围绕二进制策略文件的加载和编译过程
我们写的te规则，到底生成在哪里了？开机之后又是怎么加载使用的？
目录一、SELinux开机初始化1. init.cpp2. selinux.cpp2.1 SelinuxSetupKernelLogging2.2 SelinuxInitialize2.3 checkreqprot2.4 LoadPolicy2.5 LoadSplitPolicy2.6 FindPrecompiledSplitPolicy二、SELinux Policy编译3. 二进制策略文件的生成]]></description><category></category></item><item><title><![CDATA[Android P SELinux (一) 基础概念]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/119704755</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/119704755</guid><author>headwind_</author><pubDate>Sat, 14 Aug 2021 22:28:02 +0800</pubDate><description><![CDATA[在处理了一些SELinux相关的问题之后，深深厌恶这个东西，一打开就报一大堆权限问题，添加te权限还特别麻烦，第一次搞下来没有1-2天是不行的。
抽时间查阅相关资料后，结合理论知识和源码进行分析，随着在项目中不断处理了一些CTS neverallow的失败项，慢慢地对SELinux有了更深入的理解，接下来的内容将分别介绍基础概念、SELinux开机初始化、SELinux编译相关和实际案例分享，让大家对SELinux有更加深入的认识。
学习一个模块的东西，我更喜欢从实际的问题出发去探索，因为目标很明确，不会.]]></description><category></category></item><item><title><![CDATA[基于LDC1000的自动循迹小车]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/71310491</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/71310491</guid><author>headwind_</author><pubDate>Wed, 10 May 2017 14:01:02 +0800</pubDate><description><![CDATA[大三上学期课程设计的题目选了做小车，需要使用的是TI公司的LDC1000或者LDC1314，题目如下： 
首先选择做这道题是因为之前做小车比较熟悉，仔细分析一下其实也就是缺个传感器，其他的该有的都有了只需要稍作修改，于是乎开始了这一段有意思的旅途。将整个系统分为采集、处理、控制三部分。 
第一部分为采集模块，采用LDC1000采集赛道信息并转化为数字信号传输给数据处理模块。]]></description><category></category></item><item><title><![CDATA[nfs启动出现网络断开Try to bring eth0 interface up......]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/70478085</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/70478085</guid><author>headwind_</author><pubDate>Sat, 22 Apr 2017 23:21:44 +0800</pubDate><description><![CDATA[在内核配置调NFS时出现如下问题，一直卡在那个地方不动了，一开始以为内核配置错了，网络不行搞了一晚上找到前人的解决方法： 
在NFS共享文件系统里面的 etc/init.d/rcS文件中如下：最后一行的/etc/init.d/ifconfig-eth0 
（比如我的共享文件是/home/minilinux/system，那么就是这里面的etc/init.d/rcS，而不是ubuntu的etc/ini]]></description><category></category></item><item><title><![CDATA[Ubuntu 16.04 搜狗输入法突然用不了]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/70341345</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/70341345</guid><author>headwind_</author><pubDate>Fri, 21 Apr 2017 23:52:56 +0800</pubDate><description><![CDATA[最近遇到过几次突然搜狗输入法不能用的情况会显示拼音但是不能用，有可能是配置文件的原因，最后找到一个解决方法：在 ~/.config 目录下面有上面三个配置文件，只需要删除他们重启即可sudo rm -r ~/.config/Sogou*
sudo rm -r ~/.config/sogou*然后重启之后就OK了]]></description><category></category></item><item><title><![CDATA[Python RDF知识库查询]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/70234546</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/70234546</guid><author>headwind_</author><pubDate>Wed, 19 Apr 2017 00:31:40 +0800</pubDate><description><![CDATA[本文知识库查询使用SPARQL； 
SPARQL (SPARQL Protocol and RDF Query Language)，是为RDF开发的一种查询语言和数据获取协议，它是为W3C所开发的RDF数据模型所定义，但是可以用于任何可以用RDF来表示的信息资源。]]></description><category></category></item><item><title><![CDATA[Python 将json格式文件转存为RDF格式文件]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/70234169</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/70234169</guid><author>headwind_</author><pubDate>Wed, 19 Apr 2017 00:06:29 +0800</pubDate><description><![CDATA[一、什么是json格式 
JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。它基于 ECMAScript 规范的一个子集，采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写，同时也易于机器解析和生成，并有效地提升网络传输效率。]]></description><category></category></item><item><title><![CDATA[利用scrapy框架爬取互动百科的词条--存成json]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/70148539</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/70148539</guid><author>headwind_</author><pubDate>Thu, 13 Apr 2017 00:12:29 +0800</pubDate><description><![CDATA[最近课程作业需要爬取互动百科的词条，花了一周时间先学习了一点scrapy，利用该框架写了一个简单的爬虫 
scrapy框架学习：Scrapy入门教程 
首先看一下题目的要求： 
1.首先实现了一个自动爬取互动百科词条页面的爬虫程序获取百科页面数据。根据互动百科的分类页面来获取对应分类下的所有词条页面。 
2.为了构建知识，可以利用百科词条页面结构抽取出了互动百科的中的结构化知识。]]></description><category></category></item><item><title><![CDATA[C# 简易计算器（三）]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/65445369</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/65445369</guid><author>headwind_</author><pubDate>Thu, 23 Mar 2017 16:45:32 +0800</pubDate><description><![CDATA[C# 简易计算器（一）、C# 简易计算器（二） 
完成了一些功能后我去网上找了找类似的代码，在这个过程中学到了很多，其中了解到设计模式这个词，以及《大话设计模式》这本书，第一章就是使用简单工厂设计模式来写计算器，因此，我花了一段时间，将原先的代码用简单工厂设计模式重新写了一遍。]]></description><category></category></item><item><title><![CDATA[C# 简易计算器（二）]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/65067475</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/65067475</guid><author>headwind_</author><pubDate>Thu, 23 Mar 2017 00:09:37 +0800</pubDate><description><![CDATA[C# 简易计算器（一）前面展示了一下用C#winform做的简单的计算器，也是课程的小作业，现在分析一下代码是怎么实现的。]]></description><category></category></item><item><title><![CDATA[C# 简易计算器（一）]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/60465516</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/60465516</guid><author>headwind_</author><pubDate>Sun, 05 Mar 2017 10:50:57 +0800</pubDate><description><![CDATA[C#简易计算器]]></description><category></category></item><item><title><![CDATA[问题：VS2015发布中没有Visual Studio Installer]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/59484157</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/59484157</guid><author>headwind_</author><pubDate>Thu, 02 Mar 2017 11:03:15 +0800</pubDate><description><![CDATA[问题：VS2015发布中没有Visual Studio Installer]]></description><category></category></item><item><title><![CDATA[简易串口助手]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/53959486</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/53959486</guid><author>headwind_</author><pubDate>Sun, 01 Jan 2017 00:05:14 +0800</pubDate><description><![CDATA[自己在学习C#Winform时做过的一个简单的串口助手，功能比较简陋]]></description><category></category></item><item><title><![CDATA[C语言对数组的新认识]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/53868721</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/53868721</guid><author>headwind_</author><pubDate>Sun, 25 Dec 2016 12:47:09 +0800</pubDate><description><![CDATA[在看完《C缺陷与陷阱》3.1数组与指针后对于数组有了新的认识和理解， 
在学C语言的时候定义一个长度为10的整型数组： 
int a[0]={0}; 
如果定义一个指针指向这个数组，比如：int *p = a; 
即指针p指向数组a的首地址； 
因此，*p=84或者 *a=84都是将数组的第一个元素，即下标为0的元素的值赋为84；]]></description><category></category></item><item><title><![CDATA[韦根协议]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/53857347</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/53857347</guid><author>headwind_</author><pubDate>Sat, 24 Dec 2016 11:16:34 +0800</pubDate><description><![CDATA[Wiegand26以及Wiegand34协议， 是由美国工业安全委员会SIA的隶属组织制定的一个关于存取控制的标准协议。非接触式IC卡读写器接口和输出，也采用了该协议标准。]]></description><category></category></item><item><title><![CDATA[基于51单片机和蓝牙控制的红外小车]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/53781061</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/53781061</guid><author>headwind_</author><pubDate>Wed, 21 Dec 2016 10:10:40 +0800</pubDate><description><![CDATA[整理资料，翻到大一时候做的一个比赛，要求做一个电子小车，没有很多具体要求，算是比较开放一点的题目，虽然这个算不上厉害，但在那段期间感觉真的学到了很多，总结了一下，就是永远不要停下学习的脚步。]]></description><category></category></item><item><title><![CDATA[建立自己的封装库（三）]]></title><link>https://blog.youkuaiyun.com/headwind_/article/details/53637475</link><guid>https://blog.youkuaiyun.com/headwind_/article/details/53637475</guid><author>headwind_</author><pubDate>Wed, 14 Dec 2016 12:41:25 +0800</pubDate><description><![CDATA[前面两篇已经弄好了自己的封装库啦，可是都是2D的封装，没有3D的看起来炫酷，那么接下来就给我们的封装添加3D模型吧~]]></description><category></category></item></channel></rss>